@dv.nghiem/flowdeck 0.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 (331) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +136 -0
  3. package/bin/flowdeck.js +108 -0
  4. package/dist/agents/architect.d.ts +3 -0
  5. package/dist/agents/architect.d.ts.map +1 -0
  6. package/dist/agents/code-explorer.d.ts +3 -0
  7. package/dist/agents/code-explorer.d.ts.map +1 -0
  8. package/dist/agents/coder.d.ts +3 -0
  9. package/dist/agents/coder.d.ts.map +1 -0
  10. package/dist/agents/debug.d.ts +4 -0
  11. package/dist/agents/debug.d.ts.map +1 -0
  12. package/dist/agents/doc-updater.d.ts +3 -0
  13. package/dist/agents/doc-updater.d.ts.map +1 -0
  14. package/dist/agents/flowdeck.d.ts +5 -0
  15. package/dist/agents/flowdeck.d.ts.map +1 -0
  16. package/dist/agents/index.d.ts +38 -0
  17. package/dist/agents/index.d.ts.map +1 -0
  18. package/dist/agents/mapper.d.ts +3 -0
  19. package/dist/agents/mapper.d.ts.map +1 -0
  20. package/dist/agents/orchestrator.d.ts +10 -0
  21. package/dist/agents/orchestrator.d.ts.map +1 -0
  22. package/dist/agents/performance.d.ts +4 -0
  23. package/dist/agents/performance.d.ts.map +1 -0
  24. package/dist/agents/planner.d.ts +3 -0
  25. package/dist/agents/planner.d.ts.map +1 -0
  26. package/dist/agents/policy-enforcer.d.ts +3 -0
  27. package/dist/agents/policy-enforcer.d.ts.map +1 -0
  28. package/dist/agents/researcher.d.ts +3 -0
  29. package/dist/agents/researcher.d.ts.map +1 -0
  30. package/dist/agents/reviewer.d.ts +3 -0
  31. package/dist/agents/reviewer.d.ts.map +1 -0
  32. package/dist/agents/risk-analyst.d.ts +3 -0
  33. package/dist/agents/risk-analyst.d.ts.map +1 -0
  34. package/dist/agents/security-auditor.d.ts +3 -0
  35. package/dist/agents/security-auditor.d.ts.map +1 -0
  36. package/dist/agents/specialist.d.ts +5 -0
  37. package/dist/agents/specialist.d.ts.map +1 -0
  38. package/dist/agents/tester.d.ts +3 -0
  39. package/dist/agents/tester.d.ts.map +1 -0
  40. package/dist/agents/types.d.ts +20 -0
  41. package/dist/agents/types.d.ts.map +1 -0
  42. package/dist/agents/writer.d.ts +3 -0
  43. package/dist/agents/writer.d.ts.map +1 -0
  44. package/dist/commands/analysis/analysis.test.d.ts +2 -0
  45. package/dist/commands/analysis/analysis.test.d.ts.map +1 -0
  46. package/dist/commands/analysis/analyze-change.d.ts +148 -0
  47. package/dist/commands/analysis/analyze-change.d.ts.map +1 -0
  48. package/dist/commands/analysis/evaluate-risk.d.ts +77 -0
  49. package/dist/commands/analysis/evaluate-risk.d.ts.map +1 -0
  50. package/dist/commands/analysis/guarded-edit.d.ts +72 -0
  51. package/dist/commands/analysis/guarded-edit.d.ts.map +1 -0
  52. package/dist/commands/execution/deploy-check.d.ts +91 -0
  53. package/dist/commands/execution/deploy-check.d.ts.map +1 -0
  54. package/dist/commands/execution/fix-bug.d.ts +187 -0
  55. package/dist/commands/execution/fix-bug.d.ts.map +1 -0
  56. package/dist/commands/execution/new-feature.d.ts +171 -0
  57. package/dist/commands/execution/new-feature.d.ts.map +1 -0
  58. package/dist/commands/execution/review-code.d.ts +130 -0
  59. package/dist/commands/execution/review-code.d.ts.map +1 -0
  60. package/dist/commands/execution/write-docs.d.ts +94 -0
  61. package/dist/commands/execution/write-docs.d.ts.map +1 -0
  62. package/dist/commands/governance/approve.d.ts +80 -0
  63. package/dist/commands/governance/approve.d.ts.map +1 -0
  64. package/dist/commands/intelligence/blast-radius.d.ts +67 -0
  65. package/dist/commands/intelligence/blast-radius.d.ts.map +1 -0
  66. package/dist/commands/intelligence/impact-radar.d.ts +71 -0
  67. package/dist/commands/intelligence/impact-radar.d.ts.map +1 -0
  68. package/dist/commands/intelligence/intelligence.test.d.ts +2 -0
  69. package/dist/commands/intelligence/intelligence.test.d.ts.map +1 -0
  70. package/dist/commands/intelligence/regression-predict.d.ts +75 -0
  71. package/dist/commands/intelligence/regression-predict.d.ts.map +1 -0
  72. package/dist/commands/intelligence/review-route.d.ts +65 -0
  73. package/dist/commands/intelligence/review-route.d.ts.map +1 -0
  74. package/dist/commands/intelligence/test-gap.d.ts +73 -0
  75. package/dist/commands/intelligence/test-gap.d.ts.map +1 -0
  76. package/dist/commands/intelligence/translate-intent.d.ts +87 -0
  77. package/dist/commands/intelligence/translate-intent.d.ts.map +1 -0
  78. package/dist/commands/intelligence/volatility-map-cmd.d.ts +68 -0
  79. package/dist/commands/intelligence/volatility-map-cmd.d.ts.map +1 -0
  80. package/dist/commands/planning/ask.d.ts +62 -0
  81. package/dist/commands/planning/ask.d.ts.map +1 -0
  82. package/dist/commands/planning/ask.test.d.ts +2 -0
  83. package/dist/commands/planning/ask.test.d.ts.map +1 -0
  84. package/dist/commands/planning/dashboard.d.ts +30 -0
  85. package/dist/commands/planning/dashboard.d.ts.map +1 -0
  86. package/dist/commands/planning/discuss.d.ts +39 -0
  87. package/dist/commands/planning/discuss.d.ts.map +1 -0
  88. package/dist/commands/planning/plan.d.ts +67 -0
  89. package/dist/commands/planning/plan.d.ts.map +1 -0
  90. package/dist/commands/planning/roadmap.d.ts +105 -0
  91. package/dist/commands/planning/roadmap.d.ts.map +1 -0
  92. package/dist/commands/setup/doctor.d.ts +10 -0
  93. package/dist/commands/setup/doctor.d.ts.map +1 -0
  94. package/dist/commands/setup/map-codebase.d.ts +62 -0
  95. package/dist/commands/setup/map-codebase.d.ts.map +1 -0
  96. package/dist/commands/setup/new-project.d.ts +19 -0
  97. package/dist/commands/setup/new-project.d.ts.map +1 -0
  98. package/dist/commands/setup/settings.d.ts +57 -0
  99. package/dist/commands/setup/settings.d.ts.map +1 -0
  100. package/dist/commands/state/checkpoint.d.ts +27 -0
  101. package/dist/commands/state/checkpoint.d.ts.map +1 -0
  102. package/dist/commands/state/multi-repo.d.ts +63 -0
  103. package/dist/commands/state/multi-repo.d.ts.map +1 -0
  104. package/dist/commands/state/progress.d.ts +57 -0
  105. package/dist/commands/state/progress.d.ts.map +1 -0
  106. package/dist/commands/state/resume.d.ts +11 -0
  107. package/dist/commands/state/resume.d.ts.map +1 -0
  108. package/dist/commands/state/workspace-commands.d.ts +207 -0
  109. package/dist/commands/state/workspace-commands.d.ts.map +1 -0
  110. package/dist/dashboard/lib/port-finder.d.ts +10 -0
  111. package/dist/dashboard/lib/port-finder.d.ts.map +1 -0
  112. package/dist/dashboard/lib/port-finder.test.d.ts +2 -0
  113. package/dist/dashboard/lib/port-finder.test.d.ts.map +1 -0
  114. package/dist/dashboard/lib/state-reader.d.ts +3 -0
  115. package/dist/dashboard/lib/state-reader.d.ts.map +1 -0
  116. package/dist/dashboard/server.d.ts +2 -0
  117. package/dist/dashboard/server.d.ts.map +1 -0
  118. package/dist/dashboard/server.mjs +13649 -0
  119. package/dist/dashboard/types.d.ts +72 -0
  120. package/dist/dashboard/types.d.ts.map +1 -0
  121. package/dist/dashboard/views/index.ejs +391 -0
  122. package/dist/dashboard/views/partials/blockers.ejs +10 -0
  123. package/dist/dashboard/views/partials/header.ejs +20 -0
  124. package/dist/dashboard/views/partials/phase-timeline.ejs +40 -0
  125. package/dist/dashboard/views/partials/progress.ejs +12 -0
  126. package/dist/hooks/approval-hook.d.ts +13 -0
  127. package/dist/hooks/approval-hook.d.ts.map +1 -0
  128. package/dist/hooks/compaction-hook.d.ts +23 -0
  129. package/dist/hooks/compaction-hook.d.ts.map +1 -0
  130. package/dist/hooks/context-window-monitor.d.ts +21 -0
  131. package/dist/hooks/context-window-monitor.d.ts.map +1 -0
  132. package/dist/hooks/decision-trace-hook.d.ts +13 -0
  133. package/dist/hooks/decision-trace-hook.d.ts.map +1 -0
  134. package/dist/hooks/file-tracker.d.ts +29 -0
  135. package/dist/hooks/file-tracker.d.ts.map +1 -0
  136. package/dist/hooks/guard-rails.d.ts +33 -0
  137. package/dist/hooks/guard-rails.d.ts.map +1 -0
  138. package/dist/hooks/index.d.ts +5 -0
  139. package/dist/hooks/index.d.ts.map +1 -0
  140. package/dist/hooks/notifications.d.ts +21 -0
  141. package/dist/hooks/notifications.d.ts.map +1 -0
  142. package/dist/hooks/patch-trust.d.ts +27 -0
  143. package/dist/hooks/patch-trust.d.ts.map +1 -0
  144. package/dist/hooks/patch-trust.test.d.ts +2 -0
  145. package/dist/hooks/patch-trust.test.d.ts.map +1 -0
  146. package/dist/hooks/session-events.d.ts +8 -0
  147. package/dist/hooks/session-events.d.ts.map +1 -0
  148. package/dist/hooks/session-idle-hook.d.ts +21 -0
  149. package/dist/hooks/session-idle-hook.d.ts.map +1 -0
  150. package/dist/hooks/session-start.d.ts +10 -0
  151. package/dist/hooks/session-start.d.ts.map +1 -0
  152. package/dist/hooks/shell-env-hook.d.ts +21 -0
  153. package/dist/hooks/shell-env-hook.d.ts.map +1 -0
  154. package/dist/hooks/telemetry-hook.d.ts +25 -0
  155. package/dist/hooks/telemetry-hook.d.ts.map +1 -0
  156. package/dist/hooks/todo-hook.d.ts +25 -0
  157. package/dist/hooks/todo-hook.d.ts.map +1 -0
  158. package/dist/hooks/tool-guard.d.ts +41 -0
  159. package/dist/hooks/tool-guard.d.ts.map +1 -0
  160. package/dist/hooks/tool-guard.test.d.ts +2 -0
  161. package/dist/hooks/tool-guard.test.d.ts.map +1 -0
  162. package/dist/index.d.ts +4 -0
  163. package/dist/index.d.ts.map +1 -0
  164. package/dist/index.js +6639 -0
  165. package/dist/lib/confirmation.d.ts +20 -0
  166. package/dist/lib/confirmation.d.ts.map +1 -0
  167. package/dist/lib/impact-radar.d.ts +35 -0
  168. package/dist/lib/impact-radar.d.ts.map +1 -0
  169. package/dist/lib/signatures.d.ts +12 -0
  170. package/dist/lib/signatures.d.ts.map +1 -0
  171. package/dist/lib/timestamps.d.ts +23 -0
  172. package/dist/lib/timestamps.d.ts.map +1 -0
  173. package/dist/mcp/index.d.ts +20 -0
  174. package/dist/mcp/index.d.ts.map +1 -0
  175. package/dist/services/agent-performance.d.ts +29 -0
  176. package/dist/services/agent-performance.d.ts.map +1 -0
  177. package/dist/services/approval-manager.d.ts +30 -0
  178. package/dist/services/approval-manager.d.ts.map +1 -0
  179. package/dist/services/index.d.ts +7 -0
  180. package/dist/services/index.d.ts.map +1 -0
  181. package/dist/services/model-router.d.ts +35 -0
  182. package/dist/services/model-router.d.ts.map +1 -0
  183. package/dist/services/policy-compiler.d.ts +27 -0
  184. package/dist/services/policy-compiler.d.ts.map +1 -0
  185. package/dist/services/run-trace.d.ts +34 -0
  186. package/dist/services/run-trace.d.ts.map +1 -0
  187. package/dist/services/services.test.d.ts +2 -0
  188. package/dist/services/services.test.d.ts.map +1 -0
  189. package/dist/services/telemetry.d.ts +34 -0
  190. package/dist/services/telemetry.d.ts.map +1 -0
  191. package/dist/tools/agent-dispatch.test.d.ts +2 -0
  192. package/dist/tools/agent-dispatch.test.d.ts.map +1 -0
  193. package/dist/tools/codebase-state.d.ts +4 -0
  194. package/dist/tools/codebase-state.d.ts.map +1 -0
  195. package/dist/tools/context-generator.d.ts +3 -0
  196. package/dist/tools/context-generator.d.ts.map +1 -0
  197. package/dist/tools/council.d.ts +4 -0
  198. package/dist/tools/council.d.ts.map +1 -0
  199. package/dist/tools/decision-trace.d.ts +16 -0
  200. package/dist/tools/decision-trace.d.ts.map +1 -0
  201. package/dist/tools/delegate.d.ts +4 -0
  202. package/dist/tools/delegate.d.ts.map +1 -0
  203. package/dist/tools/failure-replay.d.ts +19 -0
  204. package/dist/tools/failure-replay.d.ts.map +1 -0
  205. package/dist/tools/failure-replay.test.d.ts +2 -0
  206. package/dist/tools/failure-replay.test.d.ts.map +1 -0
  207. package/dist/tools/hash-edit.d.ts +3 -0
  208. package/dist/tools/hash-edit.d.ts.map +1 -0
  209. package/dist/tools/planning-state-lib.d.ts +65 -0
  210. package/dist/tools/planning-state-lib.d.ts.map +1 -0
  211. package/dist/tools/planning-state.d.ts +3 -0
  212. package/dist/tools/planning-state.d.ts.map +1 -0
  213. package/dist/tools/policy-engine.d.ts +19 -0
  214. package/dist/tools/policy-engine.d.ts.map +1 -0
  215. package/dist/tools/repo-memory.d.ts +20 -0
  216. package/dist/tools/repo-memory.d.ts.map +1 -0
  217. package/dist/tools/repo-memory.test.d.ts +2 -0
  218. package/dist/tools/repo-memory.test.d.ts.map +1 -0
  219. package/dist/tools/run-parallel.d.ts +4 -0
  220. package/dist/tools/run-parallel.d.ts.map +1 -0
  221. package/dist/tools/run-pipeline.d.ts +4 -0
  222. package/dist/tools/run-pipeline.d.ts.map +1 -0
  223. package/dist/tools/volatility-map.d.ts +18 -0
  224. package/dist/tools/volatility-map.d.ts.map +1 -0
  225. package/dist/tools/volatility-map.test.d.ts +2 -0
  226. package/dist/tools/volatility-map.test.d.ts.map +1 -0
  227. package/dist/tools/workspace-state.d.ts +3 -0
  228. package/dist/tools/workspace-state.d.ts.map +1 -0
  229. package/docs/USER_GUIDE.md +20 -0
  230. package/docs/agents.md +562 -0
  231. package/docs/best-practices.md +47 -0
  232. package/docs/command-migration.md +175 -0
  233. package/docs/commands/fd-analyze-change.md +107 -0
  234. package/docs/commands/fd-ask.md +51 -0
  235. package/docs/commands/fd-checkpoint.md +10 -0
  236. package/docs/commands/fd-dashboard.md +11 -0
  237. package/docs/commands/fd-deploy-check.md +11 -0
  238. package/docs/commands/fd-discuss.md +28 -0
  239. package/docs/commands/fd-evaluate-risk.md +134 -0
  240. package/docs/commands/fd-fix-bug.md +24 -0
  241. package/docs/commands/fd-guarded-edit.md +105 -0
  242. package/docs/commands/fd-map-codebase.md +27 -0
  243. package/docs/commands/fd-multi-repo.md +63 -0
  244. package/docs/commands/fd-new-feature.md +25 -0
  245. package/docs/commands/fd-new-project.md +24 -0
  246. package/docs/commands/fd-plan.md +33 -0
  247. package/docs/commands/fd-progress.md +11 -0
  248. package/docs/commands/fd-resume.md +10 -0
  249. package/docs/commands/fd-review-code.md +29 -0
  250. package/docs/commands/fd-roadmap.md +10 -0
  251. package/docs/commands/fd-settings.md +10 -0
  252. package/docs/commands/fd-write-docs.md +10 -0
  253. package/docs/commands.md +476 -0
  254. package/docs/configuration.md +211 -0
  255. package/docs/feature-integration-architecture.md +255 -0
  256. package/docs/index.md +75 -0
  257. package/docs/installation.md +134 -0
  258. package/docs/intelligence.md +294 -0
  259. package/docs/multi-repo.md +201 -0
  260. package/docs/notifications.md +170 -0
  261. package/docs/parallel-execution.md +227 -0
  262. package/docs/quick-start.md +174 -0
  263. package/docs/rules.md +459 -0
  264. package/docs/skills.md +408 -0
  265. package/docs/workflows.md +376 -0
  266. package/package.json +58 -0
  267. package/postinstall.mjs +102 -0
  268. package/src/rules/README.md +37 -0
  269. package/src/rules/common/agent-orchestration.md +86 -0
  270. package/src/rules/common/coding-style.md +120 -0
  271. package/src/rules/common/git-workflow.md +77 -0
  272. package/src/rules/common/security.md +94 -0
  273. package/src/rules/common/testing.md +105 -0
  274. package/src/rules/golang/patterns.md +187 -0
  275. package/src/rules/java/patterns.md +204 -0
  276. package/src/rules/python/patterns.md +141 -0
  277. package/src/rules/rust/patterns.md +210 -0
  278. package/src/rules/typescript/patterns.md +168 -0
  279. package/src/skills/api-design/SKILL.md +143 -0
  280. package/src/skills/arch-constraint-guard/SKILL.md +61 -0
  281. package/src/skills/blast-radius-preview/SKILL.md +65 -0
  282. package/src/skills/change-impact-radar/SKILL.md +63 -0
  283. package/src/skills/code-review/SKILL.md +108 -0
  284. package/src/skills/code-tour/SKILL.md +101 -0
  285. package/src/skills/codebase-mapping/SKILL.md +87 -0
  286. package/src/skills/codebase-onboarding/SKILL.md +133 -0
  287. package/src/skills/confidence-aware-planning/SKILL.md +67 -0
  288. package/src/skills/context-load/SKILL.md +63 -0
  289. package/src/skills/debug-flow/SKILL.md +75 -0
  290. package/src/skills/decision-trace/SKILL.md +72 -0
  291. package/src/skills/dependency-audit/SKILL.md +126 -0
  292. package/src/skills/deploy-check/SKILL.md +87 -0
  293. package/src/skills/documentation-writer/SKILL.md +154 -0
  294. package/src/skills/failure-replay-engine/SKILL.md +59 -0
  295. package/src/skills/git-release/SKILL.md +94 -0
  296. package/src/skills/git-workflow/SKILL.md +177 -0
  297. package/src/skills/golang-patterns/SKILL.md +511 -0
  298. package/src/skills/human-review-routing/SKILL.md +65 -0
  299. package/src/skills/intent-translator/SKILL.md +57 -0
  300. package/src/skills/java-patterns/SKILL.md +479 -0
  301. package/src/skills/multi-repo/SKILL.md +187 -0
  302. package/src/skills/parallel-execute/SKILL.md +92 -0
  303. package/src/skills/patch-trust-score/SKILL.md +44 -0
  304. package/src/skills/performance-profiling/SKILL.md +153 -0
  305. package/src/skills/plan-task/SKILL.md +101 -0
  306. package/src/skills/python-patterns/SKILL.md +529 -0
  307. package/src/skills/refactor-guide/SKILL.md +117 -0
  308. package/src/skills/regression-prediction/SKILL.md +57 -0
  309. package/src/skills/repo-memory-graph/SKILL.md +49 -0
  310. package/src/skills/rust-patterns/SKILL.md +492 -0
  311. package/src/skills/security-scan/SKILL.md +91 -0
  312. package/src/skills/self-healing-policies/SKILL.md +76 -0
  313. package/src/skills/tdd-workflow/SKILL.md +126 -0
  314. package/src/skills/test-coverage/SKILL.md +94 -0
  315. package/src/skills/test-gap-detector/SKILL.md +58 -0
  316. package/src/skills/volatility-map/SKILL.md +52 -0
  317. package/src/workflows/debug-flow.md +119 -0
  318. package/src/workflows/deploy-check-flow.md +98 -0
  319. package/src/workflows/discuss-flow.md +97 -0
  320. package/src/workflows/execute-flow.md +233 -0
  321. package/src/workflows/execute-phase.md +142 -0
  322. package/src/workflows/fix-bug-flow.md +210 -0
  323. package/src/workflows/map-codebase-flow.md +92 -0
  324. package/src/workflows/multi-repo-flow.md +226 -0
  325. package/src/workflows/parallel-execution-flow.md +236 -0
  326. package/src/workflows/plan-flow.md +126 -0
  327. package/src/workflows/plan-phase.md +101 -0
  328. package/src/workflows/refactor-flow.md +122 -0
  329. package/src/workflows/review-code-flow.md +105 -0
  330. package/src/workflows/spec-driven-flow.md +43 -0
  331. package/src/workflows/write-docs-flow.md +95 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-memory.d.ts","sourceRoot":"","sources":["../../src/tools/repo-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAO/D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACxD,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAClC;AA2BD,eAAO,MAAM,cAAc,EAAE,cAqE3B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=repo-memory.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo-memory.test.d.ts","sourceRoot":"","sources":["../../src/tools/repo-memory.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { type ToolDefinition } from "@opencode-ai/plugin";
2
+ import type { OpencodeClient } from "@opencode-ai/sdk";
3
+ export declare function createRunParallelTool(client: OpencodeClient): ToolDefinition;
4
+ //# sourceMappingURL=run-parallel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-parallel.d.ts","sourceRoot":"","sources":["../../src/tools/run-parallel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAkBtD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CA8G5E"}
@@ -0,0 +1,4 @@
1
+ import { type ToolDefinition } from "@opencode-ai/plugin";
2
+ import type { OpencodeClient } from "@opencode-ai/sdk";
3
+ export declare function createRunPipelineTool(client: OpencodeClient): ToolDefinition;
4
+ //# sourceMappingURL=run-pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-pipeline.d.ts","sourceRoot":"","sources":["../../src/tools/run-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAuBtD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAyG5E"}
@@ -0,0 +1,18 @@
1
+ import { type ToolDefinition } from "@opencode-ai/plugin";
2
+ export interface VolatilityEntry {
3
+ path: string;
4
+ churn_score: number;
5
+ hotfix_count: number;
6
+ todo_count: number;
7
+ last_breakage?: string;
8
+ stability: "stable" | "moderate" | "volatile" | "critical";
9
+ notes: string[];
10
+ }
11
+ export interface VolatilityStore {
12
+ version: string;
13
+ last_updated: string;
14
+ generated_at: string;
15
+ entries: VolatilityEntry[];
16
+ }
17
+ export declare const volatilityMapTool: ToolDefinition;
18
+ //# sourceMappingURL=volatility-map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"volatility-map.d.ts","sourceRoot":"","sources":["../../src/tools/volatility-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAO/D,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAA;IAC1D,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,eAAe,EAAE,CAAA;CAC3B;AA+BD,eAAO,MAAM,iBAAiB,EAAE,cAwE9B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=volatility-map.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"volatility-map.test.d.ts","sourceRoot":"","sources":["../../src/tools/volatility-map.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { type ToolDefinition } from "@opencode-ai/plugin";
2
+ export declare const workspaceStateTool: ToolDefinition;
3
+ //# sourceMappingURL=workspace-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-state.d.ts","sourceRoot":"","sources":["../../src/tools/workspace-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAiH/D,eAAO,MAAM,kBAAkB,EAAE,cAmC/B,CAAA"}
@@ -0,0 +1,20 @@
1
+ # FlowDeck User Guide
2
+
3
+ > **This file is superseded by the modular documentation.**
4
+ > See **[docs/index.md](./index.md)** for the full table of contents.
5
+
6
+ ## Quick links
7
+
8
+ | Topic | File |
9
+ |-------|------|
10
+ | Installation & setup | [installation.md](./installation.md) |
11
+ | First 15 minutes | [quick-start.md](./quick-start.md) |
12
+ | Configuration reference | [configuration.md](./configuration.md) |
13
+ | All agents | [agents.md](./agents.md) |
14
+ | All skills | [skills.md](./skills.md) |
15
+ | All workflows | [workflows.md](./workflows.md) |
16
+ | All commands | [commands.md](./commands.md) |
17
+ | Language rules | [rules.md](./rules.md) |
18
+ | Parallel execution | [parallel-execution.md](./parallel-execution.md) |
19
+ | Multi-repo / microservices | [multi-repo.md](./fd-multi-repo.md) |
20
+ | System notifications | [notifications.md](./notifications.md) |
package/docs/agents.md ADDED
@@ -0,0 +1,562 @@
1
+ # FlowDeck Agents
2
+
3
+ Agents are specialized AI personas installed into OpenCode. Each agent has a focused role and system prompt. Invoke them in any OpenCode prompt with `@agent-name`.
4
+
5
+ ## How to Use Agents
6
+
7
+ ```
8
+ @architect Design the database schema for a multi-tenant SaaS app
9
+ @coder Implement the UserRepository class following the interface in src/interfaces/
10
+ @reviewer Review src/auth/jwt.ts for security issues
11
+ ```
12
+
13
+ Agents are installed to `~/.config/opencode/agent/`. OpenCode loads them automatically — no additional configuration needed.
14
+
15
+ ---
16
+
17
+ ## Agent Quick Reference
18
+
19
+ | Agent | Role | Best for |
20
+ |-------|------|----------|
21
+ | [@architect](#architect) | Designs system architecture, creates ADRs, defines interface contracts | New modules, API design, schema changes, cross-cutting concerns |
22
+ | [@build-error-resolver](#build-error-resolver) | Diagnoses and fixes build failures, type errors, and dependency issues | Broken builds, type mismatches, missing modules |
23
+ | [@code-explorer](#code-explorer) | Reads and maps unfamiliar codebases systematically | Understanding unknown code before modifying it |
24
+ | [@coder](#coder) | Implements features and fixes following confirmed plans | All code implementation tasks |
25
+ | [@debug-specialist](#debug-specialist) | Root cause analysis via hypothesis-driven investigation | Deep bugs that require systematic tracing |
26
+ | [@discusser](#discusser) | Structured requirements Q&A, one question at a time | Starting new projects, defining feature scope |
27
+ | [@doc-updater](#doc-updater) | Keeps documentation in sync with code changes | Post-implementation doc maintenance |
28
+ | [@flowdeck-executor](#flowdeck-executor) | Step-by-step plan execution with atomic commits and state tracking | Executing confirmed PLAN.md files |
29
+ | [@flowdeck-plan-checker](#flowdeck-plan-checker) | Validates plans before execution for completeness and feasibility | Quality gate before running a plan |
30
+ | [@flowdeck-planner](#flowdeck-planner) | Creates detailed, wave-structured implementation plans | Creating execution-ready PLAN.md files |
31
+ | [@mapper](#mapper) | Maps codebase to `.codebase/` structured documentation | Producing STACK.md, ARCHITECTURE.md, CONVENTIONS.md, and more |
32
+ | [@multi-repo-coordinator](#multi-repo-coordinator) | Cross-repo dependency graphs, change propagation, ordered CHANGE PLANs | Features spanning multiple microservices |
33
+ | [@orchestrator](#orchestrator) | Coordinates multi-agent workflows, phase gating, go/no-go decisions | End-to-end feature delivery |
34
+ | [@parallel-coordinator](#parallel-coordinator) | Wave-based parallel execution with WAVE TABLE format and merge protocol | Maximizing throughput on complex tasks |
35
+ | [@performance-optimizer](#performance-optimizer) | Profiling-first bottleneck identification and targeted fixes | Slow endpoints, N+1 queries, bundle bloat |
36
+ | [@planner](#planner) | Implementation planning with explicit user confirmation before execution | Planning any multi-file feature |
37
+ | [@refactor-guide](#refactor-guide) | Safe refactoring with test-first guarantees, preserves external behavior | Cleanup, extraction, debt reduction |
38
+ | [@researcher](#researcher) | API documentation research, library comparison, cited sources | Understanding unfamiliar APIs before implementation |
39
+ | [@reviewer](#reviewer) | Code review covering security, logic, and quality — 80% confidence threshold | Pre-merge and pre-deploy code checks |
40
+ | [@security-auditor](#security-auditor) | OWASP-based scanning, PASS/FAIL report, severity classification | Security-sensitive changes, pre-release audits |
41
+ | [@task-splitter](#task-splitter) | Dependency graph decomposition, wave-based work breakdown | Decomposing large tasks into parallel workstreams |
42
+ | [@tester](#tester) | TDD (Red-Green-Refactor), AAA pattern, unit/integration/e2e tests | Writing tests for features and bug regressions |
43
+ | [@writer](#writer) | Technical documentation, ADRs, READMEs, changelog entries | Any documentation creation or update task |
44
+
45
+ ---
46
+
47
+ ## Detailed Agent Profiles
48
+
49
+ ### @architect
50
+
51
+ The architect designs systems before anyone writes code. It reads existing architecture documents and conventions first, then proposes decisions in writing — as ADRs and TypeScript interface contracts — before any implementation begins. It applies principles like "no speculative abstraction" (only abstract when there are 3+ concrete use cases) and surfaces conflicts with existing decisions rather than resolving them silently.
52
+
53
+ **Model:** `anthropic/claude-opus-4-5`
54
+
55
+ **Best for:**
56
+ - Designing database schemas, API boundaries, and service interfaces for new features
57
+ - Writing Architecture Decision Records (ADRs) for non-obvious technical choices
58
+ - Defining TypeScript interface contracts before implementation starts
59
+ - Identifying cross-cutting concerns such as authentication, logging, and rate limiting
60
+
61
+ **Example usage:**
62
+ ```
63
+ @architect We need to add subscription billing. Design the data model and service interfaces.
64
+ Read .codebase/ARCHITECTURE.md first. Save the ADR to .planning/adr/.
65
+ ```
66
+
67
+ **Works with:** `@coder` (consumes interface contracts), `@flowdeck-planner` (uses ADRs as planning input), `@multi-repo-coordinator` (defines contract-first change specs)
68
+
69
+ ---
70
+
71
+ ### @build-error-resolver
72
+
73
+ The build error resolver collects all build errors before touching a single file. It runs the full diagnostic suite (`tsc --noEmit`, build, lint, tests) and reads the complete output — never skims — because the first error is almost always the root cause and later errors are cascades. It applies the minimum fix to resolve the root cause, then re-runs to confirm no cascades remain.
74
+
75
+ **Model:** `anthropic/claude-sonnet-4-5`
76
+
77
+ **Best for:**
78
+ - Diagnosing TypeScript type errors, missing modules, and circular imports
79
+ - Resolving broken builds after dependency updates or refactors
80
+ - Fixing compilation failures in a cascading error scenario
81
+ - Identifying the root error versus cascade errors in a long error log
82
+
83
+ **Example usage:**
84
+ ```
85
+ @build-error-resolver The CI build is failing after the auth refactor. Run the diagnostics
86
+ and fix the root cause with minimal changes.
87
+ ```
88
+
89
+ **Works with:** `@coder` (applies fixes identified by the resolver), `@orchestrator` (escalates build failures during plan execution), `@reviewer` (verifies fix quality)
90
+
91
+ ---
92
+
93
+ ### @code-explorer
94
+
95
+ The code explorer maps unfamiliar code before anyone modifies it. It is read-only by design — it reports what it finds, not what it expects. Starting from the top-level directory, it traces entry points and call paths, identifies key abstractions and data models, and documents conventions in use. Its output gives other agents the context they need to make surgical changes.
96
+
97
+ **Model:** `anthropic/claude-haiku-4-5`
98
+
99
+ **Best for:**
100
+ - Understanding a new module or service before making changes to it
101
+ - Tracing a specific flow end-to-end (e.g., HTTP request to database to response)
102
+ - Identifying where in the codebase a task-relevant piece of logic lives
103
+ - Feeding structural context to `@architect` or `@coder` before implementation
104
+
105
+ **Example usage:**
106
+ ```
107
+ @code-explorer Map the authentication flow in src/auth/. Trace a login request from the
108
+ route handler to the database query. Identify the session management approach.
109
+ ```
110
+
111
+ **Works with:** `@architect` (provides structural context for design decisions), `@coder` (surfaces conventions to match), `@mapper` (complements deeper .codebase/ documentation)
112
+
113
+ ---
114
+
115
+ ### @coder
116
+
117
+ The coder implements features and fixes following a confirmed plan. It reads conventions and architecture docs before touching any source file, matches existing patterns precisely, and makes only the changes the task requires — no drive-by refactors. Functions stay under 50 lines. Every external input is validated at the boundary. If the plan is unclear or technically infeasible, it stops and asks rather than guessing.
118
+
119
+ **Model:** `anthropic/claude-opus-4-5`
120
+
121
+ **Best for:**
122
+ - Implementing any feature step once a plan has been confirmed
123
+ - Applying fixes identified by `@debug-specialist` or `@build-error-resolver`
124
+ - Executing a single wave of a parallel execution plan
125
+ - Making surgical changes to existing code with minimal diff surface area
126
+
127
+ **Example usage:**
128
+ ```
129
+ @coder Implement the UserRepository class defined in contracts/user-repository.ts.
130
+ Follow patterns in src/repositories/order-repository.ts. No new dependencies.
131
+ ```
132
+
133
+ **Works with:** `@tester` (verifies implementation), `@reviewer` (reviews the diff), `@architect` (consumes interface contracts)
134
+
135
+ ---
136
+
137
+ ### @debug-specialist
138
+
139
+ The debug specialist finds root causes through systematic investigation — never by guessing. It reads the full stack trace from top to bottom, traces execution backward from the point of failure, and identifies the earliest point in the call chain where invariants are violated. For regressions, it uses `git bisect` to identify the culprit commit. It produces a structured debug report before any fix is proposed.
140
+
141
+ **Model:** `anthropic/claude-sonnet-4-5`
142
+
143
+ **Best for:**
144
+ - Diagnosing intermittent failures, race conditions, and memory leaks
145
+ - Tracing the cause of a `Cannot read property of undefined` or similar runtime error
146
+ - Using `git bisect` to find which commit introduced a regression
147
+ - Writing a hypothesis and validating it before touching any code
148
+
149
+ **Example usage:**
150
+ ```
151
+ @debug-specialist The order total is calculated incorrectly when a discount code is applied
152
+ alongside a loyalty credit. Trace the calculation path and identify the root cause.
153
+ ```
154
+
155
+ **Works with:** `@tester` (writes the regression test once root cause is confirmed), `@coder` (applies the minimal fix), `@build-error-resolver` (handles compile-time failures the debug specialist doesn't cover)
156
+
157
+ ---
158
+
159
+ ### @discusser
160
+
161
+ The discusser extracts clear requirements through focused, one-at-a-time questioning. It never asks two questions in a single turn. Every decision is numbered (D-01, D-02, ...) and recorded with its rationale. If a new answer conflicts with a previous decision, it flags the conflict immediately and presents options. All decisions are saved to `.planning/phases/phase-N/DISCUSS.md` in a format that `@flowdeck-planner` can trace back to individual tasks.
162
+
163
+ **Model:** `anthropic/claude-sonnet-4-5`
164
+
165
+ **Best for:**
166
+ - Defining the scope of a new project or feature phase before planning begins
167
+ - Surfacing implicit assumptions and resolving ambiguity through structured Q&A
168
+ - Producing a numbered decision log that links requirements to implementation tasks
169
+ - Detecting and resolving conflicts between requirements early
170
+
171
+ **Example usage:**
172
+ ```
173
+ @discusser We want to add multi-factor authentication. Ask me the questions you need
174
+ to nail down the requirements. One question at a time.
175
+ ```
176
+
177
+ **Works with:** `@flowdeck-planner` (uses DISCUSS.md as plan input), `@orchestrator` (manages the discuss phase), `@planner` (alternative for lighter planning workflows)
178
+
179
+ ---
180
+
181
+ ### @doc-updater
182
+
183
+ The doc updater synchronizes documentation with the current implementation after code changes. It targets README installation instructions, API reference function signatures, inline comments on complex algorithms, and changelog entries under `## Unreleased`. It verifies that every example it writes actually compiles and runs. Dead links and dead examples are removed, not left behind.
184
+
185
+ **Model:** `anthropic/claude-sonnet-4-5`
186
+
187
+ **Best for:**
188
+ - Updating API reference docs after function signatures change
189
+ - Syncing README quick-start examples after CLI or config changes
190
+ - Adding changelog entries in Keep a Changelog format after a feature lands
191
+ - Removing stale documentation references after code is deleted
192
+
193
+ **Example usage:**
194
+ ```
195
+ @doc-updater The auth module was refactored in this PR. Update docs/api/auth.md to match
196
+ the new function signatures and verify the examples still compile.
197
+ ```
198
+
199
+ **Works with:** `@writer` (writer drafts new docs; doc-updater keeps them current), `@reviewer` (flags doc accuracy issues during review), `@code-explorer` (reads current implementation to verify accuracy)
200
+
201
+ ---
202
+
203
+ ### @flowdeck-executor
204
+
205
+ The flowdeck executor runs confirmed PLAN.md files with discipline. It reads STATE.md, the active PLAN.md, and PROJECT.md before executing any task. Each task gets an atomic commit with a conventional commit message. If reality diverges from the plan, it documents the deviation in a `## Deviations` section rather than silently doing something different. After all tasks complete, it writes a SUMMARY.md with delivered items, verified success criteria, and deviations.
206
+
207
+ **Model:** `anthropic/claude-sonnet-4-5`
208
+
209
+ **Best for:**
210
+ - Executing a confirmed phase plan step by step with checkpointed state
211
+ - Ensuring every task in a plan is committed atomically before moving to the next
212
+ - Documenting deviations from the plan without abandoning it
213
+ - Generating a SUMMARY.md that makes the phase reviewable by humans
214
+
215
+ **Example usage:**
216
+ ```
217
+ @flowdeck-executor Execute phase 2. Read STATE.md for the active plan path.
218
+ Checkpoint after each task and document any deviations.
219
+ ```
220
+
221
+ **Works with:** `@orchestrator` (gates execution and manages phase state), `@flowdeck-plan-checker` (validates the plan before this agent runs), `@coder` (delegates implementation tasks)
222
+
223
+ ---
224
+
225
+ ### @flowdeck-plan-checker
226
+
227
+ The flowdeck plan checker reviews a PLAN.md before execution and returns a scored PASS or FAIL verdict. It checks three dimensions: completeness (all requirements from DISCUSS.md are covered, every task has a defined scope and success criteria), feasibility (no task exceeds 3 hours, no circular dependencies, no assumed capabilities that don't exist), and testability (each success criterion is observable, edge cases are addressed, verification commands are specified). A score of 8–10 earns PASS, 6–7 earns PASS_WITH_NOTES, and 0–5 earns FAIL.
228
+
229
+ **Model:** `anthropic/claude-sonnet-4-5`
230
+
231
+ **Best for:**
232
+ - Catching vague success criteria before they cause ambiguous execution
233
+ - Identifying tasks with missing file paths or verification steps
234
+ - Ensuring every requirement from DISCUSS.md is mapped to at least one task
235
+ - Flagging infeasible tasks that assume capabilities not yet in the codebase
236
+
237
+ **Example usage:**
238
+ ```
239
+ @flowdeck-plan-checker Review .planning/phases/phase-1/PLAN.md. Score it and return
240
+ PASS or FAIL with specific recommendations for any failures.
241
+ ```
242
+
243
+ **Works with:** `@flowdeck-planner` (generates the plan this agent reviews), `@orchestrator` (receives the verdict and decides whether to proceed), `@flowdeck-executor` (runs the plan only after this agent passes it)
244
+
245
+ ---
246
+
247
+ ### @flowdeck-planner
248
+
249
+ The flowdeck planner creates execution-ready PLAN.md files with wave-structured task breakdown. Every task is scoped to specific files, sized to fit within 3 hours, and paired with a verifiable success criterion. Tasks are grouped into waves based on their dependency graph — Wave 1 contains foundation work that can run in parallel, Wave 2 gates on Wave 1, and so on. Every task traces back to a requirement from DISCUSS.md or REQUIREMENTS.md.
250
+
251
+ **Model:** `anthropic/claude-sonnet-4-5`
252
+
253
+ **Best for:**
254
+ - Creating a PLAN.md for a new feature phase from DISCUSS.md decisions
255
+ - Decomposing requirements into file-level tasks with explicit wave ordering
256
+ - Building a dependency graph that maximizes parallel execution
257
+ - Producing a plan that `@flowdeck-plan-checker` will score PASS on the first review
258
+
259
+ **Example usage:**
260
+ ```
261
+ @flowdeck-planner Create a PLAN.md for phase 1 using the decisions in
262
+ .planning/phases/phase-1/DISCUSS.md. Group tasks into waves.
263
+ Save to .planning/phases/phase-1/PLAN.md.
264
+ ```
265
+
266
+ **Works with:** `@flowdeck-plan-checker` (reviews the plan this agent creates), `@flowdeck-executor` (runs the plan), `@orchestrator` (triggers this agent via the `/fd-plan` command)
267
+
268
+ ---
269
+
270
+ ### @mapper
271
+
272
+ The mapper produces factual codebase documentation for the `.codebase/` directory. In a parallel run of 6 instances, each mapper is assigned one output file: `STACK.md`, `ARCHITECTURE.md`, `STRUCTURE.md`, `CONVENTIONS.md`, `TESTING.md`, or `CONCERNS.md`. It reads source files directly and reports only what it can verify — any gap is marked `UNKNOWN — needs verification` rather than filled with assumptions. Every claim is traceable to a specific file path.
273
+
274
+ **Model:** `google/gemini-2.5-flash`
275
+
276
+ **Best for:**
277
+ - Generating `.codebase/CONVENTIONS.md` with real naming patterns backed by file:line examples
278
+ - Producing `STACK.md` with exact pinned versions from manifest files
279
+ - Populating `CONCERNS.md` by grepping for `TODO`, `FIXME`, and `HACK` markers
280
+ - Running in parallel with 5 other mapper instances via `@parallel-coordinator`
281
+
282
+ **Example usage:**
283
+ ```
284
+ @mapper Write .codebase/CONVENTIONS.md. Read actual source files to identify naming
285
+ patterns, import style, error handling, and async patterns. Include file:line examples.
286
+ ```
287
+
288
+ **Works with:** `@orchestrator` (coordinates parallel mapper runs), `@code-explorer` (complementary — explorer traces flows, mapper documents structure), `@writer` (writer may document narrative; mapper documents facts)
289
+
290
+ ---
291
+
292
+ ### @multi-repo-coordinator
293
+
294
+ The multi-repo coordinator manages change propagation across a microservice architecture. It reads the sub-repo registry from `.planning/config.json`, builds a dependency graph (upstream-api → downstream-consumer → gateway order), detects conflicts between concurrent service changes, and produces a per-repo CHANGE PLAN ordered by that graph. API contracts are defined first; implementation follows in dependency order so upstream services always deploy before their consumers.
295
+
296
+ **Model:** `anthropic/claude-sonnet-4-5`
297
+
298
+ **Best for:**
299
+ - Coordinating a feature that requires changes across two or more services
300
+ - Ordering deployments when an upstream API contract is changing
301
+ - Detecting which downstream consumers will break when a shared library bumps a major version
302
+ - Producing a CHANGE PLAN document that teams can use to coordinate their work
303
+
304
+ **Example usage:**
305
+ ```
306
+ @multi-repo-coordinator The user-service is adding a `preferences` field to GET /users/:id.
307
+ Map which downstream consumers call this endpoint and produce
308
+ an ordered CHANGE PLAN.
309
+ ```
310
+
311
+ **Works with:** `@architect` (defines contract-first change specs), `@coder` (implements changes per repo), `@tester` (verifies cross-repo integration)
312
+
313
+ ---
314
+
315
+ ### @orchestrator
316
+
317
+ The orchestrator coordinates multi-agent execution for feature delivery. At startup it reads STATE.md and the active PLAN.md, identifies the first incomplete step, delegates it to the appropriate specialist, waits for completion, marks progress, and advances to the next step. It enforces phase gating — execution only proceeds when DISCUSS.md and PLAN.md are confirmed. If a delegated agent fails after one retry, it escalates to the user with specific options rather than continuing silently.
318
+
319
+ **Model:** `anthropic/claude-sonnet-4-5`
320
+
321
+ **Best for:**
322
+ - Running `/fd-new-feature` to drive an end-to-end feature delivery cycle
323
+ - Enforcing the discuss → plan → execute → review phase state machine
324
+ - Coordinating error recovery when a specialist agent fails mid-execution
325
+ - Tracking plan progress and updating STATE.md after each step
326
+
327
+ **Example usage:**
328
+ ```
329
+ @orchestrator Resume execution of the active plan. Read STATE.md to find the current
330
+ phase. Delegate incomplete steps in order and mark each complete.
331
+ ```
332
+
333
+ **Works with:** `@flowdeck-executor` (executes plan steps), `@flowdeck-plan-checker` (validates plans before execution), `@parallel-coordinator` (delegates parallel waves)
334
+
335
+ ---
336
+
337
+ ### @parallel-coordinator
338
+
339
+ The parallel coordinator maximizes throughput by running independent work simultaneously in waves. At the start of every job it emits a WAVE TABLE — a formatted table showing every agent slot and its wave dependencies. It delegates agents by wave, waits for each wave to complete before advancing, and runs a merge protocol when parallel tracks touch overlapping areas. The standard wave structure is: Wave 1 (research + exploration), Wave 2 (architecture, serial), Wave 3 (implementation + tests), Wave 4 (review + security).
340
+
341
+ **Model:** `anthropic/claude-sonnet-4-5`
342
+
343
+ **Best for:**
344
+ - Executing a plan where multiple tasks are provably independent of each other
345
+ - Running `@researcher` and `@code-explorer` simultaneously before `@architect` begins
346
+ - Running `@coder` and `@tester` in parallel from `@architect`'s contracts
347
+ - Resolving merge conflicts when two implementation tracks touched the same file
348
+
349
+ **Example usage:**
350
+ ```
351
+ @parallel-coordinator Execute the PLAN.md using wave-based parallel execution.
352
+ Emit the WAVE TABLE first, then delegate agents wave by wave.
353
+ ```
354
+
355
+ **Works with:** `@orchestrator` (delegates parallel waves to this agent), `@task-splitter` (produces the wave breakdown this agent executes), `@coder` + `@tester` (run in parallel in Wave 3)
356
+
357
+ ---
358
+
359
+ ### @performance-optimizer
360
+
361
+ The performance optimizer identifies and fixes performance bottlenecks using data, never intuition. It always measures before optimizing: Node.js profiler, `webpack-bundle-analyzer`, `EXPLAIN ANALYZE`, or Lighthouse depending on the target. It reports findings as before/after numbers. It never proposes a speculative optimization — only improvements justified by profiling output. It targets Core Web Vitals thresholds (LCP < 2.5s, FID < 100ms) and common patterns like N+1 queries and O(n²) algorithms.
362
+
363
+ **Model:** `anthropic/claude-sonnet-4-5`
364
+
365
+ **Best for:**
366
+ - Diagnosing slow API endpoints using `EXPLAIN ANALYZE` on the database queries
367
+ - Reducing JavaScript bundle size with `webpack-bundle-analyzer` or `source-map-explorer`
368
+ - Eliminating N+1 query patterns by building an index before loops
369
+ - Optimizing React render performance with `useMemo` and `React.memo`
370
+
371
+ **Example usage:**
372
+ ```
373
+ @performance-optimizer The /api/orders endpoint is taking 2-3 seconds. Profile the database
374
+ queries and identify the bottleneck. Show before/after numbers.
375
+ ```
376
+
377
+ **Works with:** `@coder` (implements optimizations once bottleneck is confirmed), `@tester` (writes benchmarks to verify improvement), `@reviewer` (checks that optimizations don't introduce bugs)
378
+
379
+ ---
380
+
381
+ ### @planner
382
+
383
+ The planner creates detailed, file-level implementation plans with an explicit user confirmation gate before any code is written. It reads ARCHITECTURE.md and existing conventions first, extracts both explicit and implicit requirements, orders steps by dependency (data models → schema → repository → service → API → tests → UI → docs), and flags risks. After presenting the plan it pauses and waits for the user to confirm before execution begins.
384
+
385
+ **Model:** `anthropic/claude-opus-4-5`
386
+
387
+ **Best for:**
388
+ - Planning any feature that spans more than two files before writing code
389
+ - Identifying architecture conflicts and unknowns that would block implementation
390
+ - Ordering implementation steps so foundation code is in place before dependent code
391
+ - Generating a plan that feeds directly into `@coder`'s execution
392
+
393
+ **Example usage:**
394
+ ```
395
+ @planner Plan the implementation of JWT refresh tokens. Read .codebase/ARCHITECTURE.md.
396
+ List every file that needs to change and the order to change them.
397
+ Pause for my confirmation before we proceed.
398
+ ```
399
+
400
+ **Works with:** `@architect` (provides interface contracts and ADRs that feed the plan), `@coder` (executes the confirmed plan), `@flowdeck-planner` (alternative for structured FlowDeck plan format)
401
+
402
+ ---
403
+
404
+ ### @refactor-guide
405
+
406
+ The refactor guide changes code structure without changing observable behavior. It requires a green test suite before starting and verifies the suite stays green after every single transformation. Each transformation is committed independently with a `refactor:` prefix — never batched. It stops immediately if a test breaks and looks for a smaller step. It covers extract-function, rename, move-module, inline-variable, and similar low-risk catalog transforms, ordered from lowest to highest risk.
407
+
408
+ **Model:** `anthropic/claude-sonnet-4-5`
409
+
410
+ **Best for:**
411
+ - Extracting functions from files over 50 lines or 800 lines
412
+ - Eliminating code duplication by identifying and extracting shared logic
413
+ - Renaming variables and functions that no longer reflect their purpose
414
+ - Preparing a module for a new feature by reducing its complexity first
415
+
416
+ **Example usage:**
417
+ ```
418
+ @refactor-guide Refactor src/services/order-service.ts. It's 600 lines with several
419
+ large functions. Extract into smaller functions. Keep all tests green.
420
+ One commit per transformation.
421
+ ```
422
+
423
+ **Works with:** `@tester` (confirms suite is green before and after each step), `@coder` (applies transformations), `@mapper` (identifies refactoring candidates across the codebase)
424
+
425
+ ---
426
+
427
+ ### @researcher
428
+
429
+ The researcher finds accurate, cited information before anyone writes code. It searches Context7 first for up-to-date library documentation, then vendor docs, then package registries. Every fact is paired with its source URL. It never cites StackOverflow as a primary source and never fabricates API documentation — if it cannot find an authoritative source, it says so explicitly. Output follows a structured format covering "what it is", "how to use it", and "gotchas".
430
+
431
+ **Model:** `openai/gpt-4o`
432
+
433
+ **Best for:**
434
+ - Documenting an unfamiliar library's API before `@coder` uses it
435
+ - Comparing two libraries (e.g., `zod` vs `joi`) with concrete tradeoffs cited from official sources
436
+ - Finding the correct pagination API, error response format, or auth flow for an external service
437
+ - Identifying breaking changes between library versions that affect the implementation plan
438
+
439
+ **Example usage:**
440
+ ```
441
+ @researcher Document the Stripe Checkout API for subscription billing. Cover: session creation,
442
+ webhook event types, and how to handle failed payments. Cite official Stripe docs.
443
+ ```
444
+
445
+ **Works with:** `@coder` (receives research output before implementation), `@architect` (uses library capability research to inform interface design), `@parallel-coordinator` (runs in parallel with `@code-explorer` in Wave 1)
446
+
447
+ ---
448
+
449
+ ### @reviewer
450
+
451
+ The reviewer checks code for correctness, security, and adherence to project conventions. It reads full files — not just the diff — to understand call context. It applies an 80% confidence threshold before flagging an issue: speculation is not a finding. Findings are classified as CRITICAL, HIGH, MEDIUM, or PASS. It checks for hardcoded credentials, SQL injection, XSS, missing auth middleware, improper error handling, and convention violations.
452
+
453
+ **Model:** `google/gemini-2.5-flash`
454
+
455
+ **Best for:**
456
+ - Reviewing a pull request before it is merged
457
+ - Checking a feature for security issues before it reaches staging
458
+ - Verifying that implementation matches the original plan and interface contracts
459
+ - Running in parallel with `@security-auditor` for a comprehensive pre-deploy check
460
+
461
+ **Example usage:**
462
+ ```
463
+ @reviewer Review the diff in src/routes/payments.ts. Check for injection vulnerabilities,
464
+ missing auth middleware, and convention adherence. Report by severity.
465
+ ```
466
+
467
+ **Works with:** `@security-auditor` (runs in parallel for deeper security coverage), `@orchestrator` (receives review verdict and decides whether to advance phase), `@coder` (receives actionable findings and applies fixes)
468
+
469
+ ---
470
+
471
+ ### @security-auditor
472
+
473
+ The security auditor performs deep security audits against the OWASP Top 10. It checks for injection vulnerabilities (SQL, NoSQL, command, LDAP, template), broken access control (missing ownership checks, role bypasses), cryptographic failures (MD5/SHA1 for passwords, plaintext secrets), and dependency risks (known CVEs). It produces a PASS/FAIL report with severity classification and specific remediation steps. It does not apply fixes — that is `@coder`'s responsibility.
474
+
475
+ **Model:** `anthropic/claude-sonnet-4-5`
476
+
477
+ **Best for:**
478
+ - Auditing authentication and authorization code before merging security-sensitive PRs
479
+ - Scanning for hardcoded secrets and exposed API keys across changed files
480
+ - Checking dependency manifests for packages with known CVEs
481
+ - Producing a formal security report for compliance or handoff purposes
482
+
483
+ **Example usage:**
484
+ ```
485
+ @security-auditor Audit src/auth/ for OWASP Top 10 vulnerabilities. Focus on A01 (access control)
486
+ and A02 (cryptographic failures). Return PASS or FAIL with severity classification.
487
+ ```
488
+
489
+ **Works with:** `@reviewer` (parallel review partner), `@coder` (applies remediations after audit findings), `@orchestrator` (aggregates audit result into go/no-go decision)
490
+
491
+ ---
492
+
493
+ ### @task-splitter
494
+
495
+ The task splitter decomposes complex tasks into independent parallel workstreams. It reads a feature description or PLAN.md, builds a dependency graph, groups tasks into waves where each wave's work is provably independent, and emits a structured parallel execution plan that `@parallel-coordinator` can execute directly. Each track includes: assigned agent, target files, specific task, and a verifiable completion criterion.
496
+
497
+ **Model:** `anthropic/claude-sonnet-4-5`
498
+
499
+ **Best for:**
500
+ - Breaking a large feature into parallel workstreams before handing off to `@parallel-coordinator`
501
+ - Identifying which tasks must be serial (dependency gates) versus truly independent
502
+ - Sizing and scoping tasks so each fits within a single agent session
503
+ - Producing a wave plan when `@flowdeck-planner` is unavailable or overkill
504
+
505
+ **Example usage:**
506
+ ```
507
+ @task-splitter Decompose the payment integration feature into parallel workstreams.
508
+ Identify which parts can run simultaneously and which have dependencies.
509
+ Produce a WAVE TABLE with agent assignments.
510
+ ```
511
+
512
+ **Works with:** `@parallel-coordinator` (executes the wave plan produced by this agent), `@orchestrator` (uses task breakdown to coordinate execution), `@flowdeck-planner` (complementary — planner creates PLAN.md format, splitter focuses on parallelization)
513
+
514
+ ---
515
+
516
+ ### @tester
517
+
518
+ The tester writes tests that drive implementation using strict Red-Green-Refactor TDD. Tests are written before the code that makes them pass. Every test follows the Arrange-Act-Assert (AAA) pattern. It covers unit tests for isolated logic, integration tests for database and service interactions, and end-to-end tests for user-facing flows. For bug fixes, it writes a failing regression test before any fix is applied so the bug cannot silently recur.
519
+
520
+ **Model:** `anthropic/claude-haiku-4-5`
521
+
522
+ **Best for:**
523
+ - Writing a failing regression test to capture a reported bug before `@coder` fixes it
524
+ - Implementing the test suite for a new feature in parallel with `@coder` from interface contracts
525
+ - Running the full test suite as a verification step after `@refactor-guide` transforms
526
+ - Identifying coverage gaps and writing tests for uncovered paths
527
+
528
+ **Example usage:**
529
+ ```
530
+ @tester Write failing tests for the UserService.create() method. Cover: happy path,
531
+ duplicate email (conflict), and missing required fields (validation error).
532
+ Use the AAA pattern with vitest.
533
+ ```
534
+
535
+ **Works with:** `@coder` (implements code to make tests pass), `@debug-specialist` (writes regression test after root cause is identified), `@refactor-guide` (verifies green suite before and after each transformation)
536
+
537
+ ---
538
+
539
+ ### @writer
540
+
541
+ The writer drafts technical documentation that developers will actually read. It reads every source file it documents — never documents from memory. It favors accuracy over comprehensiveness, examples over prose, and active voice throughout. Documentation types covered: README.md (with standard section order), API reference (per-function with parameters, return types, and usage examples), changelogs (Keep a Changelog format), and ADRs. It marks anything it cannot verify as `UNKNOWN` rather than guessing.
542
+
543
+ **Model:** `anthropic/claude-haiku-4-5`
544
+
545
+ **Best for:**
546
+ - Writing a README.md from scratch for a new project or module
547
+ - Drafting API reference documentation for newly implemented public functions
548
+ - Creating a changelog entry after a release milestone
549
+ - Writing a code tour or architectural overview document
550
+
551
+ **Example usage:**
552
+ ```
553
+ @writer Write a README.md for the payments module in src/payments/.
554
+ Read the source files first. Include: purpose, quick start, API reference,
555
+ and configuration options. Verify all examples compile.
556
+ ```
557
+
558
+ **Works with:** `@doc-updater` (writer creates docs; doc-updater keeps them current), `@reviewer` (checks accuracy of written docs against implementation), `@code-explorer` (maps the codebase so writer has a structural overview before writing)
559
+
560
+ ---
561
+
562
+ ← [Back to Index](index.md)