cc-devflow 4.3.0 → 4.4.1

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 (575) hide show
  1. package/.claude/skills/cc-act/CHANGELOG.md +64 -0
  2. package/.claude/skills/cc-act/PLAYBOOK.md +212 -0
  3. package/.claude/skills/cc-act/SKILL.md +322 -0
  4. package/.claude/skills/cc-act/assets/PR_BRIEF_TEMPLATE.md +64 -0
  5. package/.claude/skills/cc-act/assets/RELEASE_NOTE_TEMPLATE.md +25 -0
  6. package/.claude/skills/cc-act/references/closure-contract.md +49 -0
  7. package/.claude/skills/cc-act/references/git-commit-guidelines.md +83 -0
  8. package/.claude/skills/cc-act/scripts/archive-requirement.sh +49 -0
  9. package/.claude/skills/cc-act/scripts/cc-act-common.sh +240 -0
  10. package/.claude/skills/cc-act/scripts/detect-ship-target.sh +82 -0
  11. package/.claude/skills/cc-act/scripts/generate-status-report.sh +83 -0
  12. package/.claude/skills/cc-act/scripts/render-pr-brief.sh +195 -0
  13. package/.claude/skills/cc-act/scripts/sync-act-docs.sh +315 -0
  14. package/.claude/skills/cc-act/scripts/verify-act-gate.sh +63 -0
  15. package/.claude/skills/cc-check/CHANGELOG.md +73 -0
  16. package/.claude/skills/cc-check/PLAYBOOK.md +153 -0
  17. package/.claude/skills/cc-check/SKILL.md +345 -0
  18. package/.claude/skills/cc-check/assets/REPORT_CARD_TEMPLATE.json +50 -0
  19. package/.claude/skills/cc-check/references/gate-contract.md +29 -0
  20. package/.claude/skills/cc-check/references/review-contract.md +45 -0
  21. package/.claude/skills/cc-check/scripts/render-report-card.js +229 -0
  22. package/.claude/skills/cc-check/scripts/run-quality-gates.sh +86 -0
  23. package/.claude/skills/cc-check/scripts/verify-gate.sh +57 -0
  24. package/.claude/skills/cc-do/CHANGELOG.md +49 -0
  25. package/.claude/skills/cc-do/PLAYBOOK.md +119 -0
  26. package/.claude/skills/cc-do/SKILL.md +216 -0
  27. package/.claude/skills/cc-do/references/execution-recovery.md +86 -0
  28. package/.claude/skills/cc-do/references/parallel-dispatch.md +80 -0
  29. package/.claude/skills/cc-do/scripts/build-task-context.sh +184 -0
  30. package/.claude/skills/cc-do/scripts/cc-do-common.sh +79 -0
  31. package/.claude/skills/cc-do/scripts/check-task-status.sh +92 -0
  32. package/.claude/skills/cc-do/scripts/detect-file-conflicts.sh +87 -0
  33. package/.claude/skills/cc-do/scripts/mark-task-complete.sh +119 -0
  34. package/.claude/skills/cc-do/scripts/record-review-decision.sh +89 -0
  35. package/.claude/skills/cc-do/scripts/recover-workflow.sh +84 -0
  36. package/.claude/skills/cc-do/scripts/run-problem-analysis.sh +70 -0
  37. package/.claude/skills/cc-do/scripts/select-ready-tasks.sh +135 -0
  38. package/.claude/skills/cc-do/scripts/verify-task-gates.sh +94 -0
  39. package/.claude/skills/cc-do/scripts/write-task-checkpoint.sh +102 -0
  40. package/.claude/skills/cc-investigate/CHANGELOG.md +26 -0
  41. package/.claude/skills/cc-investigate/PLAYBOOK.md +49 -0
  42. package/.claude/skills/cc-investigate/SKILL.md +221 -0
  43. package/.claude/skills/cc-investigate/assets/ANALYSIS_TEMPLATE.md +55 -0
  44. package/.claude/skills/cc-investigate/assets/TASKS_TEMPLATE.md +52 -0
  45. package/.claude/skills/cc-investigate/assets/TASK_MANIFEST_TEMPLATE.json +103 -0
  46. package/.claude/skills/cc-investigate/references/investigation-contract.md +28 -0
  47. package/.claude/skills/cc-investigate/scripts/bootstrap-analysis.sh +38 -0
  48. package/.claude/skills/cc-plan/CHANGELOG.md +99 -0
  49. package/.claude/skills/cc-plan/PLAYBOOK.md +106 -0
  50. package/.claude/skills/cc-plan/SKILL.md +325 -0
  51. package/.claude/skills/cc-plan/assets/DESIGN_TEMPLATE.md +155 -0
  52. package/.claude/skills/cc-plan/assets/TASKS_TEMPLATE.md +98 -0
  53. package/.claude/skills/cc-plan/assets/TASK_MANIFEST_TEMPLATE.json +108 -0
  54. package/.claude/skills/cc-plan/assets/TINY_DESIGN_TEMPLATE.md +79 -0
  55. package/.claude/skills/cc-plan/references/planning-contract.md +82 -0
  56. package/.claude/skills/cc-plan/scripts/bump-skill-version.sh +103 -0
  57. package/.claude/skills/cc-plan/scripts/parse-task-dependencies.js +75 -0
  58. package/.claude/skills/cc-plan/scripts/validate-scope.sh +78 -0
  59. package/.claude/skills/cc-roadmap/CHANGELOG.md +114 -0
  60. package/.claude/skills/cc-roadmap/PLAYBOOK.md +136 -0
  61. package/.claude/skills/cc-roadmap/SKILL.md +259 -0
  62. package/.claude/skills/cc-roadmap/assets/BACKLOG_TEMPLATE.md +45 -0
  63. package/.claude/skills/cc-roadmap/assets/ROADMAP_TEMPLATE.md +153 -0
  64. package/.claude/skills/cc-roadmap/assets/TRACKING_TEMPLATE.json +48 -0
  65. package/.claude/skills/cc-roadmap/references/roadmap-dialogue.md +37 -0
  66. package/.claude/skills/cc-roadmap/scripts/bump-skill-version.sh +103 -0
  67. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/markdown.js +604 -0
  68. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/query.js +63 -0
  69. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/schema.js +245 -0
  70. package/.claude/skills/cc-roadmap/scripts/lib/roadmap-tracking/store.js +139 -0
  71. package/.claude/skills/cc-roadmap/scripts/locate-roadmap-item.sh +109 -0
  72. package/.claude/skills/cc-roadmap/scripts/roadmap-tracking.js +153 -0
  73. package/.claude/skills/cc-roadmap/scripts/sync-roadmap-progress.sh +100 -0
  74. package/.claude/skills/cc-simplify/CHANGELOG.md +10 -0
  75. package/.claude/skills/cc-simplify/SKILL.md +55 -0
  76. package/.claude/skills/cc-spec-init/CHANGELOG.md +7 -0
  77. package/.claude/skills/cc-spec-init/PLAYBOOK.md +55 -0
  78. package/.claude/skills/cc-spec-init/SKILL.md +127 -0
  79. package/.claude/skills/cc-spec-init/assets/CAPABILITY_TEMPLATE.md +63 -0
  80. package/.claude/skills/cc-spec-init/assets/CHANGE_META_TEMPLATE.json +25 -0
  81. package/.claude/skills/cc-spec-init/assets/INDEX_TEMPLATE.md +34 -0
  82. package/.claude/skills/cc-spec-init/references/spec-contract.md +22 -0
  83. package/.claude/skills/cc-spec-init/scripts/bootstrap-specs.sh +31 -0
  84. package/.claude/skills/cc-spec-init/scripts/validate-spec-links.sh +45 -0
  85. package/CHANGELOG.md +61 -4
  86. package/README.md +120 -756
  87. package/README.zh-CN.md +119 -756
  88. package/bin/adapt.js +2 -6
  89. package/bin/cc-devflow-cli.js +72 -177
  90. package/config/distributable-skills.json +24 -0
  91. package/docs/CLAUDE.md +10 -6
  92. package/docs/commands/README.md +19 -46
  93. package/docs/commands/README.zh-CN.md +25 -48
  94. package/docs/examples/BY-ARTIFACT.md +7 -0
  95. package/docs/examples/README.md +38 -0
  96. package/docs/examples/START-HERE.md +149 -0
  97. package/docs/examples/example-bindings.json +38 -0
  98. package/docs/examples/full-design-blocked/BACKLOG.md +45 -0
  99. package/docs/examples/full-design-blocked/README.md +55 -0
  100. package/docs/examples/full-design-blocked/ROADMAP.md +53 -0
  101. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/design.md +154 -0
  102. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/task-manifest.json +146 -0
  103. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/planning/tasks.md +78 -0
  104. package/docs/examples/full-design-blocked/changes/REQ-002-bulk-invite-import/review/report-card.json +52 -0
  105. package/docs/examples/full-design-blocked/roadmap-tracking.json +50 -0
  106. package/docs/examples/local-handoff/BACKLOG.md +45 -0
  107. package/docs/examples/local-handoff/README.md +56 -0
  108. package/docs/examples/local-handoff/ROADMAP.md +45 -0
  109. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/handoff/resume-index.md +39 -0
  110. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/handoff/status.md +29 -0
  111. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/design.md +71 -0
  112. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/task-manifest.json +98 -0
  113. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/planning/tasks.md +59 -0
  114. package/docs/examples/local-handoff/changes/REQ-003-audit-log-export/review/report-card.json +44 -0
  115. package/docs/examples/local-handoff/roadmap-tracking.json +48 -0
  116. package/docs/examples/pdca-loop/BACKLOG.md +46 -0
  117. package/docs/examples/pdca-loop/README.md +58 -0
  118. package/docs/examples/pdca-loop/ROADMAP.md +133 -0
  119. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/handoff/pr-brief.md +72 -0
  120. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/handoff/status.md +29 -0
  121. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/design.md +72 -0
  122. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/task-manifest.json +201 -0
  123. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/planning/tasks.md +73 -0
  124. package/docs/examples/pdca-loop/changes/REQ-001-copy-invite-link/review/report-card.json +44 -0
  125. package/docs/examples/pdca-loop/roadmap-tracking.json +114 -0
  126. package/docs/examples/scripts/check-example-bindings.sh +116 -0
  127. package/docs/guides/getting-started.md +94 -129
  128. package/docs/guides/getting-started.zh-CN.md +103 -84
  129. package/docs/skill-runtime-migration.md +46 -0
  130. package/docs/v4.3.0-migration-guide.md +60 -225
  131. package/lib/compiler/CLAUDE.md +55 -84
  132. package/lib/compiler/__tests__/drift.test.js +1 -1
  133. package/lib/compiler/__tests__/errors.test.js +0 -1
  134. package/lib/compiler/__tests__/integration.test.js +49 -3
  135. package/lib/compiler/__tests__/manifest.test.js +0 -156
  136. package/lib/compiler/__tests__/parser.test.js +33 -104
  137. package/lib/compiler/__tests__/schemas.test.js +30 -34
  138. package/lib/compiler/__tests__/skills-registry.test.js +114 -0
  139. package/lib/compiler/__tests__/transformer.test.js +5 -9
  140. package/lib/compiler/emitters/antigravity-emitter.js +5 -213
  141. package/lib/compiler/emitters/base-emitter.js +3 -298
  142. package/lib/compiler/emitters/codex-emitter.js +4 -202
  143. package/lib/compiler/emitters/cursor-emitter.js +3 -287
  144. package/lib/compiler/emitters/qwen-emitter.js +4 -176
  145. package/lib/compiler/index.js +65 -345
  146. package/lib/compiler/manifest.js +6 -68
  147. package/lib/compiler/parser.js +31 -63
  148. package/lib/compiler/platforms.js +32 -277
  149. package/lib/compiler/resource-copier.js +176 -6
  150. package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +3 -3
  151. package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +14 -4
  152. package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +16 -7
  153. package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +10 -15
  154. package/lib/compiler/rules-emitters/base-rules-emitter.js +5 -5
  155. package/lib/compiler/rules-emitters/cursor-rules-emitter.js +7 -12
  156. package/lib/compiler/rules-emitters/index.js +6 -3
  157. package/lib/compiler/rules-emitters/qwen-rules-emitter.js +7 -7
  158. package/lib/compiler/schemas.js +8 -4
  159. package/lib/compiler/skills-registry.js +213 -15
  160. package/lib/compiler/transformer.js +1 -1
  161. package/lib/skill-runtime/CLAUDE.md +19 -0
  162. package/lib/skill-runtime/__tests__/autopilot.test.js +210 -0
  163. package/lib/skill-runtime/__tests__/cli-bootstrap.integration.test.js +181 -0
  164. package/lib/skill-runtime/__tests__/delegation.test.js +97 -0
  165. package/lib/skill-runtime/__tests__/dispatch.test.js +267 -0
  166. package/lib/skill-runtime/__tests__/intent.test.js +219 -0
  167. package/lib/skill-runtime/__tests__/lifecycle.test.js +169 -0
  168. package/lib/skill-runtime/__tests__/paths.test.js +42 -0
  169. package/lib/skill-runtime/__tests__/planner.tdd.test.js +250 -0
  170. package/lib/skill-runtime/__tests__/prepare-pr.test.js +139 -0
  171. package/lib/skill-runtime/__tests__/query.test.js +284 -0
  172. package/lib/skill-runtime/__tests__/runtime.integration.test.js +279 -0
  173. package/lib/skill-runtime/__tests__/schemas.test.js +207 -0
  174. package/lib/skill-runtime/__tests__/team-state.test.js +51 -0
  175. package/lib/skill-runtime/__tests__/worker-run.test.js +253 -0
  176. package/lib/skill-runtime/__tests__/worker.test.js +56 -0
  177. package/lib/skill-runtime/artifacts.js +93 -0
  178. package/lib/skill-runtime/delegation.js +533 -0
  179. package/lib/skill-runtime/index.js +34 -0
  180. package/lib/skill-runtime/intent.js +333 -0
  181. package/lib/skill-runtime/lifecycle.js +294 -0
  182. package/lib/skill-runtime/operations/CLAUDE.md +19 -0
  183. package/lib/skill-runtime/operations/approve.js +66 -0
  184. package/lib/skill-runtime/operations/autopilot-core.js +337 -0
  185. package/lib/skill-runtime/operations/autopilot-execution.js +307 -0
  186. package/lib/skill-runtime/operations/autopilot-shared.js +48 -0
  187. package/lib/skill-runtime/operations/autopilot.js +163 -0
  188. package/lib/skill-runtime/operations/dispatch.js +454 -0
  189. package/lib/skill-runtime/operations/init.js +64 -0
  190. package/lib/{harness → skill-runtime}/operations/janitor.js +9 -6
  191. package/lib/skill-runtime/operations/plan.js +59 -0
  192. package/lib/skill-runtime/operations/prepare-pr.js +25 -0
  193. package/lib/skill-runtime/operations/release.js +96 -0
  194. package/lib/skill-runtime/operations/resume.js +143 -0
  195. package/lib/skill-runtime/operations/snapshot.js +45 -0
  196. package/lib/skill-runtime/operations/verify.js +170 -0
  197. package/lib/skill-runtime/operations/worker-run.js +529 -0
  198. package/lib/skill-runtime/operations/worker.js +33 -0
  199. package/lib/skill-runtime/paths.js +213 -0
  200. package/lib/skill-runtime/planner.js +519 -0
  201. package/lib/skill-runtime/query.js +157 -0
  202. package/lib/skill-runtime/review.js +557 -0
  203. package/lib/skill-runtime/schemas.js +400 -0
  204. package/lib/{harness → skill-runtime}/store.js +45 -30
  205. package/lib/skill-runtime/team-state.js +122 -0
  206. package/package.json +13 -11
  207. package/.claude/CLAUDE.md +0 -125
  208. package/.claude/agents/architecture-designer.md +0 -443
  209. package/.claude/agents/bug-analyzer.md +0 -381
  210. package/.claude/agents/checklist-agent.md +0 -175
  211. package/.claude/agents/clarify-analyst.md +0 -50
  212. package/.claude/agents/code-quality-reviewer.md +0 -205
  213. package/.claude/agents/code-reviewer.md +0 -71
  214. package/.claude/agents/codex-analyzer.md +0 -39
  215. package/.claude/agents/compatibility-checker.md +0 -579
  216. package/.claude/agents/consistency-checker.md +0 -532
  217. package/.claude/agents/dev-implementer.md +0 -195
  218. package/.claude/agents/flow-researcher.md +0 -132
  219. package/.claude/agents/impact-analyzer.md +0 -440
  220. package/.claude/agents/planner.md +0 -230
  221. package/.claude/agents/prd-writer.md +0 -320
  222. package/.claude/agents/project-guidelines-generator.md +0 -1329
  223. package/.claude/agents/qa-tester.md +0 -313
  224. package/.claude/agents/release-manager.md +0 -295
  225. package/.claude/agents/security-reviewer.md +0 -314
  226. package/.claude/agents/spec-reviewer.md +0 -221
  227. package/.claude/agents/style-guide-generator.md +0 -458
  228. package/.claude/agents/tech-architect.md +0 -516
  229. package/.claude/agents/ui-designer.md +0 -485
  230. package/.claude/commands/core/architecture.md +0 -459
  231. package/.claude/commands/core/guidelines.md +0 -511
  232. package/.claude/commands/core/roadmap.md +0 -468
  233. package/.claude/commands/core/style.md +0 -83
  234. package/.claude/commands/flow/CLAUDE.md +0 -24
  235. package/.claude/commands/flow/archive.md +0 -280
  236. package/.claude/commands/flow/constitution.md +0 -82
  237. package/.claude/commands/flow/context.md +0 -150
  238. package/.claude/commands/flow/delta.md +0 -245
  239. package/.claude/commands/flow/dev.md +0 -40
  240. package/.claude/commands/flow/fix.md +0 -217
  241. package/.claude/commands/flow/ideate.md +0 -214
  242. package/.claude/commands/flow/init.md +0 -38
  243. package/.claude/commands/flow/release.md +0 -36
  244. package/.claude/commands/flow/restart.md +0 -97
  245. package/.claude/commands/flow/spec.md +0 -36
  246. package/.claude/commands/flow/status.md +0 -64
  247. package/.claude/commands/flow/update.md +0 -111
  248. package/.claude/commands/flow/upgrade.md +0 -115
  249. package/.claude/commands/flow/verify.md +0 -37
  250. package/.claude/commands/flow/workspace.md +0 -155
  251. package/.claude/commands/util/cancel-ralph.md +0 -60
  252. package/.claude/commands/util/code-review.md +0 -58
  253. package/.claude/commands/util/git-commit.md +0 -422
  254. package/.claude/commands/util/problem-analyzer.md +0 -60
  255. package/.claude/config/quality-gates.yml +0 -305
  256. package/.claude/config/quality-rules.yml +0 -161
  257. package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +0 -426
  258. package/.claude/docs/design/consistency-conflict-detection-algorithms.md +0 -658
  259. package/.claude/docs/design/intent-driven-input-design.md +0 -380
  260. package/.claude/docs/design/prd-version-management-design.md +0 -437
  261. package/.claude/docs/examples/design-inspiration-pool.md +0 -59
  262. package/.claude/docs/examples/ui-prototype-constitution-checklist.md +0 -75
  263. package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +0 -117
  264. package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +0 -99
  265. package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +0 -188
  266. package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +0 -338
  267. package/.claude/docs/guides/TEAM_MODE_GUIDE.md +0 -312
  268. package/.claude/docs/implementation-summary-v7.md +0 -449
  269. package/.claude/docs/spec-format-guide.md +0 -349
  270. package/.claude/docs/state-consolidation-design.md +0 -323
  271. package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +0 -332
  272. package/.claude/docs/templates/ATTEMPT_TEMPLATE.md +0 -156
  273. package/.claude/docs/templates/BACKLOG_TEMPLATE.md +0 -261
  274. package/.claude/docs/templates/BRAINSTORM_TEMPLATE.md +0 -148
  275. package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +0 -52
  276. package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +0 -206
  277. package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +0 -71
  278. package/.claude/docs/templates/DELTA_SPEC_TEMPLATE.md +0 -91
  279. package/.claude/docs/templates/DESIGN_DECISIONS_TEMPLATE.md +0 -151
  280. package/.claude/docs/templates/DESIGN_TEMPLATE.md +0 -157
  281. package/.claude/docs/templates/ERROR_LOG_TEMPLATE.md +0 -80
  282. package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +0 -198
  283. package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +0 -57
  284. package/.claude/docs/templates/JOURNAL_TEMPLATE.md +0 -75
  285. package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +0 -76
  286. package/.claude/docs/templates/PROPOSAL_TEMPLATE.md +0 -91
  287. package/.claude/docs/templates/RESEARCH_TEMPLATE.md +0 -276
  288. package/.claude/docs/templates/REVIEW-HIGH.md +0 -57
  289. package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +0 -198
  290. package/.claude/docs/templates/ROADMAP_TEMPLATE.md +0 -310
  291. package/.claude/docs/templates/SPEC_TEMPLATE_DELTA.md +0 -139
  292. package/.claude/docs/templates/SPEC_TEMPLATE_PROJECT.md +0 -93
  293. package/.claude/docs/templates/STYLE_TEMPLATE.md +0 -479
  294. package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +0 -373
  295. package/.claude/docs/templates/_shared/CLAUDE.md +0 -36
  296. package/.claude/docs/templates/_shared/CONSTITUTION_CHECK.md +0 -125
  297. package/.claude/docs/templates/_shared/VALIDATION_CHECKLIST.md +0 -187
  298. package/.claude/docs/templates/_shared/YAML_FRONTMATTER.md +0 -164
  299. package/.claude/docs/templates/context/dev.jsonl.template +0 -6
  300. package/.claude/docs/templates/context/epic.jsonl.template +0 -5
  301. package/.claude/docs/templates/context/prd.jsonl.template +0 -4
  302. package/.claude/docs/templates/context/research.jsonl.template +0 -4
  303. package/.claude/docs/templates/context/review.jsonl.template +0 -5
  304. package/.claude/docs/templates/context/tech.jsonl.template +0 -5
  305. package/.claude/guides/agent-guides/agent-coordination-guide.md +0 -459
  306. package/.claude/guides/project-guidelines-system.md +0 -463
  307. package/.claude/guides/technical-guides/datetime-handling-guide.md +0 -563
  308. package/.claude/guides/technical-guides/git-github-guide.md +0 -642
  309. package/.claude/guides/technical-guides/test-execution-guide.md +0 -618
  310. package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +0 -217
  311. package/.claude/guides/workflow-guides/flow-orchestrator.md +0 -48
  312. package/.claude/hooks/CLAUDE.md +0 -342
  313. package/.claude/hooks/checklist-gate.js +0 -397
  314. package/.claude/hooks/error-handling-reminder.sh +0 -12
  315. package/.claude/hooks/error-handling-reminder.ts +0 -459
  316. package/.claude/hooks/hooks.json +0 -15
  317. package/.claude/hooks/inject-agent-context.ts +0 -480
  318. package/.claude/hooks/inject-skill-context.ts +0 -359
  319. package/.claude/hooks/post-tool-use-tracker.sh +0 -280
  320. package/.claude/hooks/pre-tool-use-guardrail.sh +0 -36
  321. package/.claude/hooks/pre-tool-use-guardrail.ts +0 -342
  322. package/.claude/hooks/ralph-loop.ts +0 -931
  323. package/.claude/hooks/ralph-stop-hook.sh +0 -190
  324. package/.claude/hooks/skill-activation-prompt.sh +0 -36
  325. package/.claude/hooks/skill-activation-prompt.ts +0 -214
  326. package/.claude/hooks/state/skills-used-test-guard.json +0 -3
  327. package/.claude/hooks/task-completed-hook.ts +0 -593
  328. package/.claude/hooks/teammate-idle-hook.ts +0 -690
  329. package/.claude/hooks/types/team-types.d.ts +0 -238
  330. package/.claude/rules/devflow-conventions.md +0 -286
  331. package/.claude/rules/project-constitution.md +0 -1002
  332. package/.claude/rules/rationalization-library.md +0 -282
  333. package/.claude/schemas/constitution.schema.json +0 -43
  334. package/.claude/scripts/.claude/commands/flow/export-openspec.md +0 -221
  335. package/.claude/scripts/.claude/commands/flow/import-openspec.md +0 -171
  336. package/.claude/scripts/CLAUDE.md +0 -76
  337. package/.claude/scripts/__tests__/openspec.test.js +0 -212
  338. package/.claude/scripts/analyze-upgrade-impact.sh +0 -200
  339. package/.claude/scripts/archive-requirement.sh +0 -394
  340. package/.claude/scripts/calculate-checklist-completion.sh +0 -243
  341. package/.claude/scripts/calculate-quarter.sh +0 -206
  342. package/.claude/scripts/check-dependencies.sh +0 -409
  343. package/.claude/scripts/check-prerequisites.sh +0 -232
  344. package/.claude/scripts/check-task-status.sh +0 -288
  345. package/.claude/scripts/checklist-errors.sh +0 -131
  346. package/.claude/scripts/common.sh +0 -1102
  347. package/.claude/scripts/consolidate-research.sh +0 -182
  348. package/.claude/scripts/create-requirement.sh +0 -451
  349. package/.claude/scripts/delta-parser.ts +0 -637
  350. package/.claude/scripts/detect-file-conflicts.sh +0 -151
  351. package/.claude/scripts/export-contracts.sh +0 -117
  352. package/.claude/scripts/export-openspec.js +0 -222
  353. package/.claude/scripts/extract-data-model.sh +0 -78
  354. package/.claude/scripts/flow-context-add.sh +0 -134
  355. package/.claude/scripts/flow-context-init.sh +0 -133
  356. package/.claude/scripts/flow-context-validate.sh +0 -144
  357. package/.claude/scripts/flow-delta-apply.sh +0 -297
  358. package/.claude/scripts/flow-delta-archive.sh +0 -71
  359. package/.claude/scripts/flow-delta-create.sh +0 -202
  360. package/.claude/scripts/flow-delta-list.sh +0 -142
  361. package/.claude/scripts/flow-delta-status.sh +0 -235
  362. package/.claude/scripts/flow-quality-full.sh +0 -215
  363. package/.claude/scripts/flow-quality-quick.sh +0 -119
  364. package/.claude/scripts/flow-workspace-init.sh +0 -117
  365. package/.claude/scripts/flow-workspace-record.sh +0 -164
  366. package/.claude/scripts/generate-clarification-questions.sh +0 -377
  367. package/.claude/scripts/generate-clarification-report.sh +0 -463
  368. package/.claude/scripts/generate-quickstart.sh +0 -146
  369. package/.claude/scripts/generate-research-tasks.sh +0 -157
  370. package/.claude/scripts/generate-status-report.sh +0 -523
  371. package/.claude/scripts/generate-tech-analysis.sh +0 -46
  372. package/.claude/scripts/get-workflow-status.sh +0 -415
  373. package/.claude/scripts/import-openspec.js +0 -272
  374. package/.claude/scripts/locate-requirement-in-roadmap.sh +0 -233
  375. package/.claude/scripts/manage-constitution.sh +0 -602
  376. package/.claude/scripts/mark-task-complete.sh +0 -198
  377. package/.claude/scripts/parse-task-dependencies.js +0 -334
  378. package/.claude/scripts/populate-research-tasks.sh +0 -284
  379. package/.claude/scripts/record-quality-error.sh +0 -165
  380. package/.claude/scripts/recover-workflow.sh +0 -463
  381. package/.claude/scripts/run-clarify-scan.sh +0 -601
  382. package/.claude/scripts/run-high-review.sh +0 -62
  383. package/.claude/scripts/run-problem-analysis.sh +0 -68
  384. package/.claude/scripts/run-quality-gates.sh +0 -242
  385. package/.claude/scripts/setup-epic.sh +0 -173
  386. package/.claude/scripts/setup-ralph-loop.sh +0 -155
  387. package/.claude/scripts/sync-roadmap-progress.sh +0 -300
  388. package/.claude/scripts/sync-task-marks.sh +0 -199
  389. package/.claude/scripts/team-dev-init.sh +0 -319
  390. package/.claude/scripts/team-state-recovery.sh +0 -229
  391. package/.claude/scripts/test-clarify-scan.sh +0 -515
  392. package/.claude/scripts/update-agent-context.sh +0 -806
  393. package/.claude/scripts/validate-constitution.sh +0 -567
  394. package/.claude/scripts/validate-hooks.sh +0 -487
  395. package/.claude/scripts/validate-research.sh +0 -332
  396. package/.claude/scripts/validate-scope-boundary.sh +0 -493
  397. package/.claude/scripts/validate-scope.sh +0 -200
  398. package/.claude/scripts/verify-gate.sh +0 -269
  399. package/.claude/scripts/verify-setup.sh +0 -37
  400. package/.claude/scripts/workflow-status.ts +0 -433
  401. package/.claude/settings.json +0 -95
  402. package/.claude/skills/_reference-implementations/README.md +0 -96
  403. package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +0 -302
  404. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +0 -451
  405. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +0 -307
  406. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +0 -638
  407. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +0 -275
  408. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +0 -224
  409. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +0 -213
  410. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +0 -756
  411. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +0 -336
  412. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +0 -789
  413. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +0 -235
  414. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +0 -754
  415. package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +0 -399
  416. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +0 -331
  417. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +0 -872
  418. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +0 -502
  419. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +0 -767
  420. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +0 -502
  421. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +0 -501
  422. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +0 -406
  423. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +0 -364
  424. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +0 -428
  425. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +0 -418
  426. package/.claude/skills/attention-refresh/SKILL.md +0 -170
  427. package/.claude/skills/brainstorming/SKILL.md +0 -161
  428. package/.claude/skills/cc-devflow-orchestrator/SKILL.md +0 -169
  429. package/.claude/skills/constitution-guardian/SKILL.md +0 -306
  430. package/.claude/skills/constitution-quick-ref/SKILL.md +0 -374
  431. package/.claude/skills/debugging/SKILL.md +0 -221
  432. package/.claude/skills/file-standards/SKILL.md +0 -353
  433. package/.claude/skills/finishing-branch/SKILL.md +0 -189
  434. package/.claude/skills/flow-dev/CLAUDE.md +0 -16
  435. package/.claude/skills/flow-dev/SKILL.md +0 -94
  436. package/.claude/skills/flow-dev/assets/IMPLEMENTATION_PLAN_TEMPLATE.md +0 -71
  437. package/.claude/skills/flow-dev/context.jsonl +0 -4
  438. package/.claude/skills/flow-dev/dev-implementer.jsonl +0 -8
  439. package/.claude/skills/flow-dev/scripts/entry-gate.sh +0 -116
  440. package/.claude/skills/flow-dev/scripts/exit-gate.sh +0 -101
  441. package/.claude/skills/flow-dev/scripts/task-orchestrator.sh +0 -106
  442. package/.claude/skills/flow-fix/SKILL.md +0 -105
  443. package/.claude/skills/flow-fix/context.jsonl +0 -6
  444. package/.claude/skills/flow-fix/references/bug-analyzer.md +0 -381
  445. package/.claude/skills/flow-init/SKILL.md +0 -105
  446. package/.claude/skills/flow-init/assets/BRAINSTORM_TEMPLATE.md +0 -148
  447. package/.claude/skills/flow-init/assets/INIT_FLOW_TEMPLATE.md +0 -198
  448. package/.claude/skills/flow-init/assets/RESEARCH_TEMPLATE.md +0 -276
  449. package/.claude/skills/flow-init/context.jsonl +0 -5
  450. package/.claude/skills/flow-init/references/flow-researcher.md +0 -132
  451. package/.claude/skills/flow-init/scripts/check-prerequisites.sh +0 -240
  452. package/.claude/skills/flow-init/scripts/consolidate-research.sh +0 -182
  453. package/.claude/skills/flow-init/scripts/create-requirement.sh +0 -404
  454. package/.claude/skills/flow-init/scripts/generate-research-tasks.sh +0 -157
  455. package/.claude/skills/flow-init/scripts/populate-research-tasks.sh +0 -284
  456. package/.claude/skills/flow-init/scripts/validate-research.sh +0 -340
  457. package/.claude/skills/flow-quality/SKILL.md +0 -98
  458. package/.claude/skills/flow-quality/context.jsonl +0 -6
  459. package/.claude/skills/flow-quality/references/code-quality-reviewer.md +0 -205
  460. package/.claude/skills/flow-quality/references/qa-tester.md +0 -313
  461. package/.claude/skills/flow-quality/references/security-reviewer.md +0 -314
  462. package/.claude/skills/flow-quality/references/spec-reviewer.md +0 -221
  463. package/.claude/skills/flow-release/SKILL.md +0 -60
  464. package/.claude/skills/flow-release/context.jsonl +0 -5
  465. package/.claude/skills/flow-release/references/release-manager.md +0 -295
  466. package/.claude/skills/flow-spec/CLAUDE.md +0 -17
  467. package/.claude/skills/flow-spec/SKILL.md +0 -102
  468. package/.claude/skills/flow-spec/context.jsonl +0 -5
  469. package/.claude/skills/flow-spec/scripts/entry-gate.sh +0 -194
  470. package/.claude/skills/flow-spec/scripts/exit-gate.sh +0 -244
  471. package/.claude/skills/flow-spec/scripts/parallel-orchestrator.sh +0 -205
  472. package/.claude/skills/flow-spec/scripts/team-communication.sh +0 -353
  473. package/.claude/skills/flow-spec/scripts/team-init.sh +0 -195
  474. package/.claude/skills/flow-spec/scripts/test-team-mode.sh +0 -496
  475. package/.claude/skills/flow-spec/team-config.json +0 -165
  476. package/.claude/skills/flow-verify/CLAUDE.md +0 -10
  477. package/.claude/skills/flow-verify/SKILL.md +0 -53
  478. package/.claude/skills/flow-verify/context.jsonl +0 -5
  479. package/.claude/skills/fractal-docs/SKILL.md +0 -45
  480. package/.claude/skills/journey-checker/SKILL.md +0 -199
  481. package/.claude/skills/journey-checker/pressure-scenarios.md +0 -164
  482. package/.claude/skills/receiving-review/SKILL.md +0 -153
  483. package/.claude/skills/skill-creator/LICENSE.txt +0 -202
  484. package/.claude/skills/skill-creator/SKILL.md +0 -356
  485. package/.claude/skills/skill-creator/references/output-patterns.md +0 -82
  486. package/.claude/skills/skill-creator/references/workflows.md +0 -28
  487. package/.claude/skills/skill-creator/scripts/init_skill.py +0 -303
  488. package/.claude/skills/skill-creator/scripts/package_skill.py +0 -110
  489. package/.claude/skills/skill-creator/scripts/quick_validate.py +0 -95
  490. package/.claude/skills/skill-rules.json +0 -359
  491. package/.claude/skills/tdd/SKILL.md +0 -218
  492. package/.claude/skills/tdd-enforcer/SKILL.md +0 -192
  493. package/.claude/skills/utility/npm-release/CLAUDE.md +0 -55
  494. package/.claude/skills/utility/npm-release/SKILL.md +0 -379
  495. package/.claude/skills/utility/npm-release/references/version-decision-guide.md +0 -134
  496. package/.claude/skills/utility/npm-release/scripts/atomic-version-bump.sh +0 -95
  497. package/.claude/skills/utility/npm-release/scripts/validate-version-sync.sh +0 -82
  498. package/.claude/skills/utility/npm-release/scripts/version-decision-tree.sh +0 -44
  499. package/.claude/skills/verification/SKILL.md +0 -158
  500. package/.claude/skills/workflow.yaml +0 -219
  501. package/.claude/tests/README.md +0 -300
  502. package/.claude/tests/TODO.md +0 -69
  503. package/.claude/tests/__pycache__/test_analyze_upgrade_impact.cpython-311-pytest-7.2.2.pyc +0 -0
  504. package/.claude/tests/__pycache__/test_consolidate_research.cpython-311-pytest-7.2.2.pyc +0 -0
  505. package/.claude/tests/__pycache__/test_export_contracts.cpython-311-pytest-7.2.2.pyc +0 -0
  506. package/.claude/tests/__pycache__/test_extract_data_model.cpython-311-pytest-7.2.2.pyc +0 -0
  507. package/.claude/tests/__pycache__/test_generate_quickstart.cpython-311-pytest-7.2.2.pyc +0 -0
  508. package/.claude/tests/__pycache__/test_generate_research_tasks.cpython-311-pytest-7.2.2.pyc +0 -0
  509. package/.claude/tests/constitution/run_all_constitution_tests.sh +0 -111
  510. package/.claude/tests/constitution/test_agent_assignment.sh +0 -207
  511. package/.claude/tests/constitution/test_article_coverage.sh +0 -201
  512. package/.claude/tests/constitution/test_template_completeness.sh +0 -150
  513. package/.claude/tests/constitution/test_version_consistency.sh +0 -120
  514. package/.claude/tests/fixtures/spec_delta_full.md +0 -16
  515. package/.claude/tests/fixtures/tasks_progress_sample.md +0 -5
  516. package/.claude/tests/run-all-tests.sh +0 -229
  517. package/.claude/tests/scripts/run.sh +0 -30
  518. package/.claude/tests/scripts/test-framework.sh +0 -128
  519. package/.claude/tests/scripts/test_check_prerequisites.sh +0 -511
  520. package/.claude/tests/scripts/test_check_prerequisites.sh.bak +0 -504
  521. package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +0 -505
  522. package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +0 -506
  523. package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +0 -507
  524. package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +0 -508
  525. package/.claude/tests/scripts/test_check_task_status.sh +0 -499
  526. package/.claude/tests/scripts/test_common.sh +0 -244
  527. package/.claude/tests/scripts/test_generate_status_report.sh +0 -71
  528. package/.claude/tests/scripts/test_mark_task_complete.sh +0 -441
  529. package/.claude/tests/scripts/test_mark_task_complete.sh.backup +0 -410
  530. package/.claude/tests/scripts/test_recover_workflow.sh +0 -304
  531. package/.claude/tests/scripts/test_setup_epic.sh +0 -437
  532. package/.claude/tests/scripts/test_sync_task_marks.sh +0 -196
  533. package/.claude/tests/scripts/test_validate_constitution.sh +0 -74
  534. package/.claude/tests/scripts/test_validate_research.sh +0 -462
  535. package/.claude/tests/slugify.bats +0 -82
  536. package/.claude/tests/test-framework.sh +0 -732
  537. package/.claude/tests/test_analyze_upgrade_impact.py +0 -34
  538. package/.claude/tests/test_consolidate_research.py +0 -48
  539. package/.claude/tests/test_export_contracts.py +0 -43
  540. package/.claude/tests/test_extract_data_model.py +0 -33
  541. package/.claude/tests/test_generate_quickstart.py +0 -50
  542. package/.claude/tests/test_generate_research_tasks.py +0 -52
  543. package/.claude/tsc-cache/70d2fc6d-2936-429b-b529-429f1aae8c88/affected-repos.txt +0 -1
  544. package/.claude/tsc-cache/70d2fc6d-2936-429b-b529-429f1aae8c88/edited-files.log +0 -2
  545. package/bin/harness.js +0 -22
  546. package/docs/commands/core-roadmap.md +0 -106
  547. package/docs/commands/core-roadmap.zh-CN.md +0 -102
  548. package/docs/commands/core-style.md +0 -53
  549. package/docs/commands/core-style.zh-CN.md +0 -53
  550. package/docs/commands/flow-init.md +0 -140
  551. package/docs/commands/flow-init.zh-CN.md +0 -169
  552. package/docs/commands/flow-new.md +0 -39
  553. package/docs/commands/flow-new.zh-CN.md +0 -39
  554. package/lib/compiler/__tests__/compile-regression.test.js +0 -103
  555. package/lib/compiler/__tests__/multi-module-emitters.test.js +0 -534
  556. package/lib/compiler/__tests__/resource-copier.test.js +0 -26
  557. package/lib/compiler/__tests__/skill-discovery.test.js +0 -72
  558. package/lib/compiler/context-expander.js +0 -179
  559. package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +0 -109
  560. package/lib/compiler/rules-emitters/codex-rules-emitter.js +0 -116
  561. package/lib/compiler/skill-discovery.js +0 -68
  562. package/lib/harness/CLAUDE.md +0 -22
  563. package/lib/harness/__tests__/planner.tdd.test.js +0 -125
  564. package/lib/harness/cli.js +0 -208
  565. package/lib/harness/index.js +0 -18
  566. package/lib/harness/operations/dispatch.js +0 -298
  567. package/lib/harness/operations/init.js +0 -48
  568. package/lib/harness/operations/pack.js +0 -100
  569. package/lib/harness/operations/plan.js +0 -83
  570. package/lib/harness/operations/release.js +0 -170
  571. package/lib/harness/operations/resume.js +0 -44
  572. package/lib/harness/operations/verify.js +0 -177
  573. package/lib/harness/planner.js +0 -272
  574. package/lib/harness/query.js +0 -126
  575. package/lib/harness/schemas.js +0 -129
@@ -0,0 +1,259 @@
1
+ ---
2
+ name: cc-roadmap
3
+ version: 4.3.1
4
+ description: "Use when defining, resetting, or narrowing project direction, stage order, or backlog priority before a concrete requirement enters the PDCA loop."
5
+ triggers:
6
+ - "帮我定路线图"
7
+ - "下一阶段先做什么"
8
+ - "backlog 太乱了"
9
+ - "项目方向散了"
10
+ - "roadmap this project"
11
+ - "what should we build next"
12
+ - "reset the roadmap"
13
+ - "prioritize the backlog"
14
+ reads:
15
+ - "PLAYBOOK.md"
16
+ - "CHANGELOG.md"
17
+ - "assets/ROADMAP_TEMPLATE.md"
18
+ - "assets/BACKLOG_TEMPLATE.md"
19
+ - "assets/TRACKING_TEMPLATE.json"
20
+ - "references/roadmap-dialogue.md"
21
+ writes:
22
+ - path: "devflow/ROADMAP.md"
23
+ durability: "durable"
24
+ required: true
25
+ - path: "devflow/BACKLOG.md"
26
+ durability: "durable"
27
+ required: true
28
+ - path: "devflow/roadmap-tracking.json"
29
+ durability: "durable"
30
+ required: false
31
+ when: "roadmap/backlog tracking is maintained through bundled helper scripts"
32
+ entry_gate:
33
+ - "Read current roadmap, backlog, related capability specs, and surrounding repo context before proposing direction."
34
+ - "Confirm this is a project-direction problem, not a single requirement execution problem."
35
+ - "Do not decompose implementation tasks while the roadmap is still being decided."
36
+ exit_criteria:
37
+ - "The next 1-3 stages are frozen with goal, why now, dependencies, exit signal, kill signal, and non-goals."
38
+ - "The first backlog items can naturally enter cc-plan without extra strategic guessing, including explicit capability links and expected spec delta."
39
+ - "The roadmap shows an explicit RM dependency graph so serial blockers and parallel-ready work are obvious."
40
+ - "The user-approved recommendation is explicit and grounded in current evidence."
41
+ reroutes:
42
+ - when: "The user is already discussing one concrete requirement, bug, or execution task."
43
+ target: "cc-plan"
44
+ recovery_modes:
45
+ - name: "re-scan-context"
46
+ when: "The current direction no longer matches repo reality, roadmap files, or the latest user constraint."
47
+ action: "Reload the roadmap sources, rewrite Context Snapshot, and recompute the recommended route before continuing."
48
+ tool_budget:
49
+ read_files: 8
50
+ search_steps: 5
51
+ shell_commands: 4
52
+ ---
53
+
54
+ # Roadmap
55
+
56
+ > [PROTOCOL]: 变更时同步更新 `version`、`CHANGELOG.md`、相关模板/脚本引用,必要时写 migration note,然后检查 `CLAUDE.md`
57
+
58
+ ## Role
59
+
60
+ `cc-roadmap` 只负责一件事:决定项目接下来 1-3 个阶段该推进哪几个 capability。
61
+
62
+ 它先尽可能收集真实上下文,再逼出真实用户、真实痛点、真实紧迫性,最后把这些现实压成一条能落地、能进入 `cc-plan` 的主线。
63
+
64
+ ## Read First
65
+
66
+ 1. `PLAYBOOK.md`
67
+ 2. `CHANGELOG.md`
68
+ 3. `assets/ROADMAP_TEMPLATE.md`
69
+ 4. `assets/BACKLOG_TEMPLATE.md`
70
+ 5. `references/roadmap-dialogue.md`
71
+
72
+ ## Use This Skill When
73
+
74
+ - 新项目刚开始
75
+ - 项目做到一半,方向开始发散
76
+ - backlog 很多,但主线不清楚
77
+ - 你需要决定接下来 1-3 个阶段先做什么
78
+
79
+ 如果用户已经在讨论一个明确 requirement、一个 bug 或一组实现任务,停止留在这里,转去 `cc-plan`。
80
+
81
+ ## Quick Start
82
+
83
+ 如果用户只给了一个模糊问题,先把它归到下面 3 类之一,再继续问:
84
+
85
+ | 用户信号 | 先读成什么问题 | 默认路线形状 |
86
+ |---------|---------------|-------------|
87
+ | “不知道下一步做什么” | 主线不清 | `wedge-first` |
88
+ | “后面几阶段都会重复碰同一底座” | 底座风险 | `platform-first` |
89
+ | “增长/交付/信任卡住了” | 当前最大瓶颈 | `rescue-first` |
90
+
91
+ 先给一个**默认推荐**,再解释为什么,不要把用户扔进开放式战略讨论。
92
+
93
+ ## Harness Contract
94
+
95
+ - Allowed actions: read current strategy files, repo context, and recent reality; compare route shapes; write `devflow/ROADMAP.md`, `devflow/BACKLOG.md`, and the optional `devflow/roadmap-tracking.json` sidecar used by bundled helpers as the shared roadmap/backlog truth source.
96
+ - Forbidden actions: decompose implementation tasks, invent hidden context, or jump into `cc-plan` before the roadmap is approved.
97
+ - Required evidence: every stage and backlog item must point back to explicit repo facts, user constraints, or observed market signals.
98
+ - Reroute rule: once the conversation collapses to one concrete requirement, stop strategic expansion and hand off to `cc-plan`.
99
+
100
+ ## Entry Gate
101
+
102
+ 1. 如果 `devflow/ROADMAP.md` / `devflow/BACKLOG.md` 已存在,先读现状再重写。
103
+ 2. 先判断这是“项目方向问题”还是“单 requirement 执行问题”。
104
+ 3. 先做一次上下文扫描,不能跳过现有事实直接写愿景。
105
+ 4. 方向没被批准前,不准把 roadmap 偷偷下放成实现任务。
106
+
107
+ ## Context Sweep
108
+
109
+ 进入对话前,至少主动收这些上下文:
110
+
111
+ 1. 当前 `devflow/ROADMAP.md` / `devflow/BACKLOG.md` 的主线、版本、已停放事项。
112
+ 2. `devflow/specs/INDEX.md` 与相关 capability specs 的边界、状态、open gaps。
113
+ 3. `CLAUDE.md`、`README*`、`TODOS.md`、最近相关 docs / specs / plans。
114
+ 4. 最近相关提交、当前分支脏状态、正在进行中的 requirement。
115
+ 5. 真实 forcing functions:deadline、发布窗口、资源上限、依赖、distribution、adoption / trust / delivery 卡点。
116
+ 6. 当前项目最强的现实证据,以及仍然只能靠假设的空白。
117
+
118
+ 先把这些材料压成一个 `Context Snapshot`,再开始追问用户。
119
+
120
+ ## Session Protocol
121
+
122
+ 1. 先探索上下文,不靠默认上下文注入替代阅读。
123
+ 2. 先问现实,不先写愿景。
124
+ 3. 一次只推进一个关键未知点,不要一口气抛一串问题。
125
+ 4. 先写 `Context Snapshot`、证据、约束、非目标,再讨论阶段。
126
+ 5. 给出 2-3 种路线图形状,再明确推荐一种,并说明为什么其他路线现在不值得打。
127
+ 6. 只冻结 1-3 个阶段。每个阶段都必须有 goal、why now、dependencies、exit signal、kill signal、non-goals。
128
+ 7. 把 `RM` 之间的硬依赖压成显式 dependency graph,并标出 parallel-ready wave;不要把“最好按这个顺序做”伪装成 blocker。
129
+ 8. backlog 只保留会真的进入下一轮 `cc-plan` 的事项,每项都要带成功信号、下一决策、`Primary Capability`、`Secondary Capabilities`、`Expected Spec Delta`、`Depends On` 与 `Parallel With`。
130
+ 9. 用户没批准,不进入 `cc-plan`。
131
+
132
+ ## Route Selection Rule
133
+
134
+ 给出 2-3 条路线后,必须明确推荐其中一条。推荐格式至少回答这 4 件事:
135
+
136
+ 1. 为什么这条路线最符合当前证据
137
+ 2. 为什么另外两条现在不值得先打
138
+ 3. 这条路线最早会在哪个 signal 上赢
139
+ 4. 如果这个 signal 没出现,什么时候该止损
140
+
141
+ 推荐话术要像这样:
142
+
143
+ > Recommendation: `wedge-first`, because the strongest current evidence is demand uncertainty, not platform pain. We should earn the right to build the base layer after Stage 1 proves pull.
144
+
145
+ 不要只写:
146
+
147
+ - “建议先做 wedge-first”
148
+ - “这条更合理”
149
+ - “综合来看最优”
150
+
151
+ ## Ask
152
+
153
+ 至少要逼清这 5 件事:
154
+
155
+ 1. 这个项目真正服务谁
156
+ 2. 用户今天用什么笨办法解决
157
+ 3. 为什么他们会立刻想要这个东西
158
+ 4. 最窄但最有穿透力的第一阶段是什么
159
+ 5. 未来 6-12 个月,产品会长成什么样
160
+
161
+ 同时尽量补齐这些落地上下文:
162
+
163
+ 6. 当前最强证据是什么,哪些只是想象
164
+ 7. deadline / team / budget / dependency / distribution 的硬约束是什么
165
+ 8. 当前最大的 adoption、trust、delivery 卡点是什么
166
+ 9. 这个 roadmap 成功与失败各自用什么信号判断
167
+
168
+ ## Approval Gates
169
+
170
+ 1. 没有 `Context Snapshot`,不准给路线推荐。
171
+ 2. 没有 2-3 条路线对比,不准直接拍脑袋定主线。
172
+ 3. 没有 exit signal / kill signal / non-goals,不算阶段冻结。
173
+ 4. 没有明确成功信号和下一决策,不准把事项放进 `Ready For Req-Plan`。
174
+ 5. 没有 `RM dependency graph` 或 parallel-ready wave,不准宣称事项可以并发推进。
175
+ 6. 没有用户批准,不准把 roadmap item 下放到 `cc-plan`。
176
+
177
+ ## Review Loop
178
+
179
+ 写完 `devflow/ROADMAP.md` / `devflow/BACKLOG.md` 后,至少完成这 6 个检查:
180
+
181
+ 1. Placeholder scan:不能有 TBD、TODO、`[NEEDS CONTEXT]` 之类的逃避词。
182
+ 2. Evidence scan:每个阶段是否都能指回某个现实证据,而不是空洞愿景。
183
+ 3. Causality scan:Stage 2 是否真的建立在 Stage 1 的胜利条件之上。
184
+ 4. Feasibility scan:阶段目标与团队容量、依赖、distribution 约束是否接得上。
185
+ 5. Graph scan:`Depends On` 是否只包含硬阻塞,图里有没有环,parallel-ready wave 是否真的共享同一前置。
186
+ 6. Spec scan:每个 roadmap item 是否都落到某个 capability,而不是悬空需求。
187
+ 7. Handoff scan:第一批 roadmap item 是否已经自然长成可进入 `cc-plan` 的对象。
188
+
189
+ ## Output
190
+
191
+ - `devflow/ROADMAP.md`
192
+ - `devflow/BACKLOG.md`
193
+ - `devflow/roadmap-tracking.json` when helper automation needs a shared roadmap/backlog truth source
194
+
195
+ ## Good Output
196
+
197
+ 一个高质量 roadmap 交付后,用户应该一眼看懂:
198
+
199
+ 1. 现在先打哪一仗
200
+ 2. 为什么不是另外两仗
201
+ 3. 哪个 signal 说明这一仗赢了
202
+ 4. 哪些 backlog 项已经真的 ready for `cc-plan`
203
+ 5. 哪些 `RM` 必须串行,哪些已经可以并行开会话
204
+
205
+ ## Versioning
206
+
207
+ `cc-roadmap` 自身使用 semver:
208
+
209
+ - `patch`:措辞、模板字段说明、非契约性澄清
210
+ - `minor`:新增兼容字段、上下文收集规则、评审规则、输出结构增强
211
+ - `major`:改变 `devflow/ROADMAP.md` / `devflow/BACKLOG.md` 的核心契约、阶段模型或 handoff 预期
212
+
213
+ 每次修改都必须:
214
+
215
+ 1. 更新本文件 frontmatter 的 `version`
216
+ 2. 更新 `CHANGELOG.md`
217
+ 3. 如果会影响已有 `devflow/ROADMAP.md` / `devflow/BACKLOG.md` 使用方式,在 `CHANGELOG.md` 写清 migration note
218
+
219
+ ## Bundled Resources
220
+
221
+ - 变更记录:`CHANGELOG.md`
222
+ - 模板:`assets/ROADMAP_TEMPLATE.md`
223
+ - 模板:`assets/BACKLOG_TEMPLATE.md`
224
+ - 结构化 tracking 模板:`assets/TRACKING_TEMPLATE.json`
225
+ - 对话骨架:`references/roadmap-dialogue.md`
226
+ - 条目定位:`scripts/locate-roadmap-item.sh`
227
+ - tracking 渲染器:`scripts/roadmap-tracking.js`
228
+ - 进度回写:`scripts/sync-roadmap-progress.sh`
229
+ - 版本递增:`scripts/bump-skill-version.sh`
230
+
231
+ ## Exit Criteria
232
+
233
+ - 中长期方向清楚
234
+ - 核心上下文、证据和硬约束已经显式记录
235
+ - 阶段目标与优先级清楚
236
+ - 第一批 requirement 从 roadmap 里自然长出来
237
+ - 下一步唯一答案是把某个 roadmap item 放进 `cc-plan`
238
+
239
+ ## Working Rules
240
+
241
+ 1. 先收上下文,再收意见。
242
+ 2. 没有现实证据时必须明确写成 assumption,而不是偷偷当事实。
243
+ 3. `devflow/ROADMAP.md` 是方向真相源,`devflow/BACKLOG.md` 是进入下一轮规划的缓冲区。
244
+ 4. 决策理由必须保留下来,方便以后重跑时比较版本差异。
245
+ 5. 不要为了显得完整而写 6 个阶段,能打赢下一仗比画完整战争图更重要。
246
+
247
+ ## Do Not
248
+
249
+ - 不在这里拆实现任务
250
+ - 不把 roadmap 写成愿望清单
251
+ - 不讨论 20 个阶段,只定最重要的 1-3 步
252
+ - 不靠默认上下文注入替代思考
253
+ - 不把没有证据支撑的猜测包装成战略
254
+ - 不让 backlog 变成“以后再说”的垃圾堆
255
+
256
+ ## Companion Files
257
+
258
+ - 深入剧本:`PLAYBOOK.md`
259
+ - 路线图对话:`references/roadmap-dialogue.md`
@@ -0,0 +1,45 @@
1
+ # BACKLOG
2
+
3
+ ## Backlog Meta
4
+
5
+ - Roadmap version:
6
+ - Skill version:
7
+ - Last synced:
8
+ - Current focus stage:
9
+ - Tracking source: `devflow/roadmap-tracking.json`
10
+
11
+ ## Queue
12
+
13
+ | RM-ID | Title | Source Stage | Priority | Primary Capability | Secondary Capabilities | Capability Gap | Expected Spec Delta | Evidence | Depends On | Parallel With | Unknowns | Next Decision | Ready |
14
+ |------|-------|--------------|----------|--------------------|------------------------|----------------|---------------------|----------|------------|---------------|----------|---------------|-------|
15
+ | RM-001 | | Stage 1 | P1 | cap-example | - | | | | - | - | | | No |
16
+
17
+ ## Dependency Handoff
18
+
19
+ - Serial spine:
20
+ - Parallel-ready next wave:
21
+ - Notes on blockers:
22
+
23
+ ## Ready For Req-Plan
24
+
25
+ - RM-001:
26
+ - Primary Capability:
27
+ - Secondary Capabilities:
28
+ - Why now:
29
+ - Success signal:
30
+ - Entry constraints:
31
+ - Capability gap:
32
+ - Expected spec delta:
33
+ - Open risks:
34
+ - First planning question:
35
+ - Required context to load:
36
+ - Depends On:
37
+ - Parallel With:
38
+ - Why this is ready now:
39
+
40
+ ## Parked
41
+
42
+ - RM-XXX:
43
+ - Reason parked:
44
+ - Trigger to reopen:
45
+ - Missing evidence:
@@ -0,0 +1,153 @@
1
+ # ROADMAP
2
+
3
+ ## Roadmap Meta
4
+
5
+ - Roadmap version:
6
+ - Skill version:
7
+ - Status:
8
+ - Last updated:
9
+ - Owner / decider:
10
+ - Current focus stage:
11
+ - Confidence:
12
+ - Supersedes roadmap version:
13
+
14
+ ## Context Snapshot
15
+
16
+ - Product / repo:
17
+ - Project stage:
18
+ - Users:
19
+ - Pain:
20
+ - Existing workaround:
21
+ - Strongest demand evidence:
22
+ - Why now:
23
+ - Distribution path:
24
+ - Deadline / forcing function:
25
+ - Team / capacity:
26
+ - Hard constraints:
27
+ - Adoption / trust bottleneck:
28
+ - Known unknowns:
29
+ - Relevant capabilities:
30
+
31
+ ## Evidence Ledger
32
+
33
+ | Signal | Evidence | Confidence | Source | Why it matters |
34
+ |--------|----------|------------|--------|----------------|
35
+ | Demand | | High / Med / Low | | |
36
+ | Timing | | High / Med / Low | | |
37
+ | Feasibility | | High / Med / Low | | |
38
+ | Distribution | | High / Med / Low | | |
39
+
40
+ ## Route Options
41
+
42
+ | Shape | Why this could work | Why this may fail | Decision |
43
+ |-------|---------------------|-------------------|----------|
44
+ | wedge-first | | | Recommended / Rejected |
45
+ | platform-first | | | Rejected |
46
+ | rescue-first | | | Rejected |
47
+
48
+ ## Recommended Route
49
+
50
+ - Recommendation:
51
+ - Why this route wins now:
52
+ - Why the rejected routes lose now:
53
+ - First signal to watch:
54
+ - Kill signal / stop condition:
55
+
56
+ ## Product Thesis
57
+
58
+ - Users:
59
+ - Pain:
60
+ - Why now:
61
+ - Strategic wedge:
62
+ - Product promise:
63
+ - What we refuse to build yet:
64
+ - 6-12 month pull:
65
+
66
+ ## Stage Overview
67
+
68
+ | Stage | Goal | Why now | Primary capabilities | Dependencies | Exit signal | Kill signal | Non-goals |
69
+ |-------|------|---------|----------------------|--------------|-------------|-------------|-----------|
70
+ | Stage 1 | | | | | | | |
71
+ | Stage 2 | | | | | | | |
72
+ | Stage 3 | | | | | | | |
73
+
74
+ ## Stage Detail
75
+
76
+ ### Stage 1
77
+
78
+ - Goal:
79
+ - Users unlocked:
80
+ - Why this stage exists:
81
+ - Entry assumptions:
82
+ - Deliverables:
83
+ - Dependencies:
84
+ - Win condition:
85
+ - Key risks:
86
+ - Kill signal:
87
+ - What must stay out:
88
+ - Candidate roadmap items:
89
+
90
+ ### Stage 2
91
+
92
+ - Goal:
93
+ - Users unlocked:
94
+ - Why this stage exists:
95
+ - Entry assumptions:
96
+ - Deliverables:
97
+ - Dependencies:
98
+ - Win condition:
99
+ - Key risks:
100
+ - Kill signal:
101
+ - What must stay out:
102
+ - Candidate roadmap items:
103
+
104
+ ### Stage 3
105
+
106
+ - Goal:
107
+ - Users unlocked:
108
+ - Why this stage exists:
109
+ - Entry assumptions:
110
+ - Deliverables:
111
+ - Dependencies:
112
+ - Win condition:
113
+ - Key risks:
114
+ - Kill signal:
115
+ - What must stay out:
116
+ - Candidate roadmap items:
117
+
118
+ ## RM Dependency Graph
119
+
120
+ ```mermaid
121
+ flowchart LR
122
+ RM_001["RM-001 ..."] --> RM_002["RM-002 ..."]
123
+ RM_001 --> RM_003["RM-003 ..."]
124
+ RM_003 --> RM_004["RM-004 ..."]
125
+ ```
126
+
127
+ - Dependency rule: `Depends On` only lists hard blockers.
128
+ - Serial spine:
129
+ - Parallel-ready branches:
130
+
131
+ ## Parallel Waves
132
+
133
+ | Wave | Ready when | Items | Why parallel |
134
+ |------|------------|-------|--------------|
135
+ | Wave 1 | | | |
136
+ | Wave 2 | | | |
137
+
138
+ ## Decision Notes
139
+
140
+ - Rejected path A:
141
+ - Rejected path B:
142
+ - Open assumptions to verify next:
143
+ - What changed in this version:
144
+
145
+ ## Implementation Tracking
146
+
147
+ - Tracking source: `devflow/roadmap-tracking.json`
148
+
149
+ <!-- roadmap-tracking:start -->
150
+ | RM-ID | Item | Stage | Priority | Primary Capability | Secondary Capabilities | Expected Spec Delta | Depends On | Status | REQ | Progress |
151
+ |------|------|-------|----------|--------------------|------------------------|---------------------|------------|--------|-----|----------|
152
+ | RM-001 | | Stage 1 | P1 | cap-example | - | tighten current truth | - | Planned | - | 0% |
153
+ <!-- roadmap-tracking:end -->
@@ -0,0 +1,48 @@
1
+ {
2
+ "version": 2,
3
+ "lastSyncedAt": "2026-04-19",
4
+ "backlogMeta": {
5
+ "roadmapVersion": "roadmap.v1",
6
+ "skillVersion": "4.3.1",
7
+ "currentFocusStage": "Stage 1"
8
+ },
9
+ "dependencyHandoff": {
10
+ "serialSpine": "RM-001",
11
+ "parallelReadyNextWave": "-",
12
+ "notesOnBlockers": "-"
13
+ },
14
+ "items": [
15
+ {
16
+ "rmId": "RM-001",
17
+ "item": "",
18
+ "stage": "Stage 1",
19
+ "priority": "P1",
20
+ "primaryCapability": "cap-example",
21
+ "secondaryCapabilities": [],
22
+ "expectedSpecDelta": "tighten current truth",
23
+ "dependsOn": [],
24
+ "status": "Planned",
25
+ "req": "",
26
+ "progress": "0%",
27
+ "backlog": {
28
+ "capabilityGap": "",
29
+ "evidence": "",
30
+ "parallelWith": [],
31
+ "unknowns": "",
32
+ "nextDecision": "",
33
+ "ready": false,
34
+ "whyNow": "",
35
+ "successSignal": "",
36
+ "entryConstraints": "",
37
+ "openRisks": "",
38
+ "firstPlanningQuestion": "",
39
+ "requiredContextToLoad": "",
40
+ "whyReadyNow": "",
41
+ "parked": false,
42
+ "parkedReason": "",
43
+ "triggerToReopen": "",
44
+ "missingEvidence": ""
45
+ }
46
+ }
47
+ ]
48
+ }
@@ -0,0 +1,37 @@
1
+ # Roadmap Dialogue
2
+
3
+ ## Order
4
+
5
+ 0. 先做 `Context Snapshot`:现有 roadmap / backlog、文档、最近提交、forcing functions
6
+ 1. 用户是谁
7
+ 2. 今天靠什么笨办法活着
8
+ 3. 最强需求证据是什么
9
+ 4. 为什么现在必须解决
10
+ 5. deadline / capacity / dependency / distribution 约束是什么
11
+ 6. 当前最大的 adoption / trust / delivery 卡点是什么
12
+ 7. 最窄突破口是什么
13
+ 8. 6-12 个月后会长成什么
14
+ 9. 给出 2-3 条路线图形状并明确推荐
15
+ 10. 冻结 1-3 个阶段,写 exit signal / kill signal / non-goals
16
+ 11. 画出 `RM dependency graph`,标出串行主链和 parallel-ready wave
17
+ 12. 标出哪些事项真的 ready for `cc-plan`
18
+
19
+ ## Question Rules
20
+
21
+ - 一次只推进一个关键未知点
22
+ - 没证据时明确写 assumption
23
+ - 用户没批准前,不把事项偷下放成 requirement
24
+
25
+ ## Route Shapes
26
+
27
+ - `wedge-first`: 先用一个窄切口打穿真实需求
28
+ - `platform-first`: 先做后面几阶段都会反复复用的底座
29
+ - `rescue-first`: 先解决 adoption、trust、delivery 里最大的卡点
30
+
31
+ ## Output Rules
32
+
33
+ - 只定 1-3 个阶段
34
+ - 每个阶段都要有 exit signal、kill signal、non-goals
35
+ - `RM` 必须带 `Depends On`,并在 roadmap 里显式画出 dependency graph
36
+ - backlog 只收下一轮真会进入 `cc-plan` 的事项
37
+ - ready 项必须带成功信号、下一决策、`Depends On`、`Parallel With`
@@ -0,0 +1,103 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -euo pipefail
4
+
5
+ # ------------------------------------------------------------
6
+ # roadmap skill semver helper
7
+ # - bump SKILL.md frontmatter version
8
+ # - prepend CHANGELOG.md entry
9
+ # ------------------------------------------------------------
10
+
11
+ usage() {
12
+ cat <<'EOF'
13
+ Usage:
14
+ bump-skill-version.sh --type patch|minor|major --message "change summary" \
15
+ [--skill-file SKILL.md] [--changelog CHANGELOG.md] [--date YYYY-MM-DD]
16
+ EOF
17
+ }
18
+
19
+ TYPE=""
20
+ MESSAGE=""
21
+ SKILL_FILE="SKILL.md"
22
+ CHANGELOG_FILE="CHANGELOG.md"
23
+ DATE="$(date +%Y-%m-%d)"
24
+
25
+ while [[ $# -gt 0 ]]; do
26
+ case "$1" in
27
+ --type) TYPE="$2"; shift 2 ;;
28
+ --message) MESSAGE="$2"; shift 2 ;;
29
+ --skill-file) SKILL_FILE="$2"; shift 2 ;;
30
+ --changelog) CHANGELOG_FILE="$2"; shift 2 ;;
31
+ --date) DATE="$2"; shift 2 ;;
32
+ -h|--help) usage; exit 0 ;;
33
+ *) echo "Unknown arg: $1" >&2; usage; exit 1 ;;
34
+ esac
35
+ done
36
+
37
+ if [[ -z "$TYPE" || -z "$MESSAGE" ]]; then
38
+ usage
39
+ exit 1
40
+ fi
41
+
42
+ if [[ ! -f "$SKILL_FILE" ]]; then
43
+ echo "Skill file not found: $SKILL_FILE" >&2
44
+ exit 1
45
+ fi
46
+
47
+ CURRENT_VERSION="$(awk '/^version: / { print $2; exit }' "$SKILL_FILE")"
48
+
49
+ if [[ -z "$CURRENT_VERSION" ]]; then
50
+ echo "No version field found in $SKILL_FILE" >&2
51
+ exit 1
52
+ fi
53
+
54
+ IFS='.' read -r MAJOR MINOR PATCH <<<"$CURRENT_VERSION"
55
+
56
+ case "$TYPE" in
57
+ patch)
58
+ PATCH=$((PATCH + 1))
59
+ ;;
60
+ minor)
61
+ MINOR=$((MINOR + 1))
62
+ PATCH=0
63
+ ;;
64
+ major)
65
+ MAJOR=$((MAJOR + 1))
66
+ MINOR=0
67
+ PATCH=0
68
+ ;;
69
+ *)
70
+ echo "Unsupported bump type: $TYPE" >&2
71
+ exit 1
72
+ ;;
73
+ esac
74
+
75
+ NEXT_VERSION="${MAJOR}.${MINOR}.${PATCH}"
76
+
77
+ TMP_SKILL="$(mktemp)"
78
+ awk -v next_version="$NEXT_VERSION" '
79
+ BEGIN { done = 0 }
80
+ {
81
+ if (!done && $0 ~ /^version: /) {
82
+ print "version: " next_version
83
+ done = 1
84
+ next
85
+ }
86
+ print
87
+ }
88
+ ' "$SKILL_FILE" > "$TMP_SKILL"
89
+ mv "$TMP_SKILL" "$SKILL_FILE"
90
+
91
+ if [[ ! -f "$CHANGELOG_FILE" ]]; then
92
+ printf '# Roadmap Skill Changelog\n\n' > "$CHANGELOG_FILE"
93
+ fi
94
+
95
+ TMP_CHANGELOG="$(mktemp)"
96
+ {
97
+ sed -n '1p' "$CHANGELOG_FILE"
98
+ printf '\n## v%s - %s\n\n- %s\n' "$NEXT_VERSION" "$DATE" "$MESSAGE"
99
+ sed -n '2,$p' "$CHANGELOG_FILE"
100
+ } > "$TMP_CHANGELOG"
101
+ mv "$TMP_CHANGELOG" "$CHANGELOG_FILE"
102
+
103
+ echo "Bumped roadmap skill: ${CURRENT_VERSION} -> ${NEXT_VERSION}"