| name | claude-code-mechanism-selector |
| description | Helps choose the right Claude Code extension mechanism (slash commands, skills, subagents, or hooks) for a given use case. Use when discussing how to extend Claude Code, automate workflows, or implement custom functionality. |
Claude Code Mechanism Selector
This skill helps you choose the right extension mechanism for Claude Code based on your requirements.
Quick Decision Guide
Ask these questions to determine the best mechanism:
1. Does it need to run deterministically (guaranteed, not AI-decided)?
- YES → Use Hooks (shell commands at lifecycle events)
- NO → Continue to question 2
2. Does it need a separate context window or specialized AI behavior?
- YES → Use Subagents (isolated context, custom system prompts)
- NO → Continue to question 3
3. Should it activate automatically based on context?
- YES → Use Skills (model-invoked, automatic discovery)
- NO → Use Slash Commands (user-invoked with
/command)
Comparison Matrix
| Criteria | Slash Commands | Skills | Subagents | Hooks |
|---|---|---|---|---|
| Invocation | User (/cmd) |
Automatic | Automatic or explicit | System events |
| Complexity | Single file | Multi-file | Separate context | Shell commands |
| Control | Explicit | Context-based | Task-based | Deterministic |
| Files | .md only |
SKILL.md + resources |
.md with frontmatter |
JSON config |
| Scope | Project or user | Project or user | Project or user | Project or user |
When to Use Each
Slash Commands
Best for quick, repeatable prompts you want explicit control over.
Examples:
/review- Review code for bugs/explain- Explain code in simple terms/commit- Generate commit message
See commands.md for details.
Skills
Best for complex capabilities that should activate automatically.
Examples:
- PDF processing with scripts and templates
- Data analysis with reference documentation
- Code review with checklists and style guides
See skills.md for details.
Subagents
Best for specialized tasks requiring isolated context or custom AI behavior.
Examples:
- Code reviewer with specific review checklist
- Debugger with systematic debugging process
- Data scientist for SQL/BigQuery analysis
See subagents.md for details.
Hooks
Best for deterministic actions that must always happen.
Examples:
- Auto-format code after edits (
PostToolUse) - Log all bash commands (
PreToolUse) - Block edits to sensitive files (
PreToolUse) - Custom notifications (
Notification)
See hooks.md for details.
Decision Examples
| Use Case | Best Mechanism | Why |
|---|---|---|
| "Format code after every edit" | Hooks | Deterministic, must always run |
| "Quick prompt for code review" | Slash Command | Simple, explicit invocation |
| "Comprehensive code review system" | Skill or Subagent | Complex, needs structure |
| "Isolate research from main context" | Subagent | Needs separate context window |
| "Auto-detect when to apply style guide" | Skill | Should activate automatically |
| "Log all commands for compliance" | Hooks | Must run every time, deterministic |
| "Block production file edits" | Hooks | Security rule, must be enforced |
Combining Mechanisms
These mechanisms complement each other:
- Skill + Subagent: Skill provides knowledge, subagent provides isolated execution
- Slash Command + Hook: Command triggers workflow, hook ensures formatting
- Subagent + Hook: Subagent does work, hook validates output