specweave 0.1.8 → 0.3.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 (294) hide show
  1. package/CLAUDE.md +600 -0
  2. package/README.md +263 -88
  3. package/bin/install-all.sh +1 -1
  4. package/bin/install-commands.sh +3 -3
  5. package/bin/specweave.js +39 -9
  6. package/dist/adapters/adapter-base.d.ts +1 -1
  7. package/dist/adapters/adapter-base.d.ts.map +1 -1
  8. package/dist/adapters/adapter-base.js +6 -41
  9. package/dist/adapters/adapter-base.js.map +1 -1
  10. package/dist/adapters/adapter-interface.js +1 -2
  11. package/dist/adapters/adapter-interface.js.map +1 -1
  12. package/dist/adapters/adapter-loader.d.ts +86 -0
  13. package/dist/adapters/adapter-loader.d.ts.map +1 -0
  14. package/dist/adapters/adapter-loader.js +216 -0
  15. package/dist/adapters/adapter-loader.js.map +1 -0
  16. package/dist/adapters/agents-md-generator.d.ts +48 -0
  17. package/dist/adapters/agents-md-generator.d.ts.map +1 -0
  18. package/dist/adapters/agents-md-generator.js +132 -0
  19. package/dist/adapters/agents-md-generator.js.map +1 -0
  20. package/dist/adapters/claude/adapter.d.ts +2 -2
  21. package/dist/adapters/claude/adapter.d.ts.map +1 -1
  22. package/dist/adapters/claude/adapter.js +5 -42
  23. package/dist/adapters/claude/adapter.js.map +1 -1
  24. package/dist/adapters/claude-md-generator.d.ts +78 -0
  25. package/dist/adapters/claude-md-generator.d.ts.map +1 -0
  26. package/dist/adapters/claude-md-generator.js +246 -0
  27. package/dist/adapters/claude-md-generator.js.map +1 -0
  28. package/dist/adapters/codex/adapter.d.ts +50 -0
  29. package/dist/adapters/codex/adapter.d.ts.map +1 -0
  30. package/dist/adapters/codex/adapter.js +316 -0
  31. package/dist/adapters/codex/adapter.js.map +1 -0
  32. package/dist/adapters/copilot/adapter.d.ts +10 -9
  33. package/dist/adapters/copilot/adapter.d.ts.map +1 -1
  34. package/dist/adapters/copilot/adapter.js +35 -100
  35. package/dist/adapters/copilot/adapter.js.map +1 -1
  36. package/dist/adapters/cursor/adapter.d.ts +8 -6
  37. package/dist/adapters/cursor/adapter.d.ts.map +1 -1
  38. package/dist/adapters/cursor/adapter.js +47 -130
  39. package/dist/adapters/cursor/adapter.js.map +1 -1
  40. package/dist/adapters/doc-generator.d.ts +69 -0
  41. package/dist/adapters/doc-generator.d.ts.map +1 -0
  42. package/dist/adapters/doc-generator.js +247 -0
  43. package/dist/adapters/doc-generator.js.map +1 -0
  44. package/dist/adapters/gemini/adapter.d.ts +50 -0
  45. package/dist/adapters/gemini/adapter.d.ts.map +1 -0
  46. package/dist/adapters/gemini/adapter.js +281 -0
  47. package/dist/adapters/gemini/adapter.js.map +1 -0
  48. package/dist/adapters/generic/adapter.d.ts +7 -4
  49. package/dist/adapters/generic/adapter.d.ts.map +1 -1
  50. package/dist/adapters/generic/adapter.js +60 -59
  51. package/dist/adapters/generic/adapter.js.map +1 -1
  52. package/dist/cli/commands/init.d.ts +3 -1
  53. package/dist/cli/commands/init.d.ts.map +1 -1
  54. package/dist/cli/commands/init.js +272 -170
  55. package/dist/cli/commands/init.js.map +1 -1
  56. package/dist/cli/commands/install.d.ts.map +1 -1
  57. package/dist/cli/commands/install.js +22 -58
  58. package/dist/cli/commands/install.js.map +1 -1
  59. package/dist/cli/commands/list.d.ts.map +1 -1
  60. package/dist/cli/commands/list.js +27 -64
  61. package/dist/cli/commands/list.js.map +1 -1
  62. package/dist/core/credentials-manager.d.ts +90 -0
  63. package/dist/core/credentials-manager.d.ts.map +1 -0
  64. package/dist/core/credentials-manager.js +271 -0
  65. package/dist/core/credentials-manager.js.map +1 -0
  66. package/dist/core/project-structure-detector.d.ts +92 -0
  67. package/dist/core/project-structure-detector.d.ts.map +1 -0
  68. package/dist/core/project-structure-detector.js +289 -0
  69. package/dist/core/project-structure-detector.js.map +1 -0
  70. package/dist/core/rfc-generator-v2.d.ts +149 -0
  71. package/dist/core/rfc-generator-v2.d.ts.map +1 -0
  72. package/dist/core/rfc-generator-v2.js +399 -0
  73. package/dist/core/rfc-generator-v2.js.map +1 -0
  74. package/dist/core/rfc-generator.d.ts +147 -0
  75. package/dist/core/rfc-generator.d.ts.map +1 -0
  76. package/dist/core/rfc-generator.js +434 -0
  77. package/dist/core/rfc-generator.js.map +1 -0
  78. package/dist/integrations/ado/ado-client.d.ts +123 -0
  79. package/dist/integrations/ado/ado-client.d.ts.map +1 -0
  80. package/dist/integrations/ado/ado-client.js +398 -0
  81. package/dist/integrations/ado/ado-client.js.map +1 -0
  82. package/dist/integrations/jira/jira-client.d.ts +139 -0
  83. package/dist/integrations/jira/jira-client.d.ts.map +1 -0
  84. package/dist/integrations/jira/jira-client.js +386 -0
  85. package/dist/integrations/jira/jira-client.js.map +1 -0
  86. package/dist/integrations/jira/jira-incremental-mapper.d.ts +75 -0
  87. package/dist/integrations/jira/jira-incremental-mapper.d.ts.map +1 -0
  88. package/dist/integrations/jira/jira-incremental-mapper.js +474 -0
  89. package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -0
  90. package/dist/integrations/jira/jira-mapper.d.ts +105 -0
  91. package/dist/integrations/jira/jira-mapper.d.ts.map +1 -0
  92. package/dist/integrations/jira/jira-mapper.js +494 -0
  93. package/dist/integrations/jira/jira-mapper.js.map +1 -0
  94. package/dist/testing/test-generator.d.ts +117 -0
  95. package/dist/testing/test-generator.d.ts.map +1 -0
  96. package/dist/testing/test-generator.js +370 -0
  97. package/dist/testing/test-generator.js.map +1 -0
  98. package/dist/utils/auto-install.d.ts +3 -0
  99. package/dist/utils/auto-install.d.ts.map +1 -1
  100. package/dist/utils/auto-install.js +16 -82
  101. package/dist/utils/auto-install.js.map +1 -1
  102. package/dist/utils/esm-helpers.d.ts +50 -0
  103. package/dist/utils/esm-helpers.d.ts.map +1 -0
  104. package/dist/utils/esm-helpers.js +57 -0
  105. package/dist/utils/esm-helpers.js.map +1 -0
  106. package/package.json +16 -7
  107. package/src/adapters/README.md +1 -2
  108. package/src/adapters/adapter-base.ts +6 -3
  109. package/src/adapters/adapter-loader.ts +261 -0
  110. package/src/adapters/agents-md-generator.ts +162 -0
  111. package/src/adapters/claude/README.md +6 -14
  112. package/src/adapters/claude/adapter.ts +4 -4
  113. package/src/adapters/claude-md-generator.ts +311 -0
  114. package/src/adapters/codex/README.md +105 -0
  115. package/src/adapters/codex/adapter.ts +333 -0
  116. package/src/adapters/copilot/adapter.ts +36 -65
  117. package/src/adapters/cursor/README.md +0 -2
  118. package/src/adapters/cursor/adapter.ts +46 -92
  119. package/src/adapters/doc-generator.ts +331 -0
  120. package/src/adapters/gemini/README.md +97 -0
  121. package/src/adapters/gemini/adapter.ts +298 -0
  122. package/src/adapters/generic/adapter.ts +61 -57
  123. package/src/adapters/registry.yaml +86 -25
  124. package/src/agents/devops/AGENT.md +16 -18
  125. package/src/agents/docs-writer/AGENT.md +2 -2
  126. package/src/agents/pm/AGENT.md +1 -50
  127. package/src/commands/README.md +134 -111
  128. package/src/commands/{build.md → specweave.do.md} +185 -72
  129. package/src/commands/{done.md → specweave.done.md} +3 -3
  130. package/src/commands/{inc.md → specweave.inc.md} +4 -4
  131. package/src/commands/specweave.increment.md +383 -0
  132. package/src/commands/specweave.md +430 -0
  133. package/src/commands/specweave.next.md +495 -0
  134. package/src/commands/specweave.progress.md +258 -0
  135. package/src/commands/specweave.sync-docs.md +665 -0
  136. package/src/commands/specweave.sync-github.md +269 -0
  137. package/src/commands/specweave.sync-jira.md +197 -0
  138. package/src/commands/{validate.md → specweave.validate.md} +4 -4
  139. package/src/hooks/README.md +19 -29
  140. package/src/hooks/post-task-completion.sh +25 -30
  141. package/src/skills/ado-sync/README.md +1 -36
  142. package/src/skills/bmad-method-expert/SKILL.md +1 -3
  143. package/src/skills/brownfield-analyzer/SKILL.md +429 -23
  144. package/src/skills/brownfield-onboarder/SKILL.md +221 -8
  145. package/src/skills/context-loader/SKILL.md +239 -617
  146. package/src/skills/context-optimizer/SKILL.md +0 -30
  147. package/src/skills/github-sync/SKILL.md +1 -19
  148. package/src/skills/increment-planner/SKILL.md +64 -18
  149. package/src/skills/increment-quality-judge/SKILL.md +1 -36
  150. package/src/skills/jira-sync/README.md +1 -38
  151. package/src/skills/role-orchestrator/README.md +1 -22
  152. package/src/skills/role-orchestrator/SKILL.md +1 -59
  153. package/src/skills/skill-router/SKILL.md +0 -18
  154. package/src/skills/spec-kit-expert/SKILL.md +1 -3
  155. package/src/skills/specweave-detector/SKILL.md +225 -275
  156. package/src/skills/task-builder/README.md +1 -7
  157. package/src/templates/AGENTS.md.template +334 -0
  158. package/src/templates/CLAUDE.md.template +131 -297
  159. package/src/templates/README.md.template +115 -23
  160. package/src/templates/environments/minimal/README.md +0 -1
  161. package/INSTALL.md +0 -848
  162. package/SPECWEAVE.md +0 -711
  163. package/src/adapters/copilot/.github/copilot/instructions.md +0 -376
  164. package/src/adapters/cursor/.cursorrules +0 -325
  165. package/src/adapters/generic/SPECWEAVE-MANUAL.md +0 -676
  166. package/src/commands/create-project.md +0 -528
  167. package/src/commands/generate-docs.md +0 -623
  168. package/src/commands/increment.md +0 -223
  169. package/src/commands/review-docs.md +0 -331
  170. package/src/commands/sync-github.md +0 -115
  171. package/src/skills/ado-sync/test-cases/test-1.yaml +0 -9
  172. package/src/skills/ado-sync/test-cases/test-2.yaml +0 -8
  173. package/src/skills/ado-sync/test-cases/test-3.yaml +0 -9
  174. package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +0 -12
  175. package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +0 -12
  176. package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +0 -12
  177. package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +0 -48
  178. package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +0 -12
  179. package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +0 -12
  180. package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +0 -12
  181. package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +0 -12
  182. package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +0 -12
  183. package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +0 -12
  184. package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +0 -12
  185. package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +0 -12
  186. package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +0 -39
  187. package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +0 -44
  188. package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +0 -45
  189. package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +0 -97
  190. package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +0 -109
  191. package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +0 -98
  192. package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +0 -75
  193. package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +0 -52
  194. package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +0 -63
  195. package/src/skills/cost-optimizer/test-results/README.md +0 -46
  196. package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +0 -23
  197. package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +0 -24
  198. package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +0 -23
  199. package/src/skills/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -13
  200. package/src/skills/diagrams-architect/test-cases/test-2-sequence-diagram.yaml +0 -13
  201. package/src/skills/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -13
  202. package/src/skills/diagrams-generator/test-cases/test-1.yaml +0 -9
  203. package/src/skills/diagrams-generator/test-cases/test-2.yaml +0 -9
  204. package/src/skills/diagrams-generator/test-cases/test-3.yaml +0 -8
  205. package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +0 -12
  206. package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +0 -12
  207. package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +0 -12
  208. package/src/skills/dotnet-backend/test-cases/test-1-rest-api.yaml +0 -14
  209. package/src/skills/dotnet-backend/test-cases/test-2-authentication.yaml +0 -13
  210. package/src/skills/dotnet-backend/test-cases/test-3-minimal-api.yaml +0 -13
  211. package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +0 -54
  212. package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +0 -64
  213. package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +0 -74
  214. package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +0 -98
  215. package/src/skills/figma-designer/test-cases/test-1-design-system.yaml +0 -13
  216. package/src/skills/figma-designer/test-cases/test-2-component-library.yaml +0 -13
  217. package/src/skills/figma-designer/test-cases/test-3-responsive-layout.yaml +0 -13
  218. package/src/skills/figma-implementer/test-cases/test-1-design-to-react.yaml +0 -13
  219. package/src/skills/figma-implementer/test-cases/test-2-storybook.yaml +0 -13
  220. package/src/skills/figma-implementer/test-cases/test-3-design-tokens.yaml +0 -13
  221. package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +0 -22
  222. package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +0 -21
  223. package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +0 -18
  224. package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +0 -29
  225. package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +0 -27
  226. package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +0 -28
  227. package/src/skills/frontend/test-cases/test-1-react-component.yaml +0 -13
  228. package/src/skills/frontend/test-cases/test-2-form-validation.yaml +0 -13
  229. package/src/skills/frontend/test-cases/test-3-state-management.yaml +0 -13
  230. package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +0 -12
  231. package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +0 -12
  232. package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +0 -12
  233. package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +0 -71
  234. package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +0 -85
  235. package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +0 -126
  236. package/src/skills/hetzner-provisioner/test-results/README.md +0 -259
  237. package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +0 -27
  238. package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +0 -30
  239. package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +0 -24
  240. package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +0 -95
  241. package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +0 -108
  242. package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +0 -87
  243. package/src/skills/jira-sync/test-cases/test-1.yaml +0 -9
  244. package/src/skills/jira-sync/test-cases/test-2.yaml +0 -9
  245. package/src/skills/jira-sync/test-cases/test-3.yaml +0 -10
  246. package/src/skills/nextjs/test-cases/test-1-app-router.yaml +0 -13
  247. package/src/skills/nextjs/test-cases/test-2-server-actions.yaml +0 -13
  248. package/src/skills/nextjs/test-cases/test-3-api-routes.yaml +0 -13
  249. package/src/skills/nodejs-backend/test-cases/test-1-express-api.yaml +0 -13
  250. package/src/skills/nodejs-backend/test-cases/test-2-prisma-orm.yaml +0 -13
  251. package/src/skills/nodejs-backend/test-cases/test-3-authentication.yaml +0 -13
  252. package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +0 -12
  253. package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +0 -12
  254. package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +0 -12
  255. package/src/skills/python-backend/test-cases/test-1-fastapi-crud.yaml +0 -13
  256. package/src/skills/python-backend/test-cases/test-2-sqlalchemy.yaml +0 -13
  257. package/src/skills/python-backend/test-cases/test-3-authentication.yaml +0 -13
  258. package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +0 -98
  259. package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +0 -73
  260. package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +0 -121
  261. package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +0 -145
  262. package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +0 -149
  263. package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +0 -12
  264. package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +0 -12
  265. package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +0 -12
  266. package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +0 -33
  267. package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +0 -42
  268. package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +0 -50
  269. package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +0 -148
  270. package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +0 -190
  271. package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +0 -233
  272. package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +0 -212
  273. package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +0 -461
  274. package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +0 -366
  275. package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +0 -12
  276. package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +0 -12
  277. package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +0 -12
  278. package/src/skills/specweave-ado-mapper/test-cases/test-1-export-to-ado.yaml +0 -13
  279. package/src/skills/specweave-ado-mapper/test-cases/test-2-import-from-ado.yaml +0 -13
  280. package/src/skills/specweave-ado-mapper/test-cases/test-3-bidirectional-sync.yaml +0 -13
  281. package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +0 -37
  282. package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +0 -37
  283. package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +0 -34
  284. package/src/skills/specweave-jira-mapper/test-cases/test-1-export-to-jira.yaml +0 -13
  285. package/src/skills/specweave-jira-mapper/test-cases/test-2-import-from-jira.yaml +0 -13
  286. package/src/skills/specweave-jira-mapper/test-cases/test-3-sync-status.yaml +0 -13
  287. package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +0 -12
  288. package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +0 -12
  289. package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +0 -12
  290. package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +0 -12
  291. package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +0 -12
  292. package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +0 -12
  293. package/src/templates/config.yaml +0 -351
  294. /package/src/commands/{list-increments.md → specweave.list-increments.md} +0 -0
@@ -0,0 +1,383 @@
1
+ ---
2
+ name: specweave.increment
3
+ description: Plan new Product Increment - PM-led process (market research, spec, plan, auto-generate tasks). Auto-closes previous increment if PM gates pass.
4
+ ---
5
+
6
+ # Plan Product Increment
7
+
8
+ **PM-Led Workflow**: From market research to ready-to-build increment.
9
+
10
+ You are helping the user create a new SpecWeave increment with automatic closure of previous increment if ready.
11
+
12
+ ## Steps:
13
+
14
+ ### Step 0: Smart Check Previous Increment (if applicable)
15
+
16
+ **🎯 CRITICAL: Suggest, don't force** - help user make informed decision!
17
+
18
+ 1. **Check for in-progress increments**:
19
+ ```bash
20
+ # Find increments with status: in-progress
21
+ grep -r "status: in-progress" .specweave/increments/*/spec.md
22
+ ```
23
+
24
+ 2. **If previous increment found, validate PM gates**:
25
+ - **Gate 1**: All P1 tasks completed?
26
+ - **Gate 2**: Tests passing (>80% coverage)?
27
+ - **Gate 3**: Documentation updated (CLAUDE.md, README.md)?
28
+
29
+ 3. **Decision matrix** (NEVER force, ALWAYS suggest):
30
+ ```
31
+ All gates ✅ → Auto-close previous, create new (seamless)
32
+
33
+ Any gate ❌ → STOP and present options (user decides):
34
+ Option A: Complete 0001 first (recommended)
35
+ → Finish remaining work before starting new
36
+
37
+ Option B: Move incomplete tasks to 0002
38
+ → Transfer T006, T007 to new increment
39
+ → Close 0001 as "completed with deferrals"
40
+
41
+ Option C: Cancel new increment
42
+ → Stay on 0001, continue working
43
+ → User will retry /inc when ready
44
+ ```
45
+
46
+ **CRITICAL**: NEVER auto-close with incomplete work! Always give user control.
47
+
48
+ 4. **Auto-close output** (if gates pass):
49
+ ```
50
+ 📊 Previous Increment Check
51
+
52
+ Found: 0001-user-authentication (in-progress)
53
+
54
+ PM Gate Validation:
55
+ ├─ Gate 1 (Tasks): 8/8 P1 completed ✅
56
+ ├─ Gate 2 (Tests): 5/5 passing (85% coverage) ✅
57
+ └─ Gate 3 (Docs): CLAUDE.md ✅, README.md ✅
58
+
59
+ ✅ Auto-closing increment 0001...
60
+
61
+ Proceeding with new increment 0002...
62
+ ```
63
+
64
+ 5. **Prompt output** (if gates fail):
65
+ ```
66
+ ⚠️ Previous Increment Incomplete
67
+
68
+ Found: 0001-user-authentication (in-progress)
69
+
70
+ PM Gate Validation:
71
+ ├─ Gate 1 (Tasks): 6/8 P1 completed ❌ (2 P1 tasks remaining)
72
+ ├─ Gate 2 (Tests): 3/5 passing (60% coverage) ❌
73
+ └─ Gate 3 (Docs): CLAUDE.md ✅, README.md ⏳
74
+
75
+ Options:
76
+ A. Complete 0001 first (recommended)
77
+ → Run `/do 0001` to finish remaining tasks
78
+
79
+ B. Force close 0001 and defer tasks to 0002
80
+ → Transfer T006, T007 to new increment
81
+
82
+ C. Cancel and stay on 0001
83
+ → Continue working on authentication
84
+
85
+ What would you like to do? (A/B/C)
86
+ ```
87
+
88
+ **Why suggest, not force?**
89
+ - ✅ User stays in control (no surprises)
90
+ - ✅ Natural flow in happy path (auto-close if ready)
91
+ - ✅ Clear options when incomplete (complete, defer, or cancel)
92
+ - ✅ Enforces quality awareness (can't ignore incomplete work)
93
+ - ✅ No manual `/done` needed when gates pass
94
+
95
+ ### Step 1: Find next increment number
96
+
97
+ - Scan `.specweave/increments/` directory
98
+ - Find highest number (e.g., 002)
99
+ - Next increment: 003
100
+
101
+ ### Step 2: Detect tech stack (CRITICAL - framework-agnostic)
102
+ - Settings auto-detected
103
+ - If not found, detect from project files:
104
+ - `package.json` → TypeScript/JavaScript
105
+ - `requirements.txt` or `pyproject.toml` → Python
106
+ - `go.mod` → Go
107
+ - `Cargo.toml` → Rust
108
+ - `pom.xml` or `build.gradle` → Java
109
+ - `*.csproj` → C#/.NET
110
+ - Detect framework (NextJS, Django, FastAPI, Spring Boot, etc.)
111
+ - If detection fails, ask user: "What language/framework are you using?"
112
+ - Store detected tech stack for later use
113
+
114
+ ### Step 3: Ask user for details
115
+
116
+ - "What would you like to build?" (get high-level description)
117
+ - "What's the short name?" (e.g., "user-authentication" for increment 003-user-authentication)
118
+ - "Priority? (P1/P2/P3)" (default: P1)
119
+
120
+ ### Step 4: Activate Increment Planning Workflow
121
+
122
+ **🚨 CRITICAL - YOU MUST USE THE SKILL TOOL:**
123
+
124
+ **DO NOT** manually create files. **DO NOT** skip this step. **DO NOT** write spec.md or plan.md directly.
125
+
126
+ You MUST invoke the increment-planner skill to orchestrate the full PM-led workflow:
127
+
128
+ ```
129
+ Use the Skill tool:
130
+ command: "increment-planner"
131
+ ```
132
+
133
+ The increment-planner skill will:
134
+ 1. Invoke PM agent (via Task tool with subagent_type="pm")
135
+ 2. Invoke Architect agent (via Task tool with subagent_type="architect")
136
+ 3. Invoke other strategic agents as needed
137
+ 4. Create living documentation in .specweave/docs/internal/
138
+ 5. Create increment files that reference living docs
139
+ 6. Auto-generate tasks.md using task-builder skill
140
+ 7. Create context-manifest.yaml
141
+ 8. Apply validation hooks
142
+ 9. Trigger post-increment hooks (doc sync)
143
+
144
+ **WHY THIS IS MANDATORY:**
145
+ - ✅ Living docs get created (source of truth)
146
+ - ✅ Agents collaborate properly (PM → Architect flow)
147
+ - ✅ Tasks auto-generated from plan
148
+ - ✅ Hooks run (validation, doc sync)
149
+ - ✅ Quality gates enforced
150
+ - ❌ Direct file writing bypasses entire workflow
151
+
152
+ ### Step 5: Skill Tool Invocation (MANDATORY)
153
+
154
+ **BEFORE PROCEEDING, USE THE SKILL TOOL:**
155
+
156
+ You must literally call the Skill tool like this:
157
+ ```
158
+ Skill(command: "increment-planner")
159
+ ```
160
+
161
+ Wait for the skill to complete. Do NOT continue to Step 6 until the increment-planner skill returns.
162
+
163
+ ### Step 6: Alternative Approach (ONLY IF SKILL FAILS)
164
+
165
+ **Only use this if Skill tool is unavailable or fails:**
166
+
167
+ Manually invoke agents using Task tool:
168
+
169
+ 1. **Invoke PM Agent:**
170
+ ```
171
+ Task(
172
+ subagent_type: "pm",
173
+ prompt: "Create product strategy for: [user description]
174
+ Detect tech stack from: [detected tech info]
175
+ Create living docs in .specweave/docs/internal/strategy/
176
+ Create increment spec.md that references strategy docs",
177
+ description: "PM product strategy"
178
+ )
179
+ ```
180
+
181
+ 2. **Invoke Architect Agent:**
182
+ ```
183
+ Task(
184
+ subagent_type: "architect",
185
+ prompt: "Read PM's strategy docs from .specweave/docs/internal/strategy/
186
+ Create technical architecture for: [user description]
187
+ Tech stack: [detected tech stack]
188
+ Create living docs in .specweave/docs/internal/architecture/
189
+ Create ADRs for all technical decisions
190
+ Create increment plan.md that references architecture docs",
191
+ description: "Architect technical design"
192
+ )
193
+ ```
194
+
195
+ 3. **Auto-generate tasks.md:**
196
+ ```
197
+ Skill(command: "task-builder")
198
+ ```
199
+
200
+ **Pass detected tech stack to ALL agents** (CRITICAL!)
201
+
202
+ ### Step 7: Verify Increment Creation
203
+
204
+ After the increment-planner skill completes, verify:
205
+
206
+ 1. **Living docs created:**
207
+ - `.specweave/docs/internal/strategy/{module}/` exists
208
+ - `.specweave/docs/internal/architecture/adr/` has ADRs
209
+
210
+ 2. **Increment files created:**
211
+ - `.specweave/increments/####-name/spec.md` (references strategy docs)
212
+ - `.specweave/increments/####-name/plan.md` (references architecture docs)
213
+ - `.specweave/increments/####-name/tasks.md` (auto-generated from plan)
214
+ - `.specweave/increments/####-name/tests.md` (test strategy)
215
+ - `.specweave/increments/####-name/context-manifest.yaml`
216
+
217
+ 3. **Hooks executed:**
218
+ - Validation hooks ran
219
+ - Post-increment hooks ran
220
+ - Living documentation synced
221
+
222
+ ### Step 8: Output to user
223
+ ```
224
+ ✅ Created increment 0003-user-authentication
225
+
226
+ Detected tech stack:
227
+ - Language: {detected-language} (e.g., Python, TypeScript, Go, Java)
228
+ - Framework: {detected-framework} (e.g., Django, FastAPI, NextJS, Spring Boot)
229
+ - Database: {specified-database} (e.g., PostgreSQL, MySQL, MongoDB)
230
+ - Platform: {specified-platform} (e.g., AWS, Hetzner, Vercel, self-hosted)
231
+
232
+ Location: .specweave/increments/0003-user-authentication/
233
+
234
+ 📋 Files created:
235
+ - spec.md (6 user stories, 15 requirements)
236
+ - tasks.md (42 implementation tasks using {framework} patterns)
237
+ - pm-analysis.md (product strategy)
238
+ - architecture.md (system design for {framework})
239
+ - infrastructure.md ({platform} deployment)
240
+ - security.md ({framework}-specific security)
241
+ - test-strategy.md (E2E tests for {framework})
242
+
243
+ ⏱️ Estimated effort: 3-4 weeks
244
+ ```
245
+
246
+ ### Step 9: Sync Strategic Docs to Living Docs
247
+
248
+ **🔥 CRITICAL: After increment planning, sync to living docs**
249
+
250
+ ```
251
+ 🔊 [Playing celebration sound...]
252
+
253
+ 📝 Now syncing strategic documentation to living docs...
254
+ ```
255
+
256
+ **Run `/sync-docs update` to create initial documentation**:
257
+
258
+ ```bash
259
+ /sync-docs update
260
+ ```
261
+
262
+ This will:
263
+ - Create ADRs from architectural decisions in plan.md (status: Proposed)
264
+ - Add new features to `.specweave/docs/public/overview/features.md`
265
+ - Add architecture diagrams to `.specweave/docs/internal/architecture/diagrams/`
266
+ - Update infrastructure docs in `.specweave/docs/internal/operations/`
267
+ - Update security docs in `.specweave/docs/internal/security/`
268
+ - May prompt for conflict resolution if needed
269
+
270
+ **After `/sync-docs update` completes**:
271
+
272
+ ```
273
+ ✅ Strategic documentation synchronized!
274
+
275
+ Next steps:
276
+ 1. Review the increment plan and strategic docs
277
+ 2. Start implementation: /do 0003
278
+ 3. (Optional) Sync to GitHub: /sync-github
279
+ ```
280
+
281
+ ## Frontmatter Format (spec.md):
282
+
283
+ **IMPORTANT**: Tech stack is AUTO-DETECTED from project files (package.json, requirements.txt, etc.), NOT hardcoded!
284
+
285
+ ```yaml
286
+ ---
287
+ increment: 003-user-authentication
288
+ title: "User Authentication System"
289
+ priority: P1
290
+ status: planned
291
+ created: 2025-10-26
292
+ dependencies: []
293
+ structure: user-stories
294
+
295
+ # Tech stack is DETECTED, not hardcoded
296
+ tech_stack:
297
+ detected_from: "package.json" # or "requirements.txt", "go.mod", etc.
298
+ language: "{detected-language}" # e.g., "typescript", "python", "go", "java", "rust"
299
+ framework: "{detected-framework}" # e.g., "nextjs", "django", "fastapi", "spring-boot", "gin"
300
+ database: "{specified-database}" # e.g., "postgresql", "mysql", "mongodb", "sqlite"
301
+ orm: "{detected-orm}" # e.g., "prisma", "django-orm", "sqlalchemy", "hibernate"
302
+
303
+ # Platform is SPECIFIED by user or detected from config
304
+ platform: "{specified-platform}" # e.g., "hetzner", "aws", "vercel", "self-hosted"
305
+ estimated_cost: "{calculated-based-on-platform}"
306
+ ---
307
+ ```
308
+
309
+ **Example for TypeScript/NextJS project**:
310
+ ```yaml
311
+ tech_stack:
312
+ detected_from: "package.json"
313
+ language: "typescript"
314
+ framework: "nextjs"
315
+ database: "postgresql"
316
+ orm: "prisma"
317
+ platform: "vercel"
318
+ estimated_cost: "$20/month"
319
+ ```
320
+
321
+ **Example for Python/Django project**:
322
+ ```yaml
323
+ tech_stack:
324
+ detected_from: "requirements.txt"
325
+ language: "python"
326
+ framework: "django"
327
+ database: "postgresql"
328
+ orm: "django-orm"
329
+ platform: "hetzner"
330
+ estimated_cost: "$12/month"
331
+ ```
332
+
333
+ **Example for Go/Gin project**:
334
+ ```yaml
335
+ tech_stack:
336
+ detected_from: "go.mod"
337
+ language: "go"
338
+ framework: "gin"
339
+ database: "postgresql"
340
+ orm: "gorm"
341
+ platform: "aws"
342
+ estimated_cost: "$25/month"
343
+ ```
344
+
345
+ ## Frontmatter Format (tasks.md):
346
+
347
+ ```yaml
348
+ ---
349
+ increment: 003-event-booking-saas
350
+ status: planned
351
+ dependencies:
352
+ - 001-skills-framework
353
+ - 002-role-based-agents
354
+ phases:
355
+ - infrastructure
356
+ - backend
357
+ - frontend
358
+ - testing
359
+ - deployment
360
+ estimated_tasks: 42
361
+ estimated_weeks: 3-4
362
+ ---
363
+ ```
364
+
365
+ ## Autonomous Mode (Advanced):
366
+
367
+ If user says "autonomous mode" or "full automation":
368
+ 1. Run all strategic agents
369
+ 2. Create increment
370
+ 3. **Start implementation immediately** (with permission)
371
+ 4. Ask clarification questions only when critical
372
+ 5. Suggest doc updates when needed
373
+ 6. Complete full implementation autonomously
374
+
375
+ ## Error Handling:
376
+
377
+ - If `.specweave/` not found: "Error: Not a SpecWeave project. Run specweave init first."
378
+ - If user description too vague: Ask more clarifying questions
379
+ - If strategic agents not available: "Warning: Some agents missing. Continue with basic spec?"
380
+
381
+ ---
382
+
383
+ **Important**: This is the main entry point for creating new work in SpecWeave.