hermes-agent/hermes_cli
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
..
__init__.py feat: integrate GitHub Copilot providers across Hermes 2026-03-17 23:40:22 -07:00
auth.py fix: ignore placeholder provider keys in provider activation checks 2026-03-21 12:55:42 -07:00
banner.py refactor(cli, banner): update gold ANSI color to true-color format (#2246) 2026-03-20 18:17:38 -07:00
callbacks.py refactor(cli): implement approval locking mechanism to serialize concurrent requests 2026-03-13 23:59:18 -07:00
checklist.py fix: skip hanging tests + add global test timeout 2026-03-12 01:23:28 -07:00
claw.py fix(claw): warn when API keys are skipped during OpenClaw migration (#1580) 2026-03-17 02:10:36 -07:00
clipboard.py fix: clean up empty file after failed wl-paste clipboard extraction 2026-03-11 02:56:19 -07:00
codex_models.py fix: add codex forward-compat model listing 2026-03-13 21:34:01 -07:00
colors.py Revert "feat(cli): skin-aware light/dark theme mode with terminal auto-detection" 2026-03-17 10:04:53 -07:00
commands.py feat(plugins): add slash command registration for plugins (#2359) 2026-03-21 16:00:30 -07:00
config.py chore: remove dead top-level toolsets config key 2026-03-20 22:27:13 -07:00
copilot_auth.py feat: proper Copilot auth with OAuth device code flow and token validation 2026-03-18 03:25:58 -07:00
cron.py docs: clarify gateway service scopes (#1378) 2026-03-14 21:17:41 -07:00
curses_ui.py refactor: extract shared curses checklist, fix skill discovery perf 2026-03-11 03:06:15 -07:00
default_soul.py feat: seed a default global SOUL.md 2026-03-14 08:05:30 -07:00
doctor.py feat: add Kilo Code (kilocode) as first-class inference provider (#1666) 2026-03-17 02:40:34 -07:00
env_loader.py fix(config): reload .env over stale shell overrides 2026-03-15 06:46:28 -07:00
gateway.py fix: prevent systemd restart storm on gateway connection failure 2026-03-21 09:26:39 -07:00
main.py feat(cli): add hermes plugins install/remove/list command 2026-03-21 09:47:33 -07:00
models.py fix: ignore placeholder provider keys in provider activation checks 2026-03-21 12:55:42 -07:00
pairing.py Cleanup time! 2026-02-20 23:23:32 -08:00
plugins.py feat(plugins): add slash command registration for plugins (#2359) 2026-03-21 16:00:30 -07:00
plugins_cmd.py feat(cli): add hermes plugins install/remove/list command 2026-03-21 09:47:33 -07:00
runtime_provider.py fix: ignore placeholder provider keys in provider activation checks 2026-03-21 12:55:42 -07:00
setup.py fix(setup): add alibaba to provider model selection 2026-03-20 22:48:59 -07:00
skills_config.py fix: wire email platform into toolset mappings + add documentation 2026-03-11 06:34:32 -07:00
skills_hub.py fix: add --yes flag to bypass confirmation in /skills install and uninstall (#1647) 2026-03-17 01:59:07 -07:00
skin_engine.py Revert "feat(cli): skin-aware light/dark theme mode with terminal auto-detection" 2026-03-17 10:04:53 -07:00
status.py feat(web): add Tavily as web search/extract/crawl backend (#1731) 2026-03-17 04:28:03 -07:00
tools_config.py fix(tools): disabled toolsets re-enable themselves after hermes tools 2026-03-20 21:11:54 -07:00
uninstall.py feat(gateway): scope systemd service name to HERMES_HOME 2026-03-16 04:42:46 -07:00