Teknium
8da410ed95
feat(plugins): add slash command registration for plugins (#2359)
Plugins can now register slash commands via ctx.register_command()
in their register() function. Commands automatically appear in:
- /help and COMMANDS_BY_CATEGORY (under 'Plugins' category)
- Tab autocomplete in CLI
- Telegram bot menu
- Slack subcommand mapping
- Gateway dispatch
Handler signature: handler(args: str) -> str | None
Async handlers are supported in gateway context.
Changes:
- commands.py: add register_plugin_command() and rebuild_lookups()
- plugins.py: add register_command() to PluginContext, track in
PluginManager._plugin_commands and LoadedPlugin.commands_registered
- cli.py: dispatch plugin commands in process_command()
- gateway/run.py: dispatch plugin commands before skill commands
- tests: 5 new tests for registration, help, tracking, handler, gateway
- docs: update plugins feature page and build guide
2026-03-21 16:00:30 -07:00
..
2026-03-05 05:24:55 -08:00
2026-03-14 00:29:48 -07:00
2026-03-17 11:04:37 -07:00
2026-03-14 22:49:57 -07:00
2026-03-17 03:42:02 -07:00
2026-03-16 04:56:22 -07:00
2026-03-05 07:28:41 -08:00
2026-03-14 22:49:57 -07:00
2026-03-14 21:17:41 -07:00
2026-03-14 21:11:37 -07:00
2026-03-17 04:46:15 -07:00
2026-03-16 00:23:47 -07:00
2026-03-14 22:49:57 -07:00
2026-03-05 07:28:41 -08:00
2026-03-18 03:14:58 -07:00
2026-03-10 16:49:14 -04:00
2026-03-18 04:18:08 -07:00
2026-03-21 16:00:30 -07:00
2026-03-15 06:24:28 -07:00
2026-03-18 02:42:58 -07:00
2026-03-14 22:49:57 -07:00
2026-03-13 21:34:41 -07:00
2026-03-17 02:34:35 -07:00
2026-03-20 08:55:49 -07:00
2026-03-05 23:51:46 -08:00
2026-03-19 23:55:13 +08:00