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,1287 @@
1
+ ---
2
+ name: 0_gofer_start
3
+ description: "Start Gofer, confirm EAI readiness, and route the delivery pipeline."
4
+ ---
5
+
6
+ ---
7
+ description: Start Gofer, confirm EAI readiness, and orchestrate the unified pipeline
8
+ ---
9
+
10
+ # Gofer Start
11
+
12
+ ## Token And Cost Policy
13
+ <!-- gofer:token-cost-policy:start -->
14
+
15
+ Before spawning agents, calling tools, or loading large files:
16
+
17
+ 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.
18
+ 2. Use the cheapest capable model first.
19
+ - Claude: Haiku for scouting/extraction; Sonnet for normal implementation, synthesis, validation, and security; Opus for high-risk arbitration or release-critical failures.
20
+ - 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.
21
+ - Gemini: Flash-Lite for cheap large-context scan/summarize; Flash for default research synthesis; Pro for large-context architecture or high-risk arbitration.
22
+ - 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.
23
+ 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.
24
+ 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.
25
+ 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.
26
+ 6. Escalate model tier only when a cheaper pass is low-confidence, contradictory, security-sensitive, or blocking release quality.
27
+ <!-- gofer:token-cost-policy:end -->
28
+
29
+ ## Workspace Preflight
30
+
31
+ Before doing stage/helper work:
32
+
33
+ 1. Resolve the repository root.
34
+ 2. Check the core Gofer sentinels:
35
+ - `.specify/.gofer-version`
36
+ - `.specify/commands/0_gofer_start.md`
37
+ - `.specify/templates/spec-template.md`
38
+ - `.specify/templates/loop-contract-template.json`
39
+ - `.specify/scripts/bash/create-new-feature.sh`
40
+ - `.specify/scripts/node/parse-stage-command.mjs`
41
+ - `.specify/scripts/node/gofer-loop-audit.mjs`
42
+ - `.specify/scripts/hooks/post-tool-use.mjs`
43
+ - `.specify/scripts/powershell/install-optional-tools.ps1`
44
+ - `.specify/templates/gofer-model-policy.yaml`
45
+ - `.specify/memory/gofer-model-policy.yaml`
46
+ - `.specify/specs/`
47
+ - `.specify/memory/`
48
+ 3. Check host-specific repo-owned files when relevant:
49
+ - Claude: `AGENTS.md`, `CLAUDE.md`, `.claude/settings.json`
50
+ - Codex: `AGENTS.md`
51
+ - Copilot: `.github/copilot-instructions.md`
52
+ - VS Code extension mirrors Claude/Copilot/Gemini resources itself and should still keep the core scaffold healthy
53
+ 4. If the repo already has the workspace checker script, prefer running:
54
+ - `node .specify/scripts/node/gofer-workspace-check.mjs --host codex --json`
55
+ 5. If the workspace is missing or stale, ask exactly:
56
+ - **"This repo is missing or stale for Gofer. Initialize/update it now?"**
57
+ 6. If the user says yes, run the Gofer workspace bootstrap helper and then resume this command from the top.
58
+ 7. If the user says no, stop and explain that Gofer stage/helper work depends on the repo-owned scaffold.
59
+
60
+ ## EAI Platform Session Preflight
61
+
62
+ Before any Gofer stage/helper command does pipeline work:
63
+
64
+ 1. Treat durable delivery as EAI Platform delivery by default, with Azure second
65
+ and every other stack only by explicit exception.
66
+ 2. Run `eai whoami` and confirm the EAI CLI is installed, the user is logged in,
67
+ and an active tenant is visible.
68
+ 3. If `eai` is missing, `eai whoami` fails, the token is expired, or no active
69
+ tenant is available, stop and run `/gofer:eai-first-run` or ask the user to
70
+ approve login/setup before continuing.
71
+ 4. For EAI app delivery, do not continue into research, specification, planning,
72
+ tasks, implementation, or validation until
73
+ `.specify/specs/{feature}/eai-preflight.md` records login, tenant, template,
74
+ app-readiness, and next-action evidence.
75
+ 5. Do not write tokens, secrets, private tenant IDs, or local `.env` values into
76
+ Gofer artifacts; record only product-safe readiness status and evidence.
77
+
78
+ ## EAI App Delivery Preflight
79
+
80
+ Run this after the Gofer workspace preflight and before application-delivery
81
+ discovery whenever the request is an app build, dashboard, portal, workflow,
82
+ form, chatbot, app, tenant-scoped business experience, or any
83
+ durable user-facing product. App delivery in EAI Gofer means EAI Platform
84
+ delivery by default. Do not run this for explicit non-app work. If the user asks
85
+ for a non-EAI app stack, pause and confirm that they are intentionally leaving
86
+ the EAI Gofer app-delivery path before continuing.
87
+
88
+ Use current public EAI documentation as the safe source of truth:
89
+
90
+ - EAI CLI docs: `https://eai-tools.github.io/eai/docs/overview`
91
+ - EAI API reference: `https://eai-tools.github.io/eai/docs/api-reference`
92
+ - EAI static registry: `https://eai-tools.github.io/eai/registry/`
93
+ - EAI scenario library: `https://eai-tools.github.io/eai/scenarios`
94
+ - EAI app template: `https://github.com/eai-tools/eai-app-template`
95
+
96
+ ### EAI Platform And Azure App Stack Policy
97
+
98
+ For application delivery, Gofer MUST use this stack order:
99
+
100
+ 1. **EAI Platform first, including the EAI app template**: EAI app template, EAI
101
+ CLI, PublicAPI, object types, workflows, block catalog, ResourceAPI/resource
102
+ schema, tenant/app enrollment, identity, provisioning, diagnostics, and
103
+ documented EAI platform services are one EAI Platform app substrate.
104
+ 2. **Azure second**: Azure services that are already part of, documented for, or
105
+ compatible with the EAI Platform operating model, especially deployment,
106
+ identity, storage, observability, and integration services.
107
+ 3. **Everything else only by explicit exception**: Firebase, Supabase, Vercel as
108
+ the primary runtime, AWS, GCP, bespoke backends, unmanaged databases, or
109
+ unrelated SaaS platforms must not be recommended as the primary app substrate.
110
+ They may appear only as integration targets, migration references, or
111
+ approved exceptions with rationale, owner, expiry, and validation evidence.
112
+
113
+ Application-specific logic, adapters, UI extensions, and tests belong inside the
114
+ EAI Platform/EAI app template scaffold and must obey package-profile,
115
+ public-readiness, tenant, and security constraints. They are implementation
116
+ inside the primary substrate, not a separate stack tier.
117
+
118
+ If a required capability is not accessible in EAI Platform or Azure, record it
119
+ in `{FEATURE_DIR}/service-fit-matrix.md` as `unavailable without new platform
120
+ work`, `operator_required`, or `upgrade_required`. Do not silently replace it
121
+ with an unrelated non-EAI stack.
122
+
123
+ ### EAI Preflight Checks
124
+
125
+ 1. **Classify the build path**
126
+ - Treat the work as EAI app delivery when the user asks to build an app,
127
+ dashboard, portal, workflow, form, chatbot, app,
128
+ tenant-scoped business experience, or durable user-facing product.
129
+ - If the user is only doing research, docs, audit, migration planning, or
130
+ non-EAI application work, record that EAI preflight is not applicable.
131
+ - If the user asks for a non-EAI app stack, ask whether they want to leave the
132
+ EAI Gofer app-delivery path. If yes, record the exception and stop EAI app
133
+ implementation guidance; if no, keep the EAI Platform/Azure stack policy.
134
+ 2. **Run first-run setup when prerequisites are missing**
135
+ - If Git, Node.js, npm, `eai`, login, tenant access, the EAI app template, or
136
+ the Gofer scaffold is missing or stale, run `/gofer:eai-first-run` before
137
+ research, specification, planning, or implementation.
138
+ - `/gofer:eai-first-run` is the cross-platform setup contract for macOS,
139
+ Linux, Windows, GitHub Codespaces, Claude Code, Codex, Copilot, Gemini, and
140
+ VS Code. It checks first, asks only when action is needed, installs the EAI
141
+ CLI when approved, checks `eai update --check`, confirms login and tenant,
142
+ runs `eai init <project-name> --skip-prompts --company-tenant
143
+ <active-tenant-id>` when approved, verifies Gofer files, and then returns
144
+ here.
145
+ - If `/0_gofer_start` is unavailable in a new repo, the user should run
146
+ the plugin-level `/gofer:eai-first-run` command after installing or
147
+ updating the Gofer plugin.
148
+ 3. **Install or update the EAI CLI when needed**
149
+ - Check `git --version`, `node --version`, `npm --version`, `npm config get
150
+ @eai-tools:registry`, and `eai --version`.
151
+ - If `eai` is missing and the user approves, install it:
152
+ ```bash
153
+ npm config set @eai-tools:registry https://eai-tools.github.io/eai/registry/ --location=user
154
+ npm install -g @eai-tools/cli
155
+ eai --version
156
+ ```
157
+ - On Windows, use the same npm commands in PowerShell and avoid shell
158
+ redirection. In GitHub Codespaces, prefer user-level npm and avoid `sudo`
159
+ unless the user explicitly approves. If install fails, stop EAI app
160
+ delivery and give the user the exact commands above plus the EAI
161
+ account/setup link. Continue only if the user explicitly chooses a non-EAI
162
+ path.
163
+ - If `eai` is already installed, run `eai update --check`. If the CLI is
164
+ behind, record `upgrade_required` and ask before running `eai update`.
165
+ 4. **Discover CLI capabilities before assuming syntax**
166
+ - Run `eai --describe` and prefer advertised subcommands/options over stale
167
+ remembered syntax.
168
+ - If advertised, run `eai agent guide --format json` before planning EAI
169
+ platform work so the agent uses current CLI contracts and safe recovery
170
+ patterns.
171
+ - After any `eai` command error, run
172
+ `eai errors explain <code-or-reason> --format json` before proposing a
173
+ fix, and prefer the CLI's public-safe recovery commands over guessed
174
+ platform internals.
175
+ - If the CLI does not advertise `eai errors explain`, match the failure
176
+ against `.specify/references/platform/eai-error-catalog.yaml`, run the
177
+ listed read-only diagnostics before mutating fixes, and stop at the retry
178
+ or escalation condition instead of looping.
179
+ - For tenant member/admin changes, if `eai user invite` fails with
180
+ `EXTERNAL_SERVICE_ERROR`, a 5xx response, or
181
+ `user_invite_external_service_existing_member`, check for an existing
182
+ direct member with `eai user list --tenant <tenant-id> --search <email>
183
+ --format json`; use `eai user role set --tenant <tenant-id> --member-id
184
+ <member-id> --role tenant-admin --format json` only after read-only
185
+ evidence and user approval, verify the read-back, and tell the affected
186
+ app user to sign out and sign back in because Auth.js session or JWT role
187
+ data may be cached.
188
+ - Use JSON only where the CLI advertises it. `eai tenant list --format json`
189
+ is suitable for automation; `eai whoami` may be plain text on current
190
+ versions.
191
+ - Record whether the installed CLI advertises `eai app`, `eai resources
192
+ schema`, `eai workflow readiness`, `eai template check`, `eai gofer
193
+ refresh --check`, `eai provision entra`, `eai blocks`,
194
+ `eai agent guide`, and `eai errors explain`.
195
+ 5. **Check account, login, and tenant readiness**
196
+ - Run `eai whoami` to confirm login, active tenant, profile, token status,
197
+ and PublicAPI context.
198
+ - If not logged in or the token is expired, run `eai login` and then
199
+ `eai tenant select`.
200
+ - Run `eai tenant list --format json` and require at least one usable tenant
201
+ membership for EAI app delivery. Prefer a `tenant-admin` membership because
202
+ app enrollment and provisioning are tenant-admin actions.
203
+ - If no tenant is available, tell the user they need an EAI Platform account
204
+ and tenant access before Gofer can build an EAI app. Do not fabricate
205
+ tenant IDs or continue into implementation.
206
+ 6. **Check EAI template/project readiness**
207
+ - Detect existing template markers before scaffolding:
208
+ - `src/eai.config/object-types.ts`
209
+ - `src/eai.config/register.ts`
210
+ - `.env.example`
211
+ - `.npmrc`
212
+ - `package.json`
213
+ - Run `eai verify` only when the repo appears to be an EAI project. If
214
+ `eai verify` reports `E001` or "Not in an EAI project", treat the repo as
215
+ not initialized from the EAI app template.
216
+ - If the repo appears to be an EAI project and the commands are advertised,
217
+ run `eai template check --format json` and `eai gofer refresh --check
218
+ --format json` to identify EAI template or Gofer scaffold drift before
219
+ planning implementation.
220
+ - For a new or empty app workspace, ask:
221
+ **"This looks like an EAI app build, but this repo has not been initialized from the EAI app template. Initialize it with `eai init <app-name>` now?"**
222
+ - If the repo is non-empty or already contains source files, do not scaffold
223
+ over it silently. Ask whether to initialize a new sibling EAI app directory
224
+ with `eai init <app-name>`, or to stop and let the user prepare the repo.
225
+ 7. **Check app enrollment capability before build planning**
226
+ - Once app name and tenant are confirmed, run `eai app list --format
227
+ json` to confirm the tenant's current app enrollments.
228
+ - Before creating anything remote, ask the user to confirm the app name,
229
+ app key, company tenant, and any child-tenant boundary.
230
+ - If confirmed, use `eai app create <name> --tenant-id <tenant-id>
231
+ --format json` or the currently advertised equivalent from `eai
232
+ --describe`.
233
+ - Record the selected app key with `eai app select <key> --format json`
234
+ when available.
235
+ - Do not claim platform readiness from app creation alone. Later stages must
236
+ keep real EAI app gates separate: `eai app provision <key> --tenant-id <tenant-id> --select --format json`,
237
+ `eai types validate`,
238
+ `eai types seed --tenant-key <key> --tenant-id <tenant-id> --format json`,
239
+ `eai types diff`, `eai resources schema --tenant-id <tenant-id> --format json`,
240
+ `eai resources storage doctor --tenant-id <tenant-id> --format json`,
241
+ `eai verify storage --tenant-id <tenant-id>`, workflow readiness, and
242
+ preview/runtime readiness.
243
+ - Provision storage, Entra app registration, environment sync, object types,
244
+ and deployment only in the later plan/tasks/implement stages after the
245
+ business scenario and UI approval gates are complete.
246
+ 8. **Check template block and platform knowledge for research**
247
+ - Run or plan to run `eai blocks list --format json`, `eai blocks readiness
248
+ --package-profile <external|internal|hybrid> --format json`, and `eai
249
+ blocks describe <id> --format json` for candidate UI blocks.
250
+ - Run or plan to run `eai resources schema --format json` and
251
+ `eai workflow readiness --format json` so later stages can cite actual
252
+ platform resource fields, actions, events, and workflow availability
253
+ instead of guessing.
254
+ - For v4 passive ResourceAPI search requirements, run or plan to run
255
+ `eai resources storage doctor --tenant-id <tenant-id> --format json` and
256
+ treat fulltext, hybrid, and vector as separate readiness states. Prefer
257
+ `eai resources search "<query>" --fulltext` until doctor reports semantic
258
+ search modes ready. Do not apply this fallback to legacy v1/v3 or active
259
+ ResourceAPI behavior.
260
+ - Use the EAI scenario library to map the business problem to the common
261
+ four-step pattern: capture demand/context, prepare the decision, execute
262
+ and collaborate, then resolve/explain/improve.
263
+ - Keep private tenant IDs, tokens, secrets, and `.env.local` contents out of
264
+ Gofer artifacts. Record only product-safe readiness states and evidence.
265
+ - Treat `.specify/references/platform/eai-repo-contract.md` and
266
+ `.specify/references/platform/eai-error-catalog.yaml` as the repo-owned
267
+ fallback contract whenever live docs are unavailable or a command fails.
268
+ - If the user provides a browser or auth log with `AADSTS50011`,
269
+ `redirect_uri`, "reply URL specified in the request does not match", or
270
+ `/api/auth/callback/microsoft-entra-id`, record
271
+ `EAI_ENTRA_REDIRECT_URI_MISMATCH` in `eai-preflight.md` with a redacted
272
+ callback route pattern such as `https://<app-host>/api/auth/callback/...`.
273
+ Keep the exact callback URI and any debug output in the active terminal or
274
+ user-approved local notes only. Recover through EAI login, tenant
275
+ selection, and `eai provision entra --force --redirect-uri
276
+ <confirmed-callback-uri>` before suggesting manual Azure Portal edits. Use
277
+ `--debug` only when the user approves it, and redact private hostnames,
278
+ tenant IDs, client IDs, and tokens before writing artifacts.
279
+
280
+ ### EAI Preflight Artifact
281
+
282
+ For EAI app delivery, create or update
283
+ `.specify/specs/{feature}/eai-preflight.md` with:
284
+
285
+ | Field | Required Content |
286
+ | ----- | ---------------- |
287
+ | CLI install | `eai` path, version, install/update action taken |
288
+ | CLI release status | `eai update --check` result and whether upgrade is required |
289
+ | CLI capability source | `eai --describe` timestamp and relevant commands found |
290
+ | Login status | Logged in / needs login / account required, without tokens or secrets |
291
+ | Tenant readiness | Active tenant status, role category, whether app enrollment is allowed |
292
+ | Template readiness | Already EAI template / needs `eai init` / non-EAI repo decision |
293
+ | Drift readiness | `eai template check` / `eai gofer refresh --check` result or `E001` explanation |
294
+ | App enrollment | Existing app, new app to create, or blocked pending user confirmation |
295
+ | Entra redirect readiness | Redacted callback route pattern, tenant/client alignment state, and `AADSTS50011` recovery status. Never write exact private URLs, tenant IDs, client IDs, tokens, or debug output to committed artifacts. |
296
+ | Block catalog readiness | Available block commands and package profile compatibility evidence |
297
+ | App stack policy | EAI Platform including app template first, Azure second, or approved exception |
298
+ | Next action | Continue discovery, initialize template, request account/tenant access, or stop |
299
+
300
+ You are the Gofer orchestrator. Your job is to understand the user's business
301
+ scenario and route them through the **unified Gofer pipeline**.
302
+
303
+ ## The Unified Gofer Pipeline
304
+
305
+ ```text
306
+ ┌─────────────────────────────────────────────────────────────────┐
307
+ │ UNIFIED GOFER PIPELINE │
308
+ ├─────────────────────────────────────────────────────────────────┤
309
+ │ │
310
+ │ 0. /0_gofer_start → Gofer Start, routing, discovery │
311
+ │ Business scenario intake + optional problem validation │
312
+ │ ↓ AUTO │
313
+ │ 1. /1_gofer_research → research.md │
314
+ │ Deep codebase exploration + supporting review context │
315
+ │ ↓ AUTO │
316
+ │ 2. /2_gofer_specify → spec.md │
317
+ │ Feature specification informed by research │
318
+ │ ↓ AUTO │
319
+ │ 3. /3_gofer_plan → plan.md, data-model.md, contracts/ │
320
+ │ Technical architecture and design │
321
+ │ ↓ AUTO │
322
+ │ 4. /4_gofer_tasks → tasks.md, traceability.md, issues.md │
323
+ │ Dependency-ordered task breakdown │
324
+ │ ↓ AUTO │
325
+ │ 5. /5_gofer_implement → [source code] │
326
+ │ Execute tasks phase by phase │
327
+ │ ↓ AUTO │
328
+ │ 6. /6_gofer_validate → validation artifacts │
329
+ │ Validation, blast radius, and final engineering review │
330
+ │ │
331
+ │ All artifacts go to: .specify/specs/{feature}/ │
332
+ └─────────────────────────────────────────────────────────────────┘
333
+ ```
334
+
335
+ ## Auxiliary Gofer Commands
336
+
337
+ | Command | Purpose |
338
+ | ----------------------------- | ------------------------------------------------------- |
339
+ | `/0a_problem_validation` | Optional deeper problem framing before research |
340
+ | `/7_gofer_save` | Save session checkpoint mid-implementation |
341
+ | `/8_gofer_branding` | Brand templates and stakeholder documents |
342
+ | `/9_gofer_tests` | Define acceptance test cases using DSL |
343
+ | `/10_gofer_cloud` | READ-ONLY cloud infrastructure analysis |
344
+ | `/7a_stakeholder_comms` | Optional post-validation communications package |
345
+ | `/gofer_hydrate` | Reverse-engineer spec from existing code |
346
+ | `/gofer_constitution` | Create/update project constitution |
347
+ | `/gofer:check-workspace` | Check whether the repo scaffold is healthy |
348
+ | `/gofer:bootstrap-workspace` | Create or update the repo-owned Gofer scaffold |
349
+
350
+ ---
351
+
352
+ ## Step 1: Quick Context Scan
353
+
354
+ Before asking questions, scan the workspace for existing state:
355
+
356
+ ```bash
357
+ # Check for Gofer artifacts
358
+ ls -la .specify/specs/ 2>/dev/null
359
+
360
+ # Check for session checkpoints
361
+ find .specify/specs -name "session-checkpoint.md" -type f 2>/dev/null
362
+
363
+ # Check for constitution
364
+ ls -la .specify/memory/constitution.md 2>/dev/null
365
+ ```
366
+
367
+ ### What to Look For
368
+
369
+ | Artifact | Location | Indicates |
370
+ | ----------------------- | --------------------------- | ---------------------------- |
371
+ | `spec.md` | `.specify/specs/{feature}/` | Feature specified |
372
+ | `research.md` | `.specify/specs/{feature}/` | Research complete |
373
+ | `proposal-review.md` | `.specify/specs/{feature}/` | Optional supporting review context |
374
+ | `plan.md` | `.specify/specs/{feature}/` | Planning complete |
375
+ | `tasks.md` | `.specify/specs/{feature}/` | Ready for implement |
376
+ | `goal-ledger.json` | `.specify/specs/{feature}/` | Active objective ledger and drift triggers |
377
+ | `loop-contract.json` | `.specify/specs/{feature}/` | Bounded check-repair loop objective, commands, and stop rules |
378
+ | `loop-ledger.jsonl` | `.specify/specs/{feature}/` | Implementation/validation iteration evidence |
379
+ | `loop-audit-report.md` | `.specify/specs/{feature}/` | Latest loop contract and ledger audit |
380
+ | `goal-rebaseline-report.md` | `.specify/specs/{feature}/` | Latest closed-loop audit result |
381
+ | `working-backwards-prfaq.md` | `.specify/specs/{feature}/` | Running product release PR/FAQ |
382
+ | `prfaq-history/` | `.specify/specs/{feature}/` | Immutable stage snapshots of the PR/FAQ |
383
+ | `business-owner-summary.md` | `.specify/specs/{feature}/` | Business owner scenario, process, and value summary |
384
+ | `cto-architecture-summary.md` | `.specify/specs/{feature}/` | CTO/EAI Platform architecture summary |
385
+ | `ciso-security-summary.md` | `.specify/specs/{feature}/` | CISO security posture summary |
386
+ | `stakeholder-review-index.md` | `.specify/specs/{feature}/` | Stakeholder review status and approval asks |
387
+ | `session-checkpoint.md` | `.specify/specs/{feature}/` | Work paused (resumable) |
388
+ | `validation-report.md` | `.specify/specs/{feature}/` | Feature validated |
389
+ | `constitution.md` | `.specify/memory/` | Project principles set |
390
+
391
+ Report what you found before proceeding.
392
+
393
+ ---
394
+
395
+ ## Step 2: Determine Scenario
396
+
397
+ **ALWAYS ask the user what they want to do** - even if artifacts exist. Existing
398
+ artifacts might be for OTHER features, not what the user wants to work on now.
399
+
400
+ **"What would you like to accomplish today?"**
401
+
402
+ Present these options using the AskUserQuestion tool:
403
+
404
+ | Option | Description |
405
+ | ----------------------- | -------------------------------------------------------- |
406
+ | **A. New Feature** | Build something new from scratch with clear requirements |
407
+ | **B. Modify Existing** | Change or extend existing functionality in the codebase |
408
+ | **C. Fix a Bug** | Diagnose and fix a specific issue |
409
+ | **D. Explore/Research** | Understand the codebase before making changes |
410
+ | **E. Continue Work** | Continue from where I left off |
411
+ | **F. Setup Project** | Initialize constitution and project guidelines |
412
+
413
+ ### For Existing Codebases
414
+
415
+ If the context scan found existing artifacts, list them and ask:
416
+
417
+ **"I found these existing features/work items:"**
418
+
419
+ - List each spec in `.specify/specs/*/` with its name and status
420
+ - Note any session checkpoints (paused work)
421
+
422
+ Then ask: **"Do you want to continue one of these, or start something new?"**
423
+
424
+ ---
425
+
426
+ ## Step 2.5: Consultative Discovery (For New Features, Modifications, Bug Fixes)
427
+
428
+ When the user selects **A. New Feature**, **B. Modify Existing**, or **C. Fix a
429
+ Bug**, conduct a consultative discovery interview BEFORE routing to the
430
+ pipeline.
431
+
432
+ **First, offer the option to skip:**
433
+
434
+ | Option | Description |
435
+ | --------------------------- | ----------------------------------------------------------------------- |
436
+ | **Continue with Discovery** | Answer a few questions to ensure we build the right thing (Recommended) |
437
+ | **Skip Discovery** | I have clear requirements, go straight to implementation |
438
+
439
+ If user selects "Skip Discovery", proceed directly to Step 3.
440
+
441
+ ### Discovery Question 1: Problem Statement
442
+
443
+ **"What problem are you trying to solve?"**
444
+
445
+ **Recommended:** Based on initial context, suggest the most likely problem type.
446
+
447
+ | Option | Description | Implications |
448
+ | ------ | --------------------------------------- | ------------------------------------- |
449
+ | A | Users can't find what they need quickly | Focus on search/navigation UX |
450
+ | B | Manual processes taking too much time | Focus on automation/efficiency |
451
+ | C | Data is siloed across systems | Focus on integration/consolidation |
452
+ | D | Quality/reliability issues | Focus on testing/monitoring |
453
+ | E | [Context-specific suggestion] | [Based on user's initial description] |
454
+ | Custom | Describe your specific problem | We'll tailor the approach |
455
+
456
+ You can reply with the option letter, accept the recommendation by saying "yes",
457
+ or provide your own answer.
458
+
459
+ **Store response** in discovery context.
460
+
461
+ ### Discovery Question 2: Target Users
462
+
463
+ **"Who are the primary users of this feature?"**
464
+
465
+ **Recommended:** Suggest based on problem type selected.
466
+
467
+ | Option | Description | Implications |
468
+ | ------ | -------------------------- | --------------------------------- |
469
+ | A | End customers (external) | Focus on UX, onboarding, support |
470
+ | B | Internal team members | Focus on efficiency, integrations |
471
+ | C | Developers/technical users | Focus on APIs, documentation |
472
+ | D | Business stakeholders | Focus on reporting, dashboards |
473
+ | Custom | Describe your users | We'll create appropriate personas |
474
+
475
+ **Store response** in discovery context.
476
+
477
+ ### Discovery Question 3: Value Proposition
478
+
479
+ **"What specific value should this deliver?"**
480
+
481
+ **Recommended:** Suggest based on problem and user type.
482
+
483
+ | Option | Description | Implications |
484
+ | ------ | ----------------------------------------- | ------------------------------------ |
485
+ | A | Time savings (reduce X by Y%) | Need baseline metrics, time tracking |
486
+ | B | Cost reduction (save $X/month) | Need cost analysis, ROI tracking |
487
+ | C | Quality improvement (reduce errors by Y%) | Need error tracking, quality metrics |
488
+ | D | User satisfaction (increase NPS by Y) | Need feedback collection, surveys |
489
+ | Custom | Define your value metric | We'll build appropriate tracking |
490
+
491
+ **Store response** in discovery context.
492
+
493
+ ### Discovery Question 4: Success Metrics
494
+
495
+ **"How will you measure success?"**
496
+
497
+ Based on the value type selected, suggest relevant metrics:
498
+
499
+ | Value Type | Suggested Metrics |
500
+ | -------------- | ------------------------------------------------ |
501
+ | Time savings | Task completion time, manual steps eliminated |
502
+ | Cost reduction | Monthly costs before/after, resource utilization |
503
+ | Quality | Error rate, defect count, test coverage |
504
+ | Satisfaction | NPS score, support tickets, feature adoption |
505
+
506
+ Ask user to confirm or customize the metrics.
507
+
508
+ ### Optional: Competitive Research
509
+
510
+ **"Would you like me to research how leading companies solve this problem?"**
511
+
512
+ | Option | Description |
513
+ | ------ | ------------------------------------------ |
514
+ | Yes | Research competitors and document insights |
515
+ | Skip | Continue without competitive analysis |
516
+
517
+ If user selects Yes, note for research phase. If skipped, mark "Competitive
518
+ Analysis: Skipped".
519
+
520
+ ### Adaptive Depth
521
+
522
+ If user responds with uncertainty signals ("I'm not sure", "what would you
523
+ suggest?", "not certain"):
524
+
525
+ - Offer to explore deeper: **"I notice you might want more clarity on this.
526
+ Would you like me to ask a few more questions to help narrow down the
527
+ approach?"**
528
+ - If yes, ask context-appropriate follow-up questions
529
+ - If no, proceed with best recommendation
530
+
531
+ ### Create Discovery Artifact
532
+
533
+ After completing discovery questions, create
534
+ `.specify/specs/{feature}/discovery.md`:
535
+
536
+ ```markdown
537
+ ---
538
+ feature: '[Feature Name]'
539
+ created: '[ISO timestamp]'
540
+ discoveredBy: Gofer + [User]
541
+ status: complete
542
+ ---
543
+
544
+ # Business Discovery: [Feature Name]
545
+
546
+ ## Problem Statement
547
+
548
+ **Pain Point**: [From Question 1] **Current State**: [If mentioned] **Impact**:
549
+ [If mentioned]
550
+
551
+ ## Target Users
552
+
553
+ ### Primary Users
554
+
555
+ - **Persona**: [From Question 2]
556
+ - **Technical Level**: [Inferred or asked]
557
+ - **Key Needs**: [Captured from context]
558
+
559
+ ## Value Proposition
560
+
561
+ **Primary Value**: [From Question 3] **Quantified Goal**: [From Question 4]
562
+
563
+ ## Success Metrics
564
+
565
+ | Metric | Target | Measurement |
566
+ | ---------- | -------- | -------------- |
567
+ | [Metric 1] | [Target] | [How measured] |
568
+
569
+ ## Competitive Analysis
570
+
571
+ **Status**: [Researched / Skipped] [Insights if researched]
572
+
573
+ ## Discovery Decisions
574
+
575
+ | Decision | Choice | Rationale |
576
+ | ------------- | -------- | --------- |
577
+ | Problem Focus | [Choice] | [Why] |
578
+ | User Target | [Choice] | [Why] |
579
+ | Value Metric | [Choice] | [Why] |
580
+
581
+ ## AI-Readable Blocks Bridge
582
+
583
+ | Field | Decision |
584
+ | ----- | -------- |
585
+ | Profile Choice | External / Internal / Hybrid |
586
+ | Package Lane | {{public-package | internal-app | hybrid-adapter | app-local}} |
587
+ | Coupling Status | {{source-platform-coupled | source-platform-decoupled | hybrid-adapter}} |
588
+ | Public-Readiness Target | {{required | deferred | not-applicable}} |
589
+ | Block Porting Need | {{reuse | port | custom-block-exception}} |
590
+ ```
591
+
592
+ ### Store in Memory
593
+
594
+ Create Memory entries for key discovery findings:
595
+
596
+ ```
597
+ Category: 'discovery'
598
+ Tags: ['#problem', '#feature-{id}']
599
+ Content: 'Problem: [pain point]. Impact: [who affected].'
600
+
601
+ Category: 'discovery'
602
+ Tags: ['#users', '#personas', '#feature-{id}']
603
+ Content: 'Primary users: [persona]. Technical level: [level]. Key needs: [needs].'
604
+
605
+ Category: 'discovery'
606
+ Tags: ['#value', '#metrics', '#feature-{id}']
607
+ Content: 'Primary value: [benefit]. Success metric: [metric] target [goal].'
608
+ ```
609
+
610
+ ### Edge Cases
611
+
612
+ - **Mid-flow abandonment**: If user cancels during discovery, save partial
613
+ discovery.md with `status: incomplete`
614
+ - **Re-running discovery**: If discovery.md already exists, ask: "Discovery
615
+ already exists for this feature. Would you like to merge new insights or
616
+ replace it?"
617
+ - **Web search failure**: If competitive research fails, continue without it and
618
+ note the failure
619
+
620
+ ---
621
+
622
+ ## Step 2.6: Application Classification and AI Process Default
623
+
624
+ Before journey mapping, classify the request as **application delivery** or
625
+ **non-application work**.
626
+
627
+ In EnterpriseAI mode, assume the request is application delivery unless the
628
+ user's intent is clearly non-app. Roughly 90% of Gofer business requests should
629
+ be treated this way: the user is trying to improve a customer journey or
630
+ business process by building an app, workflow, portal, dashboard, mobile
631
+ experience, form, assistant, or app.
632
+
633
+ For app delivery in any profile, apply the **EAI Platform And Azure App Stack
634
+ Policy**: EAI Platform is the primary app substrate, Azure is the preferred
635
+ cloud/infrastructure substrate, and unrelated non-EAI stacks are exceptions
636
+ only.
637
+
638
+ ### Application Signals
639
+
640
+ Treat the request as application delivery when it includes any of these signals:
641
+
642
+ - Build an app, tool, dashboard, portal, workflow, form, chatbot, or app.
643
+ - Improve how a customer, employee, advisor, agent, or operator completes work.
644
+ - Replace a manual process with a guided digital process.
645
+ - Use EnterpriseAI data, object types, screens, APIs, or tenant context.
646
+ - Add generative AI to help users complete a business outcome.
647
+
648
+ ### Non-Application Signals
649
+
650
+ Classify as non-app only when the user is asking for work such as:
651
+
652
+ - Strategy, research, market analysis, board papers, or written advice.
653
+ - Documentation, executive summaries, or slide decks without an app to build.
654
+ - Codebase exploration, cloud audit, engineering review, or migration planning.
655
+ - A one-off analysis task where no durable user workflow will be implemented.
656
+
657
+ If non-app, record this explicitly in `discovery.md`:
658
+
659
+ ```markdown
660
+ ## Application Classification
661
+
662
+ | Field | Decision |
663
+ | ----- | -------- |
664
+ | Classification | Non-application work |
665
+ | Reason | {{why-this-is-not-an-app-or-workflow}} |
666
+ | Four-step AI journey required | No |
667
+ ```
668
+
669
+ Then continue through the pipeline without creating a four-step AI-augmented app
670
+ journey.
671
+
672
+ If app delivery is selected or inferred, continue to Step 2.7 and create the
673
+ AI-augmented journey.
674
+
675
+ ### Shared Numbered Stage Contract
676
+
677
+ Gofer MUST keep the same numbered stages for both classifications. The
678
+ classification changes the behavior inside the shared stages; it does **not**
679
+ remove existing non-app functionality or fork Gofer into unrelated products.
680
+
681
+ | Mode | Stage Behavior |
682
+ | ---- | -------------- |
683
+ | Application delivery | Shared stages gain EAI Platform/Azure stack enforcement, a UI-first interview, an EAI App Template constrained preview loop, preview self-review, optional branding intake, an explicit UI approval gate, and a post-approval EnterpriseAI service-fit gate before plan/tasks are finalized |
684
+ | Non-app work | Shared stages preserve the current research, documentation, exploration, bug-fix, migration, audit, and other non-app workflows without app-only preview, branding, or service-fit requirements |
685
+
686
+ ---
687
+
688
+ ## Step 2.7: AI-Augmented Journey Confirmation (For Application Delivery)
689
+
690
+ When the request is classified as **application delivery**, confirm the
691
+ customer journey before routing to the rest of the pipeline. For application
692
+ delivery, the default target is a concise **four-step or fewer AI-augmented
693
+ process**. Even when the current business process has more than four steps,
694
+ Gofer should use generative AI to compress, combine, or simplify the process
695
+ into four business-goal-driven stages unless the user explicitly rejects that
696
+ structure.
697
+
698
+ Before journey mapping for EAI app delivery, complete the **EAI App Delivery
699
+ Preflight** above. If the EAI CLI, login, tenant, template, or app enrollment
700
+ readiness is blocked, pause the EAI build path and explain the smallest next
701
+ step. Do not proceed to plan/tasks/implementation for an EAI app until
702
+ `.specify/specs/{feature}/eai-preflight.md` records a ready or explicitly
703
+ deferred status.
704
+
705
+ ### UI-First App-Delivery Default
706
+
707
+ For app delivery, the default early process is:
708
+
709
+ 1. **Interview and visual brief** — understand the MVP outcome, must-have
710
+ screens, target users, workflow goals, and whether client branding or logos
711
+ must be applied.
712
+ 2. **Constrained MVP preview** — generate the first preview from the EAI App Template
713
+ Template blocks already installed in the project by `eai`, rather than
714
+ from an unconstrained custom UI.
715
+ 3. **Preview self-review and approval** — use screenshot or Playwright-style
716
+ local review before showing the preview, then iterate with the stakeholder
717
+ until the UI is explicitly approved.
718
+ 4. **EnterpriseAI service-fit gate** — after UI approval, review which
719
+ platform services are accessible now, purchasable but unavailable now, or
720
+ unsupported, and lock that decision before plan/tasks are treated as
721
+ complete.
722
+
723
+ ### AI-Readable Blocks Bridge Intake
724
+
725
+ For EnterpriseAI app delivery, the interview must also capture the packaging
726
+ and coupling path before research starts:
727
+
728
+ | Intake Field | Required Decision |
729
+ | ------------ | ----------------- |
730
+ | Profile choice | External, internal, or hybrid package profile |
731
+ | Package lane | Public reusable block package, internal app, hybrid adapter, or app-local implementation |
732
+ | Coupling status | source-platform-coupled, source-platform-decoupled, or hybrid adapter boundary |
733
+ | Public-readiness target | Whether the first delivery must be ready for external package consumers |
734
+ | Block porting need | Reuse existing block, port an EAI App Template block, or request a custom-block exception |
735
+
736
+ External and hybrid profile choices require explicit public-readiness,
737
+ block-porting, source-platform decoupling, Storybook, and theme-override evidence in the
738
+ later Gofer artifacts. Restricted-source choices still record why public readiness
739
+ is not required now.
740
+
741
+ **First, offer the option to skip:**
742
+
743
+ | Option | Description |
744
+ | ---------------------------------------- | --------------------------------------------------------------------------- |
745
+ | **Confirm AI Journey (Recommended)** | Review the four-step AI-augmented process for this app |
746
+ | **Classify as Non-App / Skip AI Journey** | Use only when this is strategy, research, documentation, audit, or analysis |
747
+
748
+ If the user selects "Classify as Non-App / Skip AI Journey", capture the
749
+ non-application rationale in discovery and proceed directly to Step 3. If the
750
+ request is still an app, do not silently skip journey mapping; create a draft
751
+ four-step journey with assumptions and ask the user to confirm or correct it.
752
+
753
+ ### Journey Extraction
754
+
755
+ Based on the discovery answers, extract:
756
+
757
+ 1. **Actors**: Who interacts with this feature?
758
+ - User types (e.g., "End User", "Admin")
759
+ - AI agents (if applicable)
760
+ - Systems (e.g., "Auth Service", "Database")
761
+
762
+ 2. **Steps**: What is the main flow?
763
+ - Compress the flow into four steps or fewer
764
+ - Number each step (1, 2, 3, 4)
765
+ - Identify which actor performs each step
766
+ - State the business goal and completion outcome for each step
767
+ - Note which generative AI assistance improves that step
768
+ - For app delivery, default the steps to: brief -> preview -> approval ->
769
+ service fit unless the user clearly needs a different four-step shape
770
+
771
+ 3. **Touchpoints**: Where do interactions happen?
772
+ - UI touchpoints (screens, buttons)
773
+ - API touchpoints
774
+ - Notifications
775
+ - Local preview touchpoints such as browser views, screenshots, or
776
+ Playwright/self-review outputs when the feature includes a UI
777
+
778
+ 4. **AI augmentation**: How does generative AI help?
779
+ - Conversational help: chatbot, voice, accessibility, translations, or
780
+ guided explanation
781
+ - Contextual prefill: populate fields from screen context, known data,
782
+ user profile, customer record, document, or prior workflow state
783
+ - Step-goal assistance: understand the goal of the step, recommend next
784
+ actions, validate completeness, and drive the user to successful
785
+ completion
786
+ - Human control: show confidence, evidence, edit controls, escalation path,
787
+ and audit trail
788
+ - Preview critique: review the generated MVP before presentation and suggest
789
+ concrete fixes when the first pass is visually weak or off-brief
790
+
791
+ ### Journey Confirmation Questions
792
+
793
+ Use AskUserQuestion to present the extracted journey:
794
+
795
+ **Question 1: Confirm Actors**
796
+
797
+ "Based on your description, I've identified these actors in the journey:"
798
+
799
+ | Option | Description |
800
+ | ------ | ---------------------------------- |
801
+ | A | **[Actor 1]** - [role description] |
802
+ | B | **[Actor 2]** - [role description] |
803
+ | C | **[System]** - [role description] |
804
+ | Custom | Add or modify actors |
805
+
806
+ **Question 2: Confirm Journey Steps**
807
+
808
+ "Here's the main flow I've identified:"
809
+
810
+ | Option | Description |
811
+ | ------ | --------------------------------------------------------------------------------------------------- |
812
+ | A | Step 1: [goal] → Step 2: [goal] → Step 3: [goal] → Step 4: [goal] (Confirm this AI-augmented flow) |
813
+ | B | I need to modify some steps |
814
+ | C | Show me all steps, AI assistance, and completion criteria in detail first |
815
+
816
+ **Question 2a: Confirm AI Assistance**
817
+
818
+ "For each step, how should generative AI help the user complete the goal?"
819
+
820
+ | Option | Description |
821
+ | ------ | ----------------------------------------------------------------------------------- |
822
+ | A | Chat/voice/accessibility/translations help the user understand and complete the step |
823
+ | B | Prefill or recommend data using screen context, user context, and EnterpriseAI data |
824
+ | C | Validate completion, explain missing information, and guide the user to success |
825
+ | D | Mix all of the above, with human review and audit trail controls |
826
+ | Custom | Describe the AI assistance for each step |
827
+
828
+ **Question 3: Identify Key Touchpoints**
829
+
830
+ "What are the main interaction points for this feature?"
831
+
832
+ | Option | Description |
833
+ | ------ | ---------------------------------------------- |
834
+ | A | UI-heavy: Multiple screens and forms |
835
+ | B | API-driven: Primarily backend/integration work |
836
+ | C | Mixed: Both UI and API touchpoints |
837
+ | Custom | Describe your touchpoints |
838
+
839
+ ### Save Confirmed Journey
840
+
841
+ After confirmation, save to `.specify/specs/{feature}/journeys/base-journey.md`:
842
+
843
+ ````markdown
844
+ ---
845
+ id: {{feature-id}}-journey
846
+ name: {{journey-name}}
847
+ featureId: {{feature-id}}
848
+ status: confirmed
849
+ created: {{ISO-timestamp}}
850
+ modified: {{ISO-timestamp}}
851
+ applicationClassification: app
852
+ aiAugmentedJourney: true
853
+ maxSteps: 4
854
+ ---
855
+
856
+ # AI-Augmented Customer Journey: {{feature-name}}
857
+
858
+ ## Overview
859
+
860
+ {{discovery-problem-statement}}
861
+
862
+ ## Actors
863
+
864
+ | ID | Name | Type | Role |
865
+ | ------ | ----------- | ------ | --------------------------- |
866
+ | user | End User | user | Primary user of the feature |
867
+ | system | Backend API | system | Handles business logic |
868
+
869
+ ## Journey Steps
870
+
871
+ ### Step 1: {{business-goal}}
872
+
873
+ **Actor**: {{actor-id}}
874
+ **User action**: {{action-description}}
875
+ **AI assistance**:
876
+ {{chatbot-or-voice-or-accessibility-or-translation-or-prefill-or-guidance}}
877
+ **Context used**: {{screen-context-user-data-enterpriseai-data-documents}}
878
+ **Completion criteria**: {{how-we-know-this-step-is-successful}}
879
+ **Controls**: {{human-review-confidence-evidence-audit-escalation}}
880
+
881
+ ### Step 2: {{business-goal}}
882
+
883
+ ...
884
+
885
+ ### Step 4: {{business-goal}}
886
+
887
+ ...
888
+
889
+ ## Journey Diagram
890
+
891
+ ```mermaid
892
+ sequenceDiagram
893
+ participant user as End User
894
+ participant system as Backend API
895
+
896
+ user->>system: Step 1 action
897
+ system-->>user: AI-guided response, prefill, or validation
898
+ user->>system: Step 2 action
899
+ ```
900
+
901
+ ## AI Augmentation Matrix
902
+
903
+ | Step | Business Goal | AI Assistance | Data / Context Used | Completion Signal |
904
+ | ---- | ------------- | ------------- | ------------------- | ----------------- |
905
+ | 1 | {{goal}} | {{assist}} | {{context}} | {{signal}} |
906
+ | 2 | {{goal}} | {{assist}} | {{context}} | {{signal}} |
907
+ | 3 | {{goal}} | {{assist}} | {{context}} | {{signal}} |
908
+ | 4 | {{goal}} | {{assist}} | {{context}} | {{signal}} |
909
+
910
+ ## Touchpoints
911
+
912
+ | ID | Type | Description | Actors | Steps |
913
+ | ---------- | ---- | ----------------------- | ------ | ----- |
914
+ | login-form | ui | Login screen | user | 1 |
915
+ | auth-api | api | Authentication endpoint | system | 1, 2 |
916
+
917
+ ## Confirmation
918
+
919
+ - [x] Actors confirmed
920
+ - [x] Steps confirmed
921
+ - [x] Touchpoints identified
922
+
923
+ ````
924
+
925
+ ### Store Journey in Memory
926
+
927
+ ```
928
+ Category: 'journey' Tags: ['#journey', '#feature-{id}', '#confirmed'] Content:
929
+ 'Journey for {feature}: {actor-count} actors, {step-count} steps. Main flow:
930
+ {step-summary}.'
931
+ ```
932
+
933
+ ---
934
+
935
+ ## Step 3: Route to Gofer Command
936
+
937
+ Based on user selection and detected state:
938
+
939
+ ### Route A/B/C: New Feature, Modify Existing, or Fix Bug
940
+
941
+ All three scenarios use the same pipeline - the difference is in the research
942
+ focus:
943
+
944
+ | Scenario | Research Focus |
945
+ | --------------- | ---------------------------------------------------------- |
946
+ | New Feature | Technology research + codebase patterns |
947
+ | Modify Existing | Understanding existing implementation + integration points |
948
+ | Fix Bug | Root cause analysis + affected code paths |
949
+
950
+ #### Determine Starting Point
951
+
952
+ **Closed-Loop Audit (Highest Priority when feature artifacts exist)**:
953
+
954
+ Before pipeline-state routing, run the closed-loop audit when the selected
955
+ feature directory already exists:
956
+
957
+ ```bash
958
+ node .specify/scripts/node/gofer-closed-loop-audit.mjs --feature-dir {FEATURE_DIR} --json
959
+ ```
960
+
961
+ If `{FEATURE_DIR}/loop-contract.json` is missing, initialize it before routing
962
+ past discovery:
963
+
964
+ ```bash
965
+ node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 0_gofer_start --init --json
966
+ ```
967
+
968
+ Do not ask the user about loop initialization unless the command fails or would
969
+ overwrite an existing contract. The loop contract is standard Gofer feature
970
+ scaffold, not an optional extra.
971
+
972
+ If the audit recommends a `recommendedStartStage`, resume from that stage even
973
+ when later artifacts exist. This is how Gofer behaves like a goal-seeking loop:
974
+ goal drift, expired assumptions, contract drift, UX scope changes, or
975
+ post-validation code/test movement reopen the smallest valid mini-loop instead
976
+ of pretending the pipeline is still complete.
977
+
978
+ **Pipeline State Check (Priority)**:
979
+
980
+ Before file-existence checks, read `pipeline-state.json` for authoritative
981
+ resume information:
982
+
983
+ ```bash
984
+ .specify/scripts/bash/pipeline-state.sh read --json
985
+ ````
986
+
987
+ If `pipeline-state.json` exists and `status` is `in_progress`, resume from
988
+ `currentStage`. This takes priority over file-existence heuristics because
989
+ pipeline-state.json is updated atomically by each stage on completion.
990
+
991
+ If the closed-loop audit recommends an earlier stage than `currentStage`, the
992
+ audit wins. Pipeline state tracks progress; the audit tracks whether progress is
993
+ still valid.
994
+
995
+ **Spec Artifact Guard (Mandatory)**:
996
+
997
+ Before routing to `/3_gofer_plan`, `/4_gofer_tasks`, `/5_gofer_implement`, or
998
+ `/6_gofer_validate`, confirm that `.specify/specs/{feature}/spec.md` exists and
999
+ is not the unfilled `spec-template.md` copy created by feature bootstrap. A
1000
+ missing, empty, or placeholder-filled spec always routes back to
1001
+ `/2_gofer_specify`, even when `pipeline-state.json`, `plan.md`, `tasks.md`, or
1002
+ validation artifacts imply later progress. Gofer must never plan, task,
1003
+ implement, or validate a feature from research or plan artifacts alone.
1004
+
1005
+ **Fallback — File-existence heuristics** (used when no pipeline-state.json
1006
+ exists):
1007
+
1008
+ | Has This | Missing This | Start At |
1009
+ | ----------------------------------------- | --------------------------- | -------------------- |
1010
+ | tasks.md (unchecked) | - | `/5_gofer_implement` |
1011
+ | plan.md | tasks.md | `/4_gofer_tasks` |
1012
+ | spec.md | plan.md | `/3_gofer_plan` |
1013
+ | research.md | spec.md | `/2_gofer_specify` |
1014
+ | Nothing | research.md | `/1_gofer_research` |
1015
+ | Nothing | Everything | `/1_gofer_research` |
1016
+
1017
+ #### For New Features
1018
+
1019
+ 1. Ask: **"What would you like to call this feature?"** (use AskUserQuestion)
1020
+ 2. Create the spec directory: `.specify/specs/{feature-name}/`
1021
+ 3. Seed stakeholder review scaffolding from templates:
1022
+ - `{FEATURE_DIR}/working-backwards-prfaq.md` from
1023
+ `.specify/templates/working-backwards-prfaq-template.md`
1024
+ - `{FEATURE_DIR}/stakeholder-review-index.md` from
1025
+ `.specify/templates/stakeholder-review-index-template.md`
1026
+ - `{FEATURE_DIR}/prfaq-history/00-business-scenario.md` as the initial
1027
+ product release PR/FAQ snapshot
1028
+ - Draft persona files only when enough context exists; otherwise let stages
1029
+ 1, 3, and 6 create the Business Owner, CTO, and CISO summaries with
1030
+ evidence.
1031
+ 4. Invoke `/1_gofer_research` to start the pipeline
1032
+
1033
+ Output:
1034
+
1035
+ ```
1036
+ ROUTING: GOFER PIPELINE
1037
+ FEATURE: {feature-name}
1038
+ STARTING: /1_gofer_research
1039
+ AUTO-CHAIN: research → specify → plan → tasks → implement → validate
1040
+ NOTE: research may also create optional supporting review artifacts
1041
+ NOTE: create/update the running product release PR/FAQ and stakeholder review index from the first stage
1042
+ REASON: [explanation]
1043
+ ```
1044
+
1045
+ #### For Existing Features
1046
+
1047
+ If user chose to continue an existing feature:
1048
+
1049
+ 1. Detect most advanced artifact
1050
+ 2. Route to appropriate command
1051
+ 3. Pipeline auto-chains from there
1052
+
1053
+ Output:
1054
+
1055
+ ```
1056
+ ROUTING: GOFER PIPELINE
1057
+ FEATURE: {feature-name}
1058
+ STARTING: /[N]_gofer_[stage]
1059
+ REMAINING: [remaining stages]
1060
+ REASON: Continuing from existing artifacts
1061
+ ```
1062
+
1063
+ ### Route D: Explore/Research
1064
+
1065
+ Start with `/1_gofer_research` without auto-chaining:
1066
+
1067
+ ```
1068
+ ROUTING: GOFER RESEARCH (STANDALONE)
1069
+ COMMAND: /1_gofer_research
1070
+ AUTO-CHAIN: disabled after research until the user asks to continue
1071
+ REASON: User wants to explore the codebase first
1072
+ ```
1073
+
1074
+ ### Route E: Continue Work
1075
+
1076
+ Check for session checkpoints:
1077
+
1078
+ ```bash
1079
+ find .specify/specs -name "session-checkpoint.md" -type f 2>/dev/null
1080
+ ```
1081
+
1082
+ If checkpoint found, read the most recent checkpoint and continue from the
1083
+ stage it names. Do not invoke a separate resume command.
1084
+
1085
+ If no checkpoint but unchecked tasks exist:
1086
+
1087
+ 1. Find features with `- [ ]` in tasks.md
1088
+ 2. Present options to user
1089
+ 3. Resume with `/5_gofer_implement`
1090
+
1091
+ Output:
1092
+
1093
+ ```
1094
+ ROUTING: GOFER CONTINUE
1095
+ FEATURE: {feature-name}
1096
+ COMMAND: /5_gofer_implement or /6_gofer_validate
1097
+ CHECKPOINT: {path to checkpoint}
1098
+ REASON: Resuming from saved session
1099
+ ```
1100
+
1101
+ ### Route F: Setup Project
1102
+
1103
+ For new projects or establishing guidelines:
1104
+
1105
+ ```
1106
+ ROUTING: GOFER CONSTITUTION
1107
+ COMMAND: /gofer_constitution
1108
+ REASON: User wants to establish project principles
1109
+ ```
1110
+
1111
+ ---
1112
+
1113
+ ## Step 4: Invoke the Routed Command
1114
+
1115
+ After determining the route:
1116
+
1117
+ 1. Output the routing decision clearly
1118
+ 2. Invoke the target command using the Skill tool
1119
+ 3. Let that command take over the workflow
1120
+
1121
+ ### Auto-Chaining Behavior
1122
+
1123
+ The unified Gofer pipeline automatically chains commands:
1124
+
1125
+ ```text
1126
+ /1_gofer_research completes → auto-invokes /2_gofer_specify unless user pauses
1127
+ /2_gofer_specify completes → auto-invokes /3_gofer_plan
1128
+ /3_gofer_plan completes → auto-invokes /4_gofer_tasks
1129
+ /4_gofer_tasks completes → auto-invokes /5_gofer_implement
1130
+ /5_gofer_implement completes→ auto-invokes /6_gofer_validate
1131
+ /6_gofer_validate completes → pipeline complete
1132
+ ```
1133
+
1134
+ **The user only needs to run `/0_gofer_start` once** - the orchestrator
1135
+ handles everything else automatically.
1136
+
1137
+ ---
1138
+
1139
+ ## Step 5: Handle Interruptions
1140
+
1141
+ If the user needs to pause:
1142
+
1143
+ 1. Invoke `/7_gofer_save` to create checkpoint
1144
+ 2. Document current state
1145
+ 3. User can start a fresh session, read the checkpoint, and continue from the
1146
+ named stage
1147
+
1148
+ If context window is filling up:
1149
+
1150
+ 1. Save progress with `/7_gofer_save`
1151
+ 2. Recommend user start new conversation
1152
+ 3. User opens the checkpoint and continues from the appropriate stage
1153
+
1154
+ ---
1155
+
1156
+ ## Important Notes
1157
+
1158
+ - Keep the interview SHORT - max 2-3 questions
1159
+ - **ALWAYS ask what the user wants to do** - don't assume existing artifacts are
1160
+ relevant
1161
+ - Show existing features and let user choose to continue OR start new
1162
+ - Technology architecture decisions must be asked **one-by-one** with a
1163
+ discussion loop so users can ask clarifying questions before finalizing each
1164
+ answer
1165
+ - Document the routing decision for debugging
1166
+ - If user seems confused, default to research first
1167
+
1168
+ ---
1169
+
1170
+ ## Quick Reference: Core Pipeline And Helpers
1171
+
1172
+ ### Core Pipeline
1173
+
1174
+ | Stage | Command | Main output | Description |
1175
+ | ----- | --------------------- | ---------------------------------- | ----------------------------------------- |
1176
+ | 0 | `/0_gofer_start`| Full pipeline kickoff | Business scenario intake and routing |
1177
+ | 1 | `/1_gofer_research` | research.md | Research and supporting review prep |
1178
+ | 2 | `/2_gofer_specify` | spec.md | Feature specification |
1179
+ | 3 | `/3_gofer_plan` | plan.md, data-model.md, contracts/ | Technical architecture and contracts |
1180
+ | 4 | `/4_gofer_tasks` | tasks.md, traceability.md, issues.md | Dependency-ordered task breakdown |
1181
+ | 5 | `/5_gofer_implement` | Code, docs, loop-ledger.jsonl | Execute bounded check-repair loops |
1182
+ | 6 | `/6_gofer_validate` | Validation artifacts, loop-audit-report.md | Terminal quality gate, including review |
1183
+
1184
+ Every stage also updates the running product release PR/FAQ:
1185
+ `working-backwards-prfaq.md`, writes an immutable snapshot in
1186
+ `prfaq-history/`, and refreshes `stakeholder-review-index.md` so the user sees
1187
+ which Business Owner, CTO/Architecture, CISO/Risk, or Delivery review is needed.
1188
+
1189
+ ### Helper Commands
1190
+
1191
+ | Command | Purpose |
1192
+ | ----------------------------- | ------------------------------------------------ |
1193
+ | `/0a_problem_validation` | Optional deeper problem framing before research |
1194
+ | `/7_gofer_save` | Save session checkpoint |
1195
+ | `/7a_stakeholder_comms` | Post-validation communications |
1196
+ | `/8_gofer_branding` | Brand templates and stakeholder documents |
1197
+ | `/9_gofer_tests` | Define test cases (DSL approach) |
1198
+ | `/10_gofer_cloud` | Cloud infrastructure analysis (READ-ONLY) |
1199
+ | `/gofer_hydrate` | Reverse-engineer spec from code |
1200
+ | `/gofer_constitution` | Project principles and standards |
1201
+ | `/gofer:check-workspace` | Check whether the repo scaffold is healthy |
1202
+ | `/gofer:bootstrap-workspace` | Create or update the repo-owned scaffold |
1203
+
1204
+ ---
1205
+
1206
+ ## EnterpriseAI Profile Extensions
1207
+
1208
+ The standard Gofer workflow is the public default. EnterpriseAI guidance is a
1209
+ legacy compatibility profile and must be used only when `workflowProfile` is
1210
+ explicitly set to `enterpriseai` or the user asks for that migration path. The
1211
+ sections below add EnterpriseAI guardrails on top of the standard orchestrator;
1212
+ standard-profile outputs remain unchanged.
1213
+
1214
+ ### EnterpriseAI-First Discovery Framing (MANDATORY)
1215
+
1216
+ When the workflow profile is explicitly `enterpriseai`:
1217
+
1218
+ - Frame every discovery option as an EnterpriseAI platform delivery outcome.
1219
+ - Do **not** present non-EAI platforms as primary recommendations.
1220
+ - Non-EAI platforms must never be presented as primary recommendations during
1221
+ discovery. They may only appear as optional reference material in the research
1222
+ stage, clearly labelled as non-primary.
1223
+ - All recommended scenarios must map to an EnterpriseAI app
1224
+ (business analysis → EAI services → deployment target).
1225
+ - Maintain a running domain model using the user's vocabulary. Ask adaptive
1226
+ follow-up questions that clarify actors, object types, workflows, tenant
1227
+ boundaries, decision owners, and measurable value.
1228
+ - Before recommending a new object type, API, workflow, module, or spec concept,
1229
+ require a reuse-before-create scan: reuse existing, extend existing, or create
1230
+ new with rationale.
1231
+
1232
+ ### EnterpriseAI Contract and Context Guardrails (MANDATORY)
1233
+
1234
+ Every EnterpriseAI discovery must preserve enough information for downstream
1235
+ stages to create these artifacts without re-interviewing the user:
1236
+
1237
+ | Artifact | Required Content |
1238
+ | -------- | ---------------- |
1239
+ | `journeys/base-journey.md` | Application classification, four-step-or-fewer AI-augmented customer journey, step goals, AI assistance, context used, controls, completion criteria |
1240
+ | `ui-preview-brief.md` | App-delivery-only preview brief: target screens, EAI App Template component constraints, branding inputs, preview validation expectations |
1241
+ | `ui-review-log.md` | App-delivery-only iteration log: preview evidence, requested changes, accepted changes, unresolved issues |
1242
+ | `ui-approval.md` | App-delivery-only approval gate: approved preview, approved branding, approved component exceptions, approver and timestamp |
1243
+ | `service-fit-matrix.md` | App-delivery-only service selection evidence: desired platform capability, evidence source, accessible now vs purchasable vs unavailable, selected direction |
1244
+ | `eai-preflight.md` | App-delivery-only EAI readiness evidence: CLI install/version, login status, tenant role, template initialization state, app enrollment readiness, block catalog readiness, and next action |
1245
+ | `context-bundle.md` | Compact feature context, selected scenario, app/non-app decision, AI-augmented journey summary, EnterpriseAI object types, tenant assumptions, API surfaces, deployment assumptions, validation criteria |
1246
+ | `contract-pack.md` | Actors, object types, workflows/journeys, four-step AI assistance contract, permissions, tenant boundaries, APIs/events, runtime assumptions, acceptance tests |
1247
+ | `reuse-scan.md` | Existing specs, platform references, object types, APIs, workflows, modules, and the reuse/extend/create decision |
1248
+ | `audit-history.md` | Stable finding IDs, recurring-finding history, accepted exceptions, owner, expiry, and review cadence |
1249
+ | `working-backwards-prfaq.md` | Product release PR/FAQ: headline, customer problem, launch description, external FAQ, internal FAQ, evidence links, and review asks |
1250
+ | `prfaq-history/` | Stage-by-stage immutable PR/FAQ snapshots: `00-business-scenario.md` through `06-validate.md` |
1251
+ | `business-owner-summary.md` | Business scenario, process change, business case, metrics, assumptions, and Business Owner review ask |
1252
+ | `cto-architecture-summary.md` | EAI Platform/Azure architecture, auth, tenancy, data, contracts, diagrams, and CTO review ask |
1253
+ | `ciso-security-summary.md` | Security posture, identity/tenant controls, secrets/data handling, residual risk, validation evidence, and CISO review ask |
1254
+ | `stakeholder-review-index.md` | One-page index of review-ready artifacts, current status, reviewer, and approve/revise/defer response contract |
1255
+
1256
+ Use these artifacts as decision evidence for executive, architecture, CISO,
1257
+ data, delivery, CIO, CFO, COO, and risk/compliance stakeholders.
1258
+
1259
+ For application delivery, downstream stages must preserve the four-step
1260
+ AI-augmented journey as the default scope spine. If a later stage expands beyond
1261
+ four user-facing steps, it must explain why the extra complexity is necessary
1262
+ and whether generative AI could combine or automate the additional steps.
1263
+ Non-app work keeps the same numbered stages without requiring the app-delivery
1264
+ preview, branding, approval, or service-fit artifacts.
1265
+
1266
+ ### Novice Walkthrough Guardrail (MANDATORY)
1267
+
1268
+ Assume the user is a first-time student or business learner with no prior
1269
+ platform experience.
1270
+
1271
+ - Do not require external documentation to complete discovery.
1272
+ - Provide recommended options and plain-language implications for every
1273
+ question. Each recommendation must explain, in one sentence, what choosing it
1274
+ means for the next stage.
1275
+ - Pipeline auto-chains from there: once discovery inputs are confirmed, the
1276
+ orchestrator progresses through research → specify → plan → tasks → implement
1277
+ → validate without requiring the user to invoke each stage by hand.
1278
+
1279
+ ---
1280
+
1281
+ ## Observability
1282
+
1283
+ Log orchestrator routing:
1284
+
1285
+ ```bash
1286
+ .specify/scripts/bash/log-stage.sh 0_orchestrator --route [command] --feature [name]
1287
+ ```