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,214 @@
1
+ param(
2
+ [string]$WorkspacePath = (Get-Location).Path,
3
+ [string]$Tools = ''
4
+ )
5
+
6
+ $ErrorActionPreference = 'Stop'
7
+ $HasFailure = $false
8
+
9
+ function Write-Info {
10
+ param([string]$Message)
11
+ Write-Host "[gofer] $Message"
12
+ }
13
+
14
+ function Write-Warn {
15
+ param([string]$Message)
16
+ Write-Warning "[gofer] $Message"
17
+ }
18
+
19
+ function Invoke-Step {
20
+ param(
21
+ [string]$Description,
22
+ [scriptblock]$ScriptBlock
23
+ )
24
+
25
+ Write-Info $Description
26
+ try {
27
+ & $ScriptBlock
28
+ } catch {
29
+ $script:HasFailure = $true
30
+ Write-Warn "Failed: $Description"
31
+ Write-Warn $_.Exception.Message
32
+ }
33
+ }
34
+
35
+ function Test-CommandExists {
36
+ param([string]$CommandName)
37
+ return $null -ne (Get-Command $CommandName -ErrorAction SilentlyContinue)
38
+ }
39
+
40
+ function Get-JsPackageManager {
41
+ if (Test-Path (Join-Path $WorkspacePath 'bun.lockb')) {
42
+ return 'bun'
43
+ }
44
+
45
+ if (Test-Path (Join-Path $WorkspacePath 'pnpm-lock.yaml')) {
46
+ return 'pnpm'
47
+ }
48
+
49
+ if (Test-Path (Join-Path $WorkspacePath 'yarn.lock')) {
50
+ return 'yarn'
51
+ }
52
+
53
+ if (Test-Path (Join-Path $WorkspacePath 'package.json')) {
54
+ return 'npm'
55
+ }
56
+
57
+ return ''
58
+ }
59
+
60
+ function Install-RepoPackage {
61
+ param(
62
+ [string]$PackageManager,
63
+ [string]$PackageName
64
+ )
65
+
66
+ switch ($PackageManager) {
67
+ 'npm' {
68
+ Invoke-Step "Installing $PackageName with npm" { npm install --save-dev $PackageName }
69
+ }
70
+ 'pnpm' {
71
+ Invoke-Step "Installing $PackageName with pnpm" { pnpm add --save-dev $PackageName }
72
+ }
73
+ 'yarn' {
74
+ Invoke-Step "Installing $PackageName with yarn" { yarn add --dev $PackageName }
75
+ }
76
+ 'bun' {
77
+ Invoke-Step "Installing $PackageName with bun" { bun add --dev $PackageName }
78
+ }
79
+ default {
80
+ $script:HasFailure = $true
81
+ Write-Warn "No supported JS package manager detected for $PackageName"
82
+ }
83
+ }
84
+ }
85
+
86
+ function Install-PlaywrightBrowsers {
87
+ if (-not (Test-Path (Join-Path $WorkspacePath 'package.json'))) {
88
+ Write-Warn 'Skipping Playwright browser install because package.json was not found'
89
+ return
90
+ }
91
+
92
+ Push-Location $WorkspacePath
93
+ try {
94
+ Invoke-Step 'Installing Playwright browsers' { npx playwright install }
95
+ } finally {
96
+ Pop-Location
97
+ }
98
+ }
99
+
100
+ function Install-NpmGlobalPackage {
101
+ param([string]$PackageName)
102
+
103
+ if (-not (Test-CommandExists 'npm')) {
104
+ $script:HasFailure = $true
105
+ Write-Warn "npm is required to install $PackageName globally"
106
+ return
107
+ }
108
+
109
+ Invoke-Step "Installing $PackageName globally with npm" { npm install --global $PackageName }
110
+ }
111
+
112
+ function Install-GitHubCli {
113
+ if (Test-CommandExists 'gh') {
114
+ Write-Info 'GitHub CLI is already installed'
115
+ return
116
+ }
117
+
118
+ if (Test-CommandExists 'winget') {
119
+ Invoke-Step 'Installing GitHub CLI with winget' {
120
+ winget install --id GitHub.cli --exact --source winget
121
+ }
122
+ return
123
+ }
124
+
125
+ if (Test-CommandExists 'choco') {
126
+ Invoke-Step 'Installing GitHub CLI with Chocolatey' { choco install gh --yes }
127
+ return
128
+ }
129
+
130
+ $script:HasFailure = $true
131
+ Write-Warn 'No supported package manager found to install GitHub CLI'
132
+ }
133
+
134
+ function Install-AzureCli {
135
+ if (Test-CommandExists 'az') {
136
+ Write-Info 'Azure CLI is already installed'
137
+ return
138
+ }
139
+
140
+ if (Test-CommandExists 'winget') {
141
+ Invoke-Step 'Installing Azure CLI with winget' {
142
+ winget install --id Microsoft.AzureCLI --exact --source winget
143
+ }
144
+ return
145
+ }
146
+
147
+ if (Test-CommandExists 'choco') {
148
+ Invoke-Step 'Installing Azure CLI with Chocolatey' { choco install azure-cli --yes }
149
+ return
150
+ }
151
+
152
+ $script:HasFailure = $true
153
+ Write-Warn 'No supported package manager found to install Azure CLI'
154
+ }
155
+
156
+ if ([string]::IsNullOrWhiteSpace($Tools)) {
157
+ Write-Info 'No tools selected. Nothing to install.'
158
+ exit 0
159
+ }
160
+
161
+ $toolList = $Tools.Split(',', [System.StringSplitOptions]::RemoveEmptyEntries)
162
+ $packageManager = Get-JsPackageManager
163
+
164
+ Write-Info "Workspace: $WorkspacePath"
165
+ Write-Info "Selected tools: $Tools"
166
+
167
+ foreach ($tool in $toolList) {
168
+ switch ($tool.Trim()) {
169
+ 'stryker' {
170
+ Install-RepoPackage -PackageManager $packageManager -PackageName '@stryker-mutator/core'
171
+ }
172
+ 'playwright' {
173
+ Install-RepoPackage -PackageManager $packageManager -PackageName '@playwright/test'
174
+ Install-PlaywrightBrowsers
175
+ }
176
+ 'claude' {
177
+ Install-NpmGlobalPackage -PackageName '@anthropic-ai/claude-code'
178
+ }
179
+ 'codex' {
180
+ Install-NpmGlobalPackage -PackageName '@openai/codex-cli'
181
+ }
182
+ 'copilot' {
183
+ Install-NpmGlobalPackage -PackageName '@github/copilot'
184
+ }
185
+ 'gemini' {
186
+ Install-NpmGlobalPackage -PackageName '@google/gemini-cli'
187
+ }
188
+ 'gh' {
189
+ Install-GitHubCli
190
+ }
191
+ 'az' {
192
+ Install-AzureCli
193
+ }
194
+ default {
195
+ $script:HasFailure = $true
196
+ Write-Warn "Unknown tool id: $tool"
197
+ }
198
+ }
199
+ }
200
+
201
+ Write-Info 'Suggested next steps:'
202
+ Write-Info ' claude login'
203
+ Write-Info ' codex login'
204
+ Write-Info ' copilot login'
205
+ Write-Info ' gemini auth login'
206
+ Write-Info ' gh auth login'
207
+ Write-Info ' az login'
208
+
209
+ if ($HasFailure) {
210
+ Write-Warn 'Optional tool installation completed with warnings or failures'
211
+ exit 1
212
+ }
213
+
214
+ Write-Info 'Optional tool installation complete'
@@ -0,0 +1,17 @@
1
+ # Public Platform Reference Pack
2
+
3
+ This folder contains public-safe fallback references for EAI Gofer workflows
4
+ that need platform, template, or deployment guidance while offline.
5
+
6
+ Core files:
7
+
8
+ - `eai.md` - CLI and platform fallback guidance
9
+ - `eai-repo-contract.md` - repo-owned behavior contract for AI agents in EAI repos
10
+ - `eai-error-catalog.yaml` - common EAI CLI/platform failure signatures and recovery paths
11
+ - `vertical-template.md` - preferred fallback template guidance alias
12
+ - `eai-app-template.md` - legacy fallback template guidance alias kept for compatibility
13
+ - `deployment-repo.md` - fallback deployment guidance
14
+
15
+ These files are intentionally public-safe. Private repositories can replace or
16
+ extend them with organization-specific references, but Gofer should always be
17
+ able to fall back to this pack without exposing secrets or tenant-private data.
@@ -0,0 +1,9 @@
1
+ # Deployment Reference
2
+
3
+ Use this fallback when deployment documentation cannot be fetched.
4
+
5
+ ## Deployment Guidance Contract
6
+
7
+ - Record the target environment for each deliverable.
8
+ - Require deployment-readiness checks before deployment task completion.
9
+ - Surface fallback notices when local references are used.
@@ -0,0 +1,45 @@
1
+ # EAI App Template Reference
2
+
3
+ Use `https://github.com/eai-tools/eai-app-template` as the canonical public app
4
+ template for EnterpriseAI app-delivery work.
5
+
6
+ ## Source Of Truth
7
+
8
+ - New apps are scaffolded with `eai init`, which defaults to the EAI App
9
+ Template.
10
+ - Runnable service patterns live in the template, especially
11
+ `docs/platform/config-driven-ui.md`, `docs/platform/eai-service-patterns.md`,
12
+ `src/hooks`, and `packages/platform-sdk`.
13
+ - Config-driven UI composition lives in `src/eai.config/default.ts`,
14
+ `src/eai.config/index.ts`, and `src/eai.blocks.tsx`.
15
+ - eai-gofer should use those public template patterns and the installed `eai`
16
+ CLI instead of copying private platform documentation.
17
+
18
+ ## App Boundary Contract
19
+
20
+ 1. Browser code calls the local app BFF at `/api/eai/...`.
21
+ 2. Browser streaming uses `/api/eai/stream/...`.
22
+ 3. The BFF or server helpers attach auth, tenant, and correlation headers.
23
+ 4. The frontend never receives direct downstream database, blob, search, or
24
+ PublicAPI credentials.
25
+ 5. Prefer PublicAPI V4 surfaces; v3 route-family mapping is compatibility glue.
26
+
27
+ ## Implementation Contract
28
+
29
+ - Use Object Types as the data model contract.
30
+ - Use the template SDK and hooks for resources, documents, and chat.
31
+ - Use config slots with `{ components: [...] }`, not stale array-only slot
32
+ examples.
33
+ - Use `storeBindings` for data-driven props and code-level overrides for
34
+ callbacks, auth actions, analytics hooks, render props, and React nodes.
35
+ - Use the CLI for setup and verification:
36
+ - `eai login`
37
+ - `eai tenant select <tenant-slug>`
38
+ - `eai types validate`
39
+ - `eai types seed --tenant-key <key> --tenant-id <tenant-id>`
40
+ - `eai types diff --tenant-key <key> --tenant-id <tenant-id>`
41
+ - `eai resources schema --tenant-id <tenant-id>`
42
+ - `eai verify calls --tenant-id <tenant-id> --resource-type <type>`
43
+
44
+ Do not describe retired templates as canonical scaffolds. The surviving public
45
+ scaffold is the EAI App Template.
@@ -0,0 +1,156 @@
1
+ # EAI Config-Driven UI Reference
2
+
3
+ Use this public-safe guide when eai-gofer is planning, generating, or modifying
4
+ an app based on `https://github.com/eai-tools/eai-app-template`.
5
+
6
+ ## Source Files
7
+
8
+ | File | Purpose |
9
+ | --------------------------- | ------------------------------------------------------------------------------- |
10
+ | `src/eai.config/default.ts` | Default tenant config, store slices, API paths, storage keys, and layout slots. |
11
+ | `src/eai.config/index.ts` | Tenant key to config registry. |
12
+ | `src/eai.blocks.tsx` | Component registry and app-local block extension point. |
13
+ | `src/app/providers.tsx` | Auth/session providers and EAI config runtime. |
14
+ | `src/hooks/useResources.ts` | ResourceAPI-backed business data. |
15
+ | `src/hooks/useDocuments.ts` | Document upload, classification, and RAG indexing. |
16
+ | `src/hooks/useChat.ts` | Streaming and non-streaming chat workflows. |
17
+
18
+ ## Construction Rules
19
+
20
+ 1. Keep tenant-specific values in config: branding, feature flags, API
21
+ endpoints, storage keys, store slices, and layout slots.
22
+ 2. Register renderable components before referencing them from config.
23
+ 3. Reference components by their registered string name.
24
+ 4. Use `storeBindings` to map global store paths into component props.
25
+ 5. Use JSON-safe `showWhen` conditions for visibility.
26
+ 6. Keep functions, React nodes, auth actions, analytics callbacks, router
27
+ navigation, and render props in code-level overrides.
28
+ 7. Keep browser service calls behind BFF routes and template hooks.
29
+
30
+ ## Component Entry Shape
31
+
32
+ ```ts
33
+ {
34
+ component: 'TaskSummary',
35
+ priority: 10,
36
+ props: {
37
+ title: 'Open tasks',
38
+ },
39
+ storeBindings: [
40
+ { prop: 'tasks', storePath: 'tasks.items' },
41
+ { prop: 'isLoading', storePath: 'tasks.isLoading' },
42
+ ],
43
+ showWhen: { path: 'user.isAuthenticated', equals: true },
44
+ }
45
+ ```
46
+
47
+ Rules:
48
+
49
+ - `component` must match a registered component name.
50
+ - Lower `priority` renders first.
51
+ - `props` are static, tenant-configurable values.
52
+ - `storeBindings` support dot notation on both `prop` and `storePath`.
53
+ - `showWhen` supports `equals`, `notEquals`, `exists`, and compound `and`/`or`.
54
+
55
+ ## Slot Shape
56
+
57
+ Use the template slot shape:
58
+
59
+ ```ts
60
+ layout: {
61
+ header: {
62
+ components: [{ component: 'AppHeader', priority: 1 }],
63
+ },
64
+ middlePane: {
65
+ components: [
66
+ { component: 'TaskSummary', priority: 1 },
67
+ { component: 'TaskList', priority: 2 },
68
+ ],
69
+ },
70
+ rightPane: {
71
+ components: [{ component: 'AssistantPanel', priority: 1 }],
72
+ },
73
+ }
74
+ ```
75
+
76
+ Do not generate stale array-only slots such as
77
+ `middlePane: [{ component: 'Dashboard' }]`.
78
+
79
+ ## Store Slice Shape
80
+
81
+ ```ts
82
+ store: {
83
+ tasks: {
84
+ initialState: {
85
+ items: [],
86
+ selectedId: null,
87
+ isLoading: false,
88
+ },
89
+ persist: true,
90
+ },
91
+ ui: {
92
+ initialState: { showWelcome: true },
93
+ persist: false,
94
+ },
95
+ }
96
+ ```
97
+
98
+ Persist only tenant-safe UI or workflow state. Never place access tokens,
99
+ platform credentials, database connection details, blob credentials, search
100
+ credentials, or model provider credentials in config or store state.
101
+
102
+ ## Runtime Override Boundary
103
+
104
+ Config is data-only. Use wrapper components for runtime behavior:
105
+
106
+ ```tsx
107
+ const componentOverrides = {
108
+ TaskList: {
109
+ onSelectTask: (taskId: string) => setSelectedTaskId(taskId),
110
+ },
111
+ AssistantPanel: {
112
+ onSendMessage: sendMessage,
113
+ },
114
+ };
115
+ ```
116
+
117
+ Put these values in overrides, not config:
118
+
119
+ - event handlers
120
+ - auth login/logout handlers
121
+ - router callbacks
122
+ - analytics callbacks
123
+ - render props
124
+ - React nodes
125
+ - non-serializable objects
126
+
127
+ ## Service Pairing
128
+
129
+ The config-driven UI should pair with the service matrix:
130
+
131
+ | UI Need | Service Pattern |
132
+ | ----------------------------------------------------- | ---------------------------------------------------------- |
133
+ | Tenant business records | `useResources('<ObjectType>')` |
134
+ | File upload, document classification, or RAG indexing | `useDocuments()` |
135
+ | AI chat or workflow interaction | `useChat(workflowId, stage)` |
136
+ | Browser streaming | `/api/eai/stream/...` through the app BFF |
137
+ | Advanced platform route | Server-side helper or `eai publicapi` for CLI verification |
138
+
139
+ Do not call downstream platform services, storage backends, search indexes, or
140
+ model providers directly from browser components.
141
+
142
+ ## eai-gofer Validation Checklist
143
+
144
+ Before marking app UI work complete:
145
+
146
+ - Confirm each config component name exists in the registry or an app-local
147
+ block extension.
148
+ - Confirm each `storeBindings[].storePath` is backed by a store slice or a
149
+ documented runtime provider.
150
+ - Confirm each `showWhen.path` is backed by a store slice.
151
+ - Confirm callbacks and React nodes are in overrides, not config.
152
+ - Confirm service hooks match the selected capability: resources, documents,
153
+ chat, or approved PublicAPI route.
154
+ - Confirm examples are public-safe and do not reference private docs,
155
+ credentials, internal repository names, or organization-only implementation
156
+ details.
@@ -0,0 +1,197 @@
1
+ version: 1
2
+ catalog:
3
+ - errorId: EAI_CLI_MISSING
4
+ match:
5
+ containsAny:
6
+ - 'command not found: eai'
7
+ - 'eai: command not found'
8
+ meaning: EAI CLI is not installed or not on PATH.
9
+ likelyCause: Local workstation or container is missing the CLI.
10
+ recovery:
11
+ - 'npm config set @eai-tools:registry https://eai-tools.github.io/eai/registry/ --location=user'
12
+ - 'npm install -g @eai-tools/cli'
13
+ - 'eai --version'
14
+ nextGate: cli_installed
15
+ - errorId: EAI_CLI_OUTDATED
16
+ match:
17
+ containsAny:
18
+ - 'update available'
19
+ - 'upgrade required'
20
+ - 'behind latest'
21
+ meaning: Installed EAI CLI is behind the expected release.
22
+ likelyCause: Global CLI package has not been updated.
23
+ recovery:
24
+ - 'eai update --check'
25
+ - 'eai update'
26
+ - 'eai --describe'
27
+ nextGate: cli_release_current
28
+ - errorId: EAI_NOT_LOGGED_IN
29
+ match:
30
+ containsAny:
31
+ - 'not logged in'
32
+ - 'login required'
33
+ - 'token expired'
34
+ meaning: The current session has no usable EAI authentication.
35
+ likelyCause: User has not logged in or the token has expired.
36
+ recovery:
37
+ - 'eai login'
38
+ - 'eai whoami'
39
+ - 'eai tenant list --format json'
40
+ nextGate: tenant_ready
41
+ - errorId: EAI_TENANT_ACCESS_REQUIRED
42
+ match:
43
+ containsAny:
44
+ - 'no tenant'
45
+ - 'tenant required'
46
+ - 'insufficient tenant role'
47
+ meaning: The user lacks the tenant context needed for app delivery.
48
+ likelyCause: No membership, wrong tenant, or insufficient role.
49
+ recovery:
50
+ - 'eai tenant list --format json'
51
+ - 'eai tenant select <tenant-slug>'
52
+ - 'eai whoami'
53
+ nextGate: tenant_ready
54
+ - errorId: EAI_USER_INVITE_EXTERNAL_SERVICE_EXISTING_MEMBER
55
+ match:
56
+ containsAny:
57
+ - 'user_invite_external_service_existing_member'
58
+ - 'EXTERNAL_SERVICE_ERROR'
59
+ - 'Invite failed'
60
+ - 'eai user invite'
61
+ - '502'
62
+ meaning: A tenant member invite or role assignment reached an external service failure, and the target person may already exist as a direct tenant member with the wrong role.
63
+ likelyCause: The invite/add path failed after, or despite, an existing tenant member record. Retrying the same invite may not change the member role.
64
+ recovery:
65
+ - 'Run eai errors explain user_invite_external_service_existing_member --format json when advertised'
66
+ - 'eai whoami'
67
+ - 'eai user roles --tenant <tenant-id> --format json'
68
+ - 'eai user list --tenant <tenant-id> --search <email> --format json'
69
+ - 'If an existing direct member is present and the user approves, run eai user role set --tenant <tenant-id> --member-id <member-id> --role tenant-admin --format json'
70
+ - 'Verify the member read-back with eai user list --tenant <tenant-id> --search <email> --format json'
71
+ - 'Tell the affected app user to sign out and sign back in because Auth.js session or JWT role data may be cached'
72
+ - 'Do not edit databases or cloud portals directly unless EAI guidance reports an operator-only block'
73
+ nextGate: tenant_member_role_verified
74
+ - errorId: EAI_ENTRA_REDIRECT_URI_MISMATCH
75
+ match:
76
+ containsAny:
77
+ - 'AADSTS50011'
78
+ - 'reply URL specified in the request does not match'
79
+ - 'redirect URI does not match'
80
+ - 'redirect_uri'
81
+ - '/api/auth/callback/microsoft-entra-id'
82
+ meaning: The live app is sending an Entra callback URL that is not registered on the selected Entra app registration.
83
+ likelyCause: Preview or deployed host changed, Entra provisioning has not been refreshed for the app, or the runtime client ID points at an app registration without the confirmed callback URI.
84
+ recovery:
85
+ - 'eai whoami'
86
+ - 'eai tenant list --format json'
87
+ - 'eai tenant select <tenant-slug-or-id> when the active tenant is wrong'
88
+ - 'Confirm the callback route from the failing browser log in the active session; record only a redacted pattern such as https://<app-host>/api/auth/callback/...'
89
+ - 'eai provision entra --force --redirect-uri <confirmed-callback-uri>'
90
+ - 'Use --debug only with explicit user approval, and redact private hostnames, tenant IDs, client IDs, tokens, and raw debug output before writing artifacts'
91
+ - 'Retry the sign-in flow and confirm the authorize request now uses the registered redirect_uri'
92
+ - 'If mismatch persists, align AUTH_ENTRA_CLIENT_ID or ENTRA_CLIENT_ID with the Entra app registration returned by EAI'
93
+ nextGate: entra_redirect_registered
94
+ - errorId: EAI_NOT_PROJECT
95
+ match:
96
+ containsAny:
97
+ - 'E001'
98
+ - 'Not in an EAI project'
99
+ meaning: The current repo is not initialized from the EAI app template.
100
+ likelyCause: Template init has not run in this repo or folder.
101
+ recovery:
102
+ - 'Run /gofer:eai-first-run'
103
+ - 'Confirm folder choice and tenant'
104
+ - 'eai init <app-name> --skip-prompts --company-tenant <active-tenant-id>'
105
+ nextGate: template_ready
106
+ - errorId: EAI_TEMPLATE_DRIFT
107
+ match:
108
+ containsAny:
109
+ - 'template drift'
110
+ - 'template check failed'
111
+ - 'template out of date'
112
+ meaning: Repo template files have drifted from the expected EAI template baseline.
113
+ likelyCause: Local repo changes or newer template release not applied.
114
+ recovery:
115
+ - 'eai template check --format json'
116
+ - 'Follow the advertised refresh or reconcile path from eai --describe'
117
+ nextGate: template_drift_resolved
118
+ - errorId: EAI_GOFER_DRIFT
119
+ match:
120
+ containsAny:
121
+ - 'gofer refresh'
122
+ - 'gofer scaffold drift'
123
+ - 'refresh required'
124
+ meaning: The Gofer scaffold inside the repo is behind the expected version.
125
+ likelyCause: Repo Gofer assets were not refreshed after a CLI/plugin update.
126
+ recovery:
127
+ - 'eai gofer refresh --check --format json'
128
+ - 'Run the advertised refresh path'
129
+ - 'node .specify/scripts/node/gofer-workspace-check.mjs --host auto --json'
130
+ nextGate: gofer_drift_resolved
131
+ - errorId: EAI_VERTICAL_NOT_SELECTED
132
+ match:
133
+ containsAny:
134
+ - 'no vertical selected'
135
+ - 'select app first'
136
+ - 'app key required'
137
+ meaning: App-scoped work started before selecting the target app.
138
+ likelyCause: '`eai app select` has not been run for the active tenant.'
139
+ recovery:
140
+ - 'eai app list --format json'
141
+ - 'eai app select <key> --format json'
142
+ nextGate: app_selected
143
+ - errorId: EAI_PROVISION_REQUIRED_FOR_TYPES
144
+ match:
145
+ containsAny:
146
+ - 'App resources must be provisioned before publishing object types'
147
+ - '409'
148
+ meaning: Object types cannot be published until app resources are provisioned.
149
+ likelyCause: '`eai types seed` ran before `eai app provision` completed.'
150
+ recovery:
151
+ - 'eai app provision <key> --tenant-id <tenant-id> --select --format json'
152
+ - 'eai types validate'
153
+ - 'eai types seed --tenant-key <key> --tenant-id <tenant-id> --format json'
154
+ nextGate: types_publish_ready
155
+ - errorId: EAI_RESOURCE_NOT_READY
156
+ match:
157
+ containsAny:
158
+ - '503'
159
+ - 'Service Unavailable'
160
+ - 'storage not ready'
161
+ - 'preview not ready'
162
+ meaning: Backing resources or preview surfaces are not ready yet.
163
+ likelyCause: Provisioning completed partially or downstream services are still unhealthy.
164
+ recovery:
165
+ - 'eai resources storage status --tenant-id <tenant-id> --format json'
166
+ - 'eai resources storage doctor --tenant-id <tenant-id> --format json'
167
+ - 'eai verify storage --tenant-id <tenant-id>'
168
+ - 'eai resources schema --tenant-id <tenant-id> --format json'
169
+ nextGate: schema_storage_ready
170
+ - errorId: EAI_RESOURCE_SEARCH_EMBEDDING_REQUIRED
171
+ match:
172
+ containsAny:
173
+ - 'resource_search_embedding_required'
174
+ - 'search_embedding_required'
175
+ - 'Search vector embedding endpoint is not configured'
176
+ - 'Configure Azure OpenAI embedding endpoint and deployment before vector or hybrid search'
177
+ meaning: Full-text resource search can be available on the v4 passive ResourceAPI surface while hybrid or vector search is not ready yet.
178
+ likelyCause: The app or agent used the default hybrid v4 passive ResourceAPI search path before storage doctor reported semantic search readiness.
179
+ recovery:
180
+ - 'eai resources storage doctor --tenant-id <tenant-id> --format json'
181
+ - 'If capabilities.search.fulltext is true, retry with eai resources search "<query>" --fulltext --tenant-id <tenant-id>'
182
+ - 'Use --hybrid or --vector only after capabilities.search.hybrid or capabilities.search.vector is true'
183
+ - 'If semantic search is required for the scenario, record a platform capability gap in service-fit-matrix.md'
184
+ - 'Do not apply this fallback to legacy v1/v3 or active ResourceAPI behavior'
185
+ nextGate: resource_search_mode_selected
186
+ - errorId: EAI_WORKFLOW_NOT_READY
187
+ match:
188
+ containsAny:
189
+ - 'workflow readiness failed'
190
+ - 'workflow unavailable'
191
+ meaning: Required workflow support is not yet ready for this repo or tenant.
192
+ likelyCause: Workflow dependencies, package profile, or tenant features are missing.
193
+ recovery:
194
+ - 'eai workflow readiness --format json'
195
+ - 'eai --describe'
196
+ - 'Record blocked workflow capability in service-fit-matrix.md'
197
+ nextGate: workflow_ready