Phase 3 command consolidation: 64 → 42 visible slash commands (#73)#80
Closed
BunsDev wants to merge 8 commits into
Closed
Phase 3 command consolidation: 64 → 42 visible slash commands (#73)#80BunsDev wants to merge 8 commits into
BunsDev wants to merge 8 commits into
Conversation
The one-release grace period for the Phase 2 fold aliases ends with the next release. /color, /vim, /voice, /statusline, /terminal-setup, /cost, /context, /undo, and /revert are no longer registered; their impls remain as delegation targets of /config, /usage, and /rewind (UndoCommand is deleted outright — /rewind dispatches "undo" directly to RevertCommand). The TUI intercept arms for the legacy names go with them. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ts, /managed-agents (#73) - /upgrade was already an alias of /update; drop its separate autocomplete entry. - /stats folds into /usage stats. The TUI routes /usage stats to the same live statistics dialog; /stats stays callable as a hidden one-release alias. - /agents and /managed-agents fold into a single /agent umbrella: /agent list|create|edit|delete|reset manage sub-agent definitions, /agent managed configures the manager-executor system, bare /agent opens the TUI agents browser (and /agent reset jumps to the reset confirm, mirroring the old /agents reset). Both old names remain as hidden one-release aliases; NamedCommandAdapter gains a slash_hidden flag to support hiding adapter-backed commands. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
/fork, /branch, /tag, and /add-dir become /session subcommands — they're all operations on the active session, not standalone concepts. /session rename keeps its existing fold. In the TUI, /session with arguments now reaches the command layer instead of unconditionally opening the session browser (bare /session still opens it). Old names remain hidden one-release compatibility aliases. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- /copy → /export copy [n] and /share → /export share: both are variants of exporting the conversation, not standalone concepts. In the TUI, /export copy reuses the live clipboard intercept; bare /export keeps opening the export dialog. - /switch → /login switch (with no profile id it lists stored accounts, preserving the /accounts fold). - /refresh → /providers refresh: it clears provider caches, so it's semantically a providers operation (per maintainer sign-off). Old names remain hidden one-release compatibility aliases. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
/theme, /keybindings, /output-style, /import-config, and /advisor become /config subcommands. In the TUI, /config theme still opens the theme picker, /config keybindings opens keybindings.json, /config output-style cycles the live style, and /config import opens the import picker; argument forms (/config theme dark, /config advisor <model>, …) render via the command layer. Old names remain hidden one-release compatibility aliases. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- /think-back → /thinking back (with `play` as a sub-argument, preserving the Phase 1 /think-back play fold) - /reload-plugins → /plugin reload (the subcommand already existed; the standalone now hides) - /pr-comments → /review comments; the TUI routes it to the command layer instead of the diff viewer - /doctor → /status doctor - /goal → /coven goal (durable goals are Coven-substrate workflow state); /coven help documents the new subcommand Old names remain hidden one-release compatibility aliases. /fast stays standalone per maintainer sign-off (high-frequency mid-session toggle). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
docs/commands.md now documents the consolidated forms (/usage stats, /agent, /session fork|branch|tag|add-dir, /export copy|share, /login switch, /providers refresh, /thinking back, /config theme|keybindings|output-style|import|advisor, /plugin reload, /review comments, /status doctor, /coven goal) with one-line "formerly /<old>" compatibility notes, and states the 42-command visible surface. AUDIT-2026-06.md §4 records Phase 3 as landed. The TUI help-overlay category map drops the folded names, and a clippy trim_split_whitespace nit from the /review routing is fixed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Pull request overview
This PR completes “Phase 3” of the slash-command surface consolidation (per #73), reducing the visible TUI command list to 42 commands by folding legacy standalone commands into subcommands (while keeping old names callable as hidden compatibility aliases for one release), and updating TUI routing + docs accordingly.
Changes:
- Consolidates multiple legacy slash commands under umbrella commands (e.g.,
/usage stats,/agent …,/session …,/export …,/login switch,/providers refresh,/thinking back,/status doctor,/coven goal). - Adds a
slash_hiddenflag toNamedCommandAdapterso adapter-backed slash commands can be hidden like struct-backed commands. - Updates TUI intercept routing, tests, and documentation to reflect the new 42-command visible surface and folds.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src-rust/crates/tui/src/lib.rs | Updates a TUI test expectation from /agents to /agent. |
| src-rust/crates/tui/src/app.rs | Updates PROMPT_SLASH_COMMANDS, help categorization, and slash-command intercept routing for the new consolidated commands. |
| src-rust/crates/commands/src/lib.rs | Implements consolidation in the command layer, introduces NamedCommandAdapter.slash_hidden, updates help/dispatch for folded commands, and adjusts tests to enforce registry↔surface consistency. |
| docs/commands.md | Retitles/restructures command docs to the consolidated forms, adds Phase 3 surface statement (42 commands), and updates examples/compatibility notes. |
| docs/AUDIT-2026-06.md | Records Phase 3 consolidation as landed and enumerates the new folded command surface. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| slash_hidden: true, | ||
| target_name: "add-dir", | ||
| slash_aliases: &[], | ||
| slash_description: "Add a directory to Coven Code's allowed workspace paths", |
| slash_hidden: true, | ||
| target_name: "agents", | ||
| slash_aliases: &[], | ||
| slash_description: "Manage and configure sub-agents", |
| slash_hidden: true, | ||
| target_name: "branch", | ||
| slash_aliases: &[], | ||
| slash_description: "Create a branch of the current conversation at this point", |
| slash_hidden: true, | ||
| target_name: "tag", | ||
| slash_aliases: &[], | ||
| slash_description: "Toggle a searchable tag on the current session", |
Member
Author
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the maintainer-approved disposition matrix from #73 in seven focused commits (one per cluster, easing upstream Claurst merges per COVEN.md). The visible surface (
PROMPT_SLASH_COMMANDSminus typeahead-only aliases) lands at exactly 42 commands, within the signed-off 41–42 tolerance.Housekeeping
/color,/vim,/voice,/statusline,/terminal-setup,/cost,/context,/undo,/revertno longer resolve. Their impls remain as delegation targets of/config,/usage, and/rewind(UndoCommand deleted outright —/rewinddispatchesundodirectly to RevertCommand). The TUI intercept arms for the legacy names are gone too.Folds (each old name stays callable as a hidden one-release alias)
/upgrade/update; autocomplete entry dropped/stats/usage stats(TUI still opens the live stats dialog)/agents,/managed-agents/agent(list/create/edit/delete/reset,managed; bare/agentopens the TUI browser,/agent resetjumps to reset-confirm)/fork,/branch,/tag,/add-dir/session <sub>(and/session <args>now reaches the command layer instead of always opening the browser)/copy,/share/export copy [n],/export share(/export copyreuses the live clipboard intercept)/switch/login switch(no profile id → lists accounts)/refresh/providers refresh(per sign-off — it's a providers operation)/think-back/thinking back [play]/keybindings,/theme,/output-style,/import-config,/advisor/config <sub>(theme picker, keybindings editor, live style cycle, and import picker all stay reachable from the TUI)/reload-plugins/plugin reload/pr-comments/review comments(routed past the diff-viewer intercept)/doctor/status doctor/goal/coven goal(documented in/coven help)/faststays standalone per sign-off. Named CLI commands (coven-code <name>, incl. thecoven-code upgradefast-path) are untouched.Mechanics
NamedCommandAdaptergains aslash_hiddenflag so adapter-backed commands (agents/branch/tag/add-dir/pr-comments) can hide like struct commands.prompt_slash_commands_covers_registrytest enforces surface↔registry consistency at every commit;statsleft the allow-list, and the Phase 2 grace-period test now asserts full removal./usage stats,/agent,/export copy,/config theme|keybindings|output-style|import, and/review commentsmap to the same live overlays/intercepts the standalone commands used.Docs
docs/commands.mdretitled every folded section to its new form with "formerly/old" compatibility notes and states the 42-command surface;docs/AUDIT-2026-06.md§4 records Phase 3 as landed.Testing
cargo test --workspace: 1596 passed, 0 failed at the final commit (and the commands+tui suites pass at every intermediate commit). No new clippy warnings; fmt clean.Closes #73
🤖 Generated with Claude Code