refactor: migrate commands to user-invocable skills

Claude Code has unified commands into skills with the user-invocable
frontmatter field. This migration:

- Converts 20 commands to skills with user-invocable: true
- Consolidates docs into single writing-capabilities.md
- Rewrites capability-writing skill for unified model
- Updates CLAUDE.md, Makefile, and other references
- Removes commands/ directory

Skills now have two types:
- user-invocable: true - workflows users trigger with /name
- user-invocable: false - background knowledge auto-loaded

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-11 16:39:46 +01:00
parent 3d9933fd52
commit 7406517cd9
29 changed files with 771 additions and 2229 deletions

View File

@@ -0,0 +1,124 @@
---
name: spawn-pr-fixes
description: Spawn parallel background agents to address PR review feedback
model: haiku
argument-hint: [pr-number...]
allowed-tools: Bash, Task, Read
user-invocable: true
---
# Spawn PR Fixes
Spawn background agents to address review feedback on multiple PRs in parallel. Each agent works in an isolated git worktree.
## Arguments
Optional PR numbers separated by spaces: `$ARGUMENTS`
- With arguments: `/spawn-pr-fixes 12 15 18` - fix specific PRs
- Without arguments: `/spawn-pr-fixes` - find and fix all PRs with requested changes
## Process
### Step 1: Get Repository Info
```bash
REPO_PATH=$(pwd)
REPO_NAME=$(basename $REPO_PATH)
```
### Step 2: Determine PRs to Fix
**If PR numbers provided**: Use those directly
**If no arguments**: Find PRs needing work
```bash
# List open PRs
tea pulls --state open
# For each PR, check if it has review comments requesting changes
tea pulls <number> --comments
```
Look for PRs where:
- Review comments exist that haven't been addressed
- PR is not approved yet
- PR is open (not merged/closed)
### Step 3: For Each PR
1. Fetch PR title using `tea pulls <number>`
2. Spawn background agent using Task tool:
```
Task tool with:
- subagent_type: "pr-fixer"
- run_in_background: true
- prompt: See agent prompt below
```
### Agent Prompt
For each PR, use this prompt:
```
You are a pr-fixer agent. Address review feedback on PR #<NUMBER> autonomously.
Context:
- Repository path: <REPO_PATH>
- Repository name: <REPO_NAME>
- PR number: <NUMBER>
Instructions from @agents/pr-fixer/agent.md:
1. Get PR details and review comments:
cd <REPO_PATH>
git fetch origin
tea pulls <NUMBER> --comments
2. Setup worktree from PR branch:
git worktree add ../<REPO_NAME>-pr-<NUMBER> origin/<branch-name>
cd ../<REPO_NAME>-pr-<NUMBER>
git checkout <branch-name>
3. Analyze feedback, create todos with TodoWrite
4. Address each piece of feedback
5. Commit and push:
git add -A && git commit with message "Address review feedback\n\n...\n\nCo-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
git push
6. Spawn code-reviewer synchronously (NOT in background) to re-review
7. If needs more work, fix and re-review (max 3 iterations)
8. Cleanup (ALWAYS do this):
cd <REPO_PATH> && git worktree remove ../<REPO_NAME>-pr-<NUMBER> --force
9. Output concise summary (5-10 lines max):
PR #<NUMBER>: <title>
Status: <fixed|partial|blocked>
Feedback addressed: <count> items
Review: <approved|needs-work|skipped>
Work autonomously. Make judgment calls on ambiguous feedback. If blocked, note it in a commit message.
```
### Step 4: Report
After spawning all agents, display:
```
Spawned <N> pr-fixer agents:
| PR | Title | Status |
|-----|--------------------------|------------|
| #12 | Add /commit command | spawned |
| #15 | Add /pr command | spawned |
| #18 | Add CI status | spawned |
Agents working in background. Monitor with:
- Check PR list: tea pulls
- Check worktrees: git worktree list
```