eai-cli 0.0.0-bootstrap.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 (690) hide show
  1. package/LICENSE +183 -0
  2. package/NOTICE +4 -0
  3. package/README.md +14 -0
  4. package/dist/commands/agent.d.ts +3 -0
  5. package/dist/commands/agent.d.ts.map +1 -0
  6. package/dist/commands/agent.js +69 -0
  7. package/dist/commands/agent.js.map +1 -0
  8. package/dist/commands/blocks.d.ts +3 -0
  9. package/dist/commands/blocks.d.ts.map +1 -0
  10. package/dist/commands/blocks.js +249 -0
  11. package/dist/commands/blocks.js.map +1 -0
  12. package/dist/commands/chat.d.ts +6 -0
  13. package/dist/commands/chat.d.ts.map +1 -0
  14. package/dist/commands/chat.js +105 -0
  15. package/dist/commands/chat.js.map +1 -0
  16. package/dist/commands/deploy.d.ts +36 -0
  17. package/dist/commands/deploy.d.ts.map +1 -0
  18. package/dist/commands/deploy.js +712 -0
  19. package/dist/commands/deploy.js.map +1 -0
  20. package/dist/commands/dev.d.ts +15 -0
  21. package/dist/commands/dev.d.ts.map +1 -0
  22. package/dist/commands/dev.js +133 -0
  23. package/dist/commands/dev.js.map +1 -0
  24. package/dist/commands/docs.d.ts +6 -0
  25. package/dist/commands/docs.d.ts.map +1 -0
  26. package/dist/commands/docs.js +118 -0
  27. package/dist/commands/docs.js.map +1 -0
  28. package/dist/commands/env.d.ts +10 -0
  29. package/dist/commands/env.d.ts.map +1 -0
  30. package/dist/commands/env.js +200 -0
  31. package/dist/commands/env.js.map +1 -0
  32. package/dist/commands/errors.d.ts +3 -0
  33. package/dist/commands/errors.d.ts.map +1 -0
  34. package/dist/commands/errors.js +72 -0
  35. package/dist/commands/errors.js.map +1 -0
  36. package/dist/commands/gofer.d.ts +3 -0
  37. package/dist/commands/gofer.d.ts.map +1 -0
  38. package/dist/commands/gofer.js +134 -0
  39. package/dist/commands/gofer.js.map +1 -0
  40. package/dist/commands/init.d.ts +14 -0
  41. package/dist/commands/init.d.ts.map +1 -0
  42. package/dist/commands/init.js +1437 -0
  43. package/dist/commands/init.js.map +1 -0
  44. package/dist/commands/login.d.ts +7 -0
  45. package/dist/commands/login.d.ts.map +1 -0
  46. package/dist/commands/login.js +117 -0
  47. package/dist/commands/login.js.map +1 -0
  48. package/dist/commands/provision.d.ts +6 -0
  49. package/dist/commands/provision.d.ts.map +1 -0
  50. package/dist/commands/provision.js +855 -0
  51. package/dist/commands/provision.js.map +1 -0
  52. package/dist/commands/publicapi.d.ts +6 -0
  53. package/dist/commands/publicapi.d.ts.map +1 -0
  54. package/dist/commands/publicapi.js +184 -0
  55. package/dist/commands/publicapi.js.map +1 -0
  56. package/dist/commands/resources.d.ts +38 -0
  57. package/dist/commands/resources.d.ts.map +1 -0
  58. package/dist/commands/resources.js +1010 -0
  59. package/dist/commands/resources.js.map +1 -0
  60. package/dist/commands/runtime.d.ts +3 -0
  61. package/dist/commands/runtime.d.ts.map +1 -0
  62. package/dist/commands/runtime.js +78 -0
  63. package/dist/commands/runtime.js.map +1 -0
  64. package/dist/commands/template.d.ts +3 -0
  65. package/dist/commands/template.d.ts.map +1 -0
  66. package/dist/commands/template.js +365 -0
  67. package/dist/commands/template.js.map +1 -0
  68. package/dist/commands/tenant.d.ts +45 -0
  69. package/dist/commands/tenant.d.ts.map +1 -0
  70. package/dist/commands/tenant.js +1036 -0
  71. package/dist/commands/tenant.js.map +1 -0
  72. package/dist/commands/types.d.ts +130 -0
  73. package/dist/commands/types.d.ts.map +1 -0
  74. package/dist/commands/types.js +1636 -0
  75. package/dist/commands/types.js.map +1 -0
  76. package/dist/commands/update.d.ts +13 -0
  77. package/dist/commands/update.d.ts.map +1 -0
  78. package/dist/commands/update.js +163 -0
  79. package/dist/commands/update.js.map +1 -0
  80. package/dist/commands/user.d.ts +6 -0
  81. package/dist/commands/user.d.ts.map +1 -0
  82. package/dist/commands/user.js +359 -0
  83. package/dist/commands/user.js.map +1 -0
  84. package/dist/commands/verify.d.ts +40 -0
  85. package/dist/commands/verify.d.ts.map +1 -0
  86. package/dist/commands/verify.js +1442 -0
  87. package/dist/commands/verify.js.map +1 -0
  88. package/dist/commands/vertical.d.ts +24 -0
  89. package/dist/commands/vertical.d.ts.map +1 -0
  90. package/dist/commands/vertical.js +301 -0
  91. package/dist/commands/vertical.js.map +1 -0
  92. package/dist/commands/whoami.d.ts +6 -0
  93. package/dist/commands/whoami.d.ts.map +1 -0
  94. package/dist/commands/whoami.js +73 -0
  95. package/dist/commands/whoami.js.map +1 -0
  96. package/dist/commands/workflow.d.ts +6 -0
  97. package/dist/commands/workflow.d.ts.map +1 -0
  98. package/dist/commands/workflow.js +400 -0
  99. package/dist/commands/workflow.js.map +1 -0
  100. package/dist/index.d.ts +10 -0
  101. package/dist/index.d.ts.map +1 -0
  102. package/dist/index.js +272 -0
  103. package/dist/index.js.map +1 -0
  104. package/dist/lib/agent-guide.d.ts +24 -0
  105. package/dist/lib/agent-guide.d.ts.map +1 -0
  106. package/dist/lib/agent-guide.js +155 -0
  107. package/dist/lib/agent-guide.js.map +1 -0
  108. package/dist/lib/api.d.ts +338 -0
  109. package/dist/lib/api.d.ts.map +1 -0
  110. package/dist/lib/api.js +991 -0
  111. package/dist/lib/api.js.map +1 -0
  112. package/dist/lib/auth.d.ts +65 -0
  113. package/dist/lib/auth.d.ts.map +1 -0
  114. package/dist/lib/auth.js +592 -0
  115. package/dist/lib/auth.js.map +1 -0
  116. package/dist/lib/azure-cli.d.ts +6 -0
  117. package/dist/lib/azure-cli.d.ts.map +1 -0
  118. package/dist/lib/azure-cli.js +13 -0
  119. package/dist/lib/azure-cli.js.map +1 -0
  120. package/dist/lib/block-catalog-normalize.d.ts +47 -0
  121. package/dist/lib/block-catalog-normalize.d.ts.map +1 -0
  122. package/dist/lib/block-catalog-normalize.js +355 -0
  123. package/dist/lib/block-catalog-normalize.js.map +1 -0
  124. package/dist/lib/block-catalog-types.d.ts +111 -0
  125. package/dist/lib/block-catalog-types.d.ts.map +1 -0
  126. package/dist/lib/block-catalog-types.js +41 -0
  127. package/dist/lib/block-catalog-types.js.map +1 -0
  128. package/dist/lib/block-catalog-utils.d.ts +7 -0
  129. package/dist/lib/block-catalog-utils.d.ts.map +1 -0
  130. package/dist/lib/block-catalog-utils.js +47 -0
  131. package/dist/lib/block-catalog-utils.js.map +1 -0
  132. package/dist/lib/block-catalog-validation.d.ts +5 -0
  133. package/dist/lib/block-catalog-validation.d.ts.map +1 -0
  134. package/dist/lib/block-catalog-validation.js +112 -0
  135. package/dist/lib/block-catalog-validation.js.map +1 -0
  136. package/dist/lib/block-catalog.d.ts +3 -0
  137. package/dist/lib/block-catalog.d.ts.map +1 -0
  138. package/dist/lib/block-catalog.js +284 -0
  139. package/dist/lib/block-catalog.js.map +1 -0
  140. package/dist/lib/cloud-env.d.ts +25 -0
  141. package/dist/lib/cloud-env.d.ts.map +1 -0
  142. package/dist/lib/cloud-env.js +79 -0
  143. package/dist/lib/cloud-env.js.map +1 -0
  144. package/dist/lib/config.d.ts +116 -0
  145. package/dist/lib/config.d.ts.map +1 -0
  146. package/dist/lib/config.js +195 -0
  147. package/dist/lib/config.js.map +1 -0
  148. package/dist/lib/context.d.ts +43 -0
  149. package/dist/lib/context.d.ts.map +1 -0
  150. package/dist/lib/context.js +68 -0
  151. package/dist/lib/context.js.map +1 -0
  152. package/dist/lib/error-codes.d.ts +56 -0
  153. package/dist/lib/error-codes.d.ts.map +1 -0
  154. package/dist/lib/error-codes.js +211 -0
  155. package/dist/lib/error-codes.js.map +1 -0
  156. package/dist/lib/error-guidance/catalog.d.ts +648 -0
  157. package/dist/lib/error-guidance/catalog.d.ts.map +1 -0
  158. package/dist/lib/error-guidance/catalog.js +940 -0
  159. package/dist/lib/error-guidance/catalog.js.map +1 -0
  160. package/dist/lib/error-guidance/match.d.ts +3 -0
  161. package/dist/lib/error-guidance/match.d.ts.map +1 -0
  162. package/dist/lib/error-guidance/match.js +46 -0
  163. package/dist/lib/error-guidance/match.js.map +1 -0
  164. package/dist/lib/error-guidance/render.d.ts +5 -0
  165. package/dist/lib/error-guidance/render.d.ts.map +1 -0
  166. package/dist/lib/error-guidance/render.js +92 -0
  167. package/dist/lib/error-guidance/render.js.map +1 -0
  168. package/dist/lib/error-guidance/types.d.ts +76 -0
  169. package/dist/lib/error-guidance/types.d.ts.map +1 -0
  170. package/dist/lib/error-guidance/types.js +2 -0
  171. package/dist/lib/error-guidance/types.js.map +1 -0
  172. package/dist/lib/error-guidance/validate.d.ts +3 -0
  173. package/dist/lib/error-guidance/validate.d.ts.map +1 -0
  174. package/dist/lib/error-guidance/validate.js +59 -0
  175. package/dist/lib/error-guidance/validate.js.map +1 -0
  176. package/dist/lib/gofer-installer.d.ts +32 -0
  177. package/dist/lib/gofer-installer.d.ts.map +1 -0
  178. package/dist/lib/gofer-installer.js +589 -0
  179. package/dist/lib/gofer-installer.js.map +1 -0
  180. package/dist/lib/gofer-refresh.d.ts +46 -0
  181. package/dist/lib/gofer-refresh.d.ts.map +1 -0
  182. package/dist/lib/gofer-refresh.js +536 -0
  183. package/dist/lib/gofer-refresh.js.map +1 -0
  184. package/dist/lib/next-route-exports.d.ts +6 -0
  185. package/dist/lib/next-route-exports.d.ts.map +1 -0
  186. package/dist/lib/next-route-exports.js +127 -0
  187. package/dist/lib/next-route-exports.js.map +1 -0
  188. package/dist/lib/npm.d.ts +2 -0
  189. package/dist/lib/npm.d.ts.map +1 -0
  190. package/dist/lib/npm.js +4 -0
  191. package/dist/lib/npm.js.map +1 -0
  192. package/dist/lib/object-type-defaults.d.ts +4 -0
  193. package/dist/lib/object-type-defaults.d.ts.map +1 -0
  194. package/dist/lib/object-type-defaults.js +72 -0
  195. package/dist/lib/object-type-defaults.js.map +1 -0
  196. package/dist/lib/output.d.ts +35 -0
  197. package/dist/lib/output.d.ts.map +1 -0
  198. package/dist/lib/output.js +166 -0
  199. package/dist/lib/output.js.map +1 -0
  200. package/dist/lib/profile.d.ts +52 -0
  201. package/dist/lib/profile.d.ts.map +1 -0
  202. package/dist/lib/profile.js +116 -0
  203. package/dist/lib/profile.js.map +1 -0
  204. package/dist/lib/project-manifest.d.ts +42 -0
  205. package/dist/lib/project-manifest.d.ts.map +1 -0
  206. package/dist/lib/project-manifest.js +191 -0
  207. package/dist/lib/project-manifest.js.map +1 -0
  208. package/dist/lib/resourceapi-bundle.d.ts +33 -0
  209. package/dist/lib/resourceapi-bundle.d.ts.map +1 -0
  210. package/dist/lib/resourceapi-bundle.js +79 -0
  211. package/dist/lib/resourceapi-bundle.js.map +1 -0
  212. package/dist/lib/runtime-contract.d.ts +84 -0
  213. package/dist/lib/runtime-contract.d.ts.map +1 -0
  214. package/dist/lib/runtime-contract.js +318 -0
  215. package/dist/lib/runtime-contract.js.map +1 -0
  216. package/dist/lib/schema-builder.d.ts +28 -0
  217. package/dist/lib/schema-builder.d.ts.map +1 -0
  218. package/dist/lib/schema-builder.js +69 -0
  219. package/dist/lib/schema-builder.js.map +1 -0
  220. package/dist/lib/tenant-context.d.ts +127 -0
  221. package/dist/lib/tenant-context.d.ts.map +1 -0
  222. package/dist/lib/tenant-context.js +573 -0
  223. package/dist/lib/tenant-context.js.map +1 -0
  224. package/dist/lib/update-check.d.ts +52 -0
  225. package/dist/lib/update-check.d.ts.map +1 -0
  226. package/dist/lib/update-check.js +271 -0
  227. package/dist/lib/update-check.js.map +1 -0
  228. package/dist/lib/update-maintenance.d.ts +15 -0
  229. package/dist/lib/update-maintenance.d.ts.map +1 -0
  230. package/dist/lib/update-maintenance.js +187 -0
  231. package/dist/lib/update-maintenance.js.map +1 -0
  232. package/dist/lib/utils.d.ts +23 -0
  233. package/dist/lib/utils.d.ts.map +1 -0
  234. package/dist/lib/utils.js +48 -0
  235. package/dist/lib/utils.js.map +1 -0
  236. package/dist/lib/workflow-provisioning.d.ts +54 -0
  237. package/dist/lib/workflow-provisioning.d.ts.map +1 -0
  238. package/dist/lib/workflow-provisioning.js +281 -0
  239. package/dist/lib/workflow-provisioning.js.map +1 -0
  240. package/package.json +51 -0
  241. package/resources/gofer/.gofer-version +7 -0
  242. package/resources/gofer/agents-skills/0_gofer_start/SKILL.md +1287 -0
  243. package/resources/gofer/agents-skills/0a_problem_validation/SKILL.md +429 -0
  244. package/resources/gofer/agents-skills/10_gofer_cloud/SKILL.md +635 -0
  245. package/resources/gofer/agents-skills/1_gofer_research/SKILL.md +1159 -0
  246. package/resources/gofer/agents-skills/2_gofer_specify/SKILL.md +860 -0
  247. package/resources/gofer/agents-skills/3_gofer_plan/SKILL.md +886 -0
  248. package/resources/gofer/agents-skills/4_gofer_tasks/SKILL.md +748 -0
  249. package/resources/gofer/agents-skills/5_gofer_implement/SKILL.md +924 -0
  250. package/resources/gofer/agents-skills/6_gofer_validate/SKILL.md +2269 -0
  251. package/resources/gofer/agents-skills/7_gofer_save/SKILL.md +423 -0
  252. package/resources/gofer/agents-skills/7a_stakeholder_comms/SKILL.md +508 -0
  253. package/resources/gofer/agents-skills/8_gofer_branding/SKILL.md +315 -0
  254. package/resources/gofer/agents-skills/9_gofer_tests/SKILL.md +558 -0
  255. package/resources/gofer/agents-skills/gofer_bootstrap_workspace/SKILL.md +148 -0
  256. package/resources/gofer/agents-skills/gofer_check_workspace/SKILL.md +119 -0
  257. package/resources/gofer/agents-skills/gofer_constitution/SKILL.md +612 -0
  258. package/resources/gofer/agents-skills/gofer_diagnose/SKILL.md +114 -0
  259. package/resources/gofer/agents-skills/gofer_eai_first_run/SKILL.md +397 -0
  260. package/resources/gofer/agents-skills/gofer_hydrate/SKILL.md +561 -0
  261. package/resources/gofer/agents-skills/gofer_personality/SKILL.md +44 -0
  262. package/resources/gofer/agents-skills/gofer_plan/SKILL.md +40 -0
  263. package/resources/gofer/agents-skills/gofer_side/SKILL.md +45 -0
  264. package/resources/gofer/agents-skills/gofer_spec_summary/SKILL.md +112 -0
  265. package/resources/gofer/agents-skills/gofer_tdd/SKILL.md +112 -0
  266. package/resources/gofer/agents-skills/gofer_vocabulary/SKILL.md +112 -0
  267. package/resources/gofer/agents-skills/gofer_zoom_out/SKILL.md +112 -0
  268. package/resources/gofer/bash-scripts/check-context-health.sh +365 -0
  269. package/resources/gofer/bash-scripts/check-persona-pack.sh +81 -0
  270. package/resources/gofer/bash-scripts/check-prerequisites.sh +168 -0
  271. package/resources/gofer/bash-scripts/common.sh +192 -0
  272. package/resources/gofer/bash-scripts/create-new-feature.sh +260 -0
  273. package/resources/gofer/bash-scripts/install-optional-tools.sh +270 -0
  274. package/resources/gofer/bash-scripts/log-stage.sh +224 -0
  275. package/resources/gofer/bash-scripts/mark-task-complete.sh +74 -0
  276. package/resources/gofer/bash-scripts/pipeline-state.sh +306 -0
  277. package/resources/gofer/bash-scripts/read-failed-approaches.sh +114 -0
  278. package/resources/gofer/bash-scripts/read-session-memories.sh +96 -0
  279. package/resources/gofer/bash-scripts/save-checkpoint.sh +407 -0
  280. package/resources/gofer/bash-scripts/setup-plan.sh +62 -0
  281. package/resources/gofer/bash-scripts/sync-implementation-status.sh +47 -0
  282. package/resources/gofer/bash-scripts/update-agent-context.sh +772 -0
  283. package/resources/gofer/bash-scripts/validate-artifact.sh +335 -0
  284. package/resources/gofer/bash-scripts/verify-task.sh +384 -0
  285. package/resources/gofer/bash-scripts/write-failed-approach.sh +110 -0
  286. package/resources/gofer/bash-scripts/write-periodic-checkpoint.sh +128 -0
  287. package/resources/gofer/bash-scripts/write-session-memory.sh +118 -0
  288. package/resources/gofer/claude-agents/assumption-tracker.md +168 -0
  289. package/resources/gofer/claude-agents/business-metrics-analyzer.md +169 -0
  290. package/resources/gofer/claude-agents/business-problem-validator.md +168 -0
  291. package/resources/gofer/claude-agents/codebase-analyzer.md +124 -0
  292. package/resources/gofer/claude-agents/codebase-locator.md +95 -0
  293. package/resources/gofer/claude-agents/codebase-pattern-finder.md +180 -0
  294. package/resources/gofer/claude-agents/comms-writer.md +158 -0
  295. package/resources/gofer/claude-agents/engineer-review.md +169 -0
  296. package/resources/gofer/claude-agents/implement-bug-triangulator.md +94 -0
  297. package/resources/gofer/claude-agents/implement-code-review-council.md +89 -0
  298. package/resources/gofer/claude-agents/implement-doc-writer.md +89 -0
  299. package/resources/gofer/claude-agents/implement-error-hardener.md +84 -0
  300. package/resources/gofer/claude-agents/implement-performance-explorer.md +95 -0
  301. package/resources/gofer/claude-agents/implement-test-diversifier.md +82 -0
  302. package/resources/gofer/claude-agents/implement-variant-generator.md +80 -0
  303. package/resources/gofer/claude-agents/multi-perspective-judge.md +114 -0
  304. package/resources/gofer/claude-agents/plan-api-comparator.md +90 -0
  305. package/resources/gofer/claude-agents/plan-architecture-diverger.md +100 -0
  306. package/resources/gofer/claude-agents/plan-data-model-stress-tester.md +95 -0
  307. package/resources/gofer/claude-agents/plan-migration-path-finder.md +95 -0
  308. package/resources/gofer/claude-agents/plan-refactor-rewrite-advisor.md +97 -0
  309. package/resources/gofer/claude-agents/research-dependency-evaluator.md +106 -0
  310. package/resources/gofer/claude-agents/research-horizon-scanner.md +100 -0
  311. package/resources/gofer/claude-agents/research-market-scanner.md +137 -0
  312. package/resources/gofer/claude-agents/research-perspective-multiplier.md +102 -0
  313. package/resources/gofer/claude-agents/scope-creep-detector.md +152 -0
  314. package/resources/gofer/claude-agents/specify-ambiguity-detector.md +95 -0
  315. package/resources/gofer/claude-agents/specify-journey-stress-tester.md +92 -0
  316. package/resources/gofer/claude-agents/tasks-cross-cutting-scanner.md +91 -0
  317. package/resources/gofer/claude-agents/tasks-rollback-planner.md +89 -0
  318. package/resources/gofer/claude-agents/validate-security-red-team.md +102 -0
  319. package/resources/gofer/claude-agents/validation-correctness.md +103 -0
  320. package/resources/gofer/claude-agents/validation-integration.md +129 -0
  321. package/resources/gofer/claude-agents/validation-performance.md +120 -0
  322. package/resources/gofer/claude-agents/validation-security.md +115 -0
  323. package/resources/gofer/claude-agents/validation-standards.md +151 -0
  324. package/resources/gofer/claude-agents/validation-test-quality.md +146 -0
  325. package/resources/gofer/claude-agents/visual-bounded-context-writer.md +40 -0
  326. package/resources/gofer/claude-agents/visual-c4-writer.md +45 -0
  327. package/resources/gofer/claude-agents/visual-erd-writer.md +34 -0
  328. package/resources/gofer/claude-agents/visual-heatmap-writer.md +63 -0
  329. package/resources/gofer/claude-agents/visual-risk-writer.md +64 -0
  330. package/resources/gofer/claude-commands/0_gofer_start.md +1282 -0
  331. package/resources/gofer/claude-commands/0a_problem_validation.md +424 -0
  332. package/resources/gofer/claude-commands/10_gofer_cloud.md +630 -0
  333. package/resources/gofer/claude-commands/1_gofer_research.md +1154 -0
  334. package/resources/gofer/claude-commands/2_gofer_specify.md +855 -0
  335. package/resources/gofer/claude-commands/3_gofer_plan.md +881 -0
  336. package/resources/gofer/claude-commands/4_gofer_tasks.md +743 -0
  337. package/resources/gofer/claude-commands/5_gofer_implement.md +919 -0
  338. package/resources/gofer/claude-commands/6_gofer_validate.md +2264 -0
  339. package/resources/gofer/claude-commands/7_gofer_save.md +418 -0
  340. package/resources/gofer/claude-commands/7a_stakeholder_comms.md +503 -0
  341. package/resources/gofer/claude-commands/8_gofer_branding.md +310 -0
  342. package/resources/gofer/claude-commands/9_gofer_tests.md +553 -0
  343. package/resources/gofer/claude-commands/gofer_bootstrap_workspace.md +143 -0
  344. package/resources/gofer/claude-commands/gofer_check_workspace.md +114 -0
  345. package/resources/gofer/claude-commands/gofer_constitution.md +607 -0
  346. package/resources/gofer/claude-commands/gofer_diagnose.md +109 -0
  347. package/resources/gofer/claude-commands/gofer_eai_first_run.md +392 -0
  348. package/resources/gofer/claude-commands/gofer_hydrate.md +556 -0
  349. package/resources/gofer/claude-commands/gofer_personality.md +39 -0
  350. package/resources/gofer/claude-commands/gofer_plan.md +35 -0
  351. package/resources/gofer/claude-commands/gofer_side.md +40 -0
  352. package/resources/gofer/claude-commands/gofer_spec_summary.md +107 -0
  353. package/resources/gofer/claude-commands/gofer_tdd.md +107 -0
  354. package/resources/gofer/claude-commands/gofer_vocabulary.md +107 -0
  355. package/resources/gofer/claude-commands/gofer_zoom_out.md +107 -0
  356. package/resources/gofer/claude-skills/eai-gofer/SKILL.md +56 -0
  357. package/resources/gofer/commands/.gitkeep +0 -0
  358. package/resources/gofer/commands/0_gofer_start.md +1299 -0
  359. package/resources/gofer/commands/0a_problem_validation.md +405 -0
  360. package/resources/gofer/commands/10_gofer_cloud.md +611 -0
  361. package/resources/gofer/commands/1_gofer_research.md +1135 -0
  362. package/resources/gofer/commands/2_gofer_specify.md +836 -0
  363. package/resources/gofer/commands/3_gofer_plan.md +862 -0
  364. package/resources/gofer/commands/4_gofer_tasks.md +724 -0
  365. package/resources/gofer/commands/5_gofer_implement.md +900 -0
  366. package/resources/gofer/commands/6_gofer_validate.md +2245 -0
  367. package/resources/gofer/commands/7_gofer_save.md +399 -0
  368. package/resources/gofer/commands/7a_stakeholder_comms.md +484 -0
  369. package/resources/gofer/commands/8_gofer_branding.md +291 -0
  370. package/resources/gofer/commands/9_gofer_tests.md +534 -0
  371. package/resources/gofer/commands/gofer_bootstrap_workspace.md +159 -0
  372. package/resources/gofer/commands/gofer_check_workspace.md +130 -0
  373. package/resources/gofer/commands/gofer_constitution.md +588 -0
  374. package/resources/gofer/commands/gofer_diagnose.md +89 -0
  375. package/resources/gofer/commands/gofer_eai_first_run.md +392 -0
  376. package/resources/gofer/commands/gofer_hydrate.md +537 -0
  377. package/resources/gofer/commands/gofer_personality.md +61 -0
  378. package/resources/gofer/commands/gofer_plan.md +51 -0
  379. package/resources/gofer/commands/gofer_side.md +56 -0
  380. package/resources/gofer/commands/gofer_spec_summary.md +87 -0
  381. package/resources/gofer/commands/gofer_tdd.md +87 -0
  382. package/resources/gofer/commands/gofer_vocabulary.md +87 -0
  383. package/resources/gofer/commands/gofer_zoom_out.md +87 -0
  384. package/resources/gofer/copilot-instructions/gofer-cost.instructions.md +13 -0
  385. package/resources/gofer/copilot-instructions/language-server.instructions.md +49 -0
  386. package/resources/gofer/copilot-instructions/typescript.instructions.md +47 -0
  387. package/resources/gofer/copilot-instructions/vscode-extension.instructions.md +46 -0
  388. package/resources/gofer/copilot-prompts/0_gofer_start.prompt.md +1308 -0
  389. package/resources/gofer/copilot-prompts/0a_problem_validation.prompt.md +429 -0
  390. package/resources/gofer/copilot-prompts/10_gofer_cloud.prompt.md +644 -0
  391. package/resources/gofer/copilot-prompts/1_gofer_research.prompt.md +1177 -0
  392. package/resources/gofer/copilot-prompts/2_gofer_specify.prompt.md +878 -0
  393. package/resources/gofer/copilot-prompts/3_gofer_plan.prompt.md +904 -0
  394. package/resources/gofer/copilot-prompts/4_gofer_tasks.prompt.md +766 -0
  395. package/resources/gofer/copilot-prompts/5_gofer_implement.prompt.md +942 -0
  396. package/resources/gofer/copilot-prompts/6_gofer_validate.prompt.md +2277 -0
  397. package/resources/gofer/copilot-prompts/7_gofer_save.prompt.md +433 -0
  398. package/resources/gofer/copilot-prompts/7a_stakeholder_comms.prompt.md +516 -0
  399. package/resources/gofer/copilot-prompts/8_gofer_branding.prompt.md +323 -0
  400. package/resources/gofer/copilot-prompts/9_gofer_tests.prompt.md +566 -0
  401. package/resources/gofer/copilot-prompts/gofer_bootstrap_workspace.prompt.md +161 -0
  402. package/resources/gofer/copilot-prompts/gofer_check_workspace.prompt.md +132 -0
  403. package/resources/gofer/copilot-prompts/gofer_constitution.prompt.md +621 -0
  404. package/resources/gofer/copilot-prompts/gofer_diagnose.prompt.md +127 -0
  405. package/resources/gofer/copilot-prompts/gofer_eai_first_run.prompt.md +410 -0
  406. package/resources/gofer/copilot-prompts/gofer_hydrate.prompt.md +571 -0
  407. package/resources/gofer/copilot-prompts/gofer_personality.prompt.md +57 -0
  408. package/resources/gofer/copilot-prompts/gofer_plan.prompt.md +53 -0
  409. package/resources/gofer/copilot-prompts/gofer_side.prompt.md +58 -0
  410. package/resources/gofer/copilot-prompts/gofer_spec_summary.prompt.md +125 -0
  411. package/resources/gofer/copilot-prompts/gofer_tdd.prompt.md +125 -0
  412. package/resources/gofer/copilot-prompts/gofer_vocabulary.prompt.md +125 -0
  413. package/resources/gofer/copilot-prompts/gofer_zoom_out.prompt.md +125 -0
  414. package/resources/gofer/gemini/agents/assumption-tracker.md +171 -0
  415. package/resources/gofer/gemini/agents/business-metrics-analyzer.md +172 -0
  416. package/resources/gofer/gemini/agents/business-problem-validator.md +171 -0
  417. package/resources/gofer/gemini/agents/codebase-analyzer.md +127 -0
  418. package/resources/gofer/gemini/agents/codebase-locator.md +98 -0
  419. package/resources/gofer/gemini/agents/codebase-pattern-finder.md +183 -0
  420. package/resources/gofer/gemini/agents/comms-writer.md +161 -0
  421. package/resources/gofer/gemini/agents/engineer-review.md +172 -0
  422. package/resources/gofer/gemini/agents/implement-bug-triangulator.md +97 -0
  423. package/resources/gofer/gemini/agents/implement-code-review-council.md +92 -0
  424. package/resources/gofer/gemini/agents/implement-doc-writer.md +92 -0
  425. package/resources/gofer/gemini/agents/implement-error-hardener.md +87 -0
  426. package/resources/gofer/gemini/agents/implement-performance-explorer.md +98 -0
  427. package/resources/gofer/gemini/agents/implement-test-diversifier.md +85 -0
  428. package/resources/gofer/gemini/agents/implement-variant-generator.md +83 -0
  429. package/resources/gofer/gemini/agents/multi-perspective-judge.md +117 -0
  430. package/resources/gofer/gemini/agents/plan-api-comparator.md +93 -0
  431. package/resources/gofer/gemini/agents/plan-architecture-diverger.md +103 -0
  432. package/resources/gofer/gemini/agents/plan-data-model-stress-tester.md +98 -0
  433. package/resources/gofer/gemini/agents/plan-migration-path-finder.md +98 -0
  434. package/resources/gofer/gemini/agents/plan-refactor-rewrite-advisor.md +100 -0
  435. package/resources/gofer/gemini/agents/research-dependency-evaluator.md +109 -0
  436. package/resources/gofer/gemini/agents/research-horizon-scanner.md +103 -0
  437. package/resources/gofer/gemini/agents/research-market-scanner.md +140 -0
  438. package/resources/gofer/gemini/agents/research-perspective-multiplier.md +105 -0
  439. package/resources/gofer/gemini/agents/scope-creep-detector.md +155 -0
  440. package/resources/gofer/gemini/agents/specify-ambiguity-detector.md +98 -0
  441. package/resources/gofer/gemini/agents/specify-journey-stress-tester.md +95 -0
  442. package/resources/gofer/gemini/agents/tasks-cross-cutting-scanner.md +94 -0
  443. package/resources/gofer/gemini/agents/tasks-rollback-planner.md +92 -0
  444. package/resources/gofer/gemini/agents/validate-security-red-team.md +105 -0
  445. package/resources/gofer/gemini/agents/validation-correctness.md +106 -0
  446. package/resources/gofer/gemini/agents/validation-integration.md +132 -0
  447. package/resources/gofer/gemini/agents/validation-performance.md +123 -0
  448. package/resources/gofer/gemini/agents/validation-security.md +118 -0
  449. package/resources/gofer/gemini/agents/validation-standards.md +154 -0
  450. package/resources/gofer/gemini/agents/validation-test-quality.md +149 -0
  451. package/resources/gofer/gemini/agents/visual-bounded-context-writer.md +40 -0
  452. package/resources/gofer/gemini/agents/visual-c4-writer.md +44 -0
  453. package/resources/gofer/gemini/agents/visual-erd-writer.md +36 -0
  454. package/resources/gofer/gemini/agents/visual-heatmap-writer.md +63 -0
  455. package/resources/gofer/gemini/agents/visual-risk-writer.md +64 -0
  456. package/resources/gofer/gemini/commands/gofer/.gitkeep +0 -0
  457. package/resources/gofer/gemini/commands/gofer/0_gofer_start.md +1282 -0
  458. package/resources/gofer/gemini/commands/gofer/0_gofer_start.toml +2 -0
  459. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.md +424 -0
  460. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.toml +2 -0
  461. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.md +630 -0
  462. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.toml +2 -0
  463. package/resources/gofer/gemini/commands/gofer/1_gofer_research.md +1154 -0
  464. package/resources/gofer/gemini/commands/gofer/1_gofer_research.toml +2 -0
  465. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.md +855 -0
  466. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.toml +2 -0
  467. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.md +881 -0
  468. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.toml +2 -0
  469. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.md +743 -0
  470. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.toml +2 -0
  471. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.md +919 -0
  472. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.toml +2 -0
  473. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.md +2264 -0
  474. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.toml +2 -0
  475. package/resources/gofer/gemini/commands/gofer/7_gofer_save.md +418 -0
  476. package/resources/gofer/gemini/commands/gofer/7_gofer_save.toml +2 -0
  477. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.md +503 -0
  478. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.toml +2 -0
  479. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.md +310 -0
  480. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.toml +2 -0
  481. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.md +553 -0
  482. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.toml +2 -0
  483. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.md +143 -0
  484. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.toml +2 -0
  485. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.md +114 -0
  486. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.toml +2 -0
  487. package/resources/gofer/gemini/commands/gofer/gofer_constitution.md +607 -0
  488. package/resources/gofer/gemini/commands/gofer/gofer_constitution.toml +2 -0
  489. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.md +109 -0
  490. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.toml +2 -0
  491. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.md +392 -0
  492. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.toml +2 -0
  493. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.md +556 -0
  494. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.toml +2 -0
  495. package/resources/gofer/gemini/commands/gofer/gofer_personality.md +39 -0
  496. package/resources/gofer/gemini/commands/gofer/gofer_personality.toml +2 -0
  497. package/resources/gofer/gemini/commands/gofer/gofer_plan.md +35 -0
  498. package/resources/gofer/gemini/commands/gofer/gofer_plan.toml +2 -0
  499. package/resources/gofer/gemini/commands/gofer/gofer_side.md +40 -0
  500. package/resources/gofer/gemini/commands/gofer/gofer_side.toml +2 -0
  501. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.md +107 -0
  502. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.toml +2 -0
  503. package/resources/gofer/gemini/commands/gofer/gofer_tdd.md +107 -0
  504. package/resources/gofer/gemini/commands/gofer/gofer_tdd.toml +2 -0
  505. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.md +107 -0
  506. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.toml +2 -0
  507. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.md +107 -0
  508. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.toml +2 -0
  509. package/resources/gofer/gemini/commands/gofer/manifest.json +32 -0
  510. package/resources/gofer/gemini/extension.json +16 -0
  511. package/resources/gofer/github-agents/gofer-business.agent.md +20 -0
  512. package/resources/gofer/github-agents/gofer-implement.agent.md +15 -0
  513. package/resources/gofer/github-agents/gofer-plan.agent.md +15 -0
  514. package/resources/gofer/github-agents/gofer-research.agent.md +15 -0
  515. package/resources/gofer/github-agents/gofer-validate.agent.md +10 -0
  516. package/resources/gofer/github-skills/eai-gofer/SKILL.md +56 -0
  517. package/resources/gofer/hook-scripts/agent-stop.mjs +655 -0
  518. package/resources/gofer/hook-scripts/log-stage-launch-time.mjs +77 -0
  519. package/resources/gofer/hook-scripts/post-tool-use.mjs +333 -0
  520. package/resources/gofer/hook-scripts/queued-input.mjs +188 -0
  521. package/resources/gofer/hook-scripts/session-lifecycle.mjs +93 -0
  522. package/resources/gofer/hook-scripts/user-prompt-submit.mjs +228 -0
  523. package/resources/gofer/instruction-templates/base/agents-base.md +37 -0
  524. package/resources/gofer/instruction-templates/base/claude-base.md +7 -0
  525. package/resources/gofer/instruction-templates/base/copilot-base.md +26 -0
  526. package/resources/gofer/instruction-templates/gofer/gofer-claude.md +5 -0
  527. package/resources/gofer/instruction-templates/gofer/gofer-copilot.md +9 -0
  528. package/resources/gofer/instruction-templates/languages/generic.md +7 -0
  529. package/resources/gofer/instruction-templates/languages/go.md +8 -0
  530. package/resources/gofer/instruction-templates/languages/java.md +8 -0
  531. package/resources/gofer/instruction-templates/languages/python.md +9 -0
  532. package/resources/gofer/instruction-templates/languages/rust.md +9 -0
  533. package/resources/gofer/instruction-templates/languages/typescript.md +19 -0
  534. package/resources/gofer/instruction-templates/workflow/principles.md +52 -0
  535. package/resources/gofer/memory/constitution.md +391 -0
  536. package/resources/gofer/memory/context-profiles.yaml +74 -0
  537. package/resources/gofer/memory/decisions/000-use-adr-for-decisions.md +67 -0
  538. package/resources/gofer/memory/decisions/001-di-framework.md +190 -0
  539. package/resources/gofer/memory/decisions/002-module-extraction.md +305 -0
  540. package/resources/gofer/memory/decisions/003-error-handling.md +368 -0
  541. package/resources/gofer/memory/decisions/004-cache-eviction.md +436 -0
  542. package/resources/gofer/memory/decisions/005-constants-management.md +520 -0
  543. package/resources/gofer/memory/decisions/README.md +129 -0
  544. package/resources/gofer/memory/diagrams/di-container.mmd +321 -0
  545. package/resources/gofer/memory/diagrams/extension-activation.mmd +184 -0
  546. package/resources/gofer/memory/diagrams/module-dependencies.mmd +264 -0
  547. package/resources/gofer/memory/gofer-model-policy.yaml +97 -0
  548. package/resources/gofer/memory/lessons.md +46 -0
  549. package/resources/gofer/node-scripts/canonical-descriptions.mjs +86 -0
  550. package/resources/gofer/node-scripts/check-version-alignment.mjs +131 -0
  551. package/resources/gofer/node-scripts/codex-doctor.mjs +425 -0
  552. package/resources/gofer/node-scripts/generate-commands.mjs +1366 -0
  553. package/resources/gofer/node-scripts/generate-issues.js +563 -0
  554. package/resources/gofer/node-scripts/gofer-closed-loop-audit.mjs +893 -0
  555. package/resources/gofer/node-scripts/gofer-loop-audit.mjs +541 -0
  556. package/resources/gofer/node-scripts/gofer-performance-report.mjs +306 -0
  557. package/resources/gofer/node-scripts/gofer-workspace-bootstrap.mjs +56 -0
  558. package/resources/gofer/node-scripts/gofer-workspace-check.mjs +56 -0
  559. package/resources/gofer/node-scripts/lib/ai-leverage-tagger.mjs +103 -0
  560. package/resources/gofer/node-scripts/lib/assemble-stakeholder-pack.mjs +114 -0
  561. package/resources/gofer/node-scripts/lib/marp-deck.mjs +87 -0
  562. package/resources/gofer/node-scripts/lib/mermaid-tabular-fallback.mjs +264 -0
  563. package/resources/gofer/node-scripts/lib/render-visual.mjs +54 -0
  564. package/resources/gofer/node-scripts/lib/validate-aliases.mjs +85 -0
  565. package/resources/gofer/node-scripts/lib/visual-counts.mjs +44 -0
  566. package/resources/gofer/node-scripts/lib/visual-pass-pipeline.mjs +134 -0
  567. package/resources/gofer/node-scripts/mermaid-export.mjs +72 -0
  568. package/resources/gofer/node-scripts/package-agent-plugin.mjs +940 -0
  569. package/resources/gofer/node-scripts/parse-stage-command.mjs +211 -0
  570. package/resources/gofer/node-scripts/schemas/.gitkeep +0 -0
  571. package/resources/gofer/node-scripts/schemas/stage-command.schema.json +72 -0
  572. package/resources/gofer/node-scripts/sync-extension-resources.mjs +110 -0
  573. package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +1166 -0
  574. package/resources/gofer/powershell-scripts/install-optional-tools.ps1 +214 -0
  575. package/resources/gofer/references/platform/README.md +17 -0
  576. package/resources/gofer/references/platform/deployment-repo.md +9 -0
  577. package/resources/gofer/references/platform/eai-app-template.md +45 -0
  578. package/resources/gofer/references/platform/eai-config-driven-ui.md +156 -0
  579. package/resources/gofer/references/platform/eai-error-catalog.yaml +197 -0
  580. package/resources/gofer/references/platform/eai-repo-contract.md +134 -0
  581. package/resources/gofer/references/platform/eai-service-patterns.md +56 -0
  582. package/resources/gofer/references/platform/eai.md +85 -0
  583. package/resources/gofer/references/platform/vertical-template.md +49 -0
  584. package/resources/gofer/specify-commands/.gitkeep +0 -0
  585. package/resources/gofer/specify-commands/0_gofer_start.md +1299 -0
  586. package/resources/gofer/specify-commands/0a_problem_validation.md +405 -0
  587. package/resources/gofer/specify-commands/10_gofer_cloud.md +611 -0
  588. package/resources/gofer/specify-commands/1_gofer_research.md +1135 -0
  589. package/resources/gofer/specify-commands/2_gofer_specify.md +836 -0
  590. package/resources/gofer/specify-commands/3_gofer_plan.md +862 -0
  591. package/resources/gofer/specify-commands/4_gofer_tasks.md +724 -0
  592. package/resources/gofer/specify-commands/5_gofer_implement.md +900 -0
  593. package/resources/gofer/specify-commands/6_gofer_validate.md +2245 -0
  594. package/resources/gofer/specify-commands/7_gofer_save.md +399 -0
  595. package/resources/gofer/specify-commands/7a_stakeholder_comms.md +484 -0
  596. package/resources/gofer/specify-commands/8_gofer_branding.md +291 -0
  597. package/resources/gofer/specify-commands/9_gofer_tests.md +534 -0
  598. package/resources/gofer/specify-commands/gofer_bootstrap_workspace.md +159 -0
  599. package/resources/gofer/specify-commands/gofer_check_workspace.md +130 -0
  600. package/resources/gofer/specify-commands/gofer_constitution.md +588 -0
  601. package/resources/gofer/specify-commands/gofer_diagnose.md +89 -0
  602. package/resources/gofer/specify-commands/gofer_eai_first_run.md +392 -0
  603. package/resources/gofer/specify-commands/gofer_hydrate.md +537 -0
  604. package/resources/gofer/specify-commands/gofer_personality.md +61 -0
  605. package/resources/gofer/specify-commands/gofer_plan.md +51 -0
  606. package/resources/gofer/specify-commands/gofer_side.md +56 -0
  607. package/resources/gofer/specify-commands/gofer_spec_summary.md +87 -0
  608. package/resources/gofer/specify-commands/gofer_tdd.md +87 -0
  609. package/resources/gofer/specify-commands/gofer_vocabulary.md +87 -0
  610. package/resources/gofer/specify-commands/gofer_zoom_out.md +87 -0
  611. package/resources/gofer/system-skills/0_gofer_start/SKILL.md +1287 -0
  612. package/resources/gofer/system-skills/0a_problem_validation/SKILL.md +429 -0
  613. package/resources/gofer/system-skills/10_gofer_cloud/SKILL.md +635 -0
  614. package/resources/gofer/system-skills/1_gofer_research/SKILL.md +1159 -0
  615. package/resources/gofer/system-skills/2_gofer_specify/SKILL.md +860 -0
  616. package/resources/gofer/system-skills/3_gofer_plan/SKILL.md +886 -0
  617. package/resources/gofer/system-skills/4_gofer_tasks/SKILL.md +748 -0
  618. package/resources/gofer/system-skills/5_gofer_implement/SKILL.md +924 -0
  619. package/resources/gofer/system-skills/6_gofer_validate/SKILL.md +2269 -0
  620. package/resources/gofer/system-skills/7_gofer_save/SKILL.md +423 -0
  621. package/resources/gofer/system-skills/7a_stakeholder_comms/SKILL.md +508 -0
  622. package/resources/gofer/system-skills/8_gofer_branding/SKILL.md +315 -0
  623. package/resources/gofer/system-skills/9_gofer_tests/SKILL.md +558 -0
  624. package/resources/gofer/system-skills/gofer_bootstrap_workspace/SKILL.md +148 -0
  625. package/resources/gofer/system-skills/gofer_check_workspace/SKILL.md +119 -0
  626. package/resources/gofer/system-skills/gofer_constitution/SKILL.md +612 -0
  627. package/resources/gofer/system-skills/gofer_diagnose/SKILL.md +114 -0
  628. package/resources/gofer/system-skills/gofer_eai_first_run/SKILL.md +397 -0
  629. package/resources/gofer/system-skills/gofer_hydrate/SKILL.md +561 -0
  630. package/resources/gofer/system-skills/gofer_personality/SKILL.md +44 -0
  631. package/resources/gofer/system-skills/gofer_plan/SKILL.md +40 -0
  632. package/resources/gofer/system-skills/gofer_side/SKILL.md +45 -0
  633. package/resources/gofer/system-skills/gofer_spec_summary/SKILL.md +112 -0
  634. package/resources/gofer/system-skills/gofer_tdd/SKILL.md +112 -0
  635. package/resources/gofer/system-skills/gofer_vocabulary/SKILL.md +112 -0
  636. package/resources/gofer/system-skills/gofer_zoom_out/SKILL.md +112 -0
  637. package/resources/gofer/templates/agent-file-template.md +28 -0
  638. package/resources/gofer/templates/assumptions-template.md +94 -0
  639. package/resources/gofer/templates/audit-history-template.md +35 -0
  640. package/resources/gofer/templates/brand/brand-profile-template.json +45 -0
  641. package/resources/gofer/templates/brand/document-style-template.md +50 -0
  642. package/resources/gofer/templates/brand/marp-theme-template.css +58 -0
  643. package/resources/gofer/templates/brownfield-analysis.md +44 -0
  644. package/resources/gofer/templates/business-metrics-template.md +120 -0
  645. package/resources/gofer/templates/business-owner-summary-template.md +83 -0
  646. package/resources/gofer/templates/checklist-template.md +40 -0
  647. package/resources/gofer/templates/ciso-security-summary-template.md +70 -0
  648. package/resources/gofer/templates/context-bundle-template.md +76 -0
  649. package/resources/gofer/templates/contract-pack-template.md +109 -0
  650. package/resources/gofer/templates/cto-architecture-summary-template.md +83 -0
  651. package/resources/gofer/templates/discovery-template.md +92 -0
  652. package/resources/gofer/templates/eai-preflight-template.md +144 -0
  653. package/resources/gofer/templates/goal-ledger-template.json +69 -0
  654. package/resources/gofer/templates/gofer-model-policy.yaml +97 -0
  655. package/resources/gofer/templates/issues-template.md +106 -0
  656. package/resources/gofer/templates/journey/base-journey.md +95 -0
  657. package/resources/gofer/templates/journey/industry-variants.yaml +277 -0
  658. package/resources/gofer/templates/loop-contract-template.json +68 -0
  659. package/resources/gofer/templates/plan-template.md +215 -0
  660. package/resources/gofer/templates/problem-brief-template.md +85 -0
  661. package/resources/gofer/templates/proposal-review-template.md +79 -0
  662. package/resources/gofer/templates/research-template.md +222 -0
  663. package/resources/gofer/templates/reuse-scan-template.md +43 -0
  664. package/resources/gofer/templates/sequence-diagrams/option-spectrum.yaml +178 -0
  665. package/resources/gofer/templates/service-fit-matrix-template.md +29 -0
  666. package/resources/gofer/templates/session-handoff-template.md +172 -0
  667. package/resources/gofer/templates/spec-summary-template.md +118 -0
  668. package/resources/gofer/templates/spec-template.md +196 -0
  669. package/resources/gofer/templates/stakeholder-comms-template.md +330 -0
  670. package/resources/gofer/templates/stakeholder-review-index-template.md +54 -0
  671. package/resources/gofer/templates/tasks-template.md +323 -0
  672. package/resources/gofer/templates/ui-approval-template.md +32 -0
  673. package/resources/gofer/templates/ui-preview-brief-template.md +65 -0
  674. package/resources/gofer/templates/ui-review-log-template.md +11 -0
  675. package/resources/gofer/templates/visuals/.gitkeep +0 -0
  676. package/resources/gofer/templates/visuals/bounded-context-map.md +19 -0
  677. package/resources/gofer/templates/visuals/bounded-context-template.md +47 -0
  678. package/resources/gofer/templates/visuals/c4-container-template.md +38 -0
  679. package/resources/gofer/templates/visuals/c4-container.md +20 -0
  680. package/resources/gofer/templates/visuals/c4-context-template.md +46 -0
  681. package/resources/gofer/templates/visuals/capability-heatmap-template.md +54 -0
  682. package/resources/gofer/templates/visuals/data-model-erd-template.md +41 -0
  683. package/resources/gofer/templates/visuals/erd.md +19 -0
  684. package/resources/gofer/templates/visuals/impact-canvas.md +40 -0
  685. package/resources/gofer/templates/visuals/risk-heatmap-template.md +51 -0
  686. package/resources/gofer/templates/visuals/roi-projection.md +17 -0
  687. package/resources/gofer/templates/visuals/value-stream-asis.md +16 -0
  688. package/resources/gofer/templates/visuals/value-stream-tobe.md +18 -0
  689. package/resources/gofer/templates/working-backwards-prfaq-template.md +165 -0
  690. package/resources/linked-sources.json +25 -0
@@ -0,0 +1,836 @@
1
+ ---
2
+ name: 2_gofer_specify
3
+ description: "Generate a feature specification from research findings and any supporting review context."
4
+ title: "Gofer Specify"
5
+ category: pipeline
6
+ surfaces:
7
+ - claude
8
+ - claude-mirror
9
+ - copilot
10
+ - vscode
11
+ - codex
12
+ - gemini
13
+ - github-prompts
14
+ - agents-skills
15
+ - system-skills
16
+ aliases: [gofer:specify]
17
+ ---
18
+ ---
19
+ description: Create feature specification informed by codebase research
20
+ ---
21
+
22
+ # Gofer Specify
23
+
24
+ ## EAI Platform Session Preflight
25
+
26
+ Before any Gofer stage/helper command does pipeline work:
27
+
28
+ 1. Treat durable delivery as EAI Platform delivery by default, with Azure second
29
+ and every other stack only by explicit exception.
30
+ 2. Run `eai whoami` and confirm the EAI CLI is installed, the user is logged in,
31
+ and an active tenant is visible.
32
+ 3. If `eai` is missing, `eai whoami` fails, the token is expired, or no active
33
+ tenant is available, stop and run `/gofer:eai-first-run` or ask the user to
34
+ approve login/setup before continuing.
35
+ 4. For EAI app delivery, do not continue into research, specification, planning,
36
+ tasks, implementation, or validation until
37
+ `.specify/specs/{feature}/eai-preflight.md` records login, tenant, template,
38
+ app-readiness, and next-action evidence.
39
+ 5. Do not write tokens, secrets, private tenant IDs, or local `.env` values into
40
+ Gofer artifacts; record only product-safe readiness status and evidence.
41
+
42
+ ## Token And Cost Policy
43
+ <!-- gofer:token-cost-policy:start -->
44
+
45
+ Before spawning agents, calling tools, or loading large files:
46
+
47
+ 1. Treat `.specify/memory/gofer-model-policy.yaml` as the repo-owned source of truth for simple, medium, hard, and arbiter model routing. If it is missing, run `/gofer:bootstrap-workspace` before continuing.
48
+ 2. Use the cheapest capable model first.
49
+ - Claude: Haiku for scouting/extraction; Sonnet for normal implementation, synthesis, validation, and security; Opus for high-risk arbitration or release-critical failures.
50
+ - Codex/OpenAI: GPT mini for simple coding; GPT nano only for locate/classify/summarize/mechanical work; GPT-5.3-Codex or flagship GPT for tool-heavy coding, architecture, and release-critical validation.
51
+ - Gemini: Flash-Lite for cheap large-context scan/summarize; Flash for default research synthesis; Pro for large-context architecture or high-risk arbitration.
52
+ - Copilot: prefer Auto for simple and default work; ask the user before choosing a paid/high-tier picker model for hard security, architecture, or release gates.
53
+ 3. Keep raw tool output out of the main conversation context. Save stable findings to `.specify/specs/{feature}/context-bundle.md`, then work from summaries.
54
+ 4. Use provider prompt/context caching only for stable, non-secret prefixes: Gofer scaffold, AGENTS/CLAUDE/Copilot instructions, constitution, repo map, stage contracts, and validation rubric.
55
+ 5. Before continuing after large research, planning, implementation, or validation bursts, checkpoint the durable artifacts and compact/clear/resume context when the host supports it.
56
+ 6. Escalate model tier only when a cheaper pass is low-confidence, contradictory, security-sensitive, or blocking release quality.
57
+ <!-- gofer:token-cost-policy:end -->
58
+
59
+ ## User Input
60
+
61
+ ```text
62
+ $ARGUMENTS
63
+ ```
64
+
65
+ You **MUST** consider the user input before proceeding (if not empty).
66
+
67
+ ## Execution Profile And Artifact Churn
68
+
69
+ Carry forward the `fast` / `standard` / `full` / `dynamic` profile chosen in
70
+ research. Keep labels generic: `docs-only`, `single-repo-code`, `cross-repo`,
71
+ `api-contract`, `auth-security`, `data-model`, `infra-config`,
72
+ `release-critical`, `broad-fanout`, `unknown-blast-radius`, `unknown`.
73
+
74
+ Also read `execution-profile.md` when present. Keep the same
75
+ `effectiveProfile` unless new evidence changes the risk labels; if that
76
+ happens, update the file and explain the new `profileFloor`,
77
+ `effectiveProfile`, and reason in `traceability.md`.
78
+
79
+ - **fast** specs should be short and scoped, with no new optional artifact set
80
+ unless research found implementation risk.
81
+ - **standard** specs should include normal user stories, acceptance criteria,
82
+ test expectations, and protected boundaries.
83
+ - **full** specs must explicitly capture contract, security, data, infra,
84
+ rollout, and validation obligations with evidence references.
85
+ - **dynamic** specs must capture decomposition boundaries, shard ownership,
86
+ unresolved blast-radius questions, reducer evidence expectations, and
87
+ confirmation gates.
88
+
89
+ Do not rediscover context already summarized in `research.md` or
90
+ `proposal-review.md`; consume it, cite it, and only reopen files when a claim is
91
+ ambiguous.
92
+
93
+ ## Prerequisites
94
+
95
+ This command expects:
96
+
97
+ - Feature directory already created at `.specify/specs/{feature}/`
98
+ - `research.md` completed from `/1_gofer_research`
99
+ - `goal-ledger.json` seeded from `/1_gofer_research`
100
+ - `loop-contract.json` seeded from `/1_gofer_research`
101
+ - `proposal-review.md` if research created supporting review context
102
+
103
+ If these don't exist, prompt user to run `/1_gofer_research` first.
104
+
105
+ ---
106
+
107
+ ## Spec Artifact Guarantee
108
+
109
+ This stage is the first point where the placeholder `spec.md` created by
110
+ feature bootstrap becomes a real feature specification. Before this command
111
+ finishes or auto-chains to `/3_gofer_plan`, verify that
112
+ `{FEATURE_DIR}/spec.md` exists, is non-empty, and no longer contains the raw
113
+ template placeholders such as `[FEATURE NAME]`, `[###-feature-name]`,
114
+ `[Describe this user journey]`, `System MUST [specific capability]`, or
115
+ `ACTION REQUIRED`. If the check fails, write or repair `spec.md` immediately and
116
+ do not continue to planning.
117
+
118
+ Downstream stages use repo scripts that fail on missing, empty, or still-template
119
+ specs. Treat that failure as a required return to `/2_gofer_specify`, not as a
120
+ script problem to bypass.
121
+
122
+ ## Outline
123
+
124
+ 1. Context health check
125
+ 2. Validate any supporting proposal review context and load existing findings
126
+ 3. Dispatch specification agents (sub-agents handle heavy generation)
127
+ 4. Review agent output, handle clarifications
128
+ 5. Optional multi-perspective review
129
+ 6. Output: `.specify/specs/{feature}/spec.md`
130
+ 7. Stakeholder PR/FAQ output: `working-backwards-prfaq.md`,
131
+ `prfaq-history/02-specify.md`, `spec-summary.md`,
132
+ `business-owner-summary.md`, and `stakeholder-review-index.md`
133
+ 8. EnterpriseAI profile output: `.specify/specs/{feature}/contract-pack.md`
134
+
135
+ ---
136
+
137
+ ## Step 0: Context Health Check
138
+
139
+ Before starting specification, assess context window health:
140
+
141
+ ```bash
142
+ .specify/scripts/bash/check-context-health.sh
143
+ ```
144
+
145
+ - If **< 50%**: Proceed normally
146
+ - If **50-70%**: Consider `/compact` before loading research.md
147
+ - If **> 70%**: Start new session with handoff summary
148
+
149
+ ---
150
+
151
+ ## Step 1: Load Context (Lightweight)
152
+
153
+ 1. **Run setup script**:
154
+
155
+ ```bash
156
+ .specify/scripts/bash/check-prerequisites.sh --json --paths-only
157
+ ```
158
+
159
+ Parse JSON for FEATURE_DIR. Use `--paths-only` because specification runs
160
+ before planning, so `plan.md` must NOT be required at this stage.
161
+
162
+ 2. **Scan research.md** from FEATURE_DIR (do NOT load full content into main
163
+ context — agents will read it directly):
164
+ - Note the feature name and description
165
+ - Note whether discovery.md exists
166
+ - Note whether proposal-review.md exists
167
+ - Note whether goal-ledger.json exists and which goals, metrics, delivery
168
+ states, and re-loop triggers it records
169
+ - Note whether loop-contract.json exists and which evaluation commands,
170
+ success criteria, stop conditions, and escalation rules it records
171
+ - If loop-contract.json is missing, initialize it with
172
+ `node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 2_specify --init --json`
173
+
174
+ 3. **Note template path**: `.specify/templates/spec-template.md`
175
+
176
+ 4. **Check for discovery.md**:
177
+
178
+ ```bash
179
+ ls -la {FEATURE_DIR}/discovery.md 2>/dev/null
180
+ ```
181
+
182
+ 5. **Check for proposal-review.md**:
183
+ ```bash
184
+ ls -la {FEATURE_DIR}/proposal-review.md 2>/dev/null
185
+ ```
186
+
187
+ ---
188
+
189
+ ## Step 1.25: Optional Proposal Review Context
190
+
191
+ `proposal-review.md` is optional supporting context between research and specification.
192
+
193
+ - If `proposal-review.md` is missing: continue using `research.md` as the
194
+ source of truth.
195
+ - If `proposal-review.md` exists: capture any business-scenario guidance,
196
+ architecture direction, selected option, and user overrides it records.
197
+ - If `proposal-review.md` records a clear user-approved direction: treat that as
198
+ authoritative. Otherwise, treat it as advisory context.
199
+
200
+ ---
201
+
202
+ ## Step 1.5: Discovery and Proposal Context Reference
203
+
204
+ If discovery.md exists, pass this mapping to the spec writer agent:
205
+
206
+ ### Discovery → Spec Mapping
207
+
208
+ | Discovery Section | Spec Section | How to Use |
209
+ | -------------------- | ------------------------ | ------------------------------------ |
210
+ | Problem Statement | Overview | Use pain point as feature motivation |
211
+ | Target Users | User Stories | Use persona as "As a [user type]" |
212
+ | Value Proposition | Success Criteria | Convert to measurable metrics |
213
+ | Success Metrics | Success Criteria | Use directly as targets |
214
+ | Constraints | Assumptions | Include as spec assumptions |
215
+ | Competitive Analysis | Overview or Out of Scope | Inform differentiation |
216
+
217
+ **Note**: This mapping is included in the spec writer agent's prompt below. If
218
+ discovery.md doesn't exist, the agent generates spec content from research.md
219
+ and user input.
220
+
221
+ If proposal-review.md exists, also pass this mapping:
222
+
223
+ ### Proposal Review → Spec Mapping
224
+
225
+ | Proposal Section | Spec Section | How to Use |
226
+ | ----------------------------- | ----------------------------- | -------------------------------------------------- |
227
+ | Recommended Business Scenario | Overview, Stories, Scope | Use as the approved scope and user value lens |
228
+ | Recommended Architecture | Assumptions, Dependencies | Carry forward the approved architecture direction |
229
+ | Architecture Options | Out of Scope, Assumptions | Record rejected options and why they were deferred |
230
+ | Key Decisions and Why | Requirements, NFRs | Preserve decision rationale in business terms |
231
+ | User Feedback and Overrides | Requirements, Scope, Glossary | Apply approved user changes before finalizing spec |
232
+
233
+ ---
234
+
235
+ ## Step 2: Dispatch Specification Agents
236
+
237
+ **CRITICAL**: You **MUST** delegate document generation to sub-agents using the
238
+ Task tool. Do NOT perform this work inline in the main context. The main context
239
+ should only orchestrate and review agent outputs.
240
+
241
+ ### Agent 1: Specification Writer
242
+
243
+ ```
244
+ Task: subagent_type="general-purpose", model="sonnet"
245
+ Prompt: "Generate a complete feature specification for [FEATURE_NAME].
246
+
247
+ Feature directory: {FEATURE_DIR}
248
+
249
+ Read these files for full context:
250
+ - {FEATURE_DIR}/research.md — Codebase analysis, integration points, patterns, constraints
251
+ - {FEATURE_DIR}/goal-ledger.json — machine-readable goals, metrics, delivery states, and re-loop triggers
252
+ - {FEATURE_DIR}/loop-contract.json — bounded loop objective, evaluation commands, success criteria, stop conditions, and escalation rules
253
+ - {FEATURE_DIR}/proposal-review.md — Supporting business scenario, architecture direction, options, overrides (read if exists, skip if not)
254
+ - .specify/templates/spec-template.md — Template structure to follow
255
+ - {FEATURE_DIR}/discovery.md — Business discovery findings (read if exists, skip if not)
256
+ - {FEATURE_DIR}/journeys/base-journey.md — AI-augmented four-step application journey (read if exists, skip if not)
257
+ - {FEATURE_DIR}/ui-preview-brief.md — UI-first preview brief for app delivery (read if exists, skip if not)
258
+ - {FEATURE_DIR}/service-fit-matrix.md — approved or draft service-fit evidence (read if exists, skip if not)
259
+ - {FEATURE_DIR}/context-bundle.md — Compact EnterpriseAI context (read if exists, skip if not)
260
+ - {FEATURE_DIR}/reuse-scan.md — Reuse-before-create evidence (read if exists, skip if not)
261
+
262
+ Generate the COMPLETE spec.md following this structure:
263
+
264
+ 1. YAML frontmatter: id, title, status: draft, created (ISO date), updated, author: Gofer
265
+ 2. Overview — High-level description of what this feature does and why it matters
266
+ 3. User Stories — Prioritized P1/P2/P3 with 'As a [user] I want to [action] So that [benefit]'
267
+ - Each story MUST have checkable acceptance criteria (- [ ] format)
268
+ 4. Functional Requirements — Each must be testable, reference codebase patterns from research
269
+ 5. Non-Functional Requirements — Performance, security, compatibility
270
+ 6. Success Criteria — Measurable, technology-agnostic outcomes in table format
271
+ 7. Assumptions — From research findings
272
+ 8. Dependencies — From research integration points
273
+ 9. Out of Scope — Clear boundaries
274
+ 10. Glossary — Key terms
275
+ 11. Research Traceability — Matrix mapping each research finding to a spec section
276
+ 12. Goal Ledger Alignment — Goal IDs, outcomes, metrics/targets, linked stories, linked requirements
277
+ 13. Loop Contract Alignment — loop objective, success criteria, required eval commands, max-iteration stop rules, and human escalation triggers
278
+ 14. AI-Augmented 4-Step Journey — required for app delivery, not applicable for explicit non-app work
279
+ 15. UI Preview And Approval Gate — required for app delivery, not applicable for explicit non-app work
280
+ 16. EAI Platform/Azure App Stack Policy — required for app delivery, not applicable for explicit non-app work
281
+ 17. EnterpriseAI Service Fit — required for app delivery, not applicable for explicit non-app work
282
+ 18. EnterpriseAI Contract Pack Summary — actors, object types, workflows, permissions, APIs/events, runtime assumptions, acceptance tests
283
+
284
+ If discovery.md exists, use it to:
285
+ - Use Problem Statement for Overview motivation
286
+ - Use Target Users persona for 'As a [user type]' in stories
287
+ - Use Success Metrics as targets in Success Criteria
288
+ - Use Value Proposition for primary value framing
289
+ - Keep goal-ledger.json aligned with the measurable outcomes and scope decisions
290
+ - Use Application Classification to decide whether the app journey is mandatory
291
+
292
+ If journeys/base-journey.md exists and is classified as app delivery, use it to:
293
+ - Keep the user-facing scope to four steps or fewer unless the user explicitly
294
+ accepted extra complexity
295
+ - Convert each step goal into functional requirements and acceptance criteria
296
+ - Preserve the AI assistance mode for each step: chat/voice/accessibility/
297
+ translation, contextual prefill, recommendation, validation, completion
298
+ checks, human review, audit trail, or escalation
299
+ - Add explicit requirements for user control, evidence display, confidence,
300
+ editability, and accessibility at each AI-assisted step
301
+
302
+ If ui-preview-brief.md exists, use it to:
303
+ - Require the first MVP preview to stay inside the approved EAI App Template
304
+ blocks before any create-new UI concept is proposed
305
+ - Require the specification to preserve the selected external/internal/hybrid
306
+ profile choice, package lane, coupling status, public-readiness target, and
307
+ block-porting decision for each UI block
308
+ - Require every proposed UI building block to cite an `eai blocks describe`
309
+ result by stable ID; ambiguous display names are not acceptable
310
+ - Require any unknown UI component to be recorded as a custom-block exception
311
+ with manifest shape, component owner, data/resource binding, and approval path
312
+ - Require Storybook story IDs and theme override points for every reusable or
313
+ ported block; if no story exists, make story creation or an approved exception
314
+ part of the requirements
315
+ - Require source-platform-coupled blocks to define the decoupling boundary through
316
+ `eai resources schema`, an adapter, or an explicit restricted-source exception
317
+ - Carry forward branding/logo requirements as explicit scope, not as implied
318
+ polish
319
+ - Require preview self-review evidence such as screenshot, local render proof,
320
+ or Playwright-style checks before stakeholder presentation
321
+ - Require a versioned `ui-review-log.md` and explicit `ui-approval.md` before
322
+ downstream planning/tasks are treated as complete
323
+
324
+ If service-fit-matrix.md exists, use it to:
325
+ - Separate desired platform capabilities into accessible now, purchasable but
326
+ unavailable now, and unsupported without new platform work
327
+ - Bind each chosen capability back to user-facing workflow needs rather than
328
+ generic platform availability
329
+ - Keep non-selected or blocked capabilities in Out of Scope, Assumptions, or
330
+ Risks as appropriate
331
+
332
+ If proposal-review.md exists, use it to:
333
+ - Treat explicitly user-approved directions as authoritative scope for the spec
334
+ - Reflect the strongest architecture direction in Assumptions, Dependencies, and NFR framing
335
+ - Carry forward any user overrides before finalizing requirements
336
+ - Place non-selected options in Out of Scope or Assumptions where appropriate
337
+
338
+ Rules:
339
+ - Focus on WHAT and WHY, never HOW to implement
340
+ - Written for business stakeholders, not developers
341
+ - Maximum 3 [NEEDS CLARIFICATION] markers for genuinely ambiguous items
342
+ - Acknowledge ALL constraints from research.md in Assumptions or NFRs
343
+ - Reference ALL integration points from research.md in Dependencies
344
+ - Prefer explicit user-approved directions in proposal-review.md when present; otherwise treat it as advisory context
345
+ - Each functional requirement must include Validation and Integration references
346
+ - Explicit non-app work MUST keep the shared numbered stages but MUST NOT be
347
+ forced to create app-only preview, approval, branding, or service-fit
348
+ sections beyond marking them "Not applicable"
349
+
350
+ Write the complete specification to {FEATURE_DIR}/spec.md.
351
+ When `workflowProfile` is explicitly `enterpriseai`, also write
352
+ {FEATURE_DIR}/contract-pack.md using the contract pack requirements below.
353
+
354
+ Return a structured summary:
355
+ - User story count and priorities
356
+ - Functional requirement count
357
+ - Success criteria count
358
+ - [NEEDS CLARIFICATION] items (if any)
359
+ - Research coverage: integration points addressed / total
360
+ - Research coverage: constraints addressed / total"
361
+ ```
362
+
363
+ ### Agent 2: Quality Checklist & Research Validator
364
+
365
+ ```
366
+ Task: subagent_type="general-purpose", model="haiku"
367
+ Prompt: "Validate the specification at {FEATURE_DIR}/spec.md against research
368
+ findings and generate a quality checklist.
369
+
370
+ Read:
371
+ - {FEATURE_DIR}/spec.md — The specification to validate
372
+ - {FEATURE_DIR}/research.md — Research findings to cross-reference
373
+ - {FEATURE_DIR}/proposal-review.md — Supporting review decisions to cross-reference when present
374
+
375
+ Part 1: Research Integration Validation (GAP-04)
376
+ For EACH integration point in research.md, check if it's addressed in spec:
377
+ - In Dependencies, Functional Requirements, or Assumptions section
378
+ For EACH constraint from research.md, check if acknowledged in spec:
379
+ - In Assumptions or Non-Functional Requirements
380
+ For EACH technology decision, check if reflected in Dependencies.
381
+ For EACH decision or override captured in proposal-review.md, check if it is
382
+ represented in Overview, Requirements, Assumptions, Dependencies, or Out of Scope.
383
+
384
+ Build a coverage matrix:
385
+ | Research Finding | Type | Spec Section | Status (COVERED/MISSING) |
386
+
387
+ Part 2: Quality Checklist
388
+ Validate these dimensions against spec.md:
389
+ - Content Quality: No implementation details, user-focused, non-technical language
390
+ - Requirement Completeness: Testable, unambiguous, measurable success criteria
391
+ - Research Integration: All integration points, constraints, patterns addressed
392
+ - Acceptance Criteria: Every user story has checkable criteria
393
+
394
+ Write the checklist to {FEATURE_DIR}/checklists/requirements.md.
395
+
396
+ Return:
397
+ - Research coverage percentage
398
+ - Count of MISSING research items (if any)
399
+ - Specific gaps that need fixing
400
+ - Quality checklist pass/fail status"
401
+ ```
402
+
403
+ **Run Agent 1 first**, then Agent 2 after spec.md is written.
404
+
405
+ ---
406
+
407
+ ## Step 3: Review Agent Output
408
+
409
+ After both agents complete:
410
+
411
+ 1. **Review spec writer summary** — Verify:
412
+ - All user stories have acceptance criteria
413
+ - Success criteria are measurable and technology-agnostic
414
+ - Dependencies reference correct codebase components from research
415
+ - Scenario and architecture choices from proposal-review.md are reflected
416
+ - Research traceability matrix is complete
417
+
418
+ 2. **Check research coverage** — From the validator agent:
419
+ - If MISSING items found: Edit spec.md to add missing coverage
420
+ - Add missing integration points to Dependencies section
421
+ - Add missing constraints to Assumptions or NFR sections
422
+ - Update the Research Traceability matrix
423
+
424
+ 3. **Fix any gaps** — Make targeted edits to spec.md for coverage failures
425
+
426
+ 4. **Handle clarifications** — If [NEEDS CLARIFICATION] markers exist (max 3):
427
+ - Present questions with suggested answers to user
428
+ - Wait for user response
429
+ - Update spec.md with answers
430
+
431
+ ---
432
+
433
+ ## Step 3.7: Multi-Perspective Spec Review (Optional)
434
+
435
+ Before finalizing, optionally run multi-perspective strategies to stress-test
436
+ the specification. **Skip this step if the spec is simple or time-constrained.**
437
+
438
+ ### Strategy #10: Spec Ambiguity Detector
439
+
440
+ Spawn 3 agents that independently interpret the spec and write pseudocode.
441
+ Compare their interpretations to find ambiguities:
442
+
443
+ ```
444
+ Task: subagent_type="specify-ambiguity-detector", model="sonnet"
445
+ Prompt: "You are Agent [1/2/3]. Read spec.md at [FEATURE_DIR]/spec.md.
446
+ For each acceptance criterion, write pseudocode showing how you would implement it.
447
+ Document every assumption you make. Focus on literal interpretation."
448
+ ```
449
+
450
+ Run all 3 agents in parallel, then synthesize with judge:
451
+
452
+ ```
453
+ Task: subagent_type="multi-perspective-judge", model="opus"
454
+ Prompt: "Judge verdict type: ambiguity detection.
455
+ Compare these 3 independent spec interpretations. Identify criteria where agents
456
+ diverged — these are specification ambiguities that need clarification.
457
+ [paste all 3 agent outputs]"
458
+ ```
459
+
460
+ If the judge identifies HIGH ambiguity (>30% criteria diverge), add
461
+ clarifications to the spec before proceeding.
462
+
463
+ ### Strategy #19: User Journey Stress Tester
464
+
465
+ Spawn 4 persona agents to walk through user journeys and find gaps:
466
+
467
+ ```
468
+ Task: subagent_type="specify-journey-stress-tester", model="haiku"
469
+ Prompt: "You are Persona [1/2/3/4]. Walk through the user journeys in spec.md at [FEATURE_DIR]/spec.md.
470
+ Persona 1: Power user — fast, keyboard-driven, expects batch operations
471
+ Persona 2: First-timer — needs onboarding, clear errors, discoverable features
472
+ Persona 3: Accessibility-dependent — screen reader, keyboard-only
473
+ Persona 4: Adversarial — tries to break things, unexpected inputs"
474
+ ```
475
+
476
+ Run all 4 personas in parallel, then synthesize with judge:
477
+
478
+ ```
479
+ Task: subagent_type="multi-perspective-judge", model="opus"
480
+ Prompt: "Judge verdict type: journey gap analysis.
481
+ Synthesize 4 persona journey reports. Flag gaps found by 2+ personas as HIGH priority.
482
+ [paste all 4 agent outputs]"
483
+ ```
484
+
485
+ If HIGH priority gaps are found, add them to the spec before proceeding.
486
+
487
+ ---
488
+
489
+ ## Step 4: Validate Quality
490
+
491
+ The quality checklist was generated by Agent 2 at
492
+ `{FEATURE_DIR}/checklists/requirements.md`.
493
+
494
+ 1. **Verify checklist exists** and all dimensions pass
495
+ 2. **If items fail**: Update spec.md, re-validate (max 3 iterations)
496
+ 3. **If [NEEDS CLARIFICATION] markers remain** (max 3):
497
+ - Present questions with suggested answers
498
+ - Wait for user response
499
+ - Update spec with answers
500
+ - Re-validate
501
+
502
+ ---
503
+
504
+ ## Step 5: Sequence Diagram Option Generation (Optional)
505
+
506
+ **If a base journey exists** at `{FEATURE_DIR}/journeys/base-journey.md`:
507
+
508
+ Generate 5 implementation options spanning the efficiency→innovation spectrum.
509
+
510
+ ### Load Option Templates
511
+
512
+ Read `.specify/templates/sequence-diagrams/option-spectrum.yaml` for option
513
+ definitions:
514
+
515
+ - Option 1: Minimal (95% efficiency, 10% innovation)
516
+ - Option 2: Efficient (80% efficiency, 30% innovation)
517
+ - Option 3: Standard (60% efficiency, 50% innovation)
518
+ - Option 4: Enhanced (40% efficiency, 70% innovation)
519
+ - Option 5: Innovative (20% efficiency, 95% innovation)
520
+
521
+ ### Generate 5 Options
522
+
523
+ For each option (1-5), create a sequence diagram file at:
524
+ `{FEATURE_DIR}/sequence-diagrams/option-{N}-{name}.md`
525
+
526
+ **Each option file should include:**
527
+
528
+ ````markdown
529
+ ---
530
+ id: {feature}-option-{N}
531
+ optionNumber: {N}
532
+ name: {Option Name}
533
+ efficiencyScore: {from template}
534
+ innovationScore: {from template}
535
+ complexityTarget: {from template}
536
+ estimatedEffort: {from template}
537
+ created: {ISO-timestamp}
538
+ ---
539
+
540
+ # Sequence Diagram Option {N}: {Name}
541
+
542
+ ## Overview
543
+
544
+ {Description from option-spectrum.yaml adapted to this feature}
545
+
546
+ ## Characteristics
547
+
548
+ {List characteristics from template, adapted to feature context}
549
+
550
+ ## Actors
551
+
552
+ | Actor | Role | System/Human |
553
+ | --------- | --------------------- | ------------ |
554
+ | {Actor 1} | {Role in this option} | {Type} |
555
+
556
+ ## Sequence Diagram
557
+
558
+ ```mermaid
559
+ sequenceDiagram
560
+ autonumber
561
+ participant User
562
+ participant System
563
+ {Additional participants based on option complexity}
564
+
565
+ Note over User: Option {N} - {Name}
566
+
567
+ {Interactions appropriate to this option's complexity level}
568
+
569
+ {Gen AI touchpoints if applicable - highlighted in rect}
570
+ ```
571
+ ````
572
+
573
+ ## Gen AI Touchpoints
574
+
575
+ {List from template, or "None for this option" for Minimal}
576
+
577
+ - **{Touchpoint 1}**: {How it applies to this feature}
578
+
579
+ ## Scores
580
+
581
+ | Metric | Score |
582
+ | ---------- | ----------------- |
583
+ | Efficiency | {score}% |
584
+ | Innovation | {score}% |
585
+ | Complexity | {low/medium/high} |
586
+
587
+ ## Estimated Effort
588
+
589
+ {From template}
590
+
591
+ ## Risks
592
+
593
+ {List risks from template, adapted to feature}
594
+
595
+ ## Trade-offs
596
+
597
+ {Explain what you gain and lose with this option}
598
+
599
+ ```
600
+
601
+ ### Present Options for Selection
602
+
603
+ After generating all 5 options, present them to the user via **AskUserQuestion**:
604
+
605
+ ```
606
+
607
+ Question: "Which implementation option best fits your needs?" Header: "Option"
608
+ Options:
609
+
610
+ 1. "Option 1: Minimal" - "Fast delivery, basic functionality, no AI features"
611
+ 2. "Option 2: Efficient" - "Good balance of speed and quality, minimal AI"
612
+ 3. "Option 3: Standard (Recommended)" - "Full features, moderate AI integration"
613
+ 4. "Option 4: Enhanced" - "Rich features, significant AI assistance"
614
+ 5. "Option 5: Innovative" - "Cutting-edge, heavy AI/ML, longer timeline"
615
+
616
+ ````
617
+
618
+ ### Save Selection
619
+
620
+ After user selects an option:
621
+
622
+ 1. **Copy selected option** to `{FEATURE_DIR}/sequence-diagrams/selected-option.md`
623
+ 2. **Add selection metadata** to the file header:
624
+ ```yaml
625
+ selected: true
626
+ selectedAt: {ISO-timestamp}
627
+ selectedBy: user
628
+ ````
629
+
630
+ 3. **Reference in spec.md** - Add section:
631
+
632
+ ```markdown
633
+ ## Selected Implementation Approach
634
+
635
+ **Option {N}: {Name}** was selected as the implementation approach.
636
+
637
+ - Efficiency Score: {score}%
638
+ - Innovation Score: {score}%
639
+ - Estimated Effort: {effort}
640
+
641
+ See `sequence-diagrams/selected-option.md` for full details.
642
+ ```
643
+
644
+ ### Skip Conditions
645
+
646
+ Skip sequence diagram generation if:
647
+
648
+ 1. No base journey exists (user skipped journey mapping)
649
+ 2. Feature is purely technical infrastructure (no user-facing interactions)
650
+ 3. Context window is at Warning level (>50%)
651
+ 4. User explicitly opts out during journey confirmation
652
+
653
+ ---
654
+
655
+ ## Step 6: Report and Continue
656
+
657
+ After spec.md is complete:
658
+
659
+ ```
660
+ ✓ Specification complete: {FEATURE_DIR}/spec.md
661
+ ✓ Goal ledger aligned: {FEATURE_DIR}/goal-ledger.json
662
+ ✓ Loop contract aligned: {FEATURE_DIR}/loop-contract.json
663
+
664
+ Summary:
665
+ - [N] User Stories defined
666
+ - [N] Functional Requirements
667
+ - [N] Success Criteria
668
+
669
+ Checklist: {FEATURE_DIR}/checklists/requirements.md
670
+
671
+ {If sequence diagrams generated:}
672
+ Sequence Diagrams: {FEATURE_DIR}/sequence-diagrams/
673
+ Selected Option: Option {N} - {Name}
674
+ ```
675
+
676
+ **AUTO-CHAIN (MANDATORY)**: You MUST immediately invoke the next pipeline stage
677
+ by calling the Skill tool with skill="/3_gofer_plan". Do NOT ask the user for
678
+ confirmation. Do NOT output "Ready for next stage". Just invoke the skill NOW.
679
+
680
+ ---
681
+
682
+ ## Guidelines
683
+
684
+ ### Quick Guidelines
685
+
686
+ - Focus on **WHAT** users need and **WHY**
687
+ - Avoid HOW to implement (that's for /3_gofer_plan)
688
+ - Written for business stakeholders, not developers
689
+ - **Use research findings** to inform requirements
690
+
691
+ ### Success Criteria Guidelines
692
+
693
+ Success criteria must be:
694
+
695
+ 1. **Measurable**: Specific metrics (time, percentage, count)
696
+ 2. **Technology-agnostic**: No frameworks, languages, databases
697
+ 3. **User-focused**: Outcomes from user perspective
698
+ 4. **Verifiable**: Can be tested without implementation details
699
+
700
+ ### Research Integration
701
+
702
+ - Reference research.md for technical context
703
+ - Use identified integration points in dependencies
704
+ - Acknowledge constraints in assumptions
705
+ - Align with codebase patterns discovered
706
+
707
+ ---
708
+
709
+ ## EnterpriseAI Integration Map Requirements
710
+
711
+ The standard Gofer workflow is the public default. EnterpriseAI profile outputs
712
+ remain opt-in and migration-only.
713
+
714
+ When the workflow profile is `enterpriseai`, `spec.md` MUST include an explicit
715
+ **Integration Map** section that traces the flow from end-user interaction to
716
+ the deployed EnterpriseAI app and back. The map must be
717
+ expressed as an ordered dependency chain following the pattern:
718
+
719
+ ```
720
+ App -> EAI Services -> Deployment Target
721
+ ```
722
+
723
+ At minimum the map must name:
724
+
725
+ 1. **App**: the student-facing or business-facing app being
726
+ delivered (maps to the `eai-app-template` reference).
727
+ 2. **EAI Services**: the EnterpriseAI platform services the app consumes
728
+ (maps to the current public platform documentation or explicitly provided
729
+ project references).
730
+ 3. **Deployment Target**: the deployment environment and pipeline that will host
731
+ the running app (maps to the configured deployment documentation for the
732
+ target project).
733
+
734
+ Each link in the chain must reference the internal API contract that carries the
735
+ integration payload (for example `IAP-001` → `IAP-002` → `IAP-003`) so the plan
736
+ stage can bind implementation tasks directly to specification clauses.
737
+
738
+ ---
739
+
740
+ ## EnterpriseAI Contract Pack Requirements
741
+
742
+ When `workflowProfile` is explicitly `enterpriseai`, generate
743
+ `{FEATURE_DIR}/contract-pack.md` with these required sections:
744
+
745
+ | Section | Required Content |
746
+ | ------- | ---------------- |
747
+ | Actors | Business users, administrators, approvers, external systems, support roles |
748
+ | Object Types | Reused, extended, and newly proposed EnterpriseAI object types with owners |
749
+ | Workflows and Journeys | External user journeys and internal orchestration flows as separate views; app delivery must include the four-step-or-fewer AI-augmented journey |
750
+ | UI Preview and Approval | For app delivery: preview brief, EAI App Template constraints, branding inputs, preview validation evidence expectations, review-log requirements, approval gate rules; for non-app work: mark not applicable |
751
+ | EAI App Delivery Preflight | For EAI app delivery: CLI version/install state, account/login state, tenant role, template initialization readiness, app enrollment readiness, block catalog readiness, and blocked/deferred decisions |
752
+ | EAI Platform/Azure Stack Policy | For app delivery: EAI Platform as primary app substrate, Azure as preferred cloud/supporting substrate, custom code constrained to the EAI template, and non-EAI stacks only as approved exceptions |
753
+ | AI Assistance Contract | Step goal, assistance mode, context used, generated output, user controls, confidence/evidence, audit trail, completion signal, and escalation for each app step |
754
+ | EnterpriseAI Service Fit | For app delivery: desired capabilities, evidence source, accessible now vs purchasable vs unavailable classification, selected direction, and blocked-capability handling |
755
+ | Public Platform Boundary | Public docs/help/CLI/PublicAPI behavior the builder may rely on; private platform details intentionally excluded; upgrade/operator-required paths expressed as product-safe user actions |
756
+ | Permissions and Tenant Boundaries | Identity, authorization, policy, isolation, and tenant assumptions |
757
+ | APIs and Events | ResourceAPI surfaces, events, payload ownership, and contract-test hooks |
758
+ | Deployment and Runtime | Environment, config, observability, rollback, and operating assumptions |
759
+ | Acceptance Tests | Business, security, data, architecture, operational, and regression checks |
760
+
761
+ The contract pack must link every new object type/API/workflow back to
762
+ `reuse-scan.md` and must flag any "create new" decision that lacks evidence.
763
+ For EnterpriseAI public-facing work, the contract pack must also separate:
764
+
765
+ - **Public builder knowledge**: EAI CLI commands, PublicAPI responses, template
766
+ configuration, support documentation, and user-safe statuses such as
767
+ `available`, `operator_required`, `upgrade_required`, and `not_ready`.
768
+ - **Private platform knowledge**: internal service topology, direct downstream
769
+ credentials, private provisioning paths, and any bypass around plan limits or
770
+ AuthZ. These may inform internal implementation tasks, but must not be copied
771
+ into public docs, generated help, templates, or app guidance.
772
+
773
+ ## Step 7: Update Working Backwards PR/FAQ And Business Owner Summary
774
+
775
+ After `spec.md` is stabilized and before stage completion logging:
776
+
777
+ 1. Create or update `{FEATURE_DIR}/spec-summary.md` using
778
+ `.specify/templates/spec-summary-template.md` if it does not already exist.
779
+ If the optional `gofer:spec-summary` helper was explicitly requested, keep
780
+ using that helper contract; otherwise write the concise stage summary inline.
781
+ 2. Update `{FEATURE_DIR}/working-backwards-prfaq.md` from the current
782
+ specification.
783
+ - Tighten the Press Release headline, customer problem, launch description,
784
+ customer benefit, and "How To Get Started" around the approved product
785
+ behavior.
786
+ - Fill External FAQ with user-facing behavior, process change, included
787
+ scope, explicit exclusions, success measures, and fallback path.
788
+ - Keep Internal FAQ CTO/CISO sections as `Pending /3` or `Pending /6` where
789
+ the stage has not produced evidence yet.
790
+ 3. Write `{FEATURE_DIR}/prfaq-history/02-specify.md` as an immutable snapshot of
791
+ the updated PR/FAQ.
792
+ 4. Update `{FEATURE_DIR}/business-owner-summary.md` from
793
+ `.specify/templates/business-owner-summary-template.md` using
794
+ `problem-brief.md`, `discovery.md`, `spec-summary.md`, assumptions, value
795
+ stream, ROI, and business metrics when present.
796
+ 5. Update `{FEATURE_DIR}/stakeholder-review-index.md` and explicitly ask the
797
+ Business Owner to approve, revise, or defer:
798
+ - business scenario
799
+ - process change
800
+ - business case / value measures
801
+ - assumptions and exclusions
802
+
803
+ Do not block the normal auto-chain unless the user explicitly asks to pause for
804
+ review. The review index captures pending stakeholder decisions so downstream
805
+ stages can reconcile them.
806
+
807
+ ---
808
+
809
+ ## Observability Logging
810
+
811
+ At stage completion, log metrics:
812
+
813
+ ```bash
814
+ .specify/scripts/bash/log-stage.sh 2_specify --complete --tokens [N] --compactions [N]
815
+ ```
816
+
817
+ Logs to: `.specify/logs/pipeline.jsonl`
818
+
819
+ ---
820
+
821
+ ## Optional Helpers: Vocabulary Extraction and Spec Summary
822
+
823
+ - If the operator explicitly requests the `vocabulary` selector after `spec.md`
824
+ is stabilized, run `gofer:vocabulary` inline and write
825
+ `.specify/specs/{feature}/glossary.md` using the same artifact contract as the
826
+ standalone helper.
827
+ - This stage creates or updates a baseline `spec-summary.md` for the
828
+ Business Owner summary and PR/FAQ. If the operator explicitly requests the
829
+ `spec-summary` selector after `spec.md` is stabilized, run
830
+ `gofer:spec-summary` inline to deepen or regenerate
831
+ `.specify/specs/{feature}/spec-summary.md` using the same artifact contract as
832
+ the standalone helper.
833
+ - If `spec.md` is missing, continue the stage normally and report that the
834
+ helper was not run.
835
+ - These selectors are optional and do not change stage progress, routing, or
836
+ pipeline state.