fix(commands): wire dispatch files to real sub-command names via Skill tool

All dispatch files referenced display names (e.g., `/doc audit`) that don't
correspond to real slash commands. Claude Code resolves commands by filename,
so `/doc audit` loads `doc.md` with $ARGUMENTS but never routes to `doc-audit.md`.

Changes:
- Updated 24 dispatch files with explicit Skill tool routing
- Added "Command to Invoke" column with plugin-prefixed names
- Added $ARGUMENTS matching for automatic routing
- RFC dispatch file uses inline handling (no separate command files)
- Updated COMMANDS-CHEATSHEET.md with invocation methods
- Updated MIGRATION-v9.md with command name mapping explanation

Affects: 25 dispatch files across 12 plugins (core, data, saas, ops, debug)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 21:04:24 -05:00
parent 93d93fcf09
commit 5bbcee06ac
27 changed files with 536 additions and 286 deletions

View File

@@ -11,12 +11,12 @@ When invoked without a sub-command, display available actions and ask which to r
## Available Commands
| Command | Description |
|---------|-------------|
| `/adr create` | Create a new ADR wiki page |
| `/adr list` | List all ADRs by status |
| `/adr update` | Update an existing ADR |
| `/adr supersede` | Mark an ADR as superseded by a new one |
| Action | Command to Invoke | Description |
|--------|-------------------|-------------|
| `create` | `/projman:adr-create` | Create a new ADR wiki page |
| `list` | `/projman:adr-list` | List all ADRs by status |
| `update` | `/projman:adr-update` | Update an existing ADR |
| `supersede` | `/projman:adr-supersede` | Mark an ADR as superseded by a new one |
## Usage
@@ -27,8 +27,16 @@ When invoked without a sub-command, display available actions and ask which to r
/adr supersede <ADR-NNNN> --by <ADR-MMMM>
```
## Workflow
## Routing
1. Display the table above
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
If `$ARGUMENTS` is provided (e.g., user typed `/adr create`):
1. Match the first word of `$ARGUMENTS` against the **Action** column above
2. **Invoke the corresponding command** from the "Command to Invoke" column using the Skill tool
3. Pass any remaining arguments to the invoked command
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which action would you like to run?"
3. When the user responds, invoke the matching command using the Skill tool
**Note:** Commands can also be invoked directly using their plugin-prefixed names (e.g., `/projman:adr-create`)

View File

@@ -11,12 +11,20 @@ When invoked without a sub-command, display available actions and ask which to r
## Available Commands
| Command | Description |
|---------|-------------|
| `/labels sync` | Sync label taxonomy to Gitea repository |
| Action | Command to Invoke | Description |
|--------|-------------------|-------------|
| `sync` | `/projman:labels-sync` | Sync label taxonomy to Gitea repository |
## Workflow
## Routing
1. Display the table above
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
If `$ARGUMENTS` is provided (e.g., user typed `/labels sync`):
1. Match the first word of `$ARGUMENTS` against the **Action** column above
2. **Invoke the corresponding command** from the "Command to Invoke" column using the Skill tool
3. Pass any remaining arguments to the invoked command
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which action would you like to run?"
3. When the user responds, invoke the matching command using the Skill tool
**Note:** Commands can also be invoked directly using their plugin-prefixed names (e.g., `/projman:labels-sync`)

View File

@@ -11,12 +11,12 @@ When invoked without a sub-command, display available actions and ask which to r
## Available Commands
| Command | Description |
|---------|-------------|
| `/project initiation` | Analyze source, create charter, decompose into epics |
| `/project plan` | Create WBS, risk register, sprint roadmap |
| `/project status` | Full project hierarchy view |
| `/project close` | Retrospective, lessons learned, archive |
| Action | Command to Invoke | Description |
|--------|-------------------|-------------|
| `initiation` | `/projman:project-initiation` | Analyze source, create charter, decompose into epics |
| `plan` | `/projman:project-plan` | Create WBS, risk register, sprint roadmap |
| `status` | `/projman:project-status` | Full project hierarchy view |
| `close` | `/projman:project-close` | Retrospective, lessons learned, archive |
## Usage
@@ -27,8 +27,16 @@ When invoked without a sub-command, display available actions and ask which to r
/project close <project-name>
```
## Workflow
## Routing
1. Display the table above
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
If `$ARGUMENTS` is provided (e.g., user typed `/project initiation`):
1. Match the first word of `$ARGUMENTS` against the **Action** column above
2. **Invoke the corresponding command** from the "Command to Invoke" column using the Skill tool
3. Pass any remaining arguments to the invoked command
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which action would you like to run?"
3. When the user responds, invoke the matching command using the Skill tool
**Note:** Commands can also be invoked directly using their plugin-prefixed names (e.g., `/projman:project-initiation`)

View File

@@ -11,12 +11,20 @@ When invoked without a sub-command, display available actions and ask which to r
## Available Commands
| Command | Description |
|---------|-------------|
| `/projman setup` | Configure projman for a project |
| Action | Command to Invoke | Description |
|--------|-------------------|-------------|
| `setup` | `/projman:projman-setup` | Configure projman for a project |
## Workflow
## Routing
1. Display the table above
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
If `$ARGUMENTS` is provided (e.g., user typed `/projman setup`):
1. Match the first word of `$ARGUMENTS` against the **Action** column above
2. **Invoke the corresponding command** from the "Command to Invoke" column using the Skill tool
3. Pass any remaining arguments to the invoked command
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which action would you like to run?"
3. When the user responds, invoke the matching command using the Skill tool
**Note:** Commands can also be invoked directly using their plugin-prefixed names (e.g., `/projman:projman-setup`)

View File

@@ -16,7 +16,7 @@ agent: planner
Manage the full RFC lifecycle through sub-commands. RFCs provide a structured way to document, discuss, and approve changes before implementation.
When invoked without a sub-command, display available actions and ask which to run.
When invoked without a sub-command or with `$ARGUMENTS`, handle sub-commands inline using the documentation below.
## Invocation
@@ -34,11 +34,19 @@ When invoked without a sub-command, display available actions and ask which to r
| `approve` | `/rfc approve <number>` | Approve RFC in Review status |
| `reject` | `/rfc reject <number>` | Reject RFC with documented reason |
## Workflow
## Routing
1. Display the table above
If `$ARGUMENTS` is provided (e.g., user typed `/rfc create`):
1. Match the first word of `$ARGUMENTS` against the Command column above
2. Execute the corresponding sub-command using the inline documentation below
3. Pass any remaining arguments to the sub-command handler
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
3. When the user responds, execute the matching sub-command using the inline documentation below
**Note:** RFC commands are handled inline in this file - there are no separate command files to invoke.
---

View File

@@ -7,21 +7,29 @@ description: Sprint lifecycle management — type /sprint <action> for commands
Sprint lifecycle management for projman.
When invoked without a sub-command, display available actions and ask which to run.
When invoked without a sub-command or with `$ARGUMENTS`, handle as follows:
## Available Commands
| Command | Description |
|---------|-------------|
| `/sprint plan` | Analyze requirements, create issues, request approval |
| `/sprint start` | Begin execution, load context, dispatch tasks |
| `/sprint status` | Check progress, blockers, completion percentage |
| `/sprint close` | Capture lessons learned, close milestone |
| `/sprint review` | Pre-close code quality review |
| `/sprint test` | Run/generate tests for sprint scope |
| Action | Command to Invoke | Description |
|--------|-------------------|-------------|
| `plan` | `/projman:sprint-plan` | Analyze requirements, create issues, request approval |
| `start` | `/projman:sprint-start` | Begin execution, load context, dispatch tasks |
| `status` | `/projman:sprint-status` | Check progress, blockers, completion percentage |
| `close` | `/projman:sprint-close` | Capture lessons learned, close milestone |
| `review` | `/projman:sprint-review` | Pre-close code quality review |
| `test` | `/projman:sprint-test` | Run/generate tests for sprint scope |
## Workflow
## Routing
1. Display the table above
2. Ask: "Which command would you like to run?"
3. Route to the selected sub-command
If `$ARGUMENTS` is provided (e.g., user typed `/sprint plan`):
1. Match the first word of `$ARGUMENTS` against the **Action** column above
2. **Invoke the corresponding command** from the "Command to Invoke" column using the Skill tool
3. Pass any remaining arguments to the invoked command
If no arguments provided:
1. Display the Available Commands table
2. Ask: "Which action would you like to run?"
3. When the user responds, invoke the matching command using the Skill tool
**Note:** Commands can also be invoked directly using their plugin-prefixed names (e.g., `/projman:sprint-plan`)