/extension-runner

An extension sandbox for tt.bot using isolated-vm.

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

@tt-bot-dev/extension-runner (tt.bot's extension runner)

Discord Add me! Build Status

@tt-bot-dev/extension-runner is the heart of tt.bot's extensions powered using isolate-vm.

What are extensions and what do they do?

Extensions (obviously) extend the base tt.bot with community-made features. While the current extension system provides tools to make non-standard commands, it can be easily wrapped for other activities. For security reasons, the untrusted user code runs in a separate thread using a separate JavaScript environment (using isolated-vm) and the public API wraps the underlying Eris objects in the main JavaScript thread.