Summary
Several commands are functional but undiscoverable through Tab completion or /help.
Issues
1. Hidden command aliases
/exit, /q, and /gateway work (dispatched at cli.py:1382 and cli.py:1438) but are not in the COMMANDS dict (cli.py:554-572). Only /quit and /platforms are listed. This means:
- They don't appear in Tab autocomplete
- They don't appear in
/help output
- Users who try
/e<tab> or /q<tab> get nothing
Fix: Add /exit, /q, /gateway to COMMANDS with descriptions noting they are aliases.
2. /verbose command doesn't exist
The original audit expected a /verbose command for toggling verbosity. No such command exists in COMMANDS or process_command(). Verbose mode is only set via the --verbose CLI flag at startup or agent.verbose in config.yaml. There's no way to toggle it mid-session.
Fix: Add a /verbose command that cycles through levels and accepts direct arguments (e.g., /verbose off, /verbose all).
3. No argument-level tab completion
The SlashCommandCompleter (cli.py:575-592) only completes command names. After typing /model , pressing Tab yields nothing. Same for /skin, /personality, /prompt, etc.
Fix: Extend get_completions() to detect a space after the command name and dispatch to per-command completers that provide argument suggestions.
Related: #3821 (specifically about /model not working in TUI)
Impact
- Severity: Medium — discoverability gap, not a functional bug
- Effort: Small (aliases), Medium (arg completion)
Ref
UX audit items #3, #12, #20.
Summary
Several commands are functional but undiscoverable through Tab completion or
/help.Issues
1. Hidden command aliases
/exit,/q, and/gatewaywork (dispatched atcli.py:1382andcli.py:1438) but are not in theCOMMANDSdict (cli.py:554-572). Only/quitand/platformsare listed. This means:/helpoutput/e<tab>or/q<tab>get nothingFix: Add
/exit,/q,/gatewaytoCOMMANDSwith descriptions noting they are aliases.2. /verbose command doesn't exist
The original audit expected a
/verbosecommand for toggling verbosity. No such command exists inCOMMANDSorprocess_command(). Verbose mode is only set via the--verboseCLI flag at startup oragent.verbosein config.yaml. There's no way to toggle it mid-session.Fix: Add a
/verbosecommand that cycles through levels and accepts direct arguments (e.g.,/verbose off,/verbose all).3. No argument-level tab completion
The
SlashCommandCompleter(cli.py:575-592) only completes command names. After typing/model, pressing Tab yields nothing. Same for/skin,/personality,/prompt, etc.Fix: Extend
get_completions()to detect a space after the command name and dispatch to per-command completers that provide argument suggestions.Related: #3821 (specifically about
/modelnot working in TUI)Impact
Ref
UX audit items #3, #12, #20.