[Issue #75] Create /create-capability command for scaffolding capability sets #83

Merged
HugoNijhuis merged 1 commits from issue-75-create-capability-command into main 2026-01-10 18:22:50 +00:00
Showing only changes of commit 707250e1e1 - Show all commits

View File

@@ -0,0 +1,123 @@
---
description: Create a new capability (skill, command, agent, or a cohesive set) for the architecture repository.
argument-hint: <description>
---
# Create Capability
@~/.claude/skills/capability-writing/SKILL.md
Create new capabilities following established patterns. A capability may be a single component or a cohesive set (skill + command + agent).
## Process
1. **Understand the capability**: Analyze "$1" to understand what the user wants to build
- What domain or workflow does this cover?
- What user need does it address?
- What existing capabilities might overlap?
2. **Determine components needed**: Based on the description, recommend which components:
| Pattern | When to Use |
|---------|-------------|
| Skill only | Knowledge to apply automatically (reused across commands) |
| Command only | User-invoked workflow using existing skills |
| Command + Skill | New knowledge + workflow to use it |
| Command + Agent | Workflow with isolated worker for complex subtasks |
| Full set | New domain expertise + workflow + isolated work |
Present recommendation with reasoning:
```
## Recommended Components for: $1
Based on your description, I recommend:
- **Skill**: `name` - [why this knowledge is needed]
- **Command**: `/name` - [what user action this enables]
- **Agent**: `name` - [why isolation/specialization is needed] (optional)
Reasoning: [explain why this combination fits the need]
```
3. **Gather information**: For each recommended component, ask:
**For all components:**
- Name (kebab-case, descriptive)
- Description (one-line summary)
**For Skills:**
- What domain/knowledge does this cover?
- What are the key concepts to teach?
- What patterns or templates should it include?
**For Commands:**
- What triggers this workflow?
- What are the key steps?
- What approval points are needed?
- What skills should it reference?
**For Agents:**
- What specialized role does this fill?
- What skills does it need?
- Should it be read-only (no Edit/Write)?
4. **Select appropriate models**:
| Model | Use For |
|-------|---------|
| `haiku` | Simple fetch/display commands, formatting tasks |
| `sonnet` | Most commands and agents (default) |
| `opus` | Deep reasoning, architectural analysis, complex judgment |
For each component, recommend a model with reasoning.
5. **Generate files**: Create content using templates from capability-writing skill
Ensure proper inter-references:
- Command references skill via `@~/.claude/skills/name/SKILL.md`
- Agent lists skills in `skills:` frontmatter (names only, not paths)
- Command spawns agent via Task tool if agent is part of the set
6. **Present for approval**: Show all generated files with their full content:
```
## Generated Files
### skills/name/SKILL.md
[full content]
### commands/name.md
[full content]
### agents/name/AGENT.md (if applicable)
[full content]
Ready to create these files?
```
7. **Create files** in correct locations after approval:
- `skills/<name>/SKILL.md`
- `commands/<name>.md`
- `agents/<name>/AGENT.md`
8. **Report success**:
```
## Capability Created: name
Files created:
- skills/name/SKILL.md
- commands/name.md
- agents/name/AGENT.md (if applicable)
Next steps:
1. Run `make install` to symlink to ~/.claude/
2. Test with: /name (for commands)
3. Skills will auto-activate based on context
```
## Guidelines
- Follow all conventions from capability-writing skill
- Reference existing skills rather than duplicating knowledge
- Keep components focused - split if scope is too broad
- Commands should have approval checkpoints before significant actions
- Default to `sonnet` model unless there's a clear reason for haiku/opus
- Skills should have descriptive `description` fields for auto-activation