claude-code-workflow 6.3.47 → 6.3.49

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 (212) hide show
  1. package/.claude/CLAUDE.md +6 -8
  2. package/.claude/agents/action-planning-agent.md +28 -45
  3. package/.claude/agents/cli-lite-planning-agent.md +93 -1
  4. package/.claude/agents/code-developer.md +144 -27
  5. package/.claude/commands/ccw-coordinator.md +182 -24
  6. package/.claude/commands/ccw-debug.md +832 -0
  7. package/.claude/commands/ccw.md +90 -9
  8. package/.claude/commands/cli/cli-init.md +1 -0
  9. package/.claude/commands/issue/convert-to-plan.md +718 -0
  10. package/.claude/commands/issue/from-brainstorm.md +382 -0
  11. package/.claude/commands/memory/tips.md +332 -0
  12. package/.claude/commands/workflow/analyze-with-file.md +804 -0
  13. package/.claude/commands/workflow/brainstorm/auto-parallel.md +18 -43
  14. package/.claude/commands/workflow/brainstorm/role-analysis.md +705 -0
  15. package/.claude/commands/workflow/brainstorm-with-file.md +1153 -0
  16. package/.claude/commands/workflow/debug-with-file.md +7 -5
  17. package/.claude/commands/workflow/execute.md +6 -4
  18. package/.claude/commands/workflow/lite-plan.md +2 -2
  19. package/.claude/commands/workflow/plan-verify.md +162 -327
  20. package/.claude/commands/workflow/plan.md +162 -26
  21. package/.claude/commands/workflow/replan.md +78 -2
  22. package/.claude/commands/workflow/{review-fix.md → review-cycle-fix.md} +6 -6
  23. package/.claude/commands/workflow/review-module-cycle.md +2 -2
  24. package/.claude/commands/workflow/review-session-cycle.md +2 -2
  25. package/.claude/commands/workflow/tools/conflict-resolution.md +16 -26
  26. package/.claude/commands/workflow/tools/context-gather.md +81 -118
  27. package/.claude/commands/workflow/tools/task-generate-agent.md +94 -10
  28. package/.claude/skills/ccw-help/command.json +4 -4
  29. package/.claude/skills/lite-skill-generator/SKILL.md +650 -0
  30. package/.claude/skills/lite-skill-generator/templates/simple-skill.md +68 -0
  31. package/.claude/skills/lite-skill-generator/templates/style-guide.md +64 -0
  32. package/.claude/skills/skill-generator/SKILL.md +277 -85
  33. package/.claude/skills/skill-generator/phases/01-requirements-discovery.md +4 -15
  34. package/.claude/skills/skill-generator/phases/02-structure-generation.md +72 -17
  35. package/.claude/skills/skill-generator/phases/03-phase-generation.md +218 -51
  36. package/.claude/skills/skill-generator/phases/04-specs-templates.md +111 -41
  37. package/.claude/skills/skill-generator/phases/05-validation.md +139 -56
  38. package/.claude/skills/skill-generator/templates/autonomous-action.md +78 -268
  39. package/.claude/skills/skill-generator/templates/autonomous-orchestrator.md +14 -0
  40. package/.claude/skills/skill-generator/templates/code-analysis-action.md +12 -0
  41. package/.claude/skills/skill-generator/templates/llm-action.md +12 -0
  42. package/.claude/skills/skill-generator/templates/script-template.md +368 -0
  43. package/.claude/skills/skill-generator/templates/sequential-phase.md +14 -0
  44. package/.claude/skills/skill-generator/templates/skill-md.md +14 -0
  45. package/.claude/skills/skill-tuning/SKILL.md +130 -266
  46. package/.claude/skills/skill-tuning/phases/orchestrator.md +95 -283
  47. package/.claude/skills/skill-tuning/specs/problem-taxonomy.md +90 -198
  48. package/.claude/skills/skill-tuning/specs/tuning-strategies.md +193 -1345
  49. package/.claude/workflows/cli-templates/schemas/plan-verify-agent-schema.json +47 -0
  50. package/.claude/workflows/cli-templates/schemas/verify-json-schema.json +158 -0
  51. package/.claude/workflows/cli-tools-usage.md +1 -1
  52. package/.codex/AGENTS.md +1 -3
  53. package/.codex/prompts/analyze-with-file.md +607 -0
  54. package/.codex/prompts/brainstorm-to-cycle.md +455 -0
  55. package/.codex/prompts/brainstorm-with-file.md +933 -0
  56. package/.codex/prompts/debug-with-file.md +15 -20
  57. package/.codex/skills/ccw-cli-tools/SKILL.md +559 -0
  58. package/README.md +43 -0
  59. package/ccw/dist/commands/cli.d.ts.map +1 -1
  60. package/ccw/dist/commands/cli.js +29 -5
  61. package/ccw/dist/commands/cli.js.map +1 -1
  62. package/ccw/dist/commands/issue.d.ts +2 -0
  63. package/ccw/dist/commands/issue.d.ts.map +1 -1
  64. package/ccw/dist/commands/issue.js +62 -20
  65. package/ccw/dist/commands/issue.js.map +1 -1
  66. package/ccw/dist/config/litellm-api-config-manager.d.ts.map +1 -1
  67. package/ccw/dist/config/litellm-api-config-manager.js +5 -3
  68. package/ccw/dist/config/litellm-api-config-manager.js.map +1 -1
  69. package/ccw/dist/config/litellm-provider-models.d.ts +73 -0
  70. package/ccw/dist/config/litellm-provider-models.d.ts.map +1 -0
  71. package/ccw/dist/config/litellm-provider-models.js +172 -0
  72. package/ccw/dist/config/litellm-provider-models.js.map +1 -0
  73. package/ccw/dist/config/provider-models.d.ts +25 -51
  74. package/ccw/dist/config/provider-models.d.ts.map +1 -1
  75. package/ccw/dist/config/provider-models.js +84 -149
  76. package/ccw/dist/config/provider-models.js.map +1 -1
  77. package/ccw/dist/config/storage-paths.d.ts.map +1 -1
  78. package/ccw/dist/config/storage-paths.js +23 -5
  79. package/ccw/dist/config/storage-paths.js.map +1 -1
  80. package/ccw/dist/core/auth/csrf-middleware.js +3 -3
  81. package/ccw/dist/core/auth/csrf-middleware.js.map +1 -1
  82. package/ccw/dist/core/dashboard-generator.d.ts.map +1 -1
  83. package/ccw/dist/core/dashboard-generator.js +3 -1
  84. package/ccw/dist/core/dashboard-generator.js.map +1 -1
  85. package/ccw/dist/core/routes/claude-routes.d.ts.map +1 -1
  86. package/ccw/dist/core/routes/claude-routes.js +206 -14
  87. package/ccw/dist/core/routes/claude-routes.js.map +1 -1
  88. package/ccw/dist/core/routes/cli-routes.d.ts.map +1 -1
  89. package/ccw/dist/core/routes/cli-routes.js.map +1 -1
  90. package/ccw/dist/core/routes/commands-routes.d.ts +7 -0
  91. package/ccw/dist/core/routes/commands-routes.d.ts.map +1 -0
  92. package/ccw/dist/core/routes/commands-routes.js +480 -0
  93. package/ccw/dist/core/routes/commands-routes.js.map +1 -0
  94. package/ccw/dist/core/routes/model-routes.d.ts +11 -0
  95. package/ccw/dist/core/routes/model-routes.d.ts.map +1 -0
  96. package/ccw/dist/core/routes/model-routes.js +112 -0
  97. package/ccw/dist/core/routes/model-routes.js.map +1 -0
  98. package/ccw/dist/core/routes/nav-status-routes.d.ts.map +1 -1
  99. package/ccw/dist/core/routes/nav-status-routes.js +84 -1
  100. package/ccw/dist/core/routes/nav-status-routes.js.map +1 -1
  101. package/ccw/dist/core/routes/provider-routes.d.ts +11 -0
  102. package/ccw/dist/core/routes/provider-routes.d.ts.map +1 -0
  103. package/ccw/dist/core/routes/provider-routes.js +67 -0
  104. package/ccw/dist/core/routes/provider-routes.js.map +1 -0
  105. package/ccw/dist/core/routes/skills-routes.d.ts.map +1 -1
  106. package/ccw/dist/core/routes/skills-routes.js +219 -7
  107. package/ccw/dist/core/routes/skills-routes.js.map +1 -1
  108. package/ccw/dist/core/routes/system-routes.d.ts.map +1 -1
  109. package/ccw/dist/core/routes/system-routes.js +58 -6
  110. package/ccw/dist/core/routes/system-routes.js.map +1 -1
  111. package/ccw/dist/core/server.d.ts.map +1 -1
  112. package/ccw/dist/core/server.js +13 -0
  113. package/ccw/dist/core/server.js.map +1 -1
  114. package/ccw/dist/mcp-server/index.js +2 -2
  115. package/ccw/dist/mcp-server/index.js.map +1 -1
  116. package/ccw/dist/tools/claude-cli-tools.d.ts +48 -11
  117. package/ccw/dist/tools/claude-cli-tools.d.ts.map +1 -1
  118. package/ccw/dist/tools/claude-cli-tools.js +146 -50
  119. package/ccw/dist/tools/claude-cli-tools.js.map +1 -1
  120. package/ccw/dist/tools/cli-config-manager.d.ts +1 -13
  121. package/ccw/dist/tools/cli-config-manager.d.ts.map +1 -1
  122. package/ccw/dist/tools/cli-config-manager.js +3 -27
  123. package/ccw/dist/tools/cli-config-manager.js.map +1 -1
  124. package/ccw/dist/tools/cli-executor-core.d.ts.map +1 -1
  125. package/ccw/dist/tools/cli-executor-core.js +7 -2
  126. package/ccw/dist/tools/cli-executor-core.js.map +1 -1
  127. package/ccw/dist/tools/cli-executor-state.d.ts.map +1 -1
  128. package/ccw/dist/tools/cli-history-store.d.ts +11 -0
  129. package/ccw/dist/tools/cli-history-store.d.ts.map +1 -1
  130. package/ccw/dist/tools/cli-history-store.js +82 -2
  131. package/ccw/dist/tools/cli-history-store.js.map +1 -1
  132. package/ccw/dist/tools/command-registry.d.ts +7 -0
  133. package/ccw/dist/tools/command-registry.d.ts.map +1 -1
  134. package/ccw/dist/tools/command-registry.js +14 -1
  135. package/ccw/dist/tools/command-registry.js.map +1 -1
  136. package/ccw/dist/tools/generate-module-docs.d.ts.map +1 -1
  137. package/ccw/dist/tools/generate-module-docs.js +11 -7
  138. package/ccw/dist/tools/generate-module-docs.js.map +1 -1
  139. package/ccw/dist/tools/litellm-executor.d.ts +1 -0
  140. package/ccw/dist/tools/litellm-executor.d.ts.map +1 -1
  141. package/ccw/dist/tools/litellm-executor.js +11 -9
  142. package/ccw/dist/tools/litellm-executor.js.map +1 -1
  143. package/ccw/dist/types/skill-types.d.ts +97 -0
  144. package/ccw/dist/types/skill-types.d.ts.map +1 -0
  145. package/ccw/dist/types/skill-types.js +6 -0
  146. package/ccw/dist/types/skill-types.js.map +1 -0
  147. package/ccw/src/commands/cli.ts +36 -5
  148. package/ccw/src/commands/issue.ts +81 -26
  149. package/ccw/src/config/litellm-api-config-manager.ts +5 -3
  150. package/ccw/src/config/litellm-provider-models.ts +222 -0
  151. package/ccw/src/config/provider-models.ts +91 -190
  152. package/ccw/src/config/storage-paths.ts +20 -5
  153. package/ccw/src/core/auth/csrf-middleware.ts +3 -3
  154. package/ccw/src/core/dashboard-generator.ts +3 -1
  155. package/ccw/src/core/routes/claude-routes.ts +233 -15
  156. package/ccw/src/core/routes/cli-routes.ts +2 -3
  157. package/ccw/src/core/routes/commands-routes.ts +620 -0
  158. package/ccw/src/core/routes/nav-status-routes.ts +95 -1
  159. package/ccw/src/core/routes/provider-routes.ts +78 -0
  160. package/ccw/src/core/routes/skills-routes.ts +266 -45
  161. package/ccw/src/core/routes/system-routes.ts +102 -50
  162. package/ccw/src/core/server.ts +13 -0
  163. package/ccw/src/mcp-server/index.ts +2 -2
  164. package/ccw/src/templates/dashboard-css/18-cli-settings.css +35 -0
  165. package/ccw/src/templates/dashboard-css/37-commands.css +193 -0
  166. package/ccw/src/templates/dashboard-js/components/navigation.js +4 -0
  167. package/ccw/src/templates/dashboard-js/i18n.js +116 -0
  168. package/ccw/src/templates/dashboard-js/views/cli-manager.js +249 -4
  169. package/ccw/src/templates/dashboard-js/views/commands-manager.js +503 -0
  170. package/ccw/src/templates/dashboard-js/views/issue-manager.js +7 -7
  171. package/ccw/src/templates/dashboard-js/views/mcp-manager.js +2 -7
  172. package/ccw/src/templates/dashboard-js/views/skills-manager.js +164 -23
  173. package/ccw/src/templates/dashboard.html +7 -0
  174. package/ccw/src/tools/claude-cli-tools.ts +170 -56
  175. package/ccw/src/tools/cli-config-manager.ts +2 -33
  176. package/ccw/src/tools/cli-executor-core.ts +8 -2
  177. package/ccw/src/tools/cli-history-store.ts +92 -2
  178. package/ccw/src/tools/command-registry.ts +16 -1
  179. package/ccw/src/tools/generate-module-docs.ts +11 -7
  180. package/ccw/src/tools/litellm-executor.ts +13 -9
  181. package/ccw/src/types/skill-types.ts +99 -0
  182. package/package.json +1 -1
  183. package/.claude/commands/enhance-prompt.md +0 -93
  184. package/.claude/commands/memory/code-map-memory.md +0 -687
  185. package/.claude/commands/memory/docs.md +0 -615
  186. package/.claude/commands/memory/load-skill-memory.md +0 -182
  187. package/.claude/commands/memory/skill-memory.md +0 -525
  188. package/.claude/commands/memory/swagger-docs.md +0 -773
  189. package/.claude/commands/memory/tech-research-rules.md +0 -310
  190. package/.claude/commands/memory/workflow-skill-memory.md +0 -517
  191. package/.claude/commands/task/breakdown.md +0 -208
  192. package/.claude/commands/task/create.md +0 -152
  193. package/.claude/commands/task/execute.md +0 -270
  194. package/.claude/commands/task/replan.md +0 -441
  195. package/.claude/commands/version.md +0 -254
  196. package/.claude/commands/workflow/action-plan-verify.md +0 -485
  197. package/.claude/commands/workflow/brainstorm/api-designer.md +0 -587
  198. package/.claude/commands/workflow/brainstorm/data-architect.md +0 -220
  199. package/.claude/commands/workflow/brainstorm/product-manager.md +0 -200
  200. package/.claude/commands/workflow/brainstorm/product-owner.md +0 -200
  201. package/.claude/commands/workflow/brainstorm/scrum-master.md +0 -200
  202. package/.claude/commands/workflow/brainstorm/subject-matter-expert.md +0 -200
  203. package/.claude/commands/workflow/brainstorm/system-architect.md +0 -389
  204. package/.claude/commands/workflow/brainstorm/ui-designer.md +0 -221
  205. package/.claude/commands/workflow/brainstorm/ux-expert.md +0 -221
  206. package/.claude/commands/workflow/debug.md +0 -331
  207. package/.claude/commands/workflow/develop-with-file.md +0 -1044
  208. package/.claude/skills/ccw-loop/README.md +0 -303
  209. package/.claude/skills/skill-generator/templates/script-bash.md +0 -277
  210. package/.claude/skills/skill-generator/templates/script-python.md +0 -198
  211. package/.codex/prompts/debug.md +0 -318
  212. package/ccw/src/core/routes/mcp-routes.ts.backup +0 -549
@@ -47,14 +47,30 @@ Interactive orchestration tool: analyze task → discover commands → recommend
47
47
 
48
48
  | Unit Name | Commands | Purpose | Output |
49
49
  |-----------|----------|---------|--------|
50
- | **Code Review (Session)** | review-session-cycle → review-fix | Complete review cycle and apply fixes | Fixed code |
51
- | **Code Review (Module)** | review-module-cycle → review-fix | Module review cycle and apply fixes | Fixed code |
50
+ | **Code Review (Session)** | review-session-cycle → review-cycle-fix | Complete review cycle and apply fixes | Fixed code |
51
+ | **Code Review (Module)** | review-module-cycle → review-cycle-fix | Module review cycle and apply fixes | Fixed code |
52
+
53
+ **Issue Units** (Issue单元):
54
+
55
+ | Unit Name | Commands | Purpose | Output |
56
+ |-----------|----------|---------|--------|
57
+ | **Issue Workflow** | discover → plan → queue → execute | Complete issue lifecycle | Completed issues |
58
+ | **Rapid-to-Issue** | lite-plan → convert-to-plan → queue → execute | Bridge lite workflow to issue workflow | Completed issues |
59
+ | **Brainstorm-to-Issue** | from-brainstorm → queue → execute | Bridge brainstorm session to issue workflow | Completed issues |
60
+
61
+ **With-File Units** (文档化单元):
62
+
63
+ | Unit Name | Commands | Purpose | Output |
64
+ |-----------|----------|---------|--------|
65
+ | **Brainstorm With File** | brainstorm-with-file | Multi-perspective ideation with documentation | brainstorm.md |
66
+ | **Debug With File** | debug-with-file | Hypothesis-driven debugging with documentation | understanding.md |
67
+ | **Analyze With File** | analyze-with-file | Collaborative analysis with documentation | discussion.md |
52
68
 
53
69
  ### Command-to-Unit Mapping (命令与最小单元的映射)
54
70
 
55
71
  | Command | Can Precede | Atomic Units |
56
72
  |---------|-----------|--------------|
57
- | lite-plan | lite-execute | Quick Implementation |
73
+ | lite-plan | lite-execute, convert-to-plan | Quick Implementation, Rapid-to-Issue |
58
74
  | multi-cli-plan | lite-execute | Multi-CLI Planning |
59
75
  | lite-fix | lite-execute | Bug Fix |
60
76
  | plan | plan-verify, execute | Full Planning + Execution, Verified Planning + Execution |
@@ -62,9 +78,17 @@ Interactive orchestration tool: analyze task → discover commands → recommend
62
78
  | replan | execute | Replanning + Execution |
63
79
  | test-gen | execute | Test Generation + Execution |
64
80
  | tdd-plan | execute | TDD Planning + Execution |
65
- | review-session-cycle | review-fix | Code Review (Session) |
66
- | review-module-cycle | review-fix | Code Review (Module) |
81
+ | review-session-cycle | review-cycle-fix | Code Review (Session) |
82
+ | review-module-cycle | review-cycle-fix | Code Review (Module) |
67
83
  | test-fix-gen | test-cycle-execute | Test Validation |
84
+ | issue:discover | issue:plan | Issue Workflow |
85
+ | issue:plan | issue:queue | Issue Workflow |
86
+ | convert-to-plan | issue:queue | Rapid-to-Issue |
87
+ | issue:queue | issue:execute | Issue Workflow, Rapid-to-Issue, Brainstorm-to-Issue |
88
+ | issue:from-brainstorm | issue:queue | Brainstorm-to-Issue |
89
+ | brainstorm-with-file | issue:from-brainstorm (optional) | Brainstorm With File, Brainstorm-to-Issue |
90
+ | debug-with-file | (standalone) | Debug With File |
91
+ | analyze-with-file | (standalone) | Analyze With File |
68
92
 
69
93
  ### Atomic Group Rules
70
94
 
@@ -105,6 +129,14 @@ function detectTaskType(text) {
105
129
  if (/测试失败|test fail|fix test|failing test/.test(text)) return 'test-fix';
106
130
  if (/generate test|写测试|add test|补充测试/.test(text)) return 'test-gen';
107
131
  if (/review|审查|code review/.test(text)) return 'review';
132
+ // Issue workflow patterns
133
+ if (/issues?.*batch|batch.*issues?|批量.*issue|issue.*批量/.test(text)) return 'issue-batch';
134
+ if (/issue workflow|structured workflow|queue|multi-stage|转.*issue|issue.*流程/.test(text)) return 'issue-transition';
135
+ // With-File workflow patterns
136
+ if (/brainstorm|ideation|头脑风暴|创意|发散思维|creative thinking/.test(text)) return 'brainstorm-file';
137
+ if (/brainstorm.*issue|头脑风暴.*issue|idea.*issue|想法.*issue|从.*头脑风暴|convert.*brainstorm/.test(text)) return 'brainstorm-to-issue';
138
+ if (/debug.*document|hypothesis.*debug|深度调试|假设.*验证|systematic debug/.test(text)) return 'debug-file';
139
+ if (/analyze.*document|collaborative analysis|协作分析|深度.*理解/.test(text)) return 'analyze-file';
108
140
  if (/不确定|explore|研究|what if|brainstorm|权衡/.test(text)) return 'brainstorm';
109
141
  if (/多视角|比较方案|cross-verify|multi-cli/.test(text)) return 'multi-cli';
110
142
  return 'feature'; // Default
@@ -252,8 +284,8 @@ const commandPorts = {
252
284
  output: ['review-findings'],
253
285
  tags: ['review']
254
286
  },
255
- 'review-fix': {
256
- name: 'review-fix',
287
+ 'review-cycle-fix': {
288
+ name: 'review-cycle-fix',
257
289
  input: ['review-findings', 'review-verified'], // Accept output from review-session-cycle or review-module-cycle
258
290
  output: ['fixed-code'],
259
291
  tags: ['review'],
@@ -277,14 +309,81 @@ const commandPorts = {
277
309
  input: ['code', 'session'], // 可接受代码或会话
278
310
  output: ['review-verified'], // 输出端口:审查通过
279
311
  tags: ['review'],
280
- atomic_group: 'code-review' // 最小单元:与 review-fix 绑定
312
+ atomic_group: 'code-review' // 最小单元:与 review-cycle-fix 绑定
281
313
  },
282
314
  'review-module-cycle': {
283
315
  name: 'review-module-cycle',
284
316
  input: ['module-pattern'], // 输入端口:模块模式
285
317
  output: ['review-verified'], // 输出端口:审查通过
286
318
  tags: ['review'],
287
- atomic_group: 'code-review' // 最小单元:与 review-fix 绑定
319
+ atomic_group: 'code-review' // 最小单元:与 review-cycle-fix 绑定
320
+ },
321
+
322
+ // Issue workflow commands
323
+ 'issue:discover': {
324
+ name: 'issue:discover',
325
+ input: ['codebase'], // 输入端口:代码库
326
+ output: ['pending-issues'], // 输出端口:待处理 issues
327
+ tags: ['issue'],
328
+ atomic_group: 'issue-workflow' // 最小单元:discover → plan → queue → execute
329
+ },
330
+ 'issue:plan': {
331
+ name: 'issue:plan',
332
+ input: ['pending-issues'], // 输入端口:待处理 issues
333
+ output: ['issue-plans'], // 输出端口:issue 计划
334
+ tags: ['issue'],
335
+ atomic_group: 'issue-workflow'
336
+ },
337
+ 'issue:queue': {
338
+ name: 'issue:queue',
339
+ input: ['issue-plans', 'converted-plan'], // 可接受 issue:plan 或 convert-to-plan 输出
340
+ output: ['execution-queue'], // 输出端口:执行队列
341
+ tags: ['issue'],
342
+ atomic_groups: ['issue-workflow', 'rapid-to-issue']
343
+ },
344
+ 'issue:execute': {
345
+ name: 'issue:execute',
346
+ input: ['execution-queue'], // 输入端口:执行队列
347
+ output: ['completed-issues'], // 输出端口:已完成 issues
348
+ tags: ['issue'],
349
+ atomic_groups: ['issue-workflow', 'rapid-to-issue']
350
+ },
351
+ 'issue:convert-to-plan': {
352
+ name: 'issue:convert-to-plan',
353
+ input: ['plan'], // 输入端口:lite-plan 输出
354
+ output: ['converted-plan'], // 输出端口:转换后的 issue 计划
355
+ tags: ['issue', 'planning'],
356
+ atomic_group: 'rapid-to-issue' // 最小单元:lite-plan → convert-to-plan → queue → execute
357
+ },
358
+
359
+ // With-File workflows (documented exploration with multi-CLI collaboration)
360
+ 'brainstorm-with-file': {
361
+ name: 'brainstorm-with-file',
362
+ input: ['exploration-topic'], // 输入端口:探索主题
363
+ output: ['brainstorm-document'], // 输出端口:brainstorm.md + 综合结论
364
+ tags: ['brainstorm', 'with-file'],
365
+ note: 'Self-contained workflow with multi-round diverge-converge cycles'
366
+ },
367
+ 'issue:from-brainstorm': {
368
+ name: 'issue:from-brainstorm',
369
+ input: ['brainstorm-document'], // 输入端口:brainstorm 产物(synthesis.json)
370
+ output: ['converted-plan'], // 输出端口:issue + solution
371
+ tags: ['issue', 'brainstorm'],
372
+ atomic_group: 'brainstorm-to-issue' // 最小单元:from-brainstorm → queue → execute
373
+ },
374
+ 'debug-with-file': {
375
+ name: 'debug-with-file',
376
+ input: ['bug-report'], // 输入端口:bug 报告
377
+ output: ['understanding-document'], // 输出端口:understanding.md + 修复
378
+ tags: ['bugfix', 'with-file'],
379
+ note: 'Self-contained workflow with hypothesis-driven iteration'
380
+ },
381
+ 'analyze-with-file': {
382
+ name: 'analyze-with-file',
383
+ input: ['analysis-topic'], // 输入端口:分析主题
384
+ output: ['discussion-document'], // 输出端口:discussion.md + 结论
385
+ tags: ['analysis', 'with-file'],
386
+ note: 'Self-contained workflow with multi-round discussion'
288
387
  }
289
388
  };
290
389
  ```
@@ -306,14 +405,22 @@ async function recommendCommandChain(analysis) {
306
405
  // 任务类型对应的端口流
307
406
  function determinePortFlow(taskType, constraints) {
308
407
  const flows = {
309
- 'bugfix': { inputPort: 'bug-report', outputPort: constraints?.includes('skip-tests') ? 'fixed-code' : 'test-passed' },
310
- 'tdd': { inputPort: 'requirement', outputPort: 'tdd-verified' },
311
- 'test-fix': { inputPort: 'failing-tests', outputPort: 'test-passed' },
312
- 'test-gen': { inputPort: 'code', outputPort: 'test-passed' },
313
- 'review': { inputPort: 'code', outputPort: 'review-verified' },
314
- 'brainstorm': { inputPort: 'exploration-topic', outputPort: 'test-passed' },
315
- 'multi-cli': { inputPort: 'requirement', outputPort: 'test-passed' },
316
- 'feature': { inputPort: 'requirement', outputPort: constraints?.includes('skip-tests') ? 'code' : 'test-passed' }
408
+ 'bugfix': { inputPort: 'bug-report', outputPort: constraints?.includes('skip-tests') ? 'fixed-code' : 'test-passed' },
409
+ 'tdd': { inputPort: 'requirement', outputPort: 'tdd-verified' },
410
+ 'test-fix': { inputPort: 'failing-tests', outputPort: 'test-passed' },
411
+ 'test-gen': { inputPort: 'code', outputPort: 'test-passed' },
412
+ 'review': { inputPort: 'code', outputPort: 'review-verified' },
413
+ 'brainstorm': { inputPort: 'exploration-topic', outputPort: 'test-passed' },
414
+ 'multi-cli': { inputPort: 'requirement', outputPort: 'test-passed' },
415
+ // Issue workflow types
416
+ 'issue-batch': { inputPort: 'codebase', outputPort: 'completed-issues' },
417
+ 'issue-transition': { inputPort: 'requirement', outputPort: 'completed-issues' },
418
+ // With-File workflow types
419
+ 'brainstorm-file': { inputPort: 'exploration-topic', outputPort: 'brainstorm-document' },
420
+ 'brainstorm-to-issue': { inputPort: 'brainstorm-document', outputPort: 'completed-issues' },
421
+ 'debug-file': { inputPort: 'bug-report', outputPort: 'understanding-document' },
422
+ 'analyze-file': { inputPort: 'analysis-topic', outputPort: 'discussion-document' },
423
+ 'feature': { inputPort: 'requirement', outputPort: constraints?.includes('skip-tests') ? 'code' : 'test-passed' }
317
424
  };
318
425
  return flows[taskType] || flows['feature'];
319
426
  }
@@ -539,7 +646,7 @@ function formatCommand(cmd, previousResults, analysis) {
539
646
  if (latest?.session_id) prompt += ` --session="${latest.session_id}"`;
540
647
 
541
648
  // Review fix - takes session from review
542
- } else if (name === 'review-fix') {
649
+ } else if (name === 'review-cycle-fix') {
543
650
  const review = previousResults.find(r => r.command.includes('review'));
544
651
  const latest = review || previousResults.filter(r => r.session_id).pop();
545
652
  if (latest?.session_id) prompt += ` --session="${latest.session_id}"`;
@@ -553,6 +660,45 @@ function formatCommand(cmd, previousResults, analysis) {
553
660
  } else if (name.includes('test') || name.includes('review') || name.includes('verify')) {
554
661
  const latest = previousResults.filter(r => r.session_id).pop();
555
662
  if (latest?.session_id) prompt += ` --session="${latest.session_id}"`;
663
+
664
+ // Issue workflow commands
665
+ } else if (name === 'issue:discover') {
666
+ // No parameters needed - discovers from codebase
667
+ prompt = `/issue:discover -y`;
668
+
669
+ } else if (name === 'issue:plan') {
670
+ prompt = `/issue:plan -y --all-pending`;
671
+
672
+ } else if (name === 'issue:queue') {
673
+ prompt = `/issue:queue -y`;
674
+
675
+ } else if (name === 'issue:execute') {
676
+ prompt = `/issue:execute -y --queue auto`;
677
+
678
+ } else if (name === 'issue:convert-to-plan' || name === 'convert-to-plan') {
679
+ // Convert latest lite-plan to issue plan
680
+ prompt = `/issue:convert-to-plan -y --latest-lite-plan`;
681
+
682
+ // With-File workflows (self-contained)
683
+ } else if (name === 'brainstorm-with-file') {
684
+ prompt = `/workflow:brainstorm-with-file -y "${analysis.goal}"`;
685
+
686
+ } else if (name === 'debug-with-file') {
687
+ prompt = `/workflow:debug-with-file -y "${analysis.goal}"`;
688
+
689
+ } else if (name === 'analyze-with-file') {
690
+ prompt = `/workflow:analyze-with-file -y "${analysis.goal}"`;
691
+
692
+ // Brainstorm-to-issue bridge
693
+ } else if (name === 'issue:from-brainstorm' || name === 'from-brainstorm') {
694
+ // Extract session ID from analysis.goal or latest brainstorm
695
+ const sessionMatch = analysis.goal.match(/BS-[\w-]+/);
696
+ if (sessionMatch) {
697
+ prompt = `/issue:from-brainstorm -y SESSION="${sessionMatch[0]}" --auto`;
698
+ } else {
699
+ // Find latest brainstorm session
700
+ prompt = `/issue:from-brainstorm -y --auto`;
701
+ }
556
702
  }
557
703
 
558
704
  return prompt;
@@ -882,7 +1028,10 @@ Task: Implement user registration' --tool claude --mode write
882
1028
 
883
1029
  ### Serial Blocking
884
1030
 
885
- Commands execute one-by-one. After launching CLI in background, orchestrator stops immediately and waits for hook callback.
1031
+ **CRITICAL**: Commands execute one-by-one. After launching CLI in background:
1032
+ 1. Orchestrator stops immediately (`break`)
1033
+ 2. Wait for hook callback - **DO NOT use TaskOutput polling**
1034
+ 3. Hook callback triggers next command
886
1035
 
887
1036
  **Prompt Structure**: Command must be first in prompt content
888
1037
 
@@ -892,26 +1041,29 @@ const prompt = '/workflow:plan -y "Implement user authentication"\n\nTask: Imple
892
1041
  const taskId = Bash(`ccw cli -p "${prompt}" --tool claude --mode write`, { run_in_background: true }).task_id;
893
1042
  state.execution_results.push({ status: 'in-progress', task_id: taskId, ... });
894
1043
  Write(`${stateDir}/state.json`, JSON.stringify(state, null, 2));
895
- break; // Stop, wait for hook callback
1044
+ break; // ⚠️ STOP HERE - DO NOT use TaskOutput polling
896
1045
 
897
- // Hook calls handleCliCompletion(sessionId, taskId, output) when done
1046
+ // Hook callback will call handleCliCompletion(sessionId, taskId, output) when done
898
1047
  // → Updates state → Triggers next command via resumeChainExecution()
899
1048
  ```
900
1049
 
1050
+
901
1051
  ## Available Commands
902
1052
 
903
- All from `~/.claude/commands/workflow/`:
1053
+ All from `~/.claude/commands/workflow/` and `~/.claude/commands/issue/`:
904
1054
 
905
1055
  **Planning**: lite-plan, plan, multi-cli-plan, plan-verify, tdd-plan
906
1056
  **Execution**: lite-execute, execute, develop-with-file
907
1057
  **Testing**: test-cycle-execute, test-gen, test-fix-gen, tdd-verify
908
- **Review**: review, review-session-cycle, review-module-cycle, review-fix
1058
+ **Review**: review, review-session-cycle, review-module-cycle, review-cycle-fix
909
1059
  **Bug Fixes**: lite-fix, debug, debug-with-file
910
1060
  **Brainstorming**: brainstorm:auto-parallel, brainstorm:artifacts, brainstorm:synthesis
911
1061
  **Design**: ui-design:*, animation-extract, layout-extract, style-extract, codify-style
912
1062
  **Session Management**: session:start, session:resume, session:complete, session:solidify, session:list
913
1063
  **Tools**: context-gather, test-context-gather, task-generate, conflict-resolution, action-plan-verify
914
1064
  **Utility**: clean, init, replan
1065
+ **Issue Workflow**: issue:discover, issue:plan, issue:queue, issue:execute, issue:convert-to-plan, issue:from-brainstorm
1066
+ **With-File Workflows**: brainstorm-with-file, debug-with-file, analyze-with-file
915
1067
 
916
1068
  ### Testing Commands Distinction
917
1069
 
@@ -937,8 +1089,14 @@ All from `~/.claude/commands/workflow/`:
937
1089
  | **tdd** | 需求 → tdd-plan → TDD任务 → execute → 代码 → tdd-verify | TDD Planning + Execution |
938
1090
  | **test-fix** | 失败测试 →【test-fix-gen → test-cycle-execute】→ 测试通过 | Test Validation |
939
1091
  | **test-gen** | 代码/会话 →【test-gen → execute】→ 测试通过 | Test Generation + Execution |
940
- | **review** | 代码 →【review-* → review-fix】→ 修复代码 →【test-fix-gen → test-cycle-execute】→ 测试通过 | Code Review + Testing |
1092
+ | **review** | 代码 →【review-* → review-cycle-fix】→ 修复代码 →【test-fix-gen → test-cycle-execute】→ 测试通过 | Code Review + Testing |
941
1093
  | **brainstorm** | 探索主题 → brainstorm → 分析 →【plan → plan-verify】→ execute → test | Exploration + Planning + Execution |
942
1094
  | **multi-cli** | 需求 → multi-cli-plan → 对比分析 → lite-execute → test | Multi-Perspective + Testing |
1095
+ | **issue-batch** | 代码库 →【discover → plan → queue → execute】→ 完成 issues | Issue Workflow |
1096
+ | **issue-transition** | 需求 →【lite-plan → convert-to-plan → queue → execute】→ 完成 issues | Rapid-to-Issue |
1097
+ | **brainstorm-file** | 主题 → brainstorm-with-file → brainstorm.md (自包含) | Brainstorm With File |
1098
+ | **brainstorm-to-issue** | brainstorm.md →【from-brainstorm → queue → execute】→ 完成 issues | Brainstorm to Issue |
1099
+ | **debug-file** | Bug报告 → debug-with-file → understanding.md (自包含) | Debug With File |
1100
+ | **analyze-file** | 分析主题 → analyze-with-file → discussion.md (自包含) | Analyze With File |
943
1101
 
944
1102
  Use `CommandRegistry.getAllCommandsSummary()` to discover all commands dynamically.