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:
@@ -7,18 +7,26 @@ description: Security scanning and code refactoring — type /sentinel <action>
|
||||
|
||||
Security scanning and safe code refactoring tools.
|
||||
|
||||
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 |
|
||||
|---------|-------------|
|
||||
| `/sentinel scan` | Full security audit (SQL injection, XSS, secrets, etc.) |
|
||||
| `/sentinel refactor` | Apply refactoring patterns to improve code |
|
||||
| `/sentinel refactor-dry` | Preview refactoring without applying changes |
|
||||
| Action | Command to Invoke | Description |
|
||||
|--------|-------------------|-------------|
|
||||
| `scan` | `/code-sentinel:sentinel-scan` | Full security audit (SQL injection, XSS, secrets, etc.) |
|
||||
| `refactor` | `/code-sentinel:sentinel-refactor` | Apply refactoring patterns to improve code |
|
||||
| `refactor-dry` | `/code-sentinel:sentinel-refactor-dry` | Preview refactoring without applying changes |
|
||||
|
||||
## 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 `/sentinel scan`):
|
||||
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., `/code-sentinel:sentinel-scan`)
|
||||
|
||||
Reference in New Issue
Block a user