Summary
Slash commands must be typed in full to register. Partial command entry (e.g. /con for /config, /mod for /model) returns "Unknown command" even when there is only one possible match.
Current behaviour
```
/con
Unknown command: /con
```
Expected behaviour
Either:
- Partial matching at execution time — if the prefix uniquely identifies one command, execute it (as Claude Code does)
- Tab completion surfaces reliably — the
SlashCommandCompleter with complete_while_typing=True exists in the code but the completion dropdown does not appear consistently in CLI sessions
Technical context
SlashCommandCompleter is implemented in hermes_cli/commands.py and wired to the TextArea in cli.py with complete_while_typing=True. The completer correctly yields prefix-matched completions. The gap is at command dispatch time — the command handler does not attempt prefix matching, only exact matching.
A simple fix would be to check for unambiguous prefix matches in the command dispatcher before returning "Unknown command".
Environment
- Hermes Agent v1.0.0
- macOS 15.3
- CLI mode