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