create-kuckit-app 2.0.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +24 -14
  2. package/package.json +1 -1
  3. package/templates/base/.claude/skills/beads/CLAUDE.md +87 -0
  4. package/templates/base/.claude/skills/beads/README.md +123 -0
  5. package/templates/base/.claude/skills/beads/SKILL.md +77 -715
  6. package/templates/base/.claude/skills/beads/adr/0001-bd-prime-as-source-of-truth.md +61 -0
  7. package/templates/base/.claude/skills/beads/resources/AGENTS.md +62 -0
  8. package/templates/base/.claude/skills/beads/resources/ASYNC_GATES.md +175 -0
  9. package/templates/base/.claude/skills/beads/resources/BOUNDARIES.md +520 -0
  10. package/templates/base/.claude/skills/beads/resources/CHEMISTRY_PATTERNS.md +197 -0
  11. package/templates/base/.claude/skills/beads/resources/CLI_REFERENCE.md +561 -0
  12. package/templates/base/.claude/skills/beads/resources/DEPENDENCIES.md +754 -0
  13. package/templates/base/.claude/skills/beads/resources/INTEGRATION_PATTERNS.md +438 -0
  14. package/templates/base/.claude/skills/beads/resources/ISSUE_CREATION.md +150 -0
  15. package/templates/base/.claude/skills/beads/resources/MOLECULES.md +370 -0
  16. package/templates/base/.claude/skills/beads/resources/PATTERNS.md +363 -0
  17. package/templates/base/.claude/skills/beads/resources/RESUMABILITY.md +239 -0
  18. package/templates/base/.claude/skills/beads/resources/STATIC_DATA.md +61 -0
  19. package/templates/base/.claude/skills/beads/resources/TROUBLESHOOTING.md +537 -0
  20. package/templates/base/.claude/skills/beads/resources/WORKFLOWS.md +638 -0
  21. package/templates/base/.claude/skills/beads/resources/WORKTREES.md +95 -0
  22. package/templates/base/.claude/skills/browser-skill/SKILL.md +72 -0
  23. package/templates/base/.claude/skills/knowledge/SKILL.md +155 -205
  24. package/templates/base/.claude/skills/knowledge/reference/doc-mapping.md +49 -0
  25. package/templates/base/.claude/skills/knowledge/reference/extraction-prompts.md +102 -0
  26. package/templates/base/.claude/skills/kuckit/SKILL.md +15 -9
  27. package/templates/base/.claude/skills/kuckit/references/MODULE-DEVELOPMENT.md +142 -0
  28. package/templates/base/.claude/skills/kuckit/references/PACKAGES.md +22 -17
  29. package/templates/base/.claude/skills/kuckit/references/PUBLISHING.md +92 -0
  30. package/templates/base/.claude/skills/module-testing/SKILL.md +1 -1
  31. package/templates/base/.claude/skills/planning/SKILL.md +26 -1
  32. package/templates/base/.env.example +1 -1
  33. package/templates/base/AGENTS.md +155 -418
  34. package/templates/base/apps/server/src/modules.ts +14 -1
  35. package/templates/base/apps/web/.env.example +1 -1
  36. package/templates/base/apps/web/src/routes/$.tsx +0 -1
  37. package/templates/base/apps/web/src/routes/dashboard.tsx +3 -1
  38. package/templates/base/docs/ARCHITECTURE.md +689 -0
  39. package/templates/base/docs/DEPENDENCY-INJECTION.md +871 -0
  40. package/templates/base/docs/DEPLOYMENT.md +573 -0
  41. package/templates/base/docs/INDEX.md +135 -0
  42. package/templates/base/docs/MIGRATION.md +989 -0
  43. package/templates/base/docs/MODULE_CSS.md +343 -0
  44. package/templates/base/docs/MODULE_TESTING.md +368 -0
  45. package/templates/base/docs/MULTI_AGENT_WORKFLOW.md +909 -0
  46. package/templates/base/docs/TESTING.md +579 -0
  47. package/templates/base/docs/TROUBLESHOOTING.md +360 -0
  48. package/templates/base/package.json +2 -0
  49. package/templates/base/packages/items-module/AGENTS.md +3 -1
  50. package/templates/base/packages/items-module/src/server/adapters/{item.drizzle.ts → item.repository.ts} +1 -13
  51. package/templates/base/packages/items-module/src/server/module.ts +2 -1
  52. package/templates/base/packages/items-module/src/server/schema/item.ts +13 -0
@@ -0,0 +1,909 @@
1
+ # Comprehensive Multi-Agent Beads Workflow
2
+
3
+ > A complete guide to autonomous multi-agent execution using bd, bv, Agent Mail, and specialized skills.
4
+
5
+ ## Master Flow Diagram
6
+
7
+ ```
8
+ ╔═════════════════════════════════════════════════════════════════════════════════════════╗
9
+ ║ ║
10
+ ║ COMPREHENSIVE MULTI-AGENT BEADS WORKFLOW ║
11
+ ║ ║
12
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
13
+ ║ ║
14
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
15
+ ║ │ PHASE 1: CREATE │ ║
16
+ ║ │ Tool: file-beads skill + bd │ ║
17
+ ║ ├───────────────────────────────────────────────────────────────────────────────────┤ ║
18
+ ║ │ │ ║
19
+ ║ │ Plan/Spec ──────► file-beads skill ──────► Raw beads with initial deps │ ║
20
+ ║ │ │ ║
21
+ ║ │ bd create "Epic: Feature X" -t epic -p 0 │ ║
22
+ ║ │ bd create "Task A" -t task --blocks <epic> │ ║
23
+ ║ │ bd create "Task B" -t task --blocks <epic> │ ║
24
+ ║ │ ... │ ║
25
+ ║ │ │ ║
26
+ ║ │ Output: .beads/*.md files with dependency structure │ ║
27
+ ║ │ │ ║
28
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
29
+ ║ │ ║
30
+ ║ ▼ ║
31
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
32
+ ║ │ PHASE 2: REVIEW │ ║
33
+ ║ │ Tool: bv + review-beads skill │ ║
34
+ ║ ├───────────────────────────────────────────────────────────────────────────────────┤ ║
35
+ ║ │ │ ║
36
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
37
+ ║ │ │ bv Analysis (Automated) │ │ ║
38
+ ║ │ ├─────────────────────────────────────────────────────────────────────────┤ │ ║
39
+ ║ │ │ bv --robot-suggest → Find missing dependencies │ │ ║
40
+ ║ │ │ bv --robot-insights → Detect cycles, bottlenecks │ │ ║
41
+ ║ │ │ bv --robot-priority → Validate priorities via graph analysis │ │ ║
42
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
43
+ ║ │ │ │ ║
44
+ ║ │ ▼ │ ║
45
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
46
+ ║ │ │ Apply Fixes │ │ ║
47
+ ║ │ ├─────────────────────────────────────────────────────────────────────────┤ │ ║
48
+ ║ │ │ bd dep add <from> <to> → Add missing deps │ │ ║
49
+ ║ │ │ bd dep remove <from> <to> → Break cycles │ │ ║
50
+ ║ │ │ bd update <id> --priority X → Adjust priorities │ │ ║
51
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
52
+ ║ │ │ │ ║
53
+ ║ │ ▼ │ ║
54
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
55
+ ║ │ │ Content Review (Human/AI) │ │ ║
56
+ ║ │ ├─────────────────────────────────────────────────────────────────────────┤ │ ║
57
+ ║ │ │ • Clarity: Titles action-oriented, descriptions clear │ │ ║
58
+ ║ │ │ • Completeness: Acceptance criteria defined │ │ ║
59
+ ║ │ │ • Scope: Issues appropriately sized │ │ ║
60
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
61
+ ║ │ │ ║
62
+ ║ │ Output: Healthy graph, polished issues ready for execution │ ║
63
+ ║ │ │ ║
64
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
65
+ ║ │ ║
66
+ ║ ▼ ║
67
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
68
+ ║ │ PHASE 3: PLAN │ ║
69
+ ║ │ Tool: bv │ ║
70
+ ║ ├───────────────────────────────────────────────────────────────────────────────────┤ ║
71
+ ║ │ │ ║
72
+ ║ │ bv --robot-plan ─────────────────────────────────────────────────────────────► │ ║
73
+ ║ │ │ ║
74
+ ║ │ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ ║
75
+ ║ │ │ Track 1 │ │ Track 2 │ │ Track 3 │ │ ║
76
+ ║ │ │ ──────── │ │ ──────── │ │ ──────── │ │ ║
77
+ ║ │ │ [a → b → c] │ │ [x → y] │ │ [m → n → o] │ │ ║
78
+ ║ │ │ │ │ │ │ │ │ ║
79
+ ║ │ │ Scope: │ │ Scope: │ │ Scope: │ │ ║
80
+ ║ │ │ packages/sdk/**│ │ packages/cli/**│ │ apps/server/** │ │ ║
81
+ ║ │ │ │ │ │ │ │ │ ║
82
+ ║ │ │ Agent: │ │ Agent: │ │ Agent: │ │ ║
83
+ ║ │ │ BlueLake │ │ GreenCastle │ │ RedStone │ │ ║
84
+ ║ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ ║
85
+ ║ │ │ ║
86
+ ║ │ Output: Parallel execution tracks with non-overlapping file scopes │ ║
87
+ ║ │ │ ║
88
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
89
+ ║ │ ║
90
+ ║ ▼ ║
91
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
92
+ ║ │ PHASE 4: ORCHESTRATE │ ║
93
+ ║ │ Tool: orchestrator skill + Agent Mail │ ║
94
+ ║ ├───────────────────────────────────────────────────────────────────────────────────┤ ║
95
+ ║ │ │ ║
96
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
97
+ ║ │ │ ORCHESTRATOR │ │ ║
98
+ ║ │ │ ───────────── │ │ ║
99
+ ║ │ │ 1. ensure_project(human_key="<project-path>") │ │ ║
100
+ ║ │ │ 2. register_agent(name="Orchestrator", ...) │ │ ║
101
+ ║ │ │ 3. send_message(thread_id=<epic>, "Kickoff: Track assignments") │ │ ║
102
+ ║ │ │ 4. Task() × 3 → Spawn parallel workers │ │ ║
103
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
104
+ ║ │ │ │ ║
105
+ ║ │ ┌────────────────┼────────────────┐ │ ║
106
+ ║ │ ▼ ▼ ▼ │ ║
107
+ ║ │ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ ║
108
+ ║ │ │ Task() │ │ Task() │ │ Task() │ │ ║
109
+ ║ │ │ BlueLake │ │ GreenCastle│ │ RedStone │ │ ║
110
+ ║ │ │ Track 1 │ │ Track 2 │ │ Track 3 │ │ ║
111
+ ║ │ └────────────┘ └────────────┘ └────────────┘ │ ║
112
+ ║ │ │ ║
113
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
114
+ ║ │ ║
115
+ ║ ▼ ║
116
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
117
+ ║ PHASE 5: EXECUTE (Parallel Workers) ║
118
+ ║ Tool: worker skill + All AGENTS.md tools ║
119
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
120
+ ║ ║
121
+ ║ ┌──────────────────────────────────────────────────────────────────────────────────┐ ║
122
+ ║ │ │ ║
123
+ ║ │ Each worker executes beads in their track, using this loop: │ ║
124
+ ║ │ │ ║
125
+ ║ │ ╔════════════════════════════════════════════════════════════════════════════╗ │ ║
126
+ ║ │ ║ BEAD EXECUTION LOOP ║ │ ║
127
+ ║ │ ║ (Repeat for each bead in track) ║ │ ║
128
+ ║ │ ╠════════════════════════════════════════════════════════════════════════════╣ │ ║
129
+ ║ │ ║ ║ │ ║
130
+ ║ │ ║ ┌────────────────────────────────────────────────────────────────────┐ ║ │ ║
131
+ ║ │ ║ │ 1. START BEAD │ ║ │ ║
132
+ ║ │ ║ ├────────────────────────────────────────────────────────────────────┤ ║ │ ║
133
+ ║ │ ║ │ │ ║ │ ║
134
+ ║ │ ║ │ register_agent(name="BlueLake", task="<bead-id>") │ ║ │ ║
135
+ ║ │ ║ │ │ │ ║ │ ║
136
+ ║ │ ║ │ ▼ │ ║ │ ║
137
+ ║ │ ║ │ summarize_thread(thread_id="track:BlueLake:<epic>") │ ║ │ ║
138
+ ║ │ ║ │ ┌──────────────────────────────────────────────────────────┐ │ ║ │ ║
139
+ ║ │ ║ │ │ Returns context from previous bead: │ │ ║ │ ║
140
+ ║ │ ║ │ │ • What was done │ │ ║ │ ║
141
+ ║ │ ║ │ │ • Learnings & gotchas │ │ ║ │ ║
142
+ ║ │ ║ │ │ • Recommendations for current bead │ │ ║ │ ║
143
+ ║ │ ║ │ └──────────────────────────────────────────────────────────┘ │ ║ │ ║
144
+ ║ │ ║ │ │ │ ║ │ ║
145
+ ║ │ ║ │ ▼ │ ║ │ ║
146
+ ║ │ ║ │ fetch_inbox(agent_name="BlueLake") │ ║ │ ║
147
+ ║ │ ║ │ → Check for messages from orchestrator or other workers │ ║ │ ║
148
+ ║ │ ║ │ │ │ ║ │ ║
149
+ ║ │ ║ │ ▼ │ ║ │ ║
150
+ ║ │ ║ │ file_reservation_paths(paths=["packages/sdk/**"], │ ║ │ ║
151
+ ║ │ ║ │ reason="<bead-id>", exclusive=true) │ ║ │ ║
152
+ ║ │ ║ │ → Prevent conflicts with other workers │ ║ │ ║
153
+ ║ │ ║ │ │ │ ║ │ ║
154
+ ║ │ ║ │ ▼ │ ║ │ ║
155
+ ║ │ ║ │ bd update <bead-id> --status in_progress │ ║ │ ║
156
+ ║ │ ║ │ bd show <bead-id> → Read requirements │ ║ │ ║
157
+ ║ │ ║ │ │ ║ │ ║
158
+ ║ │ ║ └────────────────────────────────────────────────────────────────────┘ ║ │ ║
159
+ ║ │ ║ │ ║ │ ║
160
+ ║ │ ║ ▼ ║ │ ║
161
+ ║ │ ║ ┌────────────────────────────────────────────────────────────────────┐ ║ │ ║
162
+ ║ │ ║ │ 2. WORK ON BEAD │ ║ │ ║
163
+ ║ │ ║ ├────────────────────────────────────────────────────────────────────┤ ║ │ ║
164
+ ║ │ ║ │ │ ║ │ ║
165
+ ║ │ ║ │ Tools from AGENTS.md: │ ║ │ ║
166
+ ║ │ ║ │ │ ║ │ ║
167
+ ║ │ ║ │ ┌──────────────────────────────────────────────────────────────┐ │ ║ │ ║
168
+ ║ │ ║ │ │ EXPLORE (gkg MCP) │ │ ║ │ ║
169
+ ║ │ ║ │ │ • mcp__gkg__search_codebase_definitions → Find code │ │ ║ │ ║
170
+ ║ │ ║ │ │ • mcp__gkg__get_definition → Jump to definition │ │ ║ │ ║
171
+ ║ │ ║ │ │ • mcp__gkg__get_references → Find all usages │ │ ║ │ ║
172
+ ║ │ ║ │ └──────────────────────────────────────────────────────────────┘ │ ║ │ ║
173
+ ║ │ ║ │ │ │ ║ │ ║
174
+ ║ │ ║ │ ▼ │ ║ │ ║
175
+ ║ │ ║ │ ┌──────────────────────────────────────────────────────────────┐ │ ║ │ ║
176
+ ║ │ ║ │ │ EDIT (morph MCP) │ │ ║ │ ║
177
+ ║ │ ║ │ │ • mcp__morph_mcp__edit_file → Fast, accurate edits │ │ ║ │ ║
178
+ ║ │ ║ │ │ Uses "// ... existing code ..." placeholders │ │ ║ │ ║
179
+ ║ │ ║ │ └──────────────────────────────────────────────────────────────┘ │ ║ │ ║
180
+ ║ │ ║ │ │ │ ║ │ ║
181
+ ║ │ ║ │ ▼ │ ║ │ ║
182
+ ║ │ ║ │ ┌──────────────────────────────────────────────────────────────┐ │ ║ │ ║
183
+ ║ │ ║ │ │ SEARCH (MCP Docker Toolkit) │ │ ║ │ ║
184
+ ║ │ ║ │ │ • mcp__MCP_DOCKER__resolve-library-id → Get library ID first │ │ ║ │ ║
185
+ ║ │ ║ │ │ • mcp__MCP_DOCKER__get-library-docs → Library documentation │ │ ║ │ ║
186
+ ║ │ ║ │ │ • mcp__MCP_DOCKER__web_search_exa → Real-time web search │ │ ║ │ ║
187
+ ║ │ ║ │ └──────────────────────────────────────────────────────────────┘ │ ║ │ ║
188
+ ║ │ ║ │ │ │ ║ │ ║
189
+ ║ │ ║ │ ▼ │ ║ │ ║
190
+ ║ │ ║ │ ┌──────────────────────────────────────────────────────────────┐ │ ║ │ ║
191
+ ║ │ ║ │ │ UI (shadcn MCP + frontend-design skill) │ │ ║ │ ║
192
+ ║ │ ║ │ │ • mcp__shadcn__search_items_in_registries │ │ ║ │ ║
193
+ ║ │ ║ │ │ • mcp__shadcn__get_item_examples_from_registries │ │ ║ │ ║
194
+ ║ │ ║ │ └──────────────────────────────────────────────────────────────┘ │ ║ │ ║
195
+ ║ │ ║ │ │ │ ║ │ ║
196
+ ║ │ ║ │ ▼ │ ║ │ ║
197
+ ║ │ ║ │ Periodically: │ ║ │ ║
198
+ ║ │ ║ │ • fetch_inbox() → Check for messages │ ║ │ ║
199
+ ║ │ ║ │ • If blocked → send_message(importance="high") to orchestrator │ ║ │ ║
200
+ ║ │ ║ │ • If interface changed → notify other workers │ ║ │ ║
201
+ ║ │ ║ │ │ ║ │ ║
202
+ ║ │ ║ └────────────────────────────────────────────────────────────────────┘ ║ │ ║
203
+ ║ │ ║ │ ║ │ ║
204
+ ║ │ ║ ▼ ║ │ ║
205
+ ║ │ ║ ┌────────────────────────────────────────────────────────────────────┐ ║ │ ║
206
+ ║ │ ║ │ 3. COMPLETE BEAD │ ║ │ ║
207
+ ║ │ ║ ├────────────────────────────────────────────────────────────────────┤ ║ │ ║
208
+ ║ │ ║ │ │ ║ │ ║
209
+ ║ │ ║ │ Verify & Close: │ ║ │ ║
210
+ ║ │ ║ │ • bun run check-types && bun run build │ ║ │ ║
211
+ ║ │ ║ │ • bd close <bead-id> --reason "Summary" │ ║ │ ║
212
+ ║ │ ║ │ │ │ ║ │ ║
213
+ ║ │ ║ │ ▼ │ ║ │ ║
214
+ ║ │ ║ │ Report to Orchestrator: │ ║ │ ║
215
+ ║ │ ║ │ send_message( │ ║ │ ║
216
+ ║ │ ║ │ to=["Orchestrator"], │ ║ │ ║
217
+ ║ │ ║ │ thread_id="<epic-id>", │ ║ │ ║
218
+ ║ │ ║ │ subject="[<bead-id>] COMPLETE", │ ║ │ ║
219
+ ║ │ ║ │ body_md="Done: ... Next: <next-bead>" │ ║ │ ║
220
+ ║ │ ║ │ ) │ ║ │ ║
221
+ ║ │ ║ │ │ │ ║ │ ║
222
+ ║ │ ║ │ ▼ │ ║ │ ║
223
+ ║ │ ║ │ Save Context for Next Bead: │ ║ │ ║
224
+ ║ │ ║ │ send_message( │ ║ │ ║
225
+ ║ │ ║ │ to=["BlueLake"], ◄─────── SELF-ADDRESSED! │ ║ │ ║
226
+ ║ │ ║ │ thread_id="track:BlueLake:<epic>", │ ║ │ ║
227
+ ║ │ ║ │ body_md=""" │ ║ │ ║
228
+ ║ │ ║ │ ## Learnings │ ║ │ ║
229
+ ║ │ ║ │ - Pattern discovered: ... │ ║ │ ║
230
+ ║ │ ║ │ ## Gotchas │ ║ │ ║
231
+ ║ │ ║ │ - Watch out for: ... │ ║ │ ║
232
+ ║ │ ║ │ ## For Next Bead │ ║ │ ║
233
+ ║ │ ║ │ - Recommendation: ... │ ║ │ ║
234
+ ║ │ ║ │ """ │ ║ │ ║
235
+ ║ │ ║ │ ) │ ║ │ ║
236
+ ║ │ ║ │ │ │ ║ │ ║
237
+ ║ │ ║ │ ▼ │ ║ │ ║
238
+ ║ │ ║ │ release_file_reservations(agent_name="BlueLake") │ ║ │ ║
239
+ ║ │ ║ │ │ ║ │ ║
240
+ ║ │ ║ └────────────────────────────────────────────────────────────────────┘ ║ │ ║
241
+ ║ │ ║ │ ║ │ ║
242
+ ║ │ ║ ▼ ║ │ ║
243
+ ║ │ ║ ┌────────────────────────────────────────────────────────────────────┐ ║ │ ║
244
+ ║ │ ║ │ 4. NEXT BEAD │ ║ │ ║
245
+ ║ │ ║ ├────────────────────────────────────────────────────────────────────┤ ║ │ ║
246
+ ║ │ ║ │ │ ║ │ ║
247
+ ║ │ ║ │ ┌─────────────────────┐ │ ║ │ ║
248
+ ║ │ ║ │ │ More beads in track?│ │ ║ │ ║
249
+ ║ │ ║ │ └──────────┬──────────┘ │ ║ │ ║
250
+ ║ │ ║ │ YES │ │ NO │ ║ │ ║
251
+ ║ │ ║ │ ▼ ▼ │ ║ │ ║
252
+ ║ │ ║ │ ┌──────────────┐ ┌──────────────────────┐ │ ║ │ ║
253
+ ║ │ ║ │ │ Loop back to │ │ Track Complete! │ │ ║ │ ║
254
+ ║ │ ║ │ │ START BEAD │ │ Report to orchestrator│ │ ║ │ ║
255
+ ║ │ ║ │ │ with context │ │ Return summary │ │ ║ │ ║
256
+ ║ │ ║ │ │ from mail │ └──────────────────────┘ │ ║ │ ║
257
+ ║ │ ║ │ └──────────────┘ │ ║ │ ║
258
+ ║ │ ║ │ │ ║ │ ║
259
+ ║ │ ║ └────────────────────────────────────────────────────────────────────┘ ║ │ ║
260
+ ║ │ ║ ║ │ ║
261
+ ║ │ ╚════════════════════════════════════════════════════════════════════════════╝ │ ║
262
+ ║ │ │ ║
263
+ ║ └──────────────────────────────────────────────────────────────────────────────────┘ ║
264
+ ║ │ ║
265
+ ║ ▼ ║
266
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
267
+ ║ PHASE 6: MONITOR & RESOLVE ║
268
+ ║ Tool: orchestrator + Agent Mail ║
269
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
270
+ ║ ║
271
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
272
+ ║ │ ORCHESTRATOR (while workers execute) │ ║
273
+ ║ ├───────────────────────────────────────────────────────────────────────────────────┤ ║
274
+ ║ │ │ ║
275
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
276
+ ║ │ │ Monitor Progress │ │ ║
277
+ ║ │ │ ───────────────── │ │ ║
278
+ ║ │ │ fetch_inbox(urgent_only=true) → Check for blockers │ │ ║
279
+ ║ │ │ search_messages(query="<epic>") → View all updates │ │ ║
280
+ ║ │ │ bv --robot-triage --graph-root <epic> → Check completion status │ │ ║
281
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
282
+ ║ │ │ │ ║
283
+ ║ │ ▼ │ ║
284
+ ║ │ ┌─────────────────────────────────────────────────────────────────────────┐ │ ║
285
+ ║ │ │ Handle Issues │ │ ║
286
+ ║ │ │ ───────────── │ │ ║
287
+ ║ │ │ If blocker → reply_message() with resolution │ │ ║
288
+ ║ │ │ If file conflict → coordinate between workers │ │ ║
289
+ ║ │ │ If cross-track dependency → notify waiting worker │ │ ║
290
+ ║ │ └─────────────────────────────────────────────────────────────────────────┘ │ ║
291
+ ║ │ │ ║
292
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
293
+ ║ │ ║
294
+ ║ ▼ ║
295
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
296
+ ║ PHASE 7: COMPLETE ║
297
+ ║ Tool: bd + Agent Mail ║
298
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
299
+ ║ ║
300
+ ║ ┌───────────────────────────────────────────────────────────────────────────────────┐ ║
301
+ ║ │ │ ║
302
+ ║ │ When all workers report track complete: │ ║
303
+ ║ │ │ ║
304
+ ║ │ 1. Verify: bv --robot-triage | jq '.quick_ref.open_count' → Should be 0 │ ║
305
+ ║ │ │ ║
306
+ ║ │ 2. Announce: │ ║
307
+ ║ │ send_message( │ ║
308
+ ║ │ to=["BlueLake", "GreenCastle", "RedStone"], │ ║
309
+ ║ │ thread_id="<epic-id>", │ ║
310
+ ║ │ subject="[<epic-id>] EPIC COMPLETE 🎉", │ ║
311
+ ║ │ body_md="Track summaries, deliverables, learnings..." │ ║
312
+ ║ │ ) │ ║
313
+ ║ │ │ ║
314
+ ║ │ 3. Close: bd close <epic-id> --reason "All tracks complete" │ ║
315
+ ║ │ │ ║
316
+ ║ └───────────────────────────────────────────────────────────────────────────────────┘ ║
317
+ ║ ║
318
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
319
+ ║ THREAD HIERARCHY ║
320
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
321
+ ║ ║
322
+ ║ Epic Thread: <epic-id> ║
323
+ ║ ├── Kickoff message (orchestrator) ║
324
+ ║ ├── [bead-a] COMPLETE (BlueLake) ║
325
+ ║ ├── [bead-x] COMPLETE (GreenCastle) ║
326
+ ║ ├── [bead-b] BLOCKED (BlueLake) ←→ Resolution (Orchestrator) ║
327
+ ║ ├── Interface change notification ║
328
+ ║ ├── [Track 1] COMPLETE (BlueLake) ║
329
+ ║ ├── [Track 2] COMPLETE (GreenCastle) ║
330
+ ║ ├── [Track 3] COMPLETE (RedStone) ║
331
+ ║ └── EPIC COMPLETE (Orchestrator) ║
332
+ ║ ║
333
+ ║ Track Thread: track:BlueLake:<epic> (BlueLake's context) ║
334
+ ║ ├── bead-a Complete - Context for bead-b ║
335
+ ║ ├── bead-b Complete - Context for bead-c ║
336
+ ║ └── bead-c Complete - Track summary ║
337
+ ║ ║
338
+ ║ Track Thread: track:GreenCastle:<epic> (GreenCastle's context) ║
339
+ ║ └── ... ║
340
+ ║ ║
341
+ ║ Track Thread: track:RedStone:<epic> (RedStone's context) ║
342
+ ║ └── ... ║
343
+ ║ ║
344
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
345
+ ║ TOOL SUMMARY ║
346
+ ╠═════════════════════════════════════════════════════════════════════════════════════════╣
347
+ ║ ║
348
+ ║ ┌──────────────────┬────────────────────────────────────────────────────────────┐ ║
349
+ ║ │ Phase │ Tools │ ║
350
+ ║ ├──────────────────┼────────────────────────────────────────────────────────────┤ ║
351
+ ║ │ CREATE │ file-beads skill, bd create │ ║
352
+ ║ │ REVIEW │ bv --robot-suggest/insights/priority, review-beads skill │ ║
353
+ ║ │ PLAN │ bv --robot-plan │ ║
354
+ ║ │ ORCHESTRATE │ orchestrator skill, Agent Mail, Task() │ ║
355
+ ║ │ EXECUTE │ worker skill, gkg, morph, exa, shadcn, Agent Mail │ ║
356
+ ║ │ MONITOR │ Agent Mail (fetch_inbox, search_messages), bv --robot-triage│ ║
357
+ ║ │ COMPLETE │ bd close, Agent Mail (send_message) │ ║
358
+ ║ └──────────────────┴────────────────────────────────────────────────────────────┘ ║
359
+ ║ ║
360
+ ╚═════════════════════════════════════════════════════════════════════════════════════════╝
361
+ ```
362
+
363
+ ---
364
+
365
+ ## Architecture Overview
366
+
367
+ ```
368
+ ┌─────────────────────────────────────────────────────────────────────────────┐
369
+ │ ORCHESTRATOR │
370
+ │ (Main Agent) │
371
+ ├─────────────────────────────────────────────────────────────────────────────┤
372
+ │ 1. Analyze epic with bv │
373
+ │ 2. Plan parallel tracks │
374
+ │ 3. Spawn worker subagents via Task() │
375
+ │ 4. Monitor progress via Agent Mail │
376
+ │ 5. Handle cross-track blockers │
377
+ │ 6. Announce completion │
378
+ └─────────────────────────────────────────────────────────────────────────────┘
379
+
380
+ │ Task() spawns parallel workers
381
+
382
+ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
383
+ │ BlueLake │ │ GreenCastle │ │ RedStone │
384
+ │ Track 1 │ │ Track 2 │ │ Track 3 │
385
+ │ [a → b → c] │ │ [x → y] │ │ [m → n → o] │
386
+ ├──────────────────┤ ├──────────────────┤ ├──────────────────┤
387
+ │ For each bead: │ │ For each bead: │ │ For each bead: │
388
+ │ • Read context │ │ • Read context │ │ • Read context │
389
+ │ • Reserve files │ │ • Reserve files │ │ • Reserve files │
390
+ │ • Do work │ │ • Do work │ │ • Do work │
391
+ │ • Report mail │ │ • Report mail │ │ • Report mail │
392
+ │ • Save context │ │ • Save context │ │ • Save context │
393
+ │ • Next bead │ │ • Next bead │ │ • Next bead │
394
+ └──────────────────┘ └──────────────────┘ └──────────────────┘
395
+ │ │ │
396
+ └───────────────────┼───────────────────┘
397
+
398
+ ┌─────────────────────┐
399
+ │ Agent Mail │
400
+ │ ───────────────── │
401
+ │ Epic Thread: │
402
+ │ • Progress reports │
403
+ │ • Bead completions │
404
+ │ • Blockers │
405
+ │ │
406
+ │ Track Threads: │
407
+ │ • Bead context │
408
+ │ • Learnings │
409
+ └─────────────────────┘
410
+ ```
411
+
412
+ ---
413
+
414
+ ## Phase 1: CREATE
415
+
416
+ **Tools:** `file-beads` skill + `bd`
417
+
418
+ ### Purpose
419
+
420
+ Transform a plan or specification into structured beads with initial dependencies.
421
+
422
+ ### Commands
423
+
424
+ ```bash
425
+ # Create epic
426
+ bd create "Epic: Feature X" -t epic -p 0
427
+
428
+ # Create child tasks
429
+ bd create "Task A" -t task --blocks <epic-id>
430
+ bd create "Task B" -t task --blocks <epic-id>
431
+ bd create "Task C" -t task --deps <task-a-id>
432
+ ```
433
+
434
+ ### Alternative: Batch Creation
435
+
436
+ Use the `file-beads` skill for batch creation from a plan document.
437
+
438
+ ### Output
439
+
440
+ - `.beads/*.md` files with dependency structure
441
+
442
+ ---
443
+
444
+ ## Phase 2: REVIEW
445
+
446
+ **Tools:** `bv` + `review-beads` skill
447
+
448
+ ### Purpose
449
+
450
+ Validate and polish the dependency graph before execution.
451
+
452
+ ### Step 1: Automated Analysis (bv)
453
+
454
+ ```bash
455
+ # Find missing dependencies
456
+ bv --robot-suggest 2>/dev/null | jq '.suggestions.suggestions'
457
+
458
+ # Detect cycles and bottlenecks
459
+ bv --robot-insights 2>/dev/null | jq '{Cycles, Bottlenecks}'
460
+
461
+ # Validate priorities
462
+ bv --robot-priority 2>/dev/null | jq '.recommendations[:10]'
463
+ ```
464
+
465
+ ### Step 2: Apply Fixes
466
+
467
+ ```bash
468
+ # Add missing dependency
469
+ bd dep add <from-id> <to-id>
470
+
471
+ # Remove to break cycle
472
+ bd dep remove <from-id> <to-id>
473
+
474
+ # Adjust priority
475
+ bd update <id> --priority <new-priority>
476
+ ```
477
+
478
+ ### Step 3: Content Review
479
+
480
+ For each issue, verify:
481
+
482
+ - [ ] Title is action-oriented and specific
483
+ - [ ] Description is clear and unambiguous
484
+ - [ ] Acceptance criteria are defined and testable
485
+ - [ ] Scope is appropriately sized
486
+
487
+ ### Output
488
+
489
+ - Healthy graph (no cycles)
490
+ - Polished issues ready for execution
491
+
492
+ ---
493
+
494
+ ## Phase 3: PLAN
495
+
496
+ **Tools:** `bv`
497
+
498
+ ### Purpose
499
+
500
+ Identify parallel execution tracks with non-overlapping file scopes.
501
+
502
+ ### Command
503
+
504
+ ```bash
505
+ bv --robot-plan 2>/dev/null | jq '.plan.tracks'
506
+ ```
507
+
508
+ ### Output Example
509
+
510
+ | Track | Beads | File Scope | Agent |
511
+ | ----- | --------- | ----------------- | ----------- |
512
+ | 1 | a → b → c | `packages/sdk/**` | BlueLake |
513
+ | 2 | x → y | `packages/cli/**` | GreenCastle |
514
+ | 3 | m → n → o | `apps/server/**` | RedStone |
515
+
516
+ ### Rules
517
+
518
+ - File scopes must NOT overlap
519
+ - Each track gets a unique agent name (adjective+noun)
520
+ - Beads within a track execute sequentially
521
+ - Tracks execute in parallel
522
+
523
+ ---
524
+
525
+ ## Phase 4: ORCHESTRATE
526
+
527
+ **Tools:** `orchestrator` skill + Agent Mail + `Task()`
528
+
529
+ ### Purpose
530
+
531
+ Initialize project, spawn parallel workers, send kickoff message.
532
+
533
+ ### Step 1: Initialize
534
+
535
+ ```python
536
+ # Ensure project exists
537
+ ensure_project(human_key="/path/to/project")
538
+
539
+ # Register orchestrator
540
+ register_agent(
541
+ project_key="/path/to/project",
542
+ name="Orchestrator",
543
+ program="amp",
544
+ model="claude-sonnet-4",
545
+ task_description="Orchestrator for <epic-id>"
546
+ )
547
+ ```
548
+
549
+ ### Step 2: Send Kickoff
550
+
551
+ ```python
552
+ send_message(
553
+ to=["BlueLake", "GreenCastle", "RedStone"],
554
+ thread_id="<epic-id>",
555
+ subject="[<epic-id>] Work Started - Track Assignments",
556
+ body_md="""
557
+ ## Track Assignments
558
+ | Track | Agent | Beads | Scope |
559
+ |-------|-------|-------|-------|
560
+ | 1 | BlueLake | a → b → c | packages/sdk/** |
561
+ | 2 | GreenCastle | x → y | packages/cli/** |
562
+ | 3 | RedStone | m → n → o | apps/server/** |
563
+
564
+ Begin work!
565
+ """,
566
+ importance="high"
567
+ )
568
+ ```
569
+
570
+ ### Step 3: Spawn Workers (Parallel)
571
+
572
+ ```python
573
+ # Spawn all workers in parallel
574
+ Task(
575
+ description="Worker BlueLake: Track 1",
576
+ prompt="""
577
+ You are agent BlueLake working on Track 1 of epic <epic-id>.
578
+
579
+ ## Setup
580
+ 1. Read /path/to/project/AGENTS.md for tool preferences
581
+ 2. Load the worker skill
582
+
583
+ ## Your Assignment
584
+ - Beads (in order): <bead-a>, <bead-b>, <bead-c>
585
+ - File scope: packages/sdk/**
586
+ - Epic thread: <epic-id>
587
+ - Track thread: track:BlueLake:<epic-id>
588
+
589
+ ## Protocol
590
+ For EACH bead: START → WORK → COMPLETE → NEXT
591
+ See worker skill for detailed steps.
592
+ """
593
+ )
594
+
595
+ # Repeat for other tracks...
596
+ ```
597
+
598
+ ---
599
+
600
+ ## Phase 5: EXECUTE (Workers)
601
+
602
+ **Tools:** `worker` skill + All AGENTS.md tools
603
+
604
+ ### Purpose
605
+
606
+ Each worker autonomously executes beads in their track.
607
+
608
+ ### Bead Execution Loop
609
+
610
+ For EACH bead in the track:
611
+
612
+ #### 5.1 START BEAD
613
+
614
+ ```python
615
+ # 1. Register
616
+ register_agent(name="BlueLake", task_description="<bead-id>")
617
+
618
+ # 2. Read context from previous bead
619
+ summarize_thread(thread_id="track:BlueLake:<epic-id>")
620
+
621
+ # 3. Check inbox
622
+ fetch_inbox(agent_name="BlueLake", include_bodies=True)
623
+
624
+ # 4. Reserve files
625
+ file_reservation_paths(
626
+ paths=["packages/sdk/**"],
627
+ reason="<bead-id>",
628
+ exclusive=True
629
+ )
630
+
631
+ # 5. Claim bead
632
+ # bd update <bead-id> --status in_progress
633
+ # bd show <bead-id>
634
+ ```
635
+
636
+ #### 5.2 WORK ON BEAD
637
+
638
+ **Use tools from AGENTS.md:**
639
+
640
+ | Task | Tool |
641
+ | -------------- | ------------------------------------------ |
642
+ | Find code | `mcp__gkg__search_codebase_definitions` |
643
+ | Get definition | `mcp__gkg__get_definition` |
644
+ | Find usages | `mcp__gkg__get_references` |
645
+ | Edit file | `mcp__morph_mcp__edit_file` |
646
+ | Search docs | `mcp__MCP_DOCKER__web_search_exa` |
647
+ | UI components | `mcp__shadcn__*` + `frontend-design` skill |
648
+
649
+ **Periodically:**
650
+
651
+ ```python
652
+ # Check for messages
653
+ fetch_inbox(agent_name="BlueLake", since_ts="<start>")
654
+
655
+ # If blocked
656
+ send_message(
657
+ to=["Orchestrator"],
658
+ thread_id="<epic-id>",
659
+ subject="[<bead-id>] BLOCKED: <reason>",
660
+ importance="high"
661
+ )
662
+
663
+ # If interface changed
664
+ send_message(
665
+ to=["GreenCastle", "RedStone"],
666
+ thread_id="<epic-id>",
667
+ subject="[<bead-id>] Interface Change: <what>",
668
+ importance="high"
669
+ )
670
+ ```
671
+
672
+ #### 5.3 COMPLETE BEAD
673
+
674
+ ```python
675
+ # 1. Verify & close
676
+ # bun run check-types && bun run build
677
+ # bd close <bead-id> --reason "Summary"
678
+
679
+ # 2. Report to orchestrator
680
+ send_message(
681
+ to=["Orchestrator"],
682
+ thread_id="<epic-id>",
683
+ subject="[<bead-id>] COMPLETE",
684
+ body_md="Done: <summary>. Next: <next-bead>"
685
+ )
686
+
687
+ # 3. Save context for next bead (SELF-ADDRESSED!)
688
+ send_message(
689
+ to=["BlueLake"],
690
+ thread_id="track:BlueLake:<epic-id>",
691
+ subject="<bead-id> Complete - Context for Next",
692
+ body_md="""
693
+ ## Learnings
694
+ - <patterns discovered>
695
+
696
+ ## Gotchas
697
+ - <things to watch out for>
698
+
699
+ ## For Next Bead
700
+ - <recommendations>
701
+ """
702
+ )
703
+
704
+ # 4. Release reservations
705
+ release_file_reservations(agent_name="BlueLake")
706
+ ```
707
+
708
+ #### 5.4 NEXT BEAD
709
+
710
+ - If more beads → Loop back to START BEAD
711
+ - If track complete → Report to orchestrator, return summary
712
+
713
+ ---
714
+
715
+ ## Phase 6: MONITOR & RESOLVE
716
+
717
+ **Tools:** Agent Mail + `bv`
718
+
719
+ ### Purpose
720
+
721
+ Orchestrator monitors progress and handles issues.
722
+
723
+ ### Commands
724
+
725
+ ```python
726
+ # Check for blockers
727
+ fetch_inbox(agent_name="Orchestrator", urgent_only=True)
728
+
729
+ # View all updates
730
+ search_messages(query="<epic-id>")
731
+
732
+ # Check completion status
733
+ # bv --robot-triage --graph-root <epic-id> | jq '.quick_ref'
734
+ ```
735
+
736
+ ### Handle Issues
737
+
738
+ | Issue | Action |
739
+ | ---------------------- | ------------------------------------ |
740
+ | Worker blocked | `reply_message()` with resolution |
741
+ | File conflict | Coordinate between workers |
742
+ | Cross-track dependency | Notify waiting worker when unblocked |
743
+
744
+ ---
745
+
746
+ ## Phase 7: COMPLETE
747
+
748
+ **Tools:** `bd` + Agent Mail
749
+
750
+ ### Purpose
751
+
752
+ Verify all work done, announce completion, close epic.
753
+
754
+ ### Steps
755
+
756
+ ```python
757
+ # 1. Verify all done
758
+ # bv --robot-triage --graph-root <epic-id> | jq '.quick_ref.open_count'
759
+ # → Should be 0
760
+
761
+ # 2. Announce completion
762
+ send_message(
763
+ to=["BlueLake", "GreenCastle", "RedStone"],
764
+ thread_id="<epic-id>",
765
+ subject="[<epic-id>] EPIC COMPLETE 🎉",
766
+ body_md="""
767
+ ## Epic Complete
768
+
769
+ ### Track Summaries
770
+ - Track 1 (BlueLake): <summary>
771
+ - Track 2 (GreenCastle): <summary>
772
+ - Track 3 (RedStone): <summary>
773
+
774
+ ### Deliverables
775
+ - <what was built>
776
+
777
+ ### Learnings
778
+ - <key insights>
779
+ """
780
+ )
781
+
782
+ # 3. Close epic
783
+ # bd close <epic-id> --reason "All tracks complete"
784
+ ```
785
+
786
+ ---
787
+
788
+ ## Thread Hierarchy
789
+
790
+ ```
791
+ Epic Thread: <epic-id>
792
+ ├── Kickoff message (Orchestrator)
793
+ ├── [bead-a] COMPLETE (BlueLake)
794
+ ├── [bead-x] COMPLETE (GreenCastle)
795
+ ├── [bead-b] BLOCKED (BlueLake) ←→ Resolution (Orchestrator)
796
+ ├── Interface change notification
797
+ ├── [Track 1] COMPLETE (BlueLake)
798
+ ├── [Track 2] COMPLETE (GreenCastle)
799
+ ├── [Track 3] COMPLETE (RedStone)
800
+ └── EPIC COMPLETE (Orchestrator)
801
+
802
+ Track Thread: track:BlueLake:<epic>
803
+ ├── bead-a Complete - Context for bead-b
804
+ ├── bead-b Complete - Context for bead-c
805
+ └── bead-c Complete - Track summary
806
+
807
+ Track Thread: track:GreenCastle:<epic>
808
+ └── ...
809
+
810
+ Track Thread: track:RedStone:<epic>
811
+ └── ...
812
+ ```
813
+
814
+ ---
815
+
816
+ ## Tool Summary
817
+
818
+ | Phase | Tools |
819
+ | ----------- | ------------------------------------------------------------ |
820
+ | CREATE | `file-beads` skill, `bd create` |
821
+ | REVIEW | `bv --robot-suggest/insights/priority`, `review-beads` skill |
822
+ | PLAN | `bv --robot-plan` |
823
+ | ORCHESTRATE | `orchestrator` skill, Agent Mail, `Task()` |
824
+ | EXECUTE | `worker` skill, gkg, morph, exa, shadcn, Agent Mail |
825
+ | MONITOR | Agent Mail, `bv --robot-triage` |
826
+ | COMPLETE | `bd close`, Agent Mail |
827
+
828
+ ---
829
+
830
+ ## Quick Reference Commands
831
+
832
+ ```bash
833
+ # What to work on
834
+ bv --robot-next
835
+
836
+ # Get parallel tracks
837
+ bv --robot-plan
838
+
839
+ # Check graph health
840
+ bv --robot-insights | jq '.Cycles'
841
+
842
+ # Get priority recommendations
843
+ bv --robot-priority
844
+
845
+ # Check epic progress
846
+ bv --robot-triage --graph-root <epic-id>
847
+ ```
848
+
849
+ ---
850
+
851
+ ## Skills Reference
852
+
853
+ | Skill | Use When |
854
+ | -------------- | ----------------------------------------------- |
855
+ | `file-beads` | Batch create beads from a plan |
856
+ | `review-beads` | Polish beads with bv analysis + content quality |
857
+ | `orchestrator` | Plan tracks, spawn workers, monitor progress |
858
+ | `worker` | Execute beads with session management |
859
+ | `beads` | General bd/bv reference |
860
+
861
+ ---
862
+
863
+ ## Context Persistence
864
+
865
+ The key to multi-session execution is **self-addressed messages** in track threads:
866
+
867
+ ```python
868
+ # After completing each bead, save context for next bead
869
+ send_message(
870
+ to=["BlueLake"], # ← SELF-ADDRESSED!
871
+ thread_id="track:BlueLake:<epic>",
872
+ body_md="Context for next bead..."
873
+ )
874
+
875
+ # At start of next bead, read previous context
876
+ summarize_thread(thread_id="track:BlueLake:<epic>")
877
+ ```
878
+
879
+ This ensures context flows between beads even across session boundaries.
880
+
881
+ ---
882
+
883
+ ## See Also
884
+
885
+ This document integrates with the following Claude Skills:
886
+
887
+ | Skill | Purpose |
888
+ | --------------------------------------------------------------- | ----------------------------------------------- |
889
+ | [orchestrator](../.claude/skills/orchestrator/SKILL.md) | Plan tracks, spawn workers, monitor progress |
890
+ | [worker](../.claude/skills/worker/SKILL.md) | Execute beads with session management |
891
+ | [planning](../.claude/skills/planning/SKILL.md) | Generate execution plans from features |
892
+ | [file-beads](../.claude/skills/file-beads/SKILL.md) | Batch create beads from a plan |
893
+ | [review-beads](../.claude/skills/review-beads/SKILL.md) | Polish beads with bv analysis + content quality |
894
+ | [beads](../.claude/skills/beads/SKILL.md) | General bd/bv reference |
895
+ | [issue-resolution](../.claude/skills/issue-resolution/SKILL.md) | Systematic bug diagnosis and fixes |
896
+
897
+ ### Tool Reference
898
+
899
+ The tools referenced in this document are real MCP tools available in the Amp environment:
900
+
901
+ - **`Task()`** - Amp's Task tool for spawning parallel subagents
902
+ - **`skill()`** - Amp's skill loading function (e.g., `skill("worker")`)
903
+ - **`mcp__gkg__*`** - Graph Knowledge Graph MCP for codebase exploration
904
+ - **`mcp__morph_mcp__*`** - Morph MCP for fast file editing
905
+ - **`mcp__MCP_DOCKER__*`** - Docker Toolkit MCP for web search and docs
906
+ - **`mcp__shadcn__*`** - shadcn MCP for UI components
907
+ - **`mcp__mcp_agent_mail__*`** - Agent Mail MCP for coordination
908
+
909
+ All `bd` and `bv` commands are real CLI tools from the [beads](https://github.com/steveyegge/beads) project.