@williambeto/ai-workflow 1.19.1 → 2.2.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 (397) hide show
  1. package/CHANGELOG.md +56 -838
  2. package/PUBLISH_MANIFEST.json +34 -0
  3. package/README.md +78 -148
  4. package/{packages/ai-workflow/bin → bin}/ai-workflow.js +0 -0
  5. package/dist-assets/AGENTS.md +27 -0
  6. package/dist-assets/agents/astra.md +63 -0
  7. package/dist-assets/agents/atlas.md +169 -0
  8. package/dist-assets/agents/nexus.md +42 -0
  9. package/dist-assets/agents/orion.md +44 -0
  10. package/dist-assets/agents/phoenix.md +42 -0
  11. package/dist-assets/agents/sage.md +54 -0
  12. package/dist-assets/commands/README.md +14 -0
  13. package/dist-assets/commands/atlas.md +12 -0
  14. package/dist-assets/commands/audit.md +10 -0
  15. package/dist-assets/commands/deploy.md +12 -0
  16. package/dist-assets/commands/discover.md +10 -0
  17. package/dist-assets/commands/implement.md +28 -0
  18. package/dist-assets/commands/optimize-tokens.md +10 -0
  19. package/dist-assets/commands/plan.md +10 -0
  20. package/dist-assets/commands/release.md +12 -0
  21. package/dist-assets/commands/run.md +26 -0
  22. package/dist-assets/commands/spec-create.md +10 -0
  23. package/dist-assets/commands/spec-implement.md +10 -0
  24. package/dist-assets/commands/spec-review.md +10 -0
  25. package/dist-assets/commands/update-memory.md +10 -0
  26. package/dist-assets/commands/validate.md +12 -0
  27. package/dist-assets/docs/INDEX.md +21 -0
  28. package/dist-assets/docs/QUICKSTART.md +23 -0
  29. package/dist-assets/docs/adr/ADR-0000.md +19 -0
  30. package/dist-assets/docs/adr/ADR-0001.md +45 -0
  31. package/dist-assets/docs/adr/ADR-0002.md +62 -0
  32. package/dist-assets/docs/adr/ADR-0003.md +60 -0
  33. package/dist-assets/docs/adr/ADR-0004.md +71 -0
  34. package/dist-assets/docs/adr/ADR-0005.md +22 -0
  35. package/dist-assets/docs/adr/ADR-0006.md +82 -0
  36. package/dist-assets/docs/adr/ADR-0007.md +78 -0
  37. package/dist-assets/docs/api-engine-reference.md +7 -0
  38. package/{docs → dist-assets/docs}/architecture-policy.md +1 -1
  39. package/dist-assets/docs/cli-reference.md +27 -0
  40. package/dist-assets/docs/compatibility/provider-usage.md +38 -0
  41. package/dist-assets/docs/compatibility/runtime-matrix.md +30 -0
  42. package/dist-assets/docs/consumer-onboarding.md +17 -0
  43. package/dist-assets/docs/contributing-guide.md +11 -0
  44. package/{docs → dist-assets/docs}/design-patterns-policy.md +2 -2
  45. package/dist-assets/docs/full-documentation.md +113 -0
  46. package/{docs → dist-assets/docs}/npm-consumer-quickstart.md +18 -46
  47. package/dist-assets/docs/opencode-readme.md +8 -0
  48. package/dist-assets/docs/policies/01-BRANCH_GATE.md +63 -0
  49. package/dist-assets/docs/policies/02-SDD_METHODOLOGY.md +95 -0
  50. package/dist-assets/docs/policies/03-QUALITY_GATE.md +22 -0
  51. package/dist-assets/docs/policies/05-AGENT_CONTRACT.md +7 -0
  52. package/dist-assets/docs/policies/06-FINAL_EVIDENCE_CONTRACT.md +31 -0
  53. package/dist-assets/docs/policies/07-RELEASE_GATE.md +47 -0
  54. package/dist-assets/docs/policies/08-PRODUCT_TRUTHFULNESS_AND_PROJECT_DOCS.md +18 -0
  55. package/dist-assets/docs/policies/09-SPEC_VISIBILITY_AND_PUBLICATION.md +28 -0
  56. package/dist-assets/docs/policies/10-BEHAVIORAL_CONTRACT_HARDENING.md +9 -0
  57. package/dist-assets/docs/policies/11-EXECUTABLE_DELEGATION_AND_TRUTHFULNESS.md +7 -0
  58. package/dist-assets/docs/policies/ORCHESTRATION_PROTOCOL.md +15 -0
  59. package/dist-assets/docs/policies/PROCEDURE_DELIVERY_ARTIFACTS.md +21 -0
  60. package/dist-assets/docs/policies/PROCEDURE_DOCUMENTATION_CHECKLIST.md +24 -0
  61. package/dist-assets/docs/policies/PROCEDURE_UI_CHECKLIST.md +54 -0
  62. package/dist-assets/docs/profiles/README.md +19 -0
  63. package/dist-assets/docs/profiles/backend-api.md +5 -0
  64. package/dist-assets/docs/profiles/documentation.md +3 -0
  65. package/dist-assets/docs/profiles/frontend-product.md +19 -0
  66. package/dist-assets/docs/profiles/frontend-utility.md +19 -0
  67. package/dist-assets/docs/profiles/refactor.md +3 -0
  68. package/dist-assets/docs/profiles/security-review.md +3 -0
  69. package/dist-assets/docs/references/frontend-quality/landing-page-quality-checklist.md +11 -0
  70. package/dist-assets/docs/references/frontend-quality/product-copy-truthfulness.md +7 -0
  71. package/dist-assets/docs/references/frontend-quality/quality-failure-examples.md +20 -0
  72. package/dist-assets/docs/references/frontend-quality/visual-composition-patterns.md +10 -0
  73. package/dist-assets/docs/specs/runtime-operational-contract.md +39 -0
  74. package/dist-assets/docs/troubleshooting-guide.md +21 -0
  75. package/dist-assets/docs/visual-validation-guide.md +76 -0
  76. package/dist-assets/examples/README.md +10 -0
  77. package/dist-assets/examples/autopilot-cycle/00-CONTEXT.md +3 -0
  78. package/dist-assets/examples/autopilot-cycle/01-requirement.md +16 -0
  79. package/dist-assets/examples/autopilot-cycle/02-gate-a-check.md +23 -0
  80. package/dist-assets/examples/autopilot-cycle/03-orion-planning.md +20 -0
  81. package/dist-assets/examples/autopilot-cycle/04-astra-implementation.md +17 -0
  82. package/dist-assets/examples/autopilot-cycle/05-sage-validation.md +15 -0
  83. package/dist-assets/examples/autopilot-cycle/06-phoenix-healing.md +12 -0
  84. package/dist-assets/examples/autopilot-cycle/07-orchestration-report.md +18 -0
  85. package/dist-assets/examples/backend-api/00-CONTEXT.md +12 -0
  86. package/dist-assets/examples/backend-api/01-requirement.md +19 -0
  87. package/dist-assets/examples/backend-api/02-functional-spec.md +20 -0
  88. package/dist-assets/examples/backend-api/03-technical-plan.md +15 -0
  89. package/dist-assets/examples/backend-api/04-pr-breakdown.md +10 -0
  90. package/dist-assets/examples/backend-api/05-execution-handoff.md +13 -0
  91. package/dist-assets/examples/backend-api/06-validation-report.md +11 -0
  92. package/dist-assets/examples/backend-api/07-orchestration-report.md +7 -0
  93. package/dist-assets/examples/blocked-scenarios/00-CONTEXT.md +9 -0
  94. package/dist-assets/examples/blocked-scenarios/01-branch-gate-block.md +12 -0
  95. package/dist-assets/examples/blocked-scenarios/02-quality-gate-block.md +13 -0
  96. package/dist-assets/examples/blocked-scenarios/03-scope-creep-block.md +13 -0
  97. package/dist-assets/examples/blocked-scenarios/04-unblock-resolution.md +9 -0
  98. package/dist-assets/examples/blocked-scenarios/05-orchestration-decision-log.md +11 -0
  99. package/dist-assets/examples/bugfix-critical/00-CONTEXT.md +12 -0
  100. package/dist-assets/examples/bugfix-critical/01-bug-report.md +11 -0
  101. package/dist-assets/examples/bugfix-critical/02-diagnosis-hypothesis.md +11 -0
  102. package/dist-assets/examples/bugfix-critical/03-technical-plan.md +12 -0
  103. package/dist-assets/examples/bugfix-critical/04-implementation-handoff.md +8 -0
  104. package/dist-assets/examples/bugfix-critical/05-validation-report.md +10 -0
  105. package/dist-assets/examples/bugfix-critical/06-orchestration-report.md +7 -0
  106. package/dist-assets/examples/cli-package/00-CONTEXT.md +9 -0
  107. package/dist-assets/examples/cli-package/01-requirement.md +14 -0
  108. package/dist-assets/examples/cli-package/02-technical-spec.md +16 -0
  109. package/dist-assets/examples/cli-package/03-technical-plan.md +12 -0
  110. package/dist-assets/examples/cli-package/04-pr-breakdown.md +9 -0
  111. package/dist-assets/examples/cli-package/05-release-report.md +15 -0
  112. package/dist-assets/examples/docs-only-repo/01-requirement.md +31 -0
  113. package/dist-assets/examples/docs-only-repo/02-functional-spec.md +25 -0
  114. package/dist-assets/examples/docs-only-repo/03-technical-plan.md +21 -0
  115. package/dist-assets/examples/docs-only-repo/04-pr-breakdown.md +13 -0
  116. package/dist-assets/examples/docs-only-repo/05-execution-handoff.md +17 -0
  117. package/dist-assets/examples/docs-only-repo/06-validation-report.md +16 -0
  118. package/dist-assets/examples/docs-only-repo/README.md +26 -0
  119. package/dist-assets/examples/full-stack-checkout/00-CONTEXT.md +9 -0
  120. package/dist-assets/examples/full-stack-checkout/01-requirement.md +12 -0
  121. package/dist-assets/examples/full-stack-checkout/02-functional-spec.md +15 -0
  122. package/dist-assets/examples/full-stack-checkout/03-technical-plan.md +15 -0
  123. package/dist-assets/examples/full-stack-checkout/04-pr-breakdown.md +8 -0
  124. package/dist-assets/examples/full-stack-checkout/05-execution-handoff.md +14 -0
  125. package/dist-assets/examples/full-stack-checkout/06-validation-report.md +12 -0
  126. package/dist-assets/examples/healing-cycle/00-CONTEXT.md +15 -0
  127. package/dist-assets/examples/healing-cycle/01-broken-implementation.md +10 -0
  128. package/dist-assets/examples/healing-cycle/02-sage-fails.md +14 -0
  129. package/dist-assets/examples/healing-cycle/03-phoenix-diagnosis.md +17 -0
  130. package/dist-assets/examples/healing-cycle/04-phoenix-fix.md +18 -0
  131. package/dist-assets/examples/healing-cycle/05-sage-revalidation.md +12 -0
  132. package/dist-assets/examples/healing-cycle/06-orchestration-log.md +14 -0
  133. package/dist-assets/examples/infra-deploy/00-CONTEXT.md +9 -0
  134. package/dist-assets/examples/infra-deploy/01-operational-goal.md +12 -0
  135. package/dist-assets/examples/infra-deploy/02-architecture-specs.md +15 -0
  136. package/dist-assets/examples/infra-deploy/03-implementation-plan.md +14 -0
  137. package/dist-assets/examples/infra-deploy/04-step-breakdown.md +9 -0
  138. package/dist-assets/examples/infra-deploy/05-execution-handoff.md +13 -0
  139. package/dist-assets/examples/infra-deploy/06-operational-report.md +11 -0
  140. package/dist-assets/examples/multi-pr-release/00-CONTEXT.md +9 -0
  141. package/dist-assets/examples/multi-pr-release/01-requirement.md +13 -0
  142. package/dist-assets/examples/multi-pr-release/02-strategic-plan.md +13 -0
  143. package/dist-assets/examples/multi-pr-release/03-pr-breakdown.md +14 -0
  144. package/dist-assets/examples/multi-pr-release/04-release-plan.md +12 -0
  145. package/dist-assets/examples/multi-pr-release/05-orchestration-report.md +7 -0
  146. package/dist-assets/examples/nuxt-dashboard/01-requirement.md +81 -0
  147. package/dist-assets/examples/nuxt-dashboard/02-functional-spec.md +88 -0
  148. package/dist-assets/examples/nuxt-dashboard/03-technical-plan.md +76 -0
  149. package/dist-assets/examples/nuxt-dashboard/04-pr-breakdown.md +219 -0
  150. package/dist-assets/examples/nuxt-dashboard/05-execution-handoff.md +88 -0
  151. package/dist-assets/examples/nuxt-dashboard/06-validation-report.md +56 -0
  152. package/dist-assets/examples/nuxt-dashboard/07-orchestration-report.md +79 -0
  153. package/dist-assets/examples/nuxt-dashboard/README.md +52 -0
  154. package/dist-assets/examples/react-dashboard/01-requirement.md +84 -0
  155. package/dist-assets/examples/react-dashboard/02-functional-spec.md +88 -0
  156. package/dist-assets/examples/react-dashboard/03-technical-plan.md +76 -0
  157. package/dist-assets/examples/react-dashboard/04-pr-breakdown.md +218 -0
  158. package/dist-assets/examples/react-dashboard/05-execution-handoff.md +13 -0
  159. package/dist-assets/examples/react-dashboard/06-validation-report.md +12 -0
  160. package/dist-assets/examples/react-dashboard/07-orchestration-report.md +7 -0
  161. package/dist-assets/examples/react-dashboard/README.md +70 -0
  162. package/dist-assets/examples/refactoring-service/00-CONTEXT.md +9 -0
  163. package/dist-assets/examples/refactoring-service/01-debt-report.md +12 -0
  164. package/dist-assets/examples/refactoring-service/02-behavior-spec.md +11 -0
  165. package/dist-assets/examples/refactoring-service/03-technical-plan.md +13 -0
  166. package/dist-assets/examples/refactoring-service/04-pr-breakdown.md +9 -0
  167. package/dist-assets/examples/refactoring-service/05-execution-handoff.md +14 -0
  168. package/dist-assets/examples/refactoring-service/06-stability-report.md +12 -0
  169. package/dist-assets/examples/sdd-cycle/00-CONTEXT.md +12 -0
  170. package/dist-assets/examples/sdd-cycle/01-raw-request.md +13 -0
  171. package/dist-assets/examples/sdd-cycle/02-spec-creation.md +18 -0
  172. package/dist-assets/examples/sdd-cycle/03-spec-review.md +12 -0
  173. package/dist-assets/examples/sdd-cycle/04-technical-plan.md +16 -0
  174. package/dist-assets/examples/sdd-cycle/05-pr-breakdown.md +9 -0
  175. package/dist-assets/examples/sdd-cycle/06-spec-implement.md +13 -0
  176. package/dist-assets/examples/sdd-cycle/07-validation-against-spec.md +13 -0
  177. package/dist-assets/examples/wordpress-theme/01-requirement.md +29 -0
  178. package/dist-assets/examples/wordpress-theme/02-functional-spec.md +22 -0
  179. package/dist-assets/examples/wordpress-theme/03-technical-plan.md +22 -0
  180. package/dist-assets/examples/wordpress-theme/04-pr-breakdown.md +14 -0
  181. package/dist-assets/examples/wordpress-theme/05-execution-handoff.md +17 -0
  182. package/dist-assets/examples/wordpress-theme/06-validation-report.md +16 -0
  183. package/dist-assets/examples/wordpress-theme/README.md +32 -0
  184. package/{harness → dist-assets/harness}/handoffs/HANDOFF.template.md +2 -2
  185. package/{harness → dist-assets/harness}/workflows/agent-evaluation-checklist.md +5 -5
  186. package/{harness → dist-assets/harness}/workflows/implement-review-validate.md +24 -0
  187. package/{harness → dist-assets/harness}/workflows/multi-agent-handoff.md +4 -4
  188. package/{harness → dist-assets/harness}/workflows/planner-executor-workflow.md +5 -5
  189. package/{harness → dist-assets/harness}/workflows/requirement-to-pr.md +1 -1
  190. package/dist-assets/runbooks/agent-delegation-workflow.md +50 -0
  191. package/dist-assets/runbooks/apply-starter-to-real-project.md +45 -0
  192. package/dist-assets/runbooks/commands-cheatsheet.md +44 -0
  193. package/dist-assets/runbooks/how-to-use-skills.md +44 -0
  194. package/dist-assets/runbooks/private-spec-publication-safety.md +35 -0
  195. package/{runbooks → dist-assets/runbooks}/spec-driven-development.md +3 -6
  196. package/dist-assets/runbooks/tutorial-walkthroughs.md +23 -0
  197. package/dist-assets/runbooks/use-linear-for-operational-planning.md +45 -0
  198. package/dist-assets/runbooks/use-napkin-project-memory.md +33 -0
  199. package/dist-assets/skills/architecture/SKILL.md +166 -0
  200. package/dist-assets/skills/backend-development/SKILL.md +166 -0
  201. package/dist-assets/skills/deployment/SKILL.md +166 -0
  202. package/dist-assets/skills/design-principles/SKILL.md +166 -0
  203. package/dist-assets/skills/documentation/SKILL.md +171 -0
  204. package/dist-assets/skills/frontend-development/SKILL.md +225 -0
  205. package/dist-assets/skills/full-stack-development/SKILL.md +166 -0
  206. package/dist-assets/skills/optimize-tokens/SKILL.md +166 -0
  207. package/dist-assets/skills/pr-workflow/SKILL.md +166 -0
  208. package/dist-assets/skills/product-discovery/SKILL.md +166 -0
  209. package/dist-assets/skills/product-planning/SKILL.md +166 -0
  210. package/dist-assets/skills/project-memory/SKILL.md +166 -0
  211. package/dist-assets/skills/prompt-engineer/SKILL.md +166 -0
  212. package/dist-assets/skills/qa-workflow/SKILL.md +186 -0
  213. package/dist-assets/skills/refactoring/SKILL.md +166 -0
  214. package/dist-assets/skills/release-workflow/SKILL.md +166 -0
  215. package/dist-assets/skills/spec-driven-development/SKILL.md +166 -0
  216. package/dist-assets/skills/technical-leadership/SKILL.md +166 -0
  217. package/dist-assets/skills/ui-ux-design/SKILL.md +202 -0
  218. package/dist-assets/templates/.geminiignore.template +8 -0
  219. package/dist-assets/templates/CLAUDE.md.template +20 -0
  220. package/dist-assets/templates/CODEX.md.template +20 -0
  221. package/dist-assets/templates/GEMINI.md.template +20 -0
  222. package/dist-assets/templates/HANDOFF.template.md +45 -0
  223. package/dist-assets/templates/SPEC.template.md +38 -0
  224. package/dist-assets/templates/change-proposal.template.md +14 -0
  225. package/dist-assets/templates/owner-evidence/astra-implementation.json +10 -0
  226. package/dist-assets/templates/owner-evidence/phoenix-remediation.json +8 -0
  227. package/dist-assets/templates/owner-evidence/sage-revalidation.json +8 -0
  228. package/dist-assets/templates/owner-evidence/sage-validation.json +8 -0
  229. package/dist-assets/templates/specs/deep.md +48 -0
  230. package/dist-assets/templates/specs/standard.md +38 -0
  231. package/dist-assets/templates/specs/tiny.md +19 -0
  232. package/package.json +43 -47
  233. package/src/adapters/index.js +3 -0
  234. package/src/adapters/platforms/claude.js +126 -0
  235. package/src/adapters/platforms/codex.js +100 -0
  236. package/src/adapters/platforms/gemini.js +232 -0
  237. package/src/cli.js +114 -0
  238. package/src/commands/collect-evidence.js +61 -0
  239. package/src/commands/doctor.js +186 -0
  240. package/src/commands/execute.js +172 -0
  241. package/{packages/ai-workflow/src → src}/commands/init.js +119 -20
  242. package/src/commands/run.js +112 -0
  243. package/src/core/completion-contract.js +35 -0
  244. package/src/core/execution-planner.js +59 -0
  245. package/src/core/gates/branch-gate.js +146 -0
  246. package/src/core/handoff/handoff-engine.js +104 -0
  247. package/src/core/healing/cli-remediation-executor.js +151 -0
  248. package/src/core/healing/healer-engine.js +179 -0
  249. package/src/core/identity.js +43 -0
  250. package/{packages/ai-workflow/src → src}/core/install-plan.js +3 -3
  251. package/src/core/opencode-merge.js +149 -0
  252. package/{packages/ai-workflow/src → src}/core/package-assets.js +29 -10
  253. package/src/core/request-classifier.js +58 -0
  254. package/src/core/runtime/opencode-adapter.js +94 -0
  255. package/src/core/sdd/validator.js +67 -0
  256. package/src/core/statuses.js +29 -0
  257. package/src/core/symlink-layout.js +93 -0
  258. package/src/core/templates.js +221 -0
  259. package/src/core/validation/canonical-finalization.js +43 -0
  260. package/src/core/validation/evidence-collector.js +109 -0
  261. package/src/core/validation/quality-guard.js +243 -0
  262. package/src/core/workflow-profiles.js +107 -0
  263. package/src/core/workflow-state-machine.js +46 -0
  264. package/.agents/napkin.md +0 -89
  265. package/.agents/skills/backend-implementer/SKILL.md +0 -490
  266. package/.agents/skills/build-and-validate/SKILL.md +0 -442
  267. package/.agents/skills/deploy-engineer/SKILL.md +0 -541
  268. package/.agents/skills/docs-writer/SKILL.md +0 -430
  269. package/.agents/skills/frontend-implementer/SKILL.md +0 -488
  270. package/.agents/skills/interface-design/SKILL.md +0 -428
  271. package/.agents/skills/interface-design/references/critique.md +0 -67
  272. package/.agents/skills/interface-design/references/example.md +0 -86
  273. package/.agents/skills/interface-design/references/principles.md +0 -235
  274. package/.agents/skills/interface-design/references/validation.md +0 -48
  275. package/.agents/skills/minimal-context/SKILL.md +0 -177
  276. package/.agents/skills/napkin/SKILL.md +0 -84
  277. package/.agents/skills/opencode-agent-design/SKILL.md +0 -77
  278. package/.agents/skills/playwright-cli/SKILL.md +0 -62
  279. package/.agents/skills/pr-orchestrator/SKILL.md +0 -366
  280. package/.agents/skills/product-manager/SKILL.md +0 -519
  281. package/.agents/skills/seo-audit/SKILL.md +0 -176
  282. package/.agents/skills/stack-variant-creator/SKILL.md +0 -265
  283. package/.agents/skills/tech-lead/SKILL.md +0 -453
  284. package/.agents/skills/tester/SKILL.md +0 -399
  285. package/.agents/skills/token-economy/SKILL.md +0 -137
  286. package/.agents/skills/vue-nuxt/SKILL.md +0 -102
  287. package/.agents/skills/wordpress-engineer/SKILL.md +0 -75
  288. package/.codex/prompts/README.md +0 -44
  289. package/.codex/prompts/autopilot.md +0 -50
  290. package/.codex/prompts/deploy.md +0 -33
  291. package/.codex/prompts/execute-selected-pr.md +0 -35
  292. package/.codex/prompts/fix-issue.md +0 -34
  293. package/.codex/prompts/minimal-context-mode.md +0 -55
  294. package/.codex/prompts/orchestrate-next.md +0 -33
  295. package/.codex/prompts/plan-from-requirement.md +0 -37
  296. package/.codex/prompts/review-implementation.md +0 -33
  297. package/.codex/prompts/roadmap-audit.md +0 -22
  298. package/.codex/prompts/specs/create-spec-from-requirement.md +0 -26
  299. package/.codex/prompts/specs/review-spec.md +0 -29
  300. package/.codex/prompts/specs/spec-to-pr-breakdown.md +0 -23
  301. package/.codex/prompts/specs/spec-to-technical-plan.md +0 -28
  302. package/.codex/prompts/start-project.md +0 -29
  303. package/.codex/prompts/token-economy-mode.md +0 -48
  304. package/.codex/prompts/validate-work.md +0 -28
  305. package/checklists/change-spec-readiness-checklist.md +0 -34
  306. package/docs/full-documentation.md +0 -661
  307. package/docs/setup-codex-opencode.md +0 -313
  308. package/harness/README.md +0 -106
  309. package/opencode/README.md +0 -84
  310. package/opencode/agents/README.md +0 -113
  311. package/opencode/agents/atlas.md +0 -127
  312. package/opencode/agents/discovery.md +0 -61
  313. package/opencode/agents/fixer.md +0 -51
  314. package/opencode/agents/implementer.md +0 -61
  315. package/opencode/agents/orchestrator.md +0 -145
  316. package/opencode/agents/planner.md +0 -60
  317. package/opencode/agents/prompt-engineer.md +0 -50
  318. package/opencode/agents/release-manager.md +0 -50
  319. package/opencode/agents/reviewer.md +0 -51
  320. package/opencode/agents/spec-engineer.md +0 -85
  321. package/opencode/agents/validator.md +0 -50
  322. package/opencode/agents/wordpress-engineer.md +0 -49
  323. package/opencode/commands/README.md +0 -48
  324. package/opencode/commands/autopilot.md +0 -50
  325. package/opencode/commands/deploy.md +0 -35
  326. package/opencode/commands/execute.md +0 -47
  327. package/opencode/commands/orchestrate.md +0 -37
  328. package/opencode/commands/plan.md +0 -39
  329. package/opencode/commands/review.md +0 -33
  330. package/opencode/commands/roadmap-audit.md +0 -30
  331. package/opencode/commands/ship.md +0 -48
  332. package/opencode/commands/specs/create-spec-from-request.md +0 -27
  333. package/opencode/commands/specs/create-spec-from-requirement.md +0 -25
  334. package/opencode/commands/specs/review-spec.md +0 -26
  335. package/opencode/commands/specs/spec-to-pr-breakdown.md +0 -19
  336. package/opencode/commands/specs/spec-to-tasks.md +0 -26
  337. package/opencode/commands/specs/spec-to-technical-plan.md +0 -27
  338. package/opencode/commands/start.md +0 -45
  339. package/opencode/commands/token-economy.md +0 -29
  340. package/opencode/commands/validate.md +0 -33
  341. package/opencode.jsonc +0 -235
  342. package/packages/ai-workflow/README.md +0 -82
  343. package/packages/ai-workflow/src/cli.js +0 -70
  344. package/packages/ai-workflow/src/commands/codex.js +0 -37
  345. package/packages/ai-workflow/src/commands/doctor.js +0 -168
  346. package/packages/ai-workflow/src/commands/guide.js +0 -194
  347. package/packages/ai-workflow/src/core/opencode-merge.js +0 -172
  348. package/packages/ai-workflow/src/core/symlink-layout.js +0 -54
  349. package/packages/ai-workflow/src/core/templates.js +0 -276
  350. package/runbooks/agent-delegation-workflow.md +0 -111
  351. package/runbooks/apply-starter-to-real-project.md +0 -445
  352. package/runbooks/commands-cheatsheet.md +0 -71
  353. package/runbooks/how-to-use-skills.md +0 -713
  354. package/runbooks/quick-start-guide.md +0 -213
  355. package/runbooks/tutorial-walkthroughs.md +0 -416
  356. package/runbooks/use-linear-for-operational-planning.md +0 -185
  357. package/runbooks/use-napkin-project-memory.md +0 -77
  358. package/templates/AGENTS.template.md +0 -397
  359. package/templates/DESIGN.template.md +0 -484
  360. package/templates/PR-PLAN.template.md +0 -172
  361. package/templates/README.template.md +0 -293
  362. package/templates/REQUIREMENT.template.md +0 -165
  363. package/templates/SPEC.template.md +0 -397
  364. package/templates/TECH-PLAN.template.md +0 -244
  365. package/templates/change-proposal.template.md +0 -97
  366. /package/{checklists/spec-readiness-checklist.md → dist-assets/docs/policies/SPEC_READINESS.md} +0 -0
  367. /package/{prompts → dist-assets/prompts}/00-bootstrap-project.md +0 -0
  368. /package/{prompts → dist-assets/prompts}/01-create-requirement.md +0 -0
  369. /package/{prompts → dist-assets/prompts}/02-create-spec.md +0 -0
  370. /package/{prompts → dist-assets/prompts}/03-create-tech-plan.md +0 -0
  371. /package/{prompts → dist-assets/prompts}/04-breakdown-prs.md +0 -0
  372. /package/{prompts → dist-assets/prompts}/05-implement-pr.md +0 -0
  373. /package/{prompts → dist-assets/prompts}/06-review-and-fix.md +0 -0
  374. /package/{prompts → dist-assets/prompts}/07-apply-design.md +0 -0
  375. /package/{prompts → dist-assets/prompts}/08-validate.md +0 -0
  376. /package/{prompts → dist-assets/prompts}/09-deploy.md +0 -0
  377. /package/{prompts → dist-assets/prompts}/commands/implement.md +0 -0
  378. /package/{prompts → dist-assets/prompts}/commands/requirement.md +0 -0
  379. /package/{prompts → dist-assets/prompts}/commands/spec.md +0 -0
  380. /package/{prompts → dist-assets/prompts}/commands/tech-plan.md +0 -0
  381. /package/{prompts → dist-assets/prompts}/commands/validate.md +0 -0
  382. /package/{runbooks → dist-assets/runbooks}/branch-cleanup.md +0 -0
  383. /package/{runbooks → dist-assets/runbooks}/deploy-checklist.md +0 -0
  384. /package/{runbooks → dist-assets/runbooks}/publication-readiness-checklist.md +0 -0
  385. /package/{runbooks → dist-assets/runbooks}/publish-package-checklist.md +0 -0
  386. /package/{runbooks → dist-assets/runbooks}/team-governance-pr-readiness.md +0 -0
  387. /package/{runbooks → dist-assets/runbooks}/validate-starter-in-real-project.md +0 -0
  388. /package/{runbooks → dist-assets/runbooks}/validation-checklist.md +0 -0
  389. /package/{schemas → dist-assets/schemas}/README.md +0 -0
  390. /package/{schemas → dist-assets/schemas}/functional-spec.schema.json +0 -0
  391. /package/{schemas → dist-assets/schemas}/handoff.schema.json +0 -0
  392. /package/{schemas → dist-assets/schemas}/pr-breakdown.schema.json +0 -0
  393. /package/{schemas → dist-assets/schemas}/requirement.schema.json +0 -0
  394. /package/{schemas → dist-assets/schemas}/technical-plan.schema.json +0 -0
  395. /package/{schemas → dist-assets/schemas}/validation-report.schema.json +0 -0
  396. /package/{packages/ai-workflow/src → src}/core/backup.js +0 -0
  397. /package/{packages/ai-workflow/src → src}/core/filesystem.js +0 -0
@@ -0,0 +1,8 @@
1
+ .ai-workflow/
2
+ .ai-workflow-backups/
3
+ node_modules/
4
+ .git/
5
+ EVIDENCE.json
6
+ *.tgz
7
+ *.zip
8
+ *.tar
@@ -0,0 +1,20 @@
1
+ # Claude Instructions — AI Workflow Kit
2
+
3
+ Use AGENTS.md and the relevant contracts.
4
+
5
+ ```txt
6
+ readonly → Inspect → Report → Recommendation
7
+ quick → Branch recovery/check → Implement → Document if behavior or usage changed → Test/Validate → Evidence
8
+ standard → Mini spec → Mini review → Mini plan → Scoped PR plan → Implement → Document → Test/Validate → Evidence
9
+ full → Spec draft → Spec review → Technical plan → PR breakdown → Implementation → Documentation → Test/Validate → Evidence report
10
+ ```
11
+
12
+ Provide evidence for completed work.
13
+
14
+
15
+ ## Documentation, UI, security, and delivery artifact gates
16
+
17
+ - Explicit requirements, clean code, generated specs, and inline comments do not replace documentation.
18
+ - For user-facing UI, rendered or visual evidence is required when the runtime can inspect it; raw/default browser UI is `FAIL_QUALITY_GATE`.
19
+ - High/Critical security findings must be classified in evidence.
20
+ - Implementation work must create delivery artifacts proportional to mode: quick uses compact evidence, standard uses compact workflow artifacts, and full uses the complete 01..07 set.
@@ -0,0 +1,20 @@
1
+ # Codex Instructions — AI Workflow Kit
2
+
3
+ Use AGENTS.md and the relevant contracts.
4
+
5
+ ```txt
6
+ readonly → Inspect → Report → Recommendation
7
+ quick → Branch recovery/check → Implement → Document if behavior or usage changed → Test/Validate → Evidence
8
+ standard → Mini spec → Mini review → Mini plan → Scoped PR plan → Implement → Document → Test/Validate → Evidence
9
+ full → Spec draft → Spec review → Technical plan → PR breakdown → Implementation → Documentation → Test/Validate → Evidence report
10
+ ```
11
+
12
+ Never publish, tag, release, deploy, merge, push, force-push, or change package version without explicit approval.
13
+
14
+
15
+ ## Documentation, UI, security, and delivery artifact gates
16
+
17
+ - Explicit requirements, clean code, generated specs, and inline comments do not replace documentation.
18
+ - For user-facing UI, rendered or visual evidence is required when the runtime can inspect it; raw/default browser UI is `FAIL_QUALITY_GATE`.
19
+ - High/Critical security findings must be classified in evidence.
20
+ - Implementation work must create delivery artifacts proportional to mode: quick uses compact evidence, standard uses compact workflow artifacts, and full uses the complete 01..07 set.
@@ -0,0 +1,20 @@
1
+ # Gemini Instructions — AI Workflow Kit
2
+
3
+ Use AGENTS.md and the relevant contracts.
4
+
5
+ ```txt
6
+ readonly → Inspect → Report → Recommendation
7
+ quick → Branch recovery/check → Implement → Document if behavior or usage changed → Test/Validate → Evidence
8
+ standard → Mini spec → Mini review → Mini plan → Scoped PR plan → Implement → Document → Test/Validate → Evidence
9
+ full → Spec draft → Spec review → Technical plan → PR breakdown → Implementation → Documentation → Test/Validate → Evidence report
10
+ ```
11
+
12
+ Use professional taxonomy: Primary Agents, Skill-backed Specialist Roles, Skills, Commands.
13
+
14
+
15
+ ## Documentation, UI, security, and delivery artifact gates
16
+
17
+ - Explicit requirements, clean code, generated specs, and inline comments do not replace documentation.
18
+ - For user-facing UI, rendered or visual evidence is required when the runtime can inspect it; raw/default browser UI is `FAIL_QUALITY_GATE`.
19
+ - High/Critical security findings must be classified in evidence.
20
+ - Implementation work must create delivery artifacts proportional to mode: quick uses compact evidence, standard uses compact workflow artifacts, and full uses the complete 01..07 set.
@@ -0,0 +1,45 @@
1
+ # AI Workflow Handoff Packet
2
+
3
+ ## Metadata
4
+
5
+ - **ID:** ${TASK_ID}
6
+ - **Timestamp:** ${TIMESTAMP}
7
+ - **Author:** ${AUTHOR}
8
+ - **Status:** ${STATUS}
9
+
10
+ ---
11
+
12
+ ## Requirements & Specifications
13
+
14
+ ${SPECS_CONTENT}
15
+
16
+ ---
17
+
18
+ ## Implementation Evidence
19
+
20
+ ### EVIDENCE.json Summary
21
+
22
+ ${EVIDENCE_SUMMARY}
23
+
24
+ ### Structured Evidence
25
+
26
+ \`\`\`json
27
+ ${EVIDENCE_JSON}
28
+ \`\`\`
29
+
30
+ ---
31
+
32
+ ## Git Changes (Diff)
33
+
34
+ \`\`\`diff
35
+ ${GIT_DIFF}
36
+ \`\`\`
37
+
38
+ ---
39
+
40
+ ## Required Next Actions
41
+
42
+ ${NEXT_ACTIONS}
43
+
44
+ ---
45
+ Generated by AI Workflow Kit - Automated Handoff Engine
@@ -0,0 +1,38 @@
1
+ # [STANDARD] Specification: ${TITLE}
2
+
3
+ ## Metadata
4
+
5
+ - **ID:** SPEC-${ID}
6
+ - **Author:** Spec-Engineer
7
+ - **Status:** DRAFT | REVIEW | APPROVED
8
+ - **Reviewer:** Atlas | Orion | Sage
9
+ - **Date:** ${DATE}
10
+
11
+ ## Functional Requirements
12
+
13
+ - ${REQ_1}
14
+ - ${REQ_2}
15
+
16
+ ## Technical Implementation Plan
17
+
18
+ ### Files to Create/Modify
19
+
20
+ - `${FILE_1}`
21
+ - `${FILE_2}`
22
+
23
+ ### Logic & Workflow
24
+
25
+ ${IMPLEMENTATION_DETAILS}
26
+
27
+ ## Acceptance Criteria
28
+
29
+ - [ ] ${AC_1}
30
+ - [ ] ${AC_2}
31
+
32
+ ## Testing Strategy
33
+
34
+ - [ ] Unit Tests: ${TEST_PLAN}
35
+ - [ ] Integration Tests: ${INTEGRATION_PLAN}
36
+
37
+ ---
38
+ Generated by AI Workflow Kit - Spec-Driven Development Engine
@@ -0,0 +1,14 @@
1
+ # Change Proposal: [Title]
2
+
3
+ ## 1. Context
4
+ [Briefly describe why this change is needed]
5
+
6
+ ## 2. Proposed Change
7
+ [Describe the technical change]
8
+
9
+ ## 3. Impact & Risks
10
+ [What could break? What is the scope?]
11
+
12
+ ## 4. Acceptance Criteria
13
+ - [ ] [Criterion 1]
14
+ - [ ] EVIDENCE.json generated
@@ -0,0 +1,10 @@
1
+ {
2
+ "taskSlug": "<task-slug>",
3
+ "owner": "Astra",
4
+ "phase": "implementation",
5
+ "status": "PASS",
6
+ "skillsLoaded": ["frontend-development"],
7
+ "referencesLoaded": [],
8
+ "outputPaths": ["src/"],
9
+ "changedFiles": []
10
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "taskSlug": "<task-slug>",
3
+ "owner": "Phoenix",
4
+ "phase": "remediation",
5
+ "status": "PASS",
6
+ "outputPaths": ["<fixed-path>"],
7
+ "resolvedFindings": []
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "taskSlug": "<task-slug>",
3
+ "owner": "Sage",
4
+ "phase": "revalidation",
5
+ "status": "PASS",
6
+ "outputPaths": ["docs/workflows/<task-slug>/delivery-report.md"],
7
+ "findings": []
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "taskSlug": "<task-slug>",
3
+ "owner": "Sage",
4
+ "phase": "validation",
5
+ "status": "PASS",
6
+ "outputPaths": ["docs/workflows/<task-slug>/delivery-report.md"],
7
+ "findings": []
8
+ }
@@ -0,0 +1,48 @@
1
+ # [DEEP] Specification: ${TITLE}
2
+
3
+ ## Metadata
4
+
5
+ - **ID:** SPEC-DEEP-${ID}
6
+ - **Author:** ${AUTHOR}
7
+ - **Status:** DRAFT | REVIEW | APPROVED
8
+ - **Reviewer:** Atlas | Orion
9
+ - **Date:** ${DATE}
10
+
11
+ ## Architectural Intent
12
+
13
+ ${DETAILED_ARCHITECTURAL_DESCRIPTION}
14
+
15
+ ## Strategic Goals
16
+
17
+ - ${GOAL_1}
18
+ - ${GOAL_2}
19
+
20
+ ## System Design & Patterns
21
+
22
+ ### Components Impacted
23
+
24
+ - ${COMPONENT_1}
25
+ - ${COMPONENT_2}
26
+
27
+ ### Data Structures & Flow
28
+
29
+ ${DATA_FLOW_DESCRIPTION}
30
+
31
+ ### Security & Integrity
32
+
33
+ ${SECURITY_CONSIDERATIONS}
34
+
35
+ ## Acceptance Criteria (Audit Gate)
36
+
37
+ - [ ] ${AC_1}
38
+ - [ ] ${AC_2}
39
+ - [ ] ${AC_3}
40
+
41
+ ## Risk Assessment
42
+
43
+ | Risk | Impact | Mitigation |
44
+ | :--- | :--- | :--- |
45
+ | ${RISK} | ${IMPACT} | ${MITIGATION} |
46
+
47
+ ---
48
+ Generated by AI Workflow Kit - Spec-Driven Development Engine
@@ -0,0 +1,38 @@
1
+ # [STANDARD] Specification: ${TITLE}
2
+
3
+ ## Metadata
4
+
5
+ - **ID:** SPEC-${ID}
6
+ - **Author:** Spec-Engineer
7
+ - **Status:** DRAFT | REVIEW | APPROVED
8
+ - **Reviewer:** Atlas | Orion | Sage
9
+ - **Date:** ${DATE}
10
+
11
+ ## Functional Requirements
12
+
13
+ - ${REQ_1}
14
+ - ${REQ_2}
15
+
16
+ ## Technical Implementation Plan
17
+
18
+ ### Files to Create/Modify
19
+
20
+ - `${FILE_1}`
21
+ - `${FILE_2}`
22
+
23
+ ### Logic & Workflow
24
+
25
+ ${IMPLEMENTATION_DETAILS}
26
+
27
+ ## Acceptance Criteria
28
+
29
+ - [ ] ${AC_1}
30
+ - [ ] ${AC_2}
31
+
32
+ ## Testing Strategy
33
+
34
+ - [ ] Unit Tests: ${TEST_PLAN}
35
+ - [ ] Integration Tests: ${INTEGRATION_PLAN}
36
+
37
+ ---
38
+ Generated by AI Workflow Kit - Spec-Driven Development Engine
@@ -0,0 +1,19 @@
1
+ # [TINY] Spec: ${TITLE}
2
+
3
+ ## Metadata
4
+
5
+ - **ID:** SPEC-TINY-${ID}
6
+ - **Status:** DRAFT | APPROVED
7
+ - **Reviewer:** Sage | Kai
8
+ - **Date:** ${DATE}
9
+
10
+ ## Task Description
11
+
12
+ ${BRIEF_DESCRIPTION}
13
+
14
+ ## Acceptance Criteria
15
+
16
+ - [ ] ${AC_1}
17
+
18
+ ---
19
+ Generated by AI Workflow Kit - Spec-Driven Development Engine
package/package.json CHANGED
@@ -1,12 +1,16 @@
1
1
  {
2
- "version": "1.19.1",
3
2
  "name": "@williambeto/ai-workflow",
4
- "description": "AI Workflow Kit repository for designing and validating AI-assisted software delivery workflows with Codex and OpenCode",
3
+ "version": "2.2.0",
4
+ "description": "AI Workflow Kit — OpenCode-first software delivery workflow with agents, commands, skills, validation, and evidence",
5
5
  "license": "MIT",
6
+ "author": "José Willams",
7
+ "type": "module",
6
8
  "private": false,
9
+ "engines": {
10
+ "node": ">=20.11"
11
+ },
7
12
  "keywords": [
8
13
  "ai-workflow",
9
- "codex",
10
14
  "opencode",
11
15
  "prompts",
12
16
  "agent-workflows",
@@ -16,58 +20,49 @@
16
20
  "type": "git",
17
21
  "url": "git+https://github.com/williambeto/ai-workflow.git"
18
22
  },
19
- "files": [
20
- "README.md",
21
- "LICENSE",
22
- "CHANGELOG.md",
23
- "packages/ai-workflow/bin/",
24
- "packages/ai-workflow/src/",
25
- ".codex/prompts/",
26
- ".agents/skills/",
27
- ".agents/napkin.md",
28
- "opencode/agents/",
29
- "opencode/commands/",
30
- "opencode/README.md",
31
- "opencode.jsonc",
32
- "prompts/",
33
- "templates/",
34
- "checklists/",
35
- "runbooks/",
36
- "schemas/",
37
- "harness/",
38
- "docs/architecture-policy.md",
39
- "docs/design-patterns-policy.md",
40
- "docs/full-documentation.md",
41
- "docs/setup-codex-opencode.md",
42
- "docs/npm-consumer-quickstart.md"
43
- ],
44
23
  "homepage": "https://github.com/williambeto/ai-workflow#readme",
45
24
  "bugs": {
46
25
  "url": "https://github.com/williambeto/ai-workflow/issues"
47
26
  },
48
27
  "bin": {
49
- "ai-workflow": "packages/ai-workflow/bin/ai-workflow.js"
28
+ "ai-workflow": "bin/ai-workflow.js"
50
29
  },
30
+ "files": [
31
+ "bin",
32
+ "src",
33
+ "dist-assets",
34
+ "PUBLISH_MANIFEST.json",
35
+ "README.md",
36
+ "LICENSE",
37
+ "CHANGELOG.md"
38
+ ],
51
39
  "scripts": {
52
- "setup:dev": "node scripts/setup-dev.mjs",
53
- "metrics:feedback": "node scripts/collect-feedback-metrics.mjs",
40
+ "build": "node internal/validate/build-publish.mjs",
41
+ "validate": "node internal/validate/validate-all.mjs",
42
+ "validate:json": "node internal/validate/validate-json.mjs",
43
+ "validate:structure": "node internal/validate/validate-structure.mjs",
44
+ "validate:refs": "node internal/validate/validate-refs.mjs",
45
+ "validate:artifact-safety": "node internal/validate/validate-artifact-safety.mjs",
46
+ "validate:links": "node internal/validate/validate-links.mjs",
47
+ "validate:docs-consistency": "node internal/validate/validate-doc-consistency.mjs",
48
+ "validate:workflow": "node internal/validate/validate-workflow.mjs",
49
+ "validate:schemas": "node internal/validate/validate-schemas.mjs",
50
+ "validate:skills": "node internal/validate/validate-skills.mjs",
51
+ "validate:policy-refs": "node internal/validate/validate-policy-refs.mjs",
52
+ "validate:privacy-gate": "node internal/validate/validate-privacy-gate.mjs",
53
+ "validate:ui-evidence": "node internal/validate/validate-ui-evidence-gate.mjs",
54
+ "validate:delegation": "node internal/validate/validate-delegation.mjs",
55
+ "validate:cli-smoke": "node internal/validate/validate-cli-smoke.mjs",
56
+ "validate:cli-docs": "node internal/validate/validate-cli-docs.mjs",
54
57
  "lint:md": "markdownlint \"**/*.md\"",
55
- "submodule:init": "node scripts/init.mjs",
56
- "validate:md": "npm run lint:md",
57
- "validate:json": "node scripts/validate-json.mjs",
58
- "validate:structure": "node scripts/validate-structure.mjs",
59
- "validate:refs": "node scripts/validate-refs.mjs",
60
- "validate:artifact-safety": "node scripts/validate-artifact-safety.mjs",
61
- "validate:links": "node scripts/validate-links.mjs",
62
- "validate:docs-consistency": "node scripts/validate-doc-consistency.mjs",
63
- "validate:workflow": "node scripts/validate-workflow.mjs",
64
- "validate:schemas": "node scripts/validate-schemas.mjs",
65
- "validate:skills": "node scripts/validate-skills.mjs",
66
- "validate:delegation": "node scripts/validate-delegation.mjs",
67
- "validate:cli-smoke": "node scripts/validate-cli-smoke.mjs",
58
+ "validate:registry": "node internal/validate/validate-registry-integrity.mjs",
59
+ "test": "npm run test:unit",
60
+ "test:unit": "vitest run",
61
+ "test:watch": "vitest",
68
62
  "test:e2e": "node tests/validate-e2e.mjs",
69
- "validate": "node scripts/validate-all.mjs",
70
- "release:ship": "node scripts/release-ship.mjs"
63
+ "pack:safe": "node internal/validate/pack-safe.mjs",
64
+ "validate:behavioral-contracts": "node internal/validate/validate-behavioral-contracts.mjs",
65
+ "validate:release-readiness": "node internal/validate/validate-release-readiness.mjs"
71
66
  },
72
67
  "devDependencies": {
73
68
  "@semantic-release/changelog": "^6.0.3",
@@ -77,6 +72,7 @@
77
72
  "ajv": "^8.20.0",
78
73
  "ajv-formats": "^3.0.1",
79
74
  "markdownlint-cli": "^0.48.0",
80
- "semantic-release": "^25.0.3"
75
+ "semantic-release": "^25.0.3",
76
+ "vitest": "^4.1.7"
81
77
  }
82
78
  }
@@ -0,0 +1,3 @@
1
+ export { GeminiAdapter } from "./platforms/gemini.js";
2
+ export { ClaudeAdapter } from "./platforms/claude.js";
3
+ export { CodexAdapter } from "./platforms/codex.js";
@@ -0,0 +1,126 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { COMPLETION_STATUS_TEXT } from "../../core/statuses.js";
4
+
5
+ /**
6
+ * Claude Adapter - Transforms OpenCode agents and skills into CLAUDE.md and .claude/rules/.
7
+ */
8
+ export class ClaudeAdapter {
9
+ constructor({ cwd }) {
10
+ this.cwd = cwd;
11
+ }
12
+
13
+ /**
14
+ * Transforms an OpenCode agent or skill into a Claude rule with completion contract.
15
+ */
16
+ async transformToRule(filePath, type = "agent") {
17
+ const content = await fs.readFile(filePath, "utf8");
18
+ const fileName = path.basename(filePath, ".md") === "SKILL"
19
+ ? path.basename(path.dirname(filePath))
20
+ : path.basename(filePath, ".md");
21
+
22
+ const ruleName = `${type}-${fileName.toLowerCase()}`;
23
+
24
+ const hardenedContent = `---
25
+ name: ${ruleName}
26
+ description: ${type === "agent" ? "Persona" : "Skill"} rule for ${fileName}
27
+ ---
28
+ # ${fileName} ${type === "agent" ? "Persona" : "Skill"}
29
+
30
+ ${content}
31
+
32
+ ## Completion Contract (Mandatory)
33
+ Every task completion MUST provide the following payload:
34
+ 1. **Status**: ${COMPLETION_STATUS_TEXT}
35
+ 2. **Scope reviewed**: Brief summary of what was analyzed.
36
+ 3. **Findings**: Evidence-based discoveries.
37
+ 4. **Files affected**: List of all concrete paths modified or created.
38
+ 5. **Validation/evidence**: Commands run and their results.
39
+ 6. **Risks/notes**: Any caveats or technical debt introduced.
40
+ 7. **Required manager action**: Clear next step for the orchestrator.
41
+ 8. **Can manager continue**: [yes/no]
42
+ `;
43
+
44
+ return {
45
+ content: hardenedContent,
46
+ name: ruleName
47
+ };
48
+ }
49
+
50
+ /**
51
+ * Deploys agents, skills, and root CLAUDE.md.
52
+ */
53
+ async deploy(installRoot = ".ai-workflow") {
54
+ const rulesDir = path.join(this.cwd, ".claude/rules");
55
+ await fs.mkdir(rulesDir, { recursive: true });
56
+
57
+ const sourceAgentsDir = path.join(this.cwd, installRoot, "opencode/agents");
58
+ const sourceSkillsDir = path.join(this.cwd, installRoot, "opencode/skills");
59
+ const sourceCommandsDir = path.join(this.cwd, installRoot, "opencode/commands");
60
+
61
+ // 1. Deploy Agents to .claude/rules/agent-*.md
62
+ const agentFiles = await fs.readdir(sourceAgentsDir).catch(() => []);
63
+ for (const file of agentFiles) {
64
+ if (!file.endsWith(".md")) continue;
65
+ const transformed = await this.transformToRule(path.join(sourceAgentsDir, file), "agent");
66
+ await fs.writeFile(path.join(rulesDir, `${transformed.name}.md`), transformed.content);
67
+ }
68
+
69
+ // 2. Deploy Skills to .claude/rules/skill-*.md
70
+ const skillFolders = await fs.readdir(sourceSkillsDir).catch(() => []);
71
+ for (const folder of skillFolders) {
72
+ const skillSource = path.join(sourceSkillsDir, folder, "SKILL.md");
73
+ if (await this.exists(skillSource)) {
74
+ const transformed = await this.transformToRule(skillSource, "skill");
75
+ await fs.writeFile(path.join(rulesDir, `${transformed.name}.md`), transformed.content);
76
+ }
77
+ }
78
+
79
+ // 3. Create root CLAUDE.md
80
+ await this.deployRootClaudeMd(sourceCommandsDir);
81
+ }
82
+
83
+ async deployRootClaudeMd(sourceCommandsDir) {
84
+ const targetPath = path.join(this.cwd, "CLAUDE.md");
85
+
86
+ // Collect commands to document them in CLAUDE.md
87
+ const commandFiles = await fs.readdir(sourceCommandsDir).catch(() => []);
88
+ let commandsDoc = "";
89
+ for (const file of commandFiles) {
90
+ if (!file.endsWith(".md")) continue;
91
+ const name = path.basename(file, ".md");
92
+ commandsDoc += `- \`ai-workflow run --spec-path=...\` (Target: ${name})\n`;
93
+ }
94
+
95
+ const instructions = `# CLAUDE.md - AI Workflow Kit Governance
96
+
97
+ This project uses the **AI Workflow Kit** (OpenCode-first) workflow.
98
+
99
+ ## Mandate: Atlas Authority Protocol
100
+ All architectural changes must align with the specifications issued by the **Specification Authority** (./specs).
101
+
102
+ ## Common Commands
103
+ ${commandsDoc}
104
+ - \`ai-workflow doctor\`: Verify installation.
105
+ - \`ai-workflow collect-evidence\`: Generate EVIDENCE.json.
106
+
107
+ ## Rules & Personas
108
+ Adhere to the specific rules and personas defined in \`.claude/rules/\`.
109
+ - Always follow the **Branch Gate** policy (never work on \`main\`).
110
+ - Always follow the **SDD Workflow** (Spec -> Plan -> PR -> Evidence).
111
+
112
+ ## Completion Contract
113
+ Every task completion MUST follow the payload format defined in the individual rule files.
114
+ `;
115
+ await fs.writeFile(targetPath, instructions);
116
+ }
117
+
118
+ async exists(p) {
119
+ try {
120
+ await fs.access(p);
121
+ return true;
122
+ } catch {
123
+ return false;
124
+ }
125
+ }
126
+ }
@@ -0,0 +1,100 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { COMPLETION_STATUS_TEXT } from "../../core/statuses.js";
4
+
5
+ /**
6
+ * Codex Adapter - Transforms OpenCode agents, skills, and commands into Codex-native formats.
7
+ */
8
+ export class CodexAdapter {
9
+ constructor({ cwd }) {
10
+ this.cwd = cwd;
11
+ }
12
+
13
+ /**
14
+ * Transforms an OpenCode agent into a Codex prompt with completion contract.
15
+ */
16
+ async transformAgent(filePath) {
17
+ const content = await fs.readFile(filePath, "utf8");
18
+ const fileName = path.basename(filePath, ".md");
19
+
20
+ const hardenedContent = `${content}
21
+
22
+ ## Completion Contract (Mandatory)
23
+ Every task completion MUST provide the following payload:
24
+ 1. **Status**: ${COMPLETION_STATUS_TEXT}
25
+ 2. **Scope reviewed**: Brief summary of what was analyzed.
26
+ 3. **Findings**: Evidence-based discoveries.
27
+ 4. **Files affected**: List of all concrete paths modified or created.
28
+ 5. **Validation/evidence**: Commands run and their results.
29
+ 6. **Risks/notes**: Any caveats or technical debt introduced.
30
+ 7. **Required manager action**: Clear next step for the orchestrator.
31
+ 8. **Can manager continue**: [yes/no]
32
+ `;
33
+
34
+ return {
35
+ content: hardenedContent,
36
+ name: fileName
37
+ };
38
+ }
39
+
40
+ /**
41
+ * Deploys agents, skills, and commands to Codex-native directories.
42
+ * Mapping:
43
+ * - Agents -> .github/agents/
44
+ * - Skills -> .agents/skills/
45
+ * - Commands -> .codex/prompts/
46
+ */
47
+ async deploy(installRoot = ".ai-workflow") {
48
+ const sourceAgentsDir = path.join(this.cwd, installRoot, "opencode/agents");
49
+ const sourceSkillsDir = path.join(this.cwd, installRoot, "opencode/skills");
50
+ const sourceCommandsDir = path.join(this.cwd, installRoot, "opencode/commands");
51
+
52
+ // 1. Deploy Agents to .github/agents/
53
+ const codexAgentsDir = path.join(this.cwd, ".github/agents");
54
+ await fs.mkdir(codexAgentsDir, { recursive: true });
55
+
56
+ const agentFiles = await fs.readdir(sourceAgentsDir).catch(() => []);
57
+ for (const file of agentFiles) {
58
+ if (!file.endsWith(".md")) continue;
59
+ const transformed = await this.transformAgent(path.join(sourceAgentsDir, file));
60
+ await fs.writeFile(path.join(codexAgentsDir, `${transformed.name}.md`), transformed.content);
61
+ }
62
+
63
+ // 2. Deploy Skills to .agents/skills/
64
+ const codexSkillsDir = path.join(this.cwd, ".agents/skills");
65
+ await fs.mkdir(codexSkillsDir, { recursive: true });
66
+
67
+ const skillFolders = await fs.readdir(sourceSkillsDir).catch(() => []);
68
+ for (const folder of skillFolders) {
69
+ const skillSource = path.join(sourceSkillsDir, folder, "SKILL.md");
70
+ if (await this.exists(skillSource)) {
71
+ const targetDir = path.join(codexSkillsDir, folder);
72
+ await fs.mkdir(targetDir, { recursive: true });
73
+ const content = await fs.readFile(skillSource, "utf8");
74
+ await fs.writeFile(path.join(targetDir, "SKILL.md"), content);
75
+ }
76
+ }
77
+
78
+ // 3. Deploy Commands to .codex/prompts/
79
+ const codexPromptsDir = path.join(this.cwd, ".codex/prompts");
80
+ await fs.mkdir(codexPromptsDir, { recursive: true });
81
+
82
+ const commandFiles = await fs.readdir(sourceCommandsDir).catch(() => []);
83
+ for (const file of commandFiles) {
84
+ if (!file.endsWith(".md") && !file.endsWith(".toml")) continue;
85
+ // Codex prompts work best as .md
86
+ const targetFileName = file.endsWith(".toml") ? `${path.basename(file, ".toml")}.md` : file;
87
+ const content = await fs.readFile(path.join(sourceCommandsDir, file), "utf8");
88
+ await fs.writeFile(path.join(codexPromptsDir, targetFileName), content);
89
+ }
90
+ }
91
+
92
+ async exists(p) {
93
+ try {
94
+ await fs.access(p);
95
+ return true;
96
+ } catch {
97
+ return false;
98
+ }
99
+ }
100
+ }