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
@@ -1,223 +0,0 @@
1
- ---
2
- name: create-increment
3
- description: Create a new SpecWeave increment interactively with spec.md and tasks.md
4
- ---
5
-
6
- # Create New Increment
7
-
8
- You are helping the user create a new SpecWeave increment.
9
-
10
- ## Steps:
11
-
12
- 1. **Find next increment number**:
13
- - Scan `.specweave/increments/` directory
14
- - Find highest number (e.g., 002)
15
- - Next increment: 003
16
-
17
- 2. **Detect tech stack** (CRITICAL - framework-agnostic):
18
- - Check `.specweave/config.yaml` for tech_stack configuration
19
- - If not found, detect from project files:
20
- - `package.json` → TypeScript/JavaScript
21
- - `requirements.txt` or `pyproject.toml` → Python
22
- - `go.mod` → Go
23
- - `Cargo.toml` → Rust
24
- - `pom.xml` or `build.gradle` → Java
25
- - `*.csproj` → C#/.NET
26
- - Detect framework (NextJS, Django, FastAPI, Spring Boot, etc.)
27
- - If detection fails, ask user: "What language/framework are you using?"
28
- - Store detected tech stack for later use
29
-
30
- 3. **Ask user for details**:
31
- - "What would you like to build?" (get high-level description)
32
- - "What's the short name?" (e.g., "user-authentication" for increment 003-user-authentication)
33
- - "Priority? (P1/P2/P3)" (default: P1)
34
-
35
- 4. **Activate role-orchestrator**:
36
- - Analyze user's description
37
- - Determine which strategic agents are needed:
38
- - pm-agent (product strategy)?
39
- - architect-agent (system design)?
40
- - devops-agent (infrastructure)?
41
- - security-agent (security review)?
42
- - qa-lead-agent (testing strategy)?
43
-
44
- 5. **Ask clarifying questions** (if needed):
45
- - Target users/scale?
46
- - Technology preferences? (if not detected)
47
- - Budget constraints?
48
- - Deployment platform?
49
- - Payment processing needed?
50
- - Authentication method?
51
-
52
- 6. **Run strategic agents** (with user approval):
53
- - **Pass detected tech stack to ALL agents** (CRITICAL!)
54
- - PM agent creates pm-analysis.md
55
- - Architect agent creates architecture.md, ADRs (using detected tech stack)
56
- - DevOps agent creates infrastructure.md (platform-specific)
57
- - Security agent creates security.md (framework-specific security)
58
- - QA agent creates test-strategy.md (framework-specific tests)
59
-
60
- 7. **Present strategic docs for review**:
61
- - Show summary of all strategic outputs
62
- - Ask: "Review docs with /review-docs or approve to continue?"
63
- - Wait for user approval
64
-
65
- 8. **Create spec.md** (based on strategic docs):
66
- - Frontmatter with increment number, title, priority, status, dependencies
67
- - **Include detected tech stack in frontmatter** (see format below)
68
- - Overview section
69
- - Business value
70
- - User stories with acceptance tests
71
- - Functional requirements
72
- - Out of scope
73
- - Success criteria
74
- - Dependencies
75
-
76
- 9. **Create tasks.md** (task-builder skill):
77
- - Analyze all strategic docs
78
- - Break down into phases (framework-specific)
79
- - Create tasks with:
80
- - Agent references (use framework-specific agents if available)
81
- - File paths (framework-specific paths: src/ for TS, app/ for Django, etc.)
82
- - Implementation snippets (framework-specific code)
83
- - Acceptance criteria
84
- - Documentation updates
85
-
86
- 10. **Save increment**:
87
- - Create `.specweave/increments/####-name/`
88
- - Save spec.md
89
- - Save tasks.md
90
- - Save strategic docs (pm-analysis.md, architecture.md, etc.)
91
-
92
- 11. **Output to user**:
93
- ```
94
- ✅ Created increment 0003-user-authentication
95
-
96
- Detected tech stack:
97
- - Language: {detected-language} (e.g., Python, TypeScript, Go, Java)
98
- - Framework: {detected-framework} (e.g., Django, FastAPI, NextJS, Spring Boot)
99
- - Database: {specified-database} (e.g., PostgreSQL, MySQL, MongoDB)
100
- - Platform: {specified-platform} (e.g., AWS, Hetzner, Vercel, self-hosted)
101
-
102
- Location: .specweave/increments/0003-user-authentication/
103
-
104
- 📋 Files created:
105
- - spec.md (6 user stories, 15 requirements)
106
- - tasks.md (42 implementation tasks using {framework} patterns)
107
- - pm-analysis.md (product strategy)
108
- - architecture.md (system design for {framework})
109
- - infrastructure.md ({platform} deployment)
110
- - security.md ({framework}-specific security)
111
- - test-strategy.md (E2E tests for {framework})
112
-
113
- ⏱️ Estimated effort: 3-4 weeks
114
-
115
- Next steps:
116
- 1. Review docs: /review-docs
117
- 2. Start implementation: Begin with Task T001 in tasks.md
118
- 3. Sync to GitHub: /sync-github
119
- ```
120
-
121
- ## Frontmatter Format (spec.md):
122
-
123
- **IMPORTANT**: Tech stack is DETECTED from `.specweave/config.yaml` or project files, NOT hardcoded!
124
-
125
- ```yaml
126
- ---
127
- increment: 003-user-authentication
128
- title: "User Authentication System"
129
- priority: P1
130
- status: planned
131
- created: 2025-10-26
132
- dependencies: []
133
- structure: user-stories
134
-
135
- # Tech stack is DETECTED, not hardcoded
136
- tech_stack:
137
- detected_from: ".specweave/config.yaml" # or "package.json", "requirements.txt", etc.
138
- language: "{detected-language}" # e.g., "typescript", "python", "go", "java", "rust"
139
- framework: "{detected-framework}" # e.g., "nextjs", "django", "fastapi", "spring-boot", "gin"
140
- database: "{specified-database}" # e.g., "postgresql", "mysql", "mongodb", "sqlite"
141
- orm: "{detected-orm}" # e.g., "prisma", "django-orm", "sqlalchemy", "hibernate"
142
-
143
- # Platform is SPECIFIED by user or detected from config
144
- platform: "{specified-platform}" # e.g., "hetzner", "aws", "vercel", "self-hosted"
145
- estimated_cost: "{calculated-based-on-platform}"
146
- ---
147
- ```
148
-
149
- **Example for TypeScript/NextJS project**:
150
- ```yaml
151
- tech_stack:
152
- detected_from: "package.json"
153
- language: "typescript"
154
- framework: "nextjs"
155
- database: "postgresql"
156
- orm: "prisma"
157
- platform: "vercel"
158
- estimated_cost: "$20/month"
159
- ```
160
-
161
- **Example for Python/Django project**:
162
- ```yaml
163
- tech_stack:
164
- detected_from: "requirements.txt"
165
- language: "python"
166
- framework: "django"
167
- database: "postgresql"
168
- orm: "django-orm"
169
- platform: "hetzner"
170
- estimated_cost: "$12/month"
171
- ```
172
-
173
- **Example for Go/Gin project**:
174
- ```yaml
175
- tech_stack:
176
- detected_from: "go.mod"
177
- language: "go"
178
- framework: "gin"
179
- database: "postgresql"
180
- orm: "gorm"
181
- platform: "aws"
182
- estimated_cost: "$25/month"
183
- ```
184
-
185
- ## Frontmatter Format (tasks.md):
186
-
187
- ```yaml
188
- ---
189
- increment: 003-event-booking-saas
190
- status: planned
191
- dependencies:
192
- - 001-skills-framework
193
- - 002-role-based-agents
194
- phases:
195
- - infrastructure
196
- - backend
197
- - frontend
198
- - testing
199
- - deployment
200
- estimated_tasks: 42
201
- estimated_weeks: 3-4
202
- ---
203
- ```
204
-
205
- ## Autonomous Mode (Advanced):
206
-
207
- If user says "autonomous mode" or "full automation":
208
- 1. Run all strategic agents
209
- 2. Create increment
210
- 3. **Start implementation immediately** (with permission)
211
- 4. Ask clarification questions only when critical
212
- 5. Suggest doc updates when needed
213
- 6. Complete full implementation autonomously
214
-
215
- ## Error Handling:
216
-
217
- - If `.specweave/` not found: "Error: Not a SpecWeave project. Run /create-project first."
218
- - If user description too vague: Ask more clarifying questions
219
- - If strategic agents not available: "Warning: Some agents missing. Continue with basic spec?"
220
-
221
- ---
222
-
223
- **Important**: This is the main entry point for creating new work in SpecWeave.
@@ -1,331 +0,0 @@
1
- ---
2
- name: review-docs
3
- description: Review strategic documentation before implementation (PM analysis, architecture, ADRs, infrastructure, security, testing)
4
- ---
5
-
6
- # Review Strategic Documentation
7
-
8
- You are presenting strategic documentation for user review before implementation begins.
9
-
10
- ## Steps:
11
-
12
- 1. **Detect current increment**:
13
- - Look for most recent or in-progress increment in `.specweave/increments/`
14
- - Or ask: "Which increment would you like to review? (001, 002, 003, etc.)"
15
-
16
- 2. **Read all strategic documentation**:
17
- - spec.md (user stories, requirements)
18
- - pm-analysis.md (if exists)
19
- - architecture.md, ADRs in `.specweave/docs/architecture/`, `.specweave/docs/decisions/`
20
- - infrastructure.md (if exists)
21
- - security.md (if exists)
22
- - test-strategy.md (if exists)
23
-
24
- 3. **Present comprehensive summary**:
25
-
26
- ## Review Format:
27
-
28
- ```
29
- ═══════════════════════════════════════════════════════
30
- 📋 Strategic Documentation Review
31
- ═══════════════════════════════════════════════════════
32
-
33
- Increment: 003-event-booking-saas
34
- Title: Event Booking SaaS Platform
35
- Priority: P1
36
- Status: Planned
37
-
38
- ───────────────────────────────────────────────────────
39
- ✅ PRODUCT STRATEGY (pm-analysis.md)
40
- ───────────────────────────────────────────────────────
41
-
42
- User Personas:
43
- 1. Barber Shop Owner (primary)
44
- - Needs: Easy booking management, reduce no-shows
45
- - Pain points: Manual scheduling, phone tag
46
-
47
- 2. Customer (secondary)
48
- - Needs: Quick booking, reminders
49
- - Pain points: Calling during business hours
50
-
51
- Business Model:
52
- - Revenue: Subscription ($29/month per business)
53
- - Alternative: 3% commission per booking
54
- - Target: 100 businesses in Year 1 ($34k ARR)
55
-
56
- Feature Prioritization:
57
- P1 (MVP):
58
- - Booking calendar
59
- - SMS/Email notifications
60
- - Payment processing
61
-
62
- P2 (Post-launch):
63
- - Recurring bookings
64
- - Multiple staff members
65
- - Analytics dashboard
66
-
67
- Success Metrics:
68
- - Bookings per business: 50+/month
69
- - No-show reduction: 30%
70
- - Customer satisfaction: 4.5+/5
71
-
72
- ───────────────────────────────────────────────────────
73
- ✅ SYSTEM ARCHITECTURE (architecture.md)
74
- ───────────────────────────────────────────────────────
75
-
76
- **IMPORTANT**: Architecture adapts to YOUR detected tech stack!
77
-
78
- Tech Stack (detected from .specweave/config.yaml or project files):
79
- Frontend: {detected-frontend} (e.g., NextJS, React, Vue, Angular, Svelte)
80
- Backend: {detected-backend} (e.g., Django, FastAPI, Express, Spring Boot, Gin)
81
- Database: {specified-database} (e.g., PostgreSQL, MySQL, MongoDB, SQLite)
82
- ORM: {detected-orm} (e.g., Prisma, Django ORM, SQLAlchemy, Hibernate, GORM)
83
- UI: {specified-ui} (e.g., Tailwind, Material UI, Bootstrap, Chakra)
84
- Auth: {specified-auth} (e.g., NextAuth, Django Auth, Passport, JWT, Auth0)
85
- Payments: {specified-payments} (e.g., Stripe, PayPal, Square)
86
-
87
- System Design:
88
- [Mermaid diagram showing architecture using YOUR framework]
89
-
90
- Example for TypeScript/NextJS:
91
- User → NextJS (SSR) → API Routes → Prisma → PostgreSQL
92
-
93
- Example for Python/Django:
94
- User → Django (Templates) → Views → Django ORM → PostgreSQL
95
-
96
- Example for Go/Gin:
97
- User → Gin API → Handlers → GORM → PostgreSQL
98
-
99
- (Architecture diagram adapts to YOUR detected stack)
100
-
101
- Data Models:
102
- - User (auth, profile)
103
- - Business (shop details)
104
- - Service (haircut, massage, etc.)
105
- - Booking (appointment)
106
- - Payment (transaction)
107
-
108
- API Design:
109
- - POST /api/bookings/create
110
- - GET /api/bookings/:id
111
- - PUT /api/bookings/:id/cancel
112
- - GET /api/availability
113
-
114
- Scalability:
115
- - Handles 10,000 users
116
- - 1,000 concurrent bookings/day
117
- - Redis caching for availability queries
118
- - Database indexing on booking_date, business_id
119
-
120
- ───────────────────────────────────────────────────────
121
- ✅ ARCHITECTURE DECISIONS (ADRs)
122
- ───────────────────────────────────────────────────────
123
-
124
- **ADRs are framework-specific and adapt to YOUR project**
125
-
126
- Example ADRs for TypeScript/NextJS project:
127
- ADR 001: NextJS over separate React + API
128
- - Reason: Simplified deployment, SSR benefits
129
- - Trade-off: Less separation of concerns
130
-
131
- Example ADRs for Python/Django project:
132
- ADR 001: Django monolith over microservices
133
- - Reason: Faster development, easier deployment for MVP
134
- - Trade-off: Harder to scale individual components
135
-
136
- Example ADRs for Go/Gin project:
137
- ADR 001: Gin over Echo
138
- - Reason: Better performance, larger community
139
- - Trade-off: Less built-in middleware
140
-
141
- Platform Decision (adapts to user preference):
142
- ADR 00X: {Platform} over {Alternative}
143
- - Reason: Cost, performance, or developer familiarity
144
- - Examples: Hetzner ($12/mo), Vercel ($20/mo), AWS ($25/mo), self-hosted
145
-
146
- Database Decision (adapts to use case):
147
- ADR 00X: {Database} over {Alternative}
148
- - Reason: ACID compliance, scaling needs, or data structure
149
- - Examples: PostgreSQL (relational), MongoDB (document), Redis (cache)
150
-
151
- ───────────────────────────────────────────────────────
152
- ✅ INFRASTRUCTURE (infrastructure.md)
153
- ───────────────────────────────────────────────────────
154
-
155
- **Infrastructure adapts to chosen platform**
156
-
157
- Platform: {detected-platform} (e.g., Hetzner, AWS, Vercel, self-hosted)
158
-
159
- Example for Hetzner Cloud:
160
- Resources:
161
- - CX21 instance (2 vCPU, 4GB RAM): $6.90/month
162
- - Managed Postgres (2GB): $5.00/month
163
- - Total: ~$12/month
164
-
165
- Example for AWS:
166
- Resources:
167
- - t3.small EC2 (2 vCPU, 2GB RAM): $15/month
168
- - RDS PostgreSQL (db.t3.micro): $12/month
169
- - Total: ~$27/month
170
-
171
- Example for Vercel:
172
- Resources:
173
- - Hobby tier (for small projects): $20/month
174
- - Pro tier (for production): $20/month
175
- - Database (Neon/PlanetScale): $0-10/month
176
-
177
- Deployment:
178
- - Docker containers
179
- - GitHub Actions CI/CD
180
- - Blue-green deployment
181
- - Automated backups (daily)
182
-
183
- Monitoring:
184
- - Uptime Kuma (self-hosted)
185
- - Error tracking: Sentry (free tier)
186
- - Analytics: Plausible (self-hosted)
187
-
188
- DNS & SSL:
189
- - Cloudflare (free tier)
190
- - Let's Encrypt (auto-renewal)
191
-
192
- ───────────────────────────────────────────────────────
193
- ✅ SECURITY (security.md)
194
- ───────────────────────────────────────────────────────
195
-
196
- **Security strategy adapts to YOUR framework**
197
-
198
- Authentication (framework-specific):
199
- - TypeScript/NextJS: NextAuth.js with credentials + OAuth
200
- - Python/Django: Django Auth with Allauth
201
- - Go/Gin: JWT tokens with middleware
202
- - Java/Spring: Spring Security with OAuth2
203
-
204
- Providers: Google, GitHub, Email magic links (framework-agnostic)
205
- Session management: JWT or session cookies (framework-dependent)
206
-
207
- Authorization (framework-specific):
208
- - TypeScript/Prisma: Row-level security in PostgreSQL
209
- - Python/Django: Django permissions + object-level permissions
210
- - Go/GORM: Middleware-based access control
211
- - Java/Spring: Spring Security annotations
212
-
213
- Business logic:
214
- - Businesses can only access their own data
215
- - Customers can only see their own bookings
216
-
217
- Data Protection (framework-agnostic):
218
- - GDPR compliant
219
- - Data encryption at rest (database-level)
220
- - HTTPS only (enforced)
221
- - PII data: minimal collection
222
-
223
- Payment Security (framework-agnostic):
224
- - Stripe (PCI-DSS compliant)
225
- - No card data stored locally
226
- - Webhook signature verification (framework-specific implementation)
227
-
228
- ───────────────────────────────────────────────────────
229
- ✅ TEST STRATEGY (test-strategy.md)
230
- ───────────────────────────────────────────────────────
231
-
232
- Test Pyramid:
233
- E2E Tests (10%): Playwright
234
- - Complete booking flow
235
- - Payment flow
236
- - Cancellation flow
237
-
238
- Integration Tests (30%): Jest + Testing Library
239
- - API endpoints
240
- - Database queries
241
- - External service mocks (Stripe, Vonage)
242
-
243
- Unit Tests (60%): Jest
244
- - Business logic
245
- - Utilities
246
- - Validation functions
247
-
248
- Coverage Target: 80%
249
-
250
- Critical Paths (E2E):
251
- 1. Business signup → Create service → Receive booking
252
- 2. Customer booking → Payment → Confirmation
253
- 3. Cancellation → Refund
254
-
255
- Performance Tests:
256
- - 100 concurrent bookings
257
- - Response time <200ms (p95)
258
- - Database query optimization
259
-
260
- ───────────────────────────────────────────────────────
261
- 💰 COST ESTIMATE
262
- ───────────────────────────────────────────────────────
263
-
264
- Infrastructure: $12/month
265
- External Services:
266
- - Stripe: 2.9% + $0.30 per transaction
267
- - Resend: $20/month (10k emails)
268
- - Vonage: $10/month (~2k SMS)
269
-
270
- Total Monthly: $42/month (at 100 businesses)
271
-
272
- Revenue: $2,900/month (100 businesses * $29)
273
- Profit: $2,858/month (98% margin)
274
-
275
- ───────────────────────────────────────────────────────
276
- ⏱️ IMPLEMENTATION ESTIMATE
277
- ───────────────────────────────────────────────────────
278
-
279
- Total Tasks: 42
280
- Estimated Time: 3-4 weeks (1 developer)
281
-
282
- Phases:
283
- Week 1: Infrastructure + Backend (Tasks T001-T020)
284
- Week 2: Frontend (Tasks T021-T035)
285
- Week 3: Testing (Tasks T036-T040)
286
- Week 4: Deployment + Polish (Tasks T041-T042)
287
-
288
- ═══════════════════════════════════════════════════════
289
-
290
- Do you approve this plan?
291
-
292
- Options:
293
- ✅ "approve" - Start creating tasks.md
294
- ⚠️ "changes needed" - Request specific updates
295
- 📋 "questions" - Ask clarifying questions
296
- 🔄 "regenerate" - Regenerate strategic analysis
297
-
298
- ───────────────────────────────────────────────────────
299
- ```
300
-
301
- ## After User Approval:
302
-
303
- If user approves:
304
- ```
305
- ✅ Strategic documentation approved
306
-
307
- Next steps:
308
- 1. Creating tasks.md with task-builder skill...
309
- 2. Breaking down into 42 implementation tasks...
310
- 3. Estimated completion: [date]
311
-
312
- Once tasks.md is ready:
313
- - Type "start implementation" to begin Task T001
314
- - Or review tasks first with: cat .specweave/increments/0003-event-booking-saas/tasks.md
315
- ```
316
-
317
- If user requests changes:
318
- ```
319
- What would you like to change?
320
- 1. Architecture (tech stack, design)
321
- 2. Infrastructure (platform, cost)
322
- 3. Features (scope, priorities)
323
- 4. Security approach
324
- 5. Other
325
- ```
326
-
327
- Then run appropriate agents again and re-present.
328
-
329
- ---
330
-
331
- **Important**: This command is critical for ensuring user approval before starting costly implementation work.
@@ -1,115 +0,0 @@
1
- ---
2
- name: sync-github
3
- description: Sync SpecWeave increment to GitHub issues with checkable subtasks
4
- ---
5
-
6
- # Sync Increment to GitHub
7
-
8
- You are syncing a SpecWeave increment to GitHub issues.
9
-
10
- ## Steps:
11
-
12
- 1. **Detect current increment** or ask user which to sync:
13
- - Look in `.specweave/increments/` for most recent or in-progress increment
14
- - Or ask: "Which increment would you like to sync? (001, 002, etc.)"
15
-
16
- 2. **Read increment files**:
17
- - spec.md (user stories, acceptance tests)
18
- - tasks.md (implementation tasks)
19
- - Optional: pm-analysis.md, architecture.md, etc.
20
-
21
- 3. **Use github-sync skill** to:
22
- - Create GitHub issue with title: `[Increment ###] [Title]`
23
- - Add overview from spec.md
24
- - Add user stories as checkable subtasks (GitHub task list)
25
- - Add tasks as nested checklist
26
- - Add labels: `specweave`, `priority:P1/P2/P3`, `status:planned/in-progress/completed`
27
- - Add links back to `.specweave/increments/` files
28
-
29
- 4. **Store GitHub issue number**:
30
- - Update increment frontmatter with `github_issue: #123`
31
- - This enables bidirectional sync
32
-
33
- ## GitHub Issue Format:
34
-
35
- ```markdown
36
- # [Increment ###] Title
37
-
38
- ## Overview
39
- [From spec.md]
40
-
41
- ## Business Value
42
- [From spec.md if exists]
43
-
44
- ## User Stories
45
-
46
- - [ ] **US1**: [Title] (P1)
47
- - Acceptance test 1
48
- - Acceptance test 2
49
- - [ ] **US2**: [Title] (P2)
50
- - Acceptance test 1
51
-
52
- ## Implementation Tasks
53
-
54
- ### Phase 1: [Phase Name]
55
- - [ ] **T001**: [Task description]
56
- - [ ] **T002**: [Task description]
57
-
58
- ### Phase 2: [Phase Name]
59
- - [ ] **T010**: [Task description]
60
-
61
- ## Documentation
62
-
63
- - [Specification](.specweave/increments/####-name/spec.md)
64
- - [Tasks](.specweave/increments/####-name/tasks.md)
65
- - [Architecture](.specweave/docs/architecture/) (if applicable)
66
-
67
- ## Dependencies
68
-
69
- - Depends on: #[issue-number] (if applicable)
70
-
71
- ## Success Criteria
72
-
73
- [From spec.md]
74
-
75
- ---
76
- *Created by SpecWeave - [Learn more](https://github.com/specweave/specweave)*
77
- ```
78
-
79
- ## Output to User:
80
-
81
- After syncing, tell user:
82
-
83
- ```
84
- ✅ Synced increment 002-role-based-agents to GitHub
85
-
86
- Issue: #15
87
- URL: https://github.com/[user]/[repo]/issues/15
88
-
89
- 📋 Contains:
90
- - 6 user stories
91
- - 17 tasks
92
- - Links to all documentation
93
-
94
- The issue will automatically update when you mark tasks complete.
95
-
96
- To update manually: /sync-github
97
- ```
98
-
99
- ## Bidirectional Sync
100
-
101
- If the increment already has `github_issue` in frontmatter:
102
- - Update existing issue instead of creating new one
103
- - Sync status changes (completed tasks, etc.)
104
- - Add comment with updates
105
-
106
- ## Error Handling
107
-
108
- - If not in a git repository: "Error: Not a git repository. Initialize git first."
109
- - If no GitHub credentials: "Error: GitHub credentials not configured. Set GITHUB_TOKEN."
110
- - If increment not found: "Error: Increment not found. Use /create-increment first."
111
-
112
- ---
113
-
114
- **Important**: This command requires the `github-sync` skill to be installed.
115
- If not found, suggest: `npx specweave install github-sync`
@@ -1,9 +0,0 @@
1
- ---
2
- name: "Detect ADO Sync Request"
3
- description: "Tests if ado-sync skill activates for Azure DevOps sync"
4
- input:
5
- prompt: "Sync increment 0001 to Azure DevOps"
6
- expected_output:
7
- skill_activated: true
8
- agent_invoked: "specweave-ado-mapper"
9
- ---
@@ -1,8 +0,0 @@
1
- ---
2
- name: "Ask for Area Path"
3
- description: "Tests if ado-sync asks for Area Path when exporting"
4
- input:
5
- prompt: "Export to ADO"
6
- expected_output:
7
- area_path_prompt: true
8
- ---
@@ -1,9 +0,0 @@
1
- ---
2
- name: "Handle ADO API Errors"
3
- description: "Tests error handling for ADO authentication failures"
4
- input:
5
- prompt: "Sync to ADO"
6
- ado_configured: false
7
- expected_output:
8
- error: "ADO PAT not configured"
9
- ---