specweave 0.6.8 → 0.7.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 (255) hide show
  1. package/.claude-plugin/README.md +1 -1
  2. package/CLAUDE.md +903 -99
  3. package/README.md +143 -207
  4. package/bin/specweave.js +67 -0
  5. package/dist/cli/commands/abandon.d.ts +13 -0
  6. package/dist/cli/commands/abandon.d.ts.map +1 -0
  7. package/dist/cli/commands/abandon.js +15 -0
  8. package/dist/cli/commands/abandon.js.map +1 -0
  9. package/dist/cli/commands/init.d.ts.map +1 -1
  10. package/dist/cli/commands/init.js +94 -18
  11. package/dist/cli/commands/init.js.map +1 -1
  12. package/dist/cli/commands/pause.d.ts +13 -0
  13. package/dist/cli/commands/pause.d.ts.map +1 -0
  14. package/dist/cli/commands/pause.js +15 -0
  15. package/dist/cli/commands/pause.js.map +1 -0
  16. package/dist/cli/commands/qa.d.ts +54 -0
  17. package/dist/cli/commands/qa.d.ts.map +1 -0
  18. package/dist/cli/commands/qa.js +98 -0
  19. package/dist/cli/commands/qa.js.map +1 -0
  20. package/dist/cli/commands/resume.d.ts +12 -0
  21. package/dist/cli/commands/resume.d.ts.map +1 -0
  22. package/dist/cli/commands/resume.js +14 -0
  23. package/dist/cli/commands/resume.js.map +1 -0
  24. package/dist/cli/commands/status.d.ts +12 -0
  25. package/dist/cli/commands/status.d.ts.map +1 -0
  26. package/dist/cli/commands/status.js +23 -0
  27. package/dist/cli/commands/status.js.map +1 -0
  28. package/dist/cli/helpers/issue-tracker/ado.d.ts +57 -0
  29. package/dist/cli/helpers/issue-tracker/ado.d.ts.map +1 -0
  30. package/dist/cli/helpers/issue-tracker/ado.js +223 -0
  31. package/dist/cli/helpers/issue-tracker/ado.js.map +1 -0
  32. package/dist/cli/helpers/issue-tracker/github.d.ts +65 -0
  33. package/dist/cli/helpers/issue-tracker/github.d.ts.map +1 -0
  34. package/dist/cli/helpers/issue-tracker/github.js +284 -0
  35. package/dist/cli/helpers/issue-tracker/github.js.map +1 -0
  36. package/dist/cli/helpers/issue-tracker/index.d.ts +22 -0
  37. package/dist/cli/helpers/issue-tracker/index.d.ts.map +1 -0
  38. package/dist/cli/helpers/issue-tracker/index.js +270 -0
  39. package/dist/cli/helpers/issue-tracker/index.js.map +1 -0
  40. package/dist/cli/helpers/issue-tracker/jira.d.ts +61 -0
  41. package/dist/cli/helpers/issue-tracker/jira.d.ts.map +1 -0
  42. package/dist/cli/helpers/issue-tracker/jira.js +265 -0
  43. package/dist/cli/helpers/issue-tracker/jira.js.map +1 -0
  44. package/dist/cli/helpers/issue-tracker/types.d.ts +86 -0
  45. package/dist/cli/helpers/issue-tracker/types.d.ts.map +1 -0
  46. package/dist/cli/helpers/issue-tracker/types.js +16 -0
  47. package/dist/cli/helpers/issue-tracker/types.js.map +1 -0
  48. package/dist/cli/helpers/issue-tracker/utils.d.ts +103 -0
  49. package/dist/cli/helpers/issue-tracker/utils.d.ts.map +1 -0
  50. package/dist/cli/helpers/issue-tracker/utils.js +240 -0
  51. package/dist/cli/helpers/issue-tracker/utils.js.map +1 -0
  52. package/dist/core/increment/limits.d.ts +68 -0
  53. package/dist/core/increment/limits.d.ts.map +1 -0
  54. package/dist/core/increment/limits.js +224 -0
  55. package/dist/core/increment/limits.js.map +1 -0
  56. package/dist/core/increment/metadata-manager.d.ts +114 -0
  57. package/dist/core/increment/metadata-manager.d.ts.map +1 -0
  58. package/dist/core/increment/metadata-manager.js +320 -0
  59. package/dist/core/increment/metadata-manager.js.map +1 -0
  60. package/dist/core/increment/status-commands.d.ts +43 -0
  61. package/dist/core/increment/status-commands.d.ts.map +1 -0
  62. package/dist/core/increment/status-commands.js +277 -0
  63. package/dist/core/increment/status-commands.js.map +1 -0
  64. package/dist/core/plugin-detector.d.ts +1 -0
  65. package/dist/core/plugin-detector.d.ts.map +1 -1
  66. package/dist/core/plugin-detector.js +25 -0
  67. package/dist/core/plugin-detector.js.map +1 -1
  68. package/dist/core/qa/qa-runner.d.ts +16 -0
  69. package/dist/core/qa/qa-runner.d.ts.map +1 -0
  70. package/dist/core/qa/qa-runner.js +404 -0
  71. package/dist/core/qa/qa-runner.js.map +1 -0
  72. package/dist/core/qa/quality-gate-decider.d.ts +53 -0
  73. package/dist/core/qa/quality-gate-decider.d.ts.map +1 -0
  74. package/dist/core/qa/quality-gate-decider.js +268 -0
  75. package/dist/core/qa/quality-gate-decider.js.map +1 -0
  76. package/dist/core/qa/risk-calculator.d.ts +126 -0
  77. package/dist/core/qa/risk-calculator.d.ts.map +1 -0
  78. package/dist/core/qa/risk-calculator.js +247 -0
  79. package/dist/core/qa/risk-calculator.js.map +1 -0
  80. package/dist/core/qa/types.d.ts +315 -0
  81. package/dist/core/qa/types.d.ts.map +1 -0
  82. package/dist/core/qa/types.js +8 -0
  83. package/dist/core/qa/types.js.map +1 -0
  84. package/dist/core/types/config.d.ts +35 -0
  85. package/dist/core/types/config.d.ts.map +1 -1
  86. package/dist/core/types/config.js +16 -0
  87. package/dist/core/types/config.js.map +1 -1
  88. package/dist/core/types/increment-metadata.d.ts +120 -0
  89. package/dist/core/types/increment-metadata.d.ts.map +1 -0
  90. package/dist/core/types/increment-metadata.js +138 -0
  91. package/dist/core/types/increment-metadata.js.map +1 -0
  92. package/dist/hooks/lib/invoke-translator-skill.d.ts +60 -0
  93. package/dist/hooks/lib/invoke-translator-skill.d.ts.map +1 -0
  94. package/dist/hooks/lib/invoke-translator-skill.js +201 -0
  95. package/dist/hooks/lib/invoke-translator-skill.js.map +1 -0
  96. package/dist/hooks/lib/translate-file.d.ts +59 -0
  97. package/dist/hooks/lib/translate-file.d.ts.map +1 -0
  98. package/dist/hooks/lib/translate-file.js +350 -0
  99. package/dist/hooks/lib/translate-file.js.map +1 -0
  100. package/dist/locales/en/cli.json +3 -1
  101. package/dist/metrics/calculators/change-failure-rate.d.ts +22 -0
  102. package/dist/metrics/calculators/change-failure-rate.d.ts.map +1 -0
  103. package/dist/metrics/calculators/change-failure-rate.js +70 -0
  104. package/dist/metrics/calculators/change-failure-rate.js.map +1 -0
  105. package/dist/metrics/calculators/deployment-frequency.d.ts +20 -0
  106. package/dist/metrics/calculators/deployment-frequency.d.ts.map +1 -0
  107. package/dist/metrics/calculators/deployment-frequency.js +61 -0
  108. package/dist/metrics/calculators/deployment-frequency.js.map +1 -0
  109. package/dist/metrics/calculators/lead-time.d.ts +22 -0
  110. package/dist/metrics/calculators/lead-time.d.ts.map +1 -0
  111. package/dist/metrics/calculators/lead-time.js +82 -0
  112. package/dist/metrics/calculators/lead-time.js.map +1 -0
  113. package/dist/metrics/calculators/mttr.d.ts +21 -0
  114. package/dist/metrics/calculators/mttr.d.ts.map +1 -0
  115. package/dist/metrics/calculators/mttr.js +60 -0
  116. package/dist/metrics/calculators/mttr.js.map +1 -0
  117. package/dist/metrics/dora-calculator.d.ts +24 -0
  118. package/dist/metrics/dora-calculator.d.ts.map +1 -0
  119. package/dist/metrics/dora-calculator.js +104 -0
  120. package/dist/metrics/dora-calculator.js.map +1 -0
  121. package/dist/metrics/github-client.d.ts +51 -0
  122. package/dist/metrics/github-client.d.ts.map +1 -0
  123. package/dist/metrics/github-client.js +133 -0
  124. package/dist/metrics/github-client.js.map +1 -0
  125. package/dist/metrics/types.d.ts +112 -0
  126. package/dist/metrics/types.d.ts.map +1 -0
  127. package/dist/metrics/types.js +10 -0
  128. package/dist/metrics/types.js.map +1 -0
  129. package/dist/metrics/utils/percentile.d.ts +25 -0
  130. package/dist/metrics/utils/percentile.d.ts.map +1 -0
  131. package/dist/metrics/utils/percentile.js +46 -0
  132. package/dist/metrics/utils/percentile.js.map +1 -0
  133. package/dist/metrics/utils/tier-classifier.d.ts +61 -0
  134. package/dist/metrics/utils/tier-classifier.d.ts.map +1 -0
  135. package/dist/metrics/utils/tier-classifier.js +100 -0
  136. package/dist/metrics/utils/tier-classifier.js.map +1 -0
  137. package/dist/utils/auth-helpers.d.ts +58 -0
  138. package/dist/utils/auth-helpers.d.ts.map +1 -0
  139. package/dist/utils/auth-helpers.js +108 -0
  140. package/dist/utils/auth-helpers.js.map +1 -0
  141. package/dist/utils/env-file.d.ts +88 -0
  142. package/dist/utils/env-file.d.ts.map +1 -0
  143. package/dist/utils/env-file.js +180 -0
  144. package/dist/utils/env-file.js.map +1 -0
  145. package/dist/utils/plugin-detection.d.ts +50 -0
  146. package/dist/utils/plugin-detection.d.ts.map +1 -0
  147. package/dist/utils/plugin-detection.js +229 -0
  148. package/dist/utils/plugin-detection.js.map +1 -0
  149. package/dist/utils/secrets-loader.d.ts +88 -0
  150. package/dist/utils/secrets-loader.d.ts.map +1 -0
  151. package/dist/utils/secrets-loader.js +271 -0
  152. package/dist/utils/secrets-loader.js.map +1 -0
  153. package/dist/utils/translation.d.ts +187 -0
  154. package/dist/utils/translation.d.ts.map +1 -0
  155. package/dist/utils/translation.js +414 -0
  156. package/dist/utils/translation.js.map +1 -0
  157. package/package.json +28 -44
  158. package/plugins/specweave/.claude-plugin/plugin.json +3 -3
  159. package/plugins/specweave/agents/pm/AGENT.md +330 -54
  160. package/plugins/specweave/agents/test-aware-planner/AGENT.md +1035 -0
  161. package/plugins/specweave/agents/test-aware-planner/templates/README.md +118 -0
  162. package/plugins/specweave/agents/test-aware-planner/templates/task-non-testable.md.template +24 -0
  163. package/plugins/specweave/agents/test-aware-planner/templates/task-testable.md.template +53 -0
  164. package/plugins/specweave/agents/test-aware-planner/templates/tasks-frontmatter.md.template +11 -0
  165. package/plugins/specweave/commands/README.md +88 -163
  166. package/plugins/specweave/commands/specweave-abandon.md +314 -0
  167. package/plugins/specweave/commands/specweave-check-tests.md +546 -0
  168. package/plugins/specweave/commands/{do.md → specweave-do.md} +5 -7
  169. package/plugins/specweave/commands/{increment.md → specweave-increment.md} +231 -4
  170. package/plugins/specweave/commands/specweave-pause.md +189 -0
  171. package/plugins/specweave/commands/specweave-qa.md +245 -0
  172. package/plugins/specweave/commands/specweave-resume.md +216 -0
  173. package/plugins/specweave/commands/specweave-status.md +397 -0
  174. package/plugins/specweave/commands/specweave-sync-tasks.md +256 -0
  175. package/plugins/specweave/commands/{translate.md → specweave-translate.md} +3 -3
  176. package/plugins/specweave/commands/specweave-update-scope.md +351 -0
  177. package/plugins/specweave/commands/specweave.md +21 -21
  178. package/plugins/specweave/hooks/post-increment-planning.sh +335 -0
  179. package/plugins/specweave/hooks/post-task-completion.sh +141 -0
  180. package/plugins/specweave/skills/SKILLS-INDEX.md +1 -1
  181. package/plugins/specweave/skills/brownfield-analyzer/SKILL.md +9 -9
  182. package/plugins/specweave/skills/increment-planner/SKILL.md +400 -212
  183. package/plugins/specweave/skills/increment-quality-judge-v2/SKILL.md +499 -0
  184. package/plugins/specweave/skills/plugin-detector/SKILL.md +114 -1
  185. package/plugins/specweave/skills/project-kickstarter/SKILL.md +74 -1
  186. package/plugins/specweave/skills/{rfc-generator → spec-generator}/SKILL.md +22 -29
  187. package/plugins/specweave/skills/specweave-detector/SKILL.md +3 -3
  188. package/plugins/specweave/skills/specweave-framework/SKILL.md +2 -2
  189. package/plugins/specweave-ado/.claude-plugin/plugin.json +18 -4
  190. package/plugins/specweave-ado/agents/ado-manager/AGENT.md +426 -0
  191. package/plugins/specweave-ado/commands/close-workitem.md +52 -0
  192. package/plugins/specweave-ado/commands/create-workitem.md +53 -0
  193. package/plugins/specweave-ado/commands/status.md +53 -0
  194. package/plugins/specweave-ado/commands/sync.md +55 -0
  195. package/plugins/specweave-ado/lib/ado-client.ts +361 -0
  196. package/plugins/specweave-ado/reference/ado-specweave-mapping.md +552 -0
  197. package/plugins/specweave-ado/skills/ado-sync/SKILL.md +344 -193
  198. package/plugins/specweave-docs/skills/docusaurus/SKILL.md +73 -0
  199. package/plugins/specweave-github/agents/github-manager/AGENT.md +49 -0
  200. package/plugins/specweave-github/commands/{github-close-issue.md → close-issue.md} +1 -1
  201. package/plugins/specweave-github/commands/{github-create-issue.md → create-issue.md} +1 -1
  202. package/plugins/specweave-github/commands/{github-status.md → status.md} +1 -1
  203. package/plugins/specweave-github/commands/{github-sync-tasks.md → sync-tasks.md} +1 -1
  204. package/plugins/specweave-github/commands/{github-sync.md → sync.md} +1 -1
  205. package/plugins/specweave-github/reference/github-specweave-mapping.md +377 -0
  206. package/plugins/specweave-github/skills/github-sync/SKILL.md +11 -3
  207. package/plugins/specweave-infrastructure/commands/{specweave.monitor-setup.md → monitor-setup.md} +5 -0
  208. package/plugins/specweave-infrastructure/commands/{specweave.slo-implement.md → slo-implement.md} +5 -0
  209. package/plugins/specweave-jira/agents/jira-manager/AGENT.md +380 -0
  210. package/plugins/specweave-jira/commands/{specweave.sync-jira.md → sync.md} +1 -1
  211. package/plugins/specweave-jira/reference/jira-specweave-mapping.md +508 -0
  212. package/plugins/specweave-ml/commands/ml-deploy.md +1 -1
  213. package/plugins/specweave-ml/commands/ml-evaluate.md +1 -1
  214. package/plugins/specweave-ml/commands/ml-explain.md +1 -1
  215. package/plugins/specweave-ml/commands/{specweave.ml-pipeline.md → ml-pipeline.md} +5 -0
  216. package/src/templates/AGENTS.md.template +331 -31
  217. package/src/templates/CLAUDE.md.template +36 -21
  218. package/src/templates/COMPLETION-REPORT.template.md +128 -0
  219. package/src/templates/README.md.template +17 -16
  220. package/src/templates/docs/README.md +11 -9
  221. package/src/templates/docs/spec-template.md +229 -0
  222. package/plugins/specweave/commands/inc.md +0 -85
  223. package/plugins/specweave/commands/list-increments.md +0 -180
  224. package/src/adapters/README.md +0 -275
  225. package/src/adapters/adapter-base.ts +0 -182
  226. package/src/adapters/adapter-interface.ts +0 -166
  227. package/src/adapters/adapter-loader.ts +0 -256
  228. package/src/adapters/agents-md-generator.ts +0 -228
  229. package/src/adapters/claude/README.md +0 -233
  230. package/src/adapters/claude/adapter.ts +0 -468
  231. package/src/adapters/claude-md-generator.ts +0 -377
  232. package/src/adapters/codex/README.md +0 -105
  233. package/src/adapters/codex/adapter.ts +0 -333
  234. package/src/adapters/cursor/.cursor/context/docs-context.md +0 -62
  235. package/src/adapters/cursor/.cursor/context/increments-context.md +0 -71
  236. package/src/adapters/cursor/.cursor/context/strategy-context.md +0 -73
  237. package/src/adapters/cursor/.cursor/context/tests-context.md +0 -89
  238. package/src/adapters/cursor/README.md +0 -283
  239. package/src/adapters/cursor/adapter.ts +0 -451
  240. package/src/adapters/doc-generator.ts +0 -331
  241. package/src/adapters/gemini/README.md +0 -97
  242. package/src/adapters/gemini/adapter.ts +0 -298
  243. package/src/adapters/generic/README.md +0 -277
  244. package/src/adapters/generic/adapter.ts +0 -378
  245. package/src/adapters/registry.yaml +0 -187
  246. /package/plugins/specweave/commands/{costs.md → specweave-costs.md} +0 -0
  247. /package/plugins/specweave/commands/{done.md → specweave-done.md} +0 -0
  248. /package/plugins/specweave/commands/{next.md → specweave-next.md} +0 -0
  249. /package/plugins/specweave/commands/{progress.md → specweave-progress.md} +0 -0
  250. /package/plugins/specweave/commands/{sync-docs.md → specweave-sync-docs.md} +0 -0
  251. /package/plugins/specweave/commands/{tdd-cycle.md → specweave-tdd-cycle.md} +0 -0
  252. /package/plugins/specweave/commands/{tdd-green.md → specweave-tdd-green.md} +0 -0
  253. /package/plugins/specweave/commands/{tdd-red.md → specweave-tdd-red.md} +0 -0
  254. /package/plugins/specweave/commands/{tdd-refactor.md → specweave-tdd-refactor.md} +0 -0
  255. /package/plugins/specweave/commands/{validate.md → specweave-validate.md} +0 -0
@@ -1,333 +0,0 @@
1
- /**
2
- * Codex Adapter (OpenAI)
3
- *
4
- * Semi-automation adapter for OpenAI Codex (ChatGPT Code Interpreter/Codex CLI).
5
- * Uses universal AGENTS.md file for instructions.
6
- *
7
- * Codex features:
8
- * - Works in CLI, IDE, web, GitHub, iOS app
9
- * - GPT-5-Codex optimized for engineering tasks
10
- * - File read/write operations
11
- * - Test execution and validation
12
- * - Task-based isolated environments
13
- */
14
-
15
- import * as path from 'path';
16
- import fs from 'fs-extra';
17
- import { AdapterBase } from '../adapter-base.js';
18
- import { AdapterOptions, AdapterFile } from '../adapter-interface.js';
19
- import { AgentsMdGenerator } from '../agents-md-generator.js';
20
- import { getDirname } from '../../utils/esm-helpers.js';
21
-
22
- const __dirname = getDirname(import.meta.url);
23
-
24
- export class CodexAdapter extends AdapterBase {
25
- name = 'codex';
26
- description = 'OpenAI Codex adapter - Semi-automation with AGENTS.md and task-based execution';
27
- automationLevel = 'semi' as const;
28
-
29
- /**
30
- * Detect if Codex is available
31
- *
32
- * Checks for:
33
- * - codex command in PATH (Codex CLI)
34
- * - .codex/ directory exists
35
- * - AGENTS.md file exists (previously configured)
36
- */
37
- async detect(): Promise<boolean> {
38
- const hasCodexCLI = await this.commandExists('codex');
39
- const hasCodexDir = await this.fileExists('.codex');
40
- const hasAgentsMd = await this.fileExists('AGENTS.md');
41
-
42
- return hasCodexCLI || hasCodexDir || hasAgentsMd;
43
- }
44
-
45
- /**
46
- * Get files to install for Codex adapter
47
- */
48
- getFiles(): AdapterFile[] {
49
- return [
50
- {
51
- sourcePath: 'AGENTS.md',
52
- targetPath: 'AGENTS.md',
53
- description: 'Universal SpecWeave instructions (works with all AI tools)'
54
- },
55
- {
56
- sourcePath: 'README.md',
57
- targetPath: '.codex/README.md',
58
- description: 'Codex adapter documentation'
59
- }
60
- ];
61
- }
62
-
63
- /**
64
- * Install Codex adapter
65
- */
66
- async install(options: AdapterOptions): Promise<void> {
67
- console.log('\n📦 Installing OpenAI Codex Adapter (Semi-Automation)\n');
68
-
69
- // Ensure .codex directory exists
70
- const codexDir = path.join(options.projectPath, '.codex');
71
- await fs.ensureDir(codexDir);
72
-
73
- // Generate AGENTS.md
74
- const agentsMdPath = path.join(options.projectPath, 'AGENTS.md');
75
- await this.generateAgentsMd(agentsMdPath, options);
76
-
77
- // Copy README
78
- const readmePath = path.join(__dirname, 'README.md');
79
- if (await fs.pathExists(readmePath)) {
80
- await fs.copy(readmePath, path.join(codexDir, 'README.md'));
81
- }
82
-
83
- console.log('\n✨ Codex adapter installed!');
84
- console.log('\n📋 Files created:');
85
- console.log(' - AGENTS.md (universal instructions)');
86
- console.log(' - .codex/README.md (adapter documentation)');
87
- }
88
-
89
- /**
90
- * Generate AGENTS.md file
91
- */
92
- private async generateAgentsMd(targetPath: string, options: AdapterOptions): Promise<void> {
93
- const generator = new AgentsMdGenerator(
94
- path.join(__dirname, '../../skills'),
95
- path.join(__dirname, '../../agents'),
96
- path.join(__dirname, '../../commands')
97
- );
98
-
99
- const content = await generator.generate({
100
- projectName: options.projectName,
101
- projectPath: options.projectPath
102
- });
103
-
104
- await fs.writeFile(targetPath, content);
105
- console.log(' ✅ AGENTS.md - Universal SpecWeave instructions');
106
- }
107
-
108
- /**
109
- * Post-installation instructions
110
- */
111
- async postInstall(options: AdapterOptions): Promise<void> {
112
- console.log(this.getInstructions());
113
- }
114
-
115
- /**
116
- * Get usage instructions for Codex adapter
117
- */
118
- getInstructions(): string {
119
- return `
120
- ================================================================
121
- OpenAI Codex Adapter - Semi-Automation
122
- ================================================================
123
-
124
- Your project is now configured for OpenAI Codex with SEMI-automation!
125
-
126
- WHAT THIS PROVIDES:
127
-
128
- - AGENTS.md (Universal Instructions)
129
- - Works with Codex CLI, ChatGPT web, and IDEs
130
- - Auto-generated from actual skills/agents
131
- - SpecWeave structure and workflows
132
- - GPT-5-Codex optimized guidance
133
-
134
- - Task-Based Execution
135
- - Isolated environments per task
136
- - File read/write operations
137
- - Test execution and validation
138
-
139
- QUICK START:
140
-
141
- **Option 1: Codex CLI** (Fastest)
142
-
143
- 1. Install Codex CLI:
144
-
145
- # Included with ChatGPT Plus, Pro, Business, Enterprise
146
- npm install -g openai-codex-cli
147
-
148
- 2. Create your first feature:
149
-
150
- codex "Read AGENTS.md and create increment for user authentication"
151
-
152
- Codex will:
153
- - Read AGENTS.md for SpecWeave context
154
- - Adopt PM role: Create spec.md (WHAT/WHY)
155
- - Adopt Architect role: Create plan.md (HOW)
156
- - Create tasks.md
157
- - Execute in isolated environment
158
-
159
- **Option 2: ChatGPT Web** (Most Accessible)
160
-
161
- 1. Open ChatGPT (Plus/Pro/Business/Enterprise)
162
-
163
- 2. Upload AGENTS.md file
164
-
165
- 3. Say:
166
- "I'm using SpecWeave framework. Create increment for user authentication."
167
-
168
- 4. Copy generated content to files:
169
- - spec.md
170
- - plan.md
171
- - tasks.md
172
-
173
- **Option 3: IDE Integration** (If available in your IDE)
174
-
175
- Use Codex integration in your IDE (VS Code, JetBrains, etc.)
176
- Reference AGENTS.md for SpecWeave structure.
177
-
178
- HOW TO USE:
179
-
180
- **With Codex CLI**:
181
- \`\`\`bash
182
- # Explicit reference (recommended):
183
- codex "Read AGENTS.md and [your request]"
184
-
185
- # Natural language:
186
- codex "Create a new feature following SpecWeave structure"
187
-
188
- # With context:
189
- codex "Following the PM role in AGENTS.md, create requirements for payments"
190
- \`\`\`
191
-
192
- **With ChatGPT Web**:
193
- 1. Upload AGENTS.md at start of conversation
194
- 2. Reference it: "Following AGENTS.md, create increment for..."
195
- 3. Download or copy-paste generated files
196
-
197
- CONTEXT LOADING (70%+ Token Savings):
198
-
199
- CRITICAL: Tell Codex to read context-manifest.yaml first!
200
-
201
- \`\`\`bash
202
- # CLI:
203
- codex "Read context-manifest.yaml from increment 0001, load only those files, then implement task T001"
204
-
205
- # Web:
206
- # 1. Upload context-manifest.yaml
207
- # 2. Upload only files listed in manifest
208
- # 3. Request task implementation
209
- \`\`\`
210
-
211
- FEATURES:
212
-
213
- ✅ GPT-5-Codex Model
214
- - Optimized for engineering tasks
215
- - Trained on complex, real-world projects
216
- - Code generation, debugging, refactoring
217
-
218
- ✅ Task-Based Execution
219
- - Each task in isolated environment
220
- - Real-time progress monitoring
221
- - Verifiable evidence (citations, logs)
222
-
223
- ✅ File Operations
224
- - Read and edit files
225
- - Run commands (tests, linters, type checkers)
226
- - Create new files and directories
227
-
228
- ✅ Multiple Access Points
229
- - CLI (fastest)
230
- - Web (most accessible)
231
- - IDE (most integrated)
232
- - GitHub (for PRs)
233
- - iOS app (mobile)
234
-
235
- ✅ Test Execution
236
- - Run test harnesses
237
- - Validate implementations
238
- - Ensure quality
239
-
240
- EXAMPLE WORKFLOWS:
241
-
242
- 1. **Create Feature (CLI)**:
243
- \`\`\`bash
244
- codex "Read AGENTS.md. Create increment 0002 for payment processing with Stripe. Follow SpecWeave structure."
245
- \`\`\`
246
-
247
- 2. **Create Feature (Web)**:
248
- - Upload AGENTS.md
249
- - Say: "Create increment for payment processing"
250
- - Download generated files
251
-
252
- 3. **Implement Task**:
253
- \`\`\`bash
254
- codex "Read increment 0002, implement task T001 (Setup Stripe SDK)"
255
- \`\`\`
256
-
257
- 4. **Fix Bug**:
258
- \`\`\`bash
259
- codex "Read AGENTS.md and increment 0001. Fix authentication bug. Run tests."
260
- \`\`\`
261
-
262
- 5. **Code Review**:
263
- \`\`\`bash
264
- codex "Adopt Tech Lead role from AGENTS.md. Review src/auth/ code."
265
- \`\`\`
266
-
267
- TIPS & TRICKS:
268
-
269
- 1. **Always Reference AGENTS.md**
270
- - CLI: Explicit in command
271
- - Web: Upload at conversation start
272
-
273
- 2. **Use Task-Based Approach**
274
- - Break work into tasks (T001, T002, etc.)
275
- - Each task runs in isolated environment
276
- - Easier to track and validate
277
-
278
- 3. **Monitor Progress**
279
- - CLI shows real-time progress (1-30 minutes per task)
280
- - Web shows thinking process
281
- - Review citations and logs
282
-
283
- 4. **Leverage Multiple Access Points**
284
- - CLI for speed
285
- - Web for accessibility
286
- - IDE for integration
287
-
288
- 5. **Validate with Tests**
289
- - Codex can run tests automatically
290
- - Verify implementations work
291
-
292
- COMPARISON:
293
-
294
- | Feature | Claude Code | Codex |
295
- |---------|-------------|-------|
296
- | **Automation** | Full | Semi |
297
- | **Skills** | Native | Via AGENTS.md |
298
- | **Agents** | Native | Via AGENTS.md |
299
- | **Access** | CLI only | CLI + Web + IDE + GitHub + iOS |
300
- | **Model** | Sonnet 4.5 | GPT-5-Codex |
301
- | **Task Isolation** | No | Yes (isolated environments) |
302
-
303
- LIMITATIONS:
304
-
305
- - No native skills/agents (manual role adoption via AGENTS.md)
306
- - No hooks (can't auto-update docs on events)
307
- - Tasks run 1-30 minutes (not instant)
308
- - Requires ChatGPT Plus/Pro/Business/Enterprise
309
-
310
- But very powerful with GPT-5-Codex and multiple access points!
311
-
312
- PLANS & PRICING:
313
-
314
- - **ChatGPT Plus**: $20/month (includes Codex CLI + Web)
315
- - **ChatGPT Pro**: $200/month (unlimited, faster)
316
- - **Business/Enterprise**: Custom pricing
317
-
318
- Free trial may be available - check OpenAI website.
319
-
320
- DOCUMENTATION:
321
-
322
- - AGENTS.md: Universal SpecWeave instructions (READ THIS!)
323
- - SPECWEAVE.md: Complete framework documentation
324
- - .codex/README.md: Codex adapter guide
325
- - https://openai.com/codex/
326
-
327
- You're ready to build with SpecWeave on OpenAI Codex!
328
-
329
- Pro tip: Use CLI for speed, Web for accessibility, and always
330
- reference AGENTS.md for SpecWeave structure!
331
- `;
332
- }
333
- }
@@ -1,62 +0,0 @@
1
- # @docs - Architecture Documentation Context
2
-
3
- This file is loaded when you type `@docs` in Cursor.
4
-
5
- ## What This Provides
6
-
7
- Quick access to architecture documentation:
8
- - System design (HLD)
9
- - ADRs (Architecture Decision Records)
10
- - Component diagrams (C4 Model)
11
- - Data models (ER diagrams)
12
-
13
- ## Usage
14
-
15
- ```
16
- @docs show me the system architecture
17
- @docs what ADRs exist for authentication?
18
- @docs explain the data model
19
- ```
20
-
21
- ## Files Loaded
22
-
23
- When `@docs` is used, Cursor should load:
24
-
25
- ```
26
- .specweave/docs/internal/architecture/
27
- ├── system-design.md # HLD
28
- ├── adr/ # Architecture Decision Records
29
- │ ├── 0001-tech-stack.md
30
- │ ├── 0002-database-choice.md
31
- │ └── ...
32
- ├── diagrams/ # C4 diagrams
33
- │ ├── system-context.mmd # C4 Level 1
34
- │ ├── system-container.mmd # C4 Level 2
35
- │ └── {module}/ # C4 Level 3 (component)
36
- └── data-models/ # ER diagrams
37
- └── schema.sql
38
- ```
39
-
40
- ## Context Precision
41
-
42
- **Don't load everything!**
43
-
44
- If working on specific module (e.g., authentication):
45
- 1. Check context-manifest.yaml
46
- 2. Load ONLY auth-related docs:
47
- ```
48
- .specweave/docs/internal/architecture/auth/
49
- ├── design.md
50
- ├── adr/0005-auth-method.md
51
- └── diagrams/auth-flow.mmd
52
- ```
53
-
54
- ## Example Workflow
55
-
56
- User: `@docs show authentication architecture`
57
-
58
- You:
59
- 1. Load .specweave/docs/internal/architecture/auth/
60
- 2. Load ADRs related to auth (ADR-0005, ADR-0012)
61
- 3. Load auth diagrams
62
- 4. Summarize: "Authentication uses OAuth2 (ADR-0005), JWT tokens stored in httpOnly cookies (ADR-0012). See auth-flow.mmd for sequence diagram."
@@ -1,71 +0,0 @@
1
- # @increments - Current Increment Context
2
-
3
- This file is loaded when you type `@increments` in Cursor.
4
-
5
- ## What This Provides
6
-
7
- Quick access to the current increment's:
8
- - spec.md (WHAT and WHY)
9
- - plan.md (HOW)
10
- - tasks.md (implementation steps)
11
- - context-manifest.yaml (what context to load)
12
-
13
- ## Usage
14
-
15
- ```
16
- @increments show me what we're working on
17
- @increments what's the current task?
18
- @increments load the spec for this feature
19
- ```
20
-
21
- ## Files Loaded
22
-
23
- When `@increments` is used, Cursor should load:
24
-
25
- 1. **Current increment folder** (most recent in-progress):
26
- ```
27
- .specweave/increments/####-feature-name/
28
- ├── spec.md
29
- ├── plan.md
30
- ├── tasks.md
31
- └── context-manifest.yaml
32
- ```
33
-
34
- 2. **How to find current increment**:
35
- ```bash
36
- # List all increments
37
- ls -la .specweave/increments/
38
-
39
- # Find in-progress increments
40
- grep -r "status: in-progress" .specweave/increments/*/spec.md
41
- ```
42
-
43
- 3. **Load order**:
44
- - context-manifest.yaml (to know what else to load)
45
- - spec.md (business requirements)
46
- - plan.md (technical design)
47
- - tasks.md (current task status)
48
-
49
- ## Context Manifest Critical
50
-
51
- **ALWAYS read context-manifest.yaml first!**
52
-
53
- It tells you which additional files to load:
54
- ```yaml
55
- spec_sections:
56
- - .specweave/docs/internal/strategy/auth/spec.md
57
- documentation:
58
- - .specweave/docs/internal/architecture/auth-design.md
59
- ```
60
-
61
- Then load ONLY those files (70%+ token savings).
62
-
63
- ## Example Workflow
64
-
65
- User: `@increments what's the current feature?`
66
-
67
- You:
68
- 1. Find most recent in-progress increment
69
- 2. Read spec.md → See it's user authentication
70
- 3. Read tasks.md → See we're on T003 (OAuth2 implementation)
71
- 4. Respond: "Working on user authentication (increment 0002). Currently on task T003: Implement OAuth2 flow."
@@ -1,73 +0,0 @@
1
- # @strategy - Business Strategy Context
2
-
3
- This file is loaded when you type `@strategy` in Cursor.
4
-
5
- ## What This Provides
6
-
7
- Quick access to business strategy documentation:
8
- - Product vision and goals
9
- - Business requirements (technology-agnostic)
10
- - User stories and acceptance criteria
11
- - PRDs (Product Requirements Documents)
12
-
13
- ## Usage
14
-
15
- ```
16
- @strategy what's the product vision?
17
- @strategy show me authentication requirements
18
- @strategy what are the success criteria?
19
- ```
20
-
21
- ## Files Loaded
22
-
23
- When `@strategy` is used, Cursor should load:
24
-
25
- ```
26
- .specweave/docs/internal/strategy/
27
- ├── {module}/ # Module-specific strategy
28
- │ ├── overview.md # Product vision
29
- │ ├── requirements.md # FR/NFR (tech-agnostic)
30
- │ ├── user-stories.md # All user stories
31
- │ └── success-criteria.md # KPIs, metrics
32
- ```
33
-
34
- ## Context Precision
35
-
36
- **Don't load everything!**
37
-
38
- If working on authentication module:
39
- 1. Load ONLY auth strategy:
40
- ```
41
- .specweave/docs/internal/strategy/auth/
42
- ├── overview.md
43
- ├── requirements.md
44
- ├── user-stories.md
45
- └── success-criteria.md
46
- ```
47
-
48
- ## Technology-Agnostic Requirements
49
-
50
- **Critical**: Strategy docs are technology-agnostic (WHAT/WHY, not HOW).
51
-
52
- **Good (technology-agnostic)**:
53
- ```markdown
54
- ## FR-001: User Authentication
55
- Users must be able to securely authenticate with their email and password.
56
- ```
57
-
58
- **Bad (too technical)**:
59
- ```markdown
60
- ## FR-001: User Authentication
61
- Users authenticate via JWT tokens stored in httpOnly cookies with bcrypt password hashing.
62
- ```
63
-
64
- The technical details go in architecture docs (@docs), not strategy.
65
-
66
- ## Example Workflow
67
-
68
- User: `@strategy what are the authentication requirements?`
69
-
70
- You:
71
- 1. Load .specweave/docs/internal/strategy/auth/requirements.md
72
- 2. Read functional and non-functional requirements
73
- 3. Summarize: "FR-001: Email/password auth. FR-002: Social login (Google, GitHub). NFR-001: < 2s login response time. NFR-002: 99.9% uptime."
@@ -1,89 +0,0 @@
1
- # @tests - Test Strategy Context
2
-
3
- This file is loaded when you type `@tests` in Cursor.
4
-
5
- ## What This Provides
6
-
7
- Quick access to test documentation:
8
- - Test strategy (E2E, unit, integration)
9
- - Test coverage matrix (TC-0001 → test files)
10
- - Test cases (YAML format for skills)
11
- - Acceptance criteria validation
12
-
13
- ## Usage
14
-
15
- ```
16
- @tests show me test strategy
17
- @tests what tests exist for authentication?
18
- @tests map TC-0001 to test file
19
- ```
20
-
21
- ## Files Loaded
22
-
23
- When `@tests` is used, Cursor should load:
24
-
25
- ```
26
- .specweave/increments/####-feature/tests.md # Test strategy
27
- tests/ # Actual test code
28
- ├── e2e/ # Playwright E2E tests
29
- │ └── auth.spec.ts
30
- ├── unit/ # Unit tests
31
- │ └── auth-utils.test.ts
32
- └── integration/ # Integration tests
33
- └── auth-api.test.ts
34
- ```
35
-
36
- ## Test Coverage Matrix
37
-
38
- **tests.md contains mapping: TC-0001 → test file**
39
-
40
- Example:
41
- ```markdown
42
- | TC ID | Acceptance Criteria | Test Type | Location | Priority |
43
- |---------|-------------------------|-----------|------------------------|----------|
44
- | TC-0001 | Valid login redirects | E2E | tests/e2e/auth.spec.ts | P1 |
45
- | TC-0002 | Invalid password errors | E2E | tests/e2e/auth.spec.ts | P1 |
46
- ```
47
-
48
- ## Four Levels of Test Cases
49
-
50
- ### Level 1: Specification (TC-0001 in spec.md)
51
- ```markdown
52
- - [ ] **TC-0001**: Valid credentials → redirect to dashboard
53
- ```
54
-
55
- ### Level 2: Feature Test Strategy (tests.md)
56
- Mapping TC-0001 to test implementation
57
-
58
- ### Level 3: Skill Test Cases (for SpecWeave skills)
59
- YAML format in src/skills/{name}/test-cases/
60
-
61
- ### Level 4: Code Tests (Playwright, Jest, etc.)
62
- ```typescript
63
- test('TC-0001: Valid Login Flow', async ({ page }) => {
64
- // Implementation
65
- });
66
- ```
67
-
68
- ## Context Precision
69
-
70
- **Load test strategy for current increment only**
71
-
72
- If working on auth increment:
73
- ```
74
- .specweave/increments/0002-user-auth/tests.md
75
- tests/e2e/auth.spec.ts
76
- tests/unit/auth-utils.test.ts
77
- ```
78
-
79
- Don't load ALL tests from ALL increments.
80
-
81
- ## Example Workflow
82
-
83
- User: `@tests what's the test coverage for authentication?`
84
-
85
- You:
86
- 1. Load .specweave/increments/0002-user-auth/tests.md
87
- 2. Read test coverage matrix
88
- 3. Load referenced test files (auth.spec.ts)
89
- 4. Summarize: "TC-0001 to TC-0008 covered. 8/8 E2E tests in auth.spec.ts. All P1 tests passing."