specweave 0.1.9 → 0.3.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 (293) hide show
  1. package/CLAUDE.md +600 -0
  2. package/README.md +263 -81
  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 +327 -177
  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} +141 -69
  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/{increment.md → specweave.increment.md} +143 -76
  132. package/src/commands/specweave.md +430 -0
  133. package/src/commands/specweave.next.md +495 -0
  134. package/src/commands/{progress.md → specweave.progress.md} +12 -12
  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 -298
  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 -743
  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/review-docs.md +0 -331
  169. package/src/commands/sync-github.md +0 -115
  170. package/src/skills/ado-sync/test-cases/test-1.yaml +0 -9
  171. package/src/skills/ado-sync/test-cases/test-2.yaml +0 -8
  172. package/src/skills/ado-sync/test-cases/test-3.yaml +0 -9
  173. package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +0 -12
  174. package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +0 -12
  175. package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +0 -12
  176. package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +0 -48
  177. package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +0 -12
  178. package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +0 -12
  179. package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +0 -12
  180. package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +0 -12
  181. package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +0 -12
  182. package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +0 -12
  183. package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +0 -12
  184. package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +0 -12
  185. package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +0 -39
  186. package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +0 -44
  187. package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +0 -45
  188. package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +0 -97
  189. package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +0 -109
  190. package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +0 -98
  191. package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +0 -75
  192. package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +0 -52
  193. package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +0 -63
  194. package/src/skills/cost-optimizer/test-results/README.md +0 -46
  195. package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +0 -23
  196. package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +0 -24
  197. package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +0 -23
  198. package/src/skills/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -13
  199. package/src/skills/diagrams-architect/test-cases/test-2-sequence-diagram.yaml +0 -13
  200. package/src/skills/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -13
  201. package/src/skills/diagrams-generator/test-cases/test-1.yaml +0 -9
  202. package/src/skills/diagrams-generator/test-cases/test-2.yaml +0 -9
  203. package/src/skills/diagrams-generator/test-cases/test-3.yaml +0 -8
  204. package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +0 -12
  205. package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +0 -12
  206. package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +0 -12
  207. package/src/skills/dotnet-backend/test-cases/test-1-rest-api.yaml +0 -14
  208. package/src/skills/dotnet-backend/test-cases/test-2-authentication.yaml +0 -13
  209. package/src/skills/dotnet-backend/test-cases/test-3-minimal-api.yaml +0 -13
  210. package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +0 -54
  211. package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +0 -64
  212. package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +0 -74
  213. package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +0 -98
  214. package/src/skills/figma-designer/test-cases/test-1-design-system.yaml +0 -13
  215. package/src/skills/figma-designer/test-cases/test-2-component-library.yaml +0 -13
  216. package/src/skills/figma-designer/test-cases/test-3-responsive-layout.yaml +0 -13
  217. package/src/skills/figma-implementer/test-cases/test-1-design-to-react.yaml +0 -13
  218. package/src/skills/figma-implementer/test-cases/test-2-storybook.yaml +0 -13
  219. package/src/skills/figma-implementer/test-cases/test-3-design-tokens.yaml +0 -13
  220. package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +0 -22
  221. package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +0 -21
  222. package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +0 -18
  223. package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +0 -29
  224. package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +0 -27
  225. package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +0 -28
  226. package/src/skills/frontend/test-cases/test-1-react-component.yaml +0 -13
  227. package/src/skills/frontend/test-cases/test-2-form-validation.yaml +0 -13
  228. package/src/skills/frontend/test-cases/test-3-state-management.yaml +0 -13
  229. package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +0 -12
  230. package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +0 -12
  231. package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +0 -12
  232. package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +0 -71
  233. package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +0 -85
  234. package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +0 -126
  235. package/src/skills/hetzner-provisioner/test-results/README.md +0 -259
  236. package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +0 -27
  237. package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +0 -30
  238. package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +0 -24
  239. package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +0 -95
  240. package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +0 -108
  241. package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +0 -87
  242. package/src/skills/jira-sync/test-cases/test-1.yaml +0 -9
  243. package/src/skills/jira-sync/test-cases/test-2.yaml +0 -9
  244. package/src/skills/jira-sync/test-cases/test-3.yaml +0 -10
  245. package/src/skills/nextjs/test-cases/test-1-app-router.yaml +0 -13
  246. package/src/skills/nextjs/test-cases/test-2-server-actions.yaml +0 -13
  247. package/src/skills/nextjs/test-cases/test-3-api-routes.yaml +0 -13
  248. package/src/skills/nodejs-backend/test-cases/test-1-express-api.yaml +0 -13
  249. package/src/skills/nodejs-backend/test-cases/test-2-prisma-orm.yaml +0 -13
  250. package/src/skills/nodejs-backend/test-cases/test-3-authentication.yaml +0 -13
  251. package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +0 -12
  252. package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +0 -12
  253. package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +0 -12
  254. package/src/skills/python-backend/test-cases/test-1-fastapi-crud.yaml +0 -13
  255. package/src/skills/python-backend/test-cases/test-2-sqlalchemy.yaml +0 -13
  256. package/src/skills/python-backend/test-cases/test-3-authentication.yaml +0 -13
  257. package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +0 -98
  258. package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +0 -73
  259. package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +0 -121
  260. package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +0 -145
  261. package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +0 -149
  262. package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +0 -12
  263. package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +0 -12
  264. package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +0 -12
  265. package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +0 -33
  266. package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +0 -42
  267. package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +0 -50
  268. package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +0 -148
  269. package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +0 -190
  270. package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +0 -233
  271. package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +0 -212
  272. package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +0 -461
  273. package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +0 -366
  274. package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +0 -12
  275. package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +0 -12
  276. package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +0 -12
  277. package/src/skills/specweave-ado-mapper/test-cases/test-1-export-to-ado.yaml +0 -13
  278. package/src/skills/specweave-ado-mapper/test-cases/test-2-import-from-ado.yaml +0 -13
  279. package/src/skills/specweave-ado-mapper/test-cases/test-3-bidirectional-sync.yaml +0 -13
  280. package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +0 -37
  281. package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +0 -37
  282. package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +0 -34
  283. package/src/skills/specweave-jira-mapper/test-cases/test-1-export-to-jira.yaml +0 -13
  284. package/src/skills/specweave-jira-mapper/test-cases/test-2-import-from-jira.yaml +0 -13
  285. package/src/skills/specweave-jira-mapper/test-cases/test-3-sync-status.yaml +0 -13
  286. package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +0 -12
  287. package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +0 -12
  288. package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +0 -12
  289. package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +0 -12
  290. package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +0 -12
  291. package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +0 -12
  292. package/src/templates/config.yaml +0 -351
  293. /package/src/commands/{list-increments.md → specweave.list-increments.md} +0 -0
@@ -0,0 +1,281 @@
1
+ /**
2
+ * Gemini CLI Adapter
3
+ *
4
+ * Semi-automation adapter for Google Gemini CLI.
5
+ * Uses universal AGENTS.md file for instructions.
6
+ *
7
+ * Gemini CLI features:
8
+ * - Open-source AI agent (Apache 2.0)
9
+ * - 1M token context window
10
+ * - ReAct loop with built-in tools
11
+ * - MCP (Model Context Protocol) support
12
+ * - Agent mode for multi-file tasks
13
+ */
14
+ import * as path from 'path';
15
+ import fs from 'fs-extra';
16
+ import { AdapterBase } from '../adapter-base.js';
17
+ import { AgentsMdGenerator } from '../agents-md-generator.js';
18
+ import { getDirname } from '../../utils/esm-helpers.js';
19
+ const __dirname = getDirname(import.meta.url);
20
+ export class GeminiAdapter extends AdapterBase {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.name = 'gemini';
24
+ this.description = 'Gemini CLI adapter - Semi-automation with AGENTS.md and agent mode';
25
+ this.automationLevel = 'semi';
26
+ }
27
+ /**
28
+ * Detect if Gemini CLI is available
29
+ *
30
+ * Checks for:
31
+ * - gemini command in PATH
32
+ * - .gemini/ directory exists
33
+ * - AGENTS.md file exists (previously configured)
34
+ */
35
+ async detect() {
36
+ const hasGeminiCLI = await this.commandExists('gemini');
37
+ const hasGeminiDir = await this.fileExists('.gemini');
38
+ const hasAgentsMd = await this.fileExists('AGENTS.md');
39
+ return hasGeminiCLI || hasGeminiDir || hasAgentsMd;
40
+ }
41
+ /**
42
+ * Get files to install for Gemini adapter
43
+ */
44
+ getFiles() {
45
+ return [
46
+ {
47
+ sourcePath: 'AGENTS.md',
48
+ targetPath: 'AGENTS.md',
49
+ description: 'Universal SpecWeave instructions (works with all AI tools)'
50
+ },
51
+ {
52
+ sourcePath: 'README.md',
53
+ targetPath: '.gemini/README.md',
54
+ description: 'Gemini adapter documentation'
55
+ }
56
+ ];
57
+ }
58
+ /**
59
+ * Install Gemini adapter
60
+ */
61
+ async install(options) {
62
+ console.log('\n📦 Installing Gemini CLI Adapter (Semi-Automation)\n');
63
+ // Ensure .gemini directory exists
64
+ const geminiDir = path.join(options.projectPath, '.gemini');
65
+ await fs.ensureDir(geminiDir);
66
+ // Generate AGENTS.md
67
+ const agentsMdPath = path.join(options.projectPath, 'AGENTS.md');
68
+ await this.generateAgentsMd(agentsMdPath, options);
69
+ // Copy README
70
+ const readmePath = path.join(__dirname, 'README.md');
71
+ if (await fs.pathExists(readmePath)) {
72
+ await fs.copy(readmePath, path.join(geminiDir, 'README.md'));
73
+ }
74
+ console.log('\n✨ Gemini adapter installed!');
75
+ console.log('\n📋 Files created:');
76
+ console.log(' - AGENTS.md (universal instructions)');
77
+ console.log(' - .gemini/README.md (adapter documentation)');
78
+ }
79
+ /**
80
+ * Generate AGENTS.md file
81
+ */
82
+ async generateAgentsMd(targetPath, options) {
83
+ const generator = new AgentsMdGenerator(path.join(__dirname, '../../skills'), path.join(__dirname, '../../agents'), path.join(__dirname, '../../commands'));
84
+ const content = await generator.generate({
85
+ projectName: options.projectName,
86
+ projectPath: options.projectPath
87
+ });
88
+ await fs.writeFile(targetPath, content);
89
+ console.log(' ✅ AGENTS.md - Universal SpecWeave instructions');
90
+ }
91
+ /**
92
+ * Post-installation instructions
93
+ */
94
+ async postInstall(options) {
95
+ console.log(this.getInstructions());
96
+ }
97
+ /**
98
+ * Get usage instructions for Gemini adapter
99
+ */
100
+ getInstructions() {
101
+ return `
102
+ ================================================================
103
+ Gemini CLI Adapter - Semi-Automation
104
+ ================================================================
105
+
106
+ Your project is now configured for Gemini CLI with SEMI-automation!
107
+
108
+ WHAT THIS PROVIDES:
109
+
110
+ - AGENTS.md (Universal Instructions)
111
+ - Works with Gemini CLI AND other tools
112
+ - Auto-generated from actual skills/agents
113
+ - SpecWeave structure and workflows
114
+ - 1M token context window support
115
+
116
+ - Agent Mode Integration
117
+ - Multi-file task handling
118
+ - ReAct loop with built-in tools
119
+ - MCP support for extensibility
120
+
121
+ QUICK START:
122
+
123
+ 1. Install Gemini CLI (if not already installed):
124
+
125
+ npm install -g @google-cloud/gemini-cli
126
+
127
+ 2. Authenticate:
128
+
129
+ gemini auth
130
+
131
+ 3. Create your first feature:
132
+
133
+ gemini "Read AGENTS.md and create increment for user authentication"
134
+
135
+ Gemini will:
136
+ - Read AGENTS.md for SpecWeave context
137
+ - Adopt PM role: Create spec.md (WHAT/WHY)
138
+ - Adopt Architect role: Create plan.md (HOW)
139
+ - Create tasks.md
140
+ - Use agent mode for multi-file operations
141
+
142
+ 4. Continue development:
143
+
144
+ gemini "Implement task T001 from increment 0001"
145
+ gemini "Run tests for increment 0001"
146
+ gemini "Review and fix any issues"
147
+
148
+ HOW TO USE:
149
+
150
+ Gemini CLI reads AGENTS.md automatically when you reference it:
151
+
152
+ \`\`\`bash
153
+ # Explicit reference (recommended):
154
+ gemini "Read AGENTS.md and [your request]"
155
+
156
+ # Natural language:
157
+ gemini "Create a new feature following SpecWeave structure"
158
+
159
+ # With context:
160
+ gemini "Following the PM role in AGENTS.md, create requirements for payments"
161
+ \`\`\`
162
+
163
+ CONTEXT LOADING (70%+ Token Savings):
164
+
165
+ CRITICAL: Tell Gemini to read context-manifest.yaml first!
166
+
167
+ \`\`\`bash
168
+ gemini "Read context-manifest.yaml from increment 0001, load only those files, then implement task T001"
169
+ \`\`\`
170
+
171
+ **Why this matters**:
172
+ - Gemini has 1M token context window
173
+ - But loading everything wastes tokens
174
+ - Context manifests = precise, efficient loading
175
+
176
+ FEATURES:
177
+
178
+ ✅ 1M Token Context Window
179
+ - Can handle large specifications
180
+ - Read entire codebase if needed
181
+
182
+ ✅ Agent Mode
183
+ - Multi-file task completion
184
+ - Automatic planning and execution
185
+ - Interactive approval before changes
186
+
187
+ ✅ Built-in Tools
188
+ - File operations
189
+ - Shell commands
190
+ - Google Search grounding
191
+ - Web fetching
192
+
193
+ ✅ MCP Support
194
+ - Extend with custom integrations
195
+ - Local or remote MCP servers
196
+
197
+ ✅ Free Tier
198
+ - Gemini 2.5 Pro included
199
+ - 60 requests/minute
200
+ - 1,000 requests/day
201
+
202
+ EXAMPLE WORKFLOWS:
203
+
204
+ 1. **Create Feature**:
205
+ \`\`\`bash
206
+ gemini "Read AGENTS.md. Create increment 0002 for payment processing with Stripe. Follow SpecWeave structure: spec.md (PM role), plan.md (Architect role), tasks.md"
207
+ \`\`\`
208
+
209
+ 2. **Implement Task**:
210
+ \`\`\`bash
211
+ gemini "Read increment 0002, implement task T001 (Setup Stripe SDK)"
212
+ \`\`\`
213
+
214
+ 3. **Fix Bug**:
215
+ \`\`\`bash
216
+ gemini "Read AGENTS.md and increment 0001. Fix authentication bug in login endpoint. Update tests."
217
+ \`\`\`
218
+
219
+ 4. **Review Code**:
220
+ \`\`\`bash
221
+ gemini "Adopt Tech Lead role from AGENTS.md. Review code in src/auth/ and provide feedback"
222
+ \`\`\`
223
+
224
+ TIPS & TRICKS:
225
+
226
+ 1. **Always Reference AGENTS.md**
227
+ - Ensures Gemini understands SpecWeave structure
228
+ - Provides role definitions (PM, Architect, etc.)
229
+
230
+ 2. **Use Agent Mode**
231
+ - For complex, multi-file tasks
232
+ - Gemini proposes plan before execution
233
+ - You approve changes
234
+
235
+ 3. **Leverage 1M Context Window**
236
+ - Can load large specs
237
+ - But still use context manifests for efficiency
238
+
239
+ 4. **MCP Integration**
240
+ - Connect to your tools (JIRA, GitHub, etc.)
241
+ - See: https://modelcontextprotocol.io/
242
+
243
+ 5. **Check Gemini Documentation**
244
+ - \`gemini --help\`
245
+ - https://developers.google.com/gemini-code-assist/docs/gemini-cli
246
+
247
+ COMPARISON:
248
+
249
+ | Feature | Claude Code | Gemini CLI |
250
+ |---------|-------------|------------|
251
+ | **Automation** | Full | Semi |
252
+ | **Skills** | Native | Via AGENTS.md |
253
+ | **Agents** | Native | Via AGENTS.md |
254
+ | **Context Window** | 200k | 1M (5x larger!) |
255
+ | **Cost** | Paid | Free tier available |
256
+ | **Open Source** | No | Yes (Apache 2.0) |
257
+
258
+ LIMITATIONS:
259
+
260
+ - No native skills/agents (manual role adoption via AGENTS.md)
261
+ - No hooks (can't auto-update docs on events)
262
+ - Requires explicit instruction referencing
263
+ - CLI-only (no IDE integration yet)
264
+
265
+ But still VERY powerful with 1M context and agent mode!
266
+
267
+ DOCUMENTATION:
268
+
269
+ - AGENTS.md: Universal SpecWeave instructions (READ THIS!)
270
+ - SPECWEAVE.md: Complete framework documentation
271
+ - .gemini/README.md: Gemini adapter guide
272
+ - https://developers.google.com/gemini-code-assist/docs/gemini-cli
273
+
274
+ You're ready to build with SpecWeave on Gemini CLI!
275
+
276
+ Pro tip: Leverage the 1M token context window for large specifications,
277
+ but always use context manifests for efficiency!
278
+ `;
279
+ }
280
+ }
281
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/gemini/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE9C,MAAM,OAAO,aAAc,SAAQ,WAAW;IAA9C;;QACE,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,oEAAoE,CAAC;QACnF,oBAAe,GAAG,MAAe,CAAC;IA+QpC,CAAC;IA7QC;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAEvD,OAAO,YAAY,IAAI,YAAY,IAAI,WAAW,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,WAAW;gBACvB,WAAW,EAAE,4DAA4D;aAC1E;YACD;gBACE,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,mBAAmB;gBAC/B,WAAW,EAAE,8BAA8B;aAC5C;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QAEtE,kCAAkC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE9B,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACjE,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEnD,cAAc;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,OAAuB;QACxE,MAAM,SAAS,GAAG,IAAI,iBAAiB,CACrC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CACvC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC;YACvC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiLN,CAAC;IACJ,CAAC;CACF"}
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * Generic Adapter
3
3
  *
4
- * Manual workflow adapter that works with ANY AI tool.
5
- * Provides step-by-step instructions for using SpecWeave without tool-specific features.
4
+ * Universal adapter that works with ANY AI tool.
5
+ * All AI tools can read AGENTS.md (universal standard) for workflow instructions.
6
6
  *
7
7
  * This adapter ensures 100% compatibility - works with ChatGPT web, Claude web,
8
8
  * Gemini, or literally ANY AI that can read markdown and follow instructions.
9
9
  */
10
- import { AdapterBase } from '../adapter-base';
11
- import { AdapterOptions, AdapterFile } from '../adapter-interface';
10
+ import { AdapterBase } from '../adapter-base.js';
11
+ import { AdapterOptions, AdapterFile } from '../adapter-interface.js';
12
12
  export declare class GenericAdapter extends AdapterBase {
13
13
  name: string;
14
14
  description: string;
@@ -22,6 +22,9 @@ export declare class GenericAdapter extends AdapterBase {
22
22
  detect(): Promise<boolean>;
23
23
  /**
24
24
  * Get files to install for Generic adapter
25
+ *
26
+ * Note: Any AI tool can read AGENTS.md (universal standard).
27
+ * No additional files needed.
25
28
  */
26
29
  getFiles(): AdapterFile[];
27
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/generic/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,IAAI,SAAa;IACjB,WAAW,SAA+E;IAC1F,eAAe,EAAG,QAAQ,CAAU;IAEpC;;;;;OAKG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAKhC;;OAEG;IACH,QAAQ,IAAI,WAAW,EAAE;IAezB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;CAqF1B"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/generic/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,IAAI,SAAa;IACjB,WAAW,SAAgF;IAC3F,eAAe,EAAG,QAAQ,CAAU;IAEpC;;;;;OAKG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAKhC;;;;;OAKG;IACH,QAAQ,IAAI,WAAW,EAAE;IAIzB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;CAqG1B"}
@@ -1,21 +1,18 @@
1
- "use strict";
2
1
  /**
3
2
  * Generic Adapter
4
3
  *
5
- * Manual workflow adapter that works with ANY AI tool.
6
- * Provides step-by-step instructions for using SpecWeave without tool-specific features.
4
+ * Universal adapter that works with ANY AI tool.
5
+ * All AI tools can read AGENTS.md (universal standard) for workflow instructions.
7
6
  *
8
7
  * This adapter ensures 100% compatibility - works with ChatGPT web, Claude web,
9
8
  * Gemini, or literally ANY AI that can read markdown and follow instructions.
10
9
  */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.GenericAdapter = void 0;
13
- const adapter_base_1 = require("../adapter-base");
14
- class GenericAdapter extends adapter_base_1.AdapterBase {
10
+ import { AdapterBase } from '../adapter-base.js';
11
+ export class GenericAdapter extends AdapterBase {
15
12
  constructor() {
16
13
  super(...arguments);
17
14
  this.name = 'generic';
18
- this.description = 'Generic adapter - Manual workflow for ANY AI tool (ChatGPT, Gemini, etc.)';
15
+ this.description = 'Generic adapter - AGENTS.md works with ANY AI tool (ChatGPT, Gemini, etc.)';
19
16
  this.automationLevel = 'manual';
20
17
  }
21
18
  /**
@@ -30,31 +27,20 @@ class GenericAdapter extends adapter_base_1.AdapterBase {
30
27
  }
31
28
  /**
32
29
  * Get files to install for Generic adapter
30
+ *
31
+ * Note: Any AI tool can read AGENTS.md (universal standard).
32
+ * No additional files needed.
33
33
  */
34
34
  getFiles() {
35
- return [
36
- {
37
- sourcePath: 'SPECWEAVE-MANUAL.md',
38
- targetPath: 'SPECWEAVE-MANUAL.md',
39
- description: 'Complete manual workflow guide for ANY AI tool'
40
- },
41
- {
42
- sourcePath: 'README.md',
43
- targetPath: '.specweave/adapters/generic/README.md',
44
- description: 'Generic adapter documentation'
45
- }
46
- ];
35
+ return [];
47
36
  }
48
37
  /**
49
38
  * Install Generic adapter
50
39
  */
51
40
  async install(options) {
52
- console.log('\n📦 Installing Generic Adapter (Manual Workflow)\n');
53
- // Generic adapter is simple - just copy manual guide
54
- await super.install(options);
55
- console.log('\n✨ Generic adapter installed!');
56
- console.log('\n📋 Files created:');
57
- console.log(' - SPECWEAVE-MANUAL.md (complete manual workflow guide)');
41
+ console.log('\n📦 Configuring for Universal AI Tool Compatibility\n');
42
+ // No files to install - any AI can read AGENTS.md
43
+ console.log('✅ AGENTS.md works with any AI tool (ChatGPT, Gemini, Claude web, etc.)');
58
44
  }
59
45
  /**
60
46
  * Post-installation instructions
@@ -68,35 +54,49 @@ class GenericAdapter extends adapter_base_1.AdapterBase {
68
54
  getInstructions() {
69
55
  return `
70
56
  ================================================================
71
- Generic Adapter - Manual Workflow
57
+ Generic Adapter - Universal Compatibility
72
58
  ================================================================
73
59
 
74
60
  Your project is now configured for ANY AI tool!
75
61
 
76
62
  WHAT THIS PROVIDES:
77
63
 
78
- - SPECWEAVE-MANUAL.md (Complete Manual Guide)
79
- - Step-by-step instructions for creating increments
80
- - Templates you can copy-paste to any AI
81
- - Workflow guidance (no tool dependencies)
82
- - Works with LITERALLY any AI
64
+ - AGENTS.md (Universal Standard)
65
+ - Any AI tool can read this file
66
+ - Contains all workflow instructions
67
+ - Project structure and templates
68
+ - Following agents.md standard (https://agents.md/)
83
69
 
84
70
  - 100% Compatibility
85
71
  - ChatGPT (web), Claude (web), Gemini
86
- - Any AI that can read text
72
+ - Any AI that can read markdown
73
+
74
+ HOW TO USE AGENTS.MD WITH ANY AI:
75
+
76
+ Method 1: Copy-Paste Workflow (ChatGPT web, Claude web, etc.)
77
+ 1. Open AGENTS.md in your browser/editor
78
+ 2. Copy relevant section (e.g., "Creating a Feature Increment")
79
+ 3. Paste into AI chat (ChatGPT, Claude web, Gemini, etc.)
80
+ 4. Ask AI to follow the instructions
81
+ 5. AI generates content (spec.md, plan.md, etc.)
82
+ 6. Copy AI's response, save to files
83
+
84
+ Method 2: File System Access (AI with file access)
85
+ 1. AI automatically reads AGENTS.md
86
+ 2. Ask: "Create increment for user authentication"
87
+ 3. AI follows AGENTS.md workflow
88
+ 4. AI creates files directly
87
89
 
88
90
  UNDERSTANDING "MANUAL":
89
91
 
90
92
  Manual = You Orchestrate, AI Executes
91
93
 
92
94
  Example workflow:
93
- 1. You read SPECWEAVE-MANUAL.md (Step 1: Create Folder)
94
- 2. You run: mkdir -p .specweave/increments/0001-auth
95
- 3. You read Step 2: Create spec.md
96
- 4. You copy template from manual, paste to AI (ChatGPT)
97
- 5. AI generates spec.md content
98
- 6. You copy AI's response, save to spec.md file
99
- 7. Repeat for plan.md, tasks.md, etc.
95
+ 1. Read AGENTS.md section "Creating a Feature Increment"
96
+ 2. Copy instructions to ChatGPT
97
+ 3. ChatGPT generates spec.md content
98
+ 4. Save content to .specweave/increments/0001-auth/spec.md
99
+ 5. Repeat for plan.md, tasks.md
100
100
 
101
101
  Manual does not mean harder - just means YOU control each step (no automation).
102
102
  Benefit: Works with ANY AI tool!
@@ -104,13 +104,13 @@ Benefit: Works with ANY AI tool!
104
104
  COMPARISON:
105
105
 
106
106
  Claude Code (Full): "create increment" -> Done in 30 seconds (auto)
107
- Cursor (Semi): "create increment" -> Done in 5 minutes (.cursorrules)
108
- Copilot (Basic): Create files manually, Copilot suggests content
109
- Generic (Manual): Follow SPECWEAVE-MANUAL.md step-by-step (30-60 min)
107
+ Cursor (Semi): "create increment" -> Done in 5 minutes (reads AGENTS.md)
108
+ Copilot (Basic): Reads AGENTS.md, suggests content as you type
109
+ Generic (Manual): Copy AGENTS.md instructions to any AI (10-30 min)
110
110
 
111
111
  Trade-off: Speed vs Compatibility
112
- - Claude Code: Fast, but only works with Claude Code
113
- - Generic: Slower, but works with EVERY AI tool!
112
+ - Claude Code: Fast, but requires Claude Code CLI
113
+ - Generic: Slower, but works with EVERY AI tool (even web-based)!
114
114
 
115
115
  WHEN TO USE:
116
116
 
@@ -121,35 +121,36 @@ Use Generic adapter if:
121
121
  - Simple projects where automation isn't critical
122
122
 
123
123
  Consider alternatives if:
124
- - You want automation -> Use Claude Code (full) or Cursor (semi)
125
- - You have file system access -> Use Copilot at minimum
124
+ - You want automation -> Use Claude Code (full)
125
+ - You have CLI access -> Use Cursor (semi) or Copilot (basic)
126
126
  - Large projects -> Manual workflow becomes tedious
127
127
 
128
128
  QUICK START:
129
129
 
130
- 1. Open SPECWEAVE-MANUAL.md
131
- Read the complete manual workflow guide
130
+ 1. Open AGENTS.md
131
+ Read the "Common Workflows" section
132
+
133
+ 2. Copy workflow to your AI tool:
134
+ - "Creating a Feature Increment" section
135
+ - Paste into ChatGPT/Claude/Gemini
132
136
 
133
- 2. Follow step-by-step for your first feature
134
- - Step 1: Create increment folder
135
- - Step 2: Create spec.md (copy template, paste to AI, save)
136
- - Step 3: Create plan.md (copy template, paste to AI, save)
137
- - Step 4: Create tasks.md (copy template, paste to AI, save)
137
+ 3. Follow AI's guidance:
138
+ - AI generates spec.md content (copy & save)
139
+ - AI generates plan.md content (copy & save)
140
+ - AI generates tasks.md content (copy & save)
138
141
 
139
- 3. Use any AI tool you prefer
142
+ 4. Use any AI tool you prefer:
140
143
  ChatGPT, Claude web, Gemini, Perplexity, etc.
141
144
 
142
145
  DOCUMENTATION:
143
146
 
144
- - SPECWEAVE-MANUAL.md: Complete step-by-step guide (READ THIS FIRST!)
145
- - SPECWEAVE.md: Complete technical documentation
147
+ - AGENTS.md: Universal workflow instructions (works with any AI!)
146
148
  - .specweave/docs/: Project documentation
147
149
 
148
150
  You're ready to build with SpecWeave using ANY AI tool!
149
151
 
150
- Remember: Generic = Manual = Copy-paste workflow, but 100% compatible!
152
+ Remember: AGENTS.md is the universal standard - it works everywhere!
151
153
  `;
152
154
  }
153
155
  }
154
- exports.GenericAdapter = GenericAdapter;
155
156
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/generic/adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH,kDAA8C;AAG9C,MAAa,cAAe,SAAQ,0BAAW;IAA/C;;QACE,SAAI,GAAG,SAAS,CAAC;QACjB,gBAAW,GAAG,2EAA2E,CAAC;QAC1F,oBAAe,GAAG,QAAiB,CAAC;IA4ItC,CAAC;IA1IC;;;;;OAKG;IACH,KAAK,CAAC,MAAM;QACV,yDAAyD;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE,qBAAqB;gBACjC,UAAU,EAAE,qBAAqB;gBACjC,WAAW,EAAE,gDAAgD;aAC9D;YACD;gBACE,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,uCAAuC;gBACnD,WAAW,EAAE,+BAA+B;aAC7C;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QAEnE,qDAAqD;QACrD,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkFN,CAAC;IACJ,CAAC;CACF;AA/ID,wCA+IC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/generic/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,OAAO,cAAe,SAAQ,WAAW;IAA/C;;QACE,SAAI,GAAG,SAAS,CAAC;QACjB,gBAAW,GAAG,4EAA4E,CAAC;QAC3F,oBAAe,GAAG,QAAiB,CAAC;IAgJtC,CAAC;IA9IC;;;;;OAKG;IACH,KAAK,CAAC,MAAM;QACV,yDAAyD;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QAEtE,kDAAkD;QAClD,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkGN,CAAC;IACJ,CAAC;CACF"}
@@ -1,5 +1,7 @@
1
1
  interface InitOptions {
2
- template: string;
2
+ template?: string;
3
+ adapter?: string;
4
+ techStack?: string;
3
5
  }
4
6
  export declare function initCommand(projectName?: string, options?: InitOptions): Promise<void>;
5
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAOA,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE,WAAkC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAgGf"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAcA,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,IAAI,CAAC,CAkOf"}