Skip to content

refactor: remove /model slash command from CLI and gateway#2909

Closed
teknium1 wants to merge 1 commit into
mainfrom
hermes/hermes-ae6184d3
Closed

refactor: remove /model slash command from CLI and gateway#2909
teknium1 wants to merge 1 commit into
mainfrom
hermes/hermes-ae6184d3

Conversation

@teknium1

Copy link
Copy Markdown
Contributor

Summary

Removes the /model slash command from the interactive CLI and all messenger gateway platforms (Telegram, Discord, Slack, WhatsApp).

Users can still change models via hermes model CLI subcommand or by editing config.yaml directly.

Changes

Removed:

  • CommandDef entry from COMMAND_REGISTRY in commands.py
  • CLI process_command() handler (~85 lines)
  • Gateway _handle_model_command() method (~190 lines)
  • SlashCommandCompleter model_completer_provider parameter and two-stage autocomplete logic
  • Tab re-trigger for /model provider: completion
  • Ghost text suggestions for /model
  • All /model-specific tests (test_cli_model_command.py + model completion tests in test_commands.py)

Updated:

  • _show_model_and_providers() hints now point to hermes model instead of /model

Unaffected:

  • /provider command (still works, still calls _show_model_and_providers)
  • ACP adapter _cmd_model (separate system for VS Code/Zed/JetBrains)
  • hermes_cli/model_switch.py module preserved (used by ACP)
  • hermes model CLI subcommand (unchanged)

Test plan

  • Full suite: 6099 passed, 200 skipped, 25 warnings
  • /provider still works (shares _show_model_and_providers)
  • No references to removed /model command remain in active code

The /model command is removed from both the interactive CLI and
messenger gateway (Telegram/Discord/Slack/WhatsApp). Users can
still change models via 'hermes model' CLI subcommand or by
editing config.yaml directly.

Removed:
- CommandDef entry from COMMAND_REGISTRY
- CLI process_command() handler and model autocomplete logic
- Gateway _handle_model_command() and dispatch
- SlashCommandCompleter model_completer_provider parameter
- Two-stage Tab completion and ghost text for /model
- Tab re-trigger for provider:model completion
- All /model-specific tests

Updated:
- _show_model_and_providers() hints now point to 'hermes model'
- /provider command unaffected (still works)
- ACP adapter _cmd_model unaffected (separate system)
- model_switch.py module preserved (used by ACP)
@teknium1

Copy link
Copy Markdown
Contributor Author

Merged via PR #3080. Cherry-picked onto current main with conflict resolution (2 conflicts from 42-commit drift, both in the code being removed).

@teknium1 teknium1 closed this Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant