@enterpriseai/cli 3.19.0 → 3.19.2

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 (364) hide show
  1. package/package.json +3 -3
  2. package/resources/deploy/eai-app-template/producer-pin.json +5 -5
  3. package/resources/deploy/eai-app-template/tests/source-unknown-deployment-evidence.test.mjs +2141 -1
  4. package/resources/gofer/.gofer-version +4 -357
  5. package/resources/gofer/agents-skills/eai/SKILL.md +365 -0
  6. package/resources/gofer/agents-skills/eai-update/SKILL.md +56 -0
  7. package/resources/gofer/agents-skills/gofer-documentation/SKILL.md +93 -0
  8. package/resources/gofer/bash-scripts/create-new-feature.sh +3 -1
  9. package/resources/gofer/bash-scripts/sync-implementation-status.sh +4 -3
  10. package/resources/gofer/bash-scripts/update-agent-context.sh +7 -8
  11. package/resources/gofer/bash-scripts/validate-artifact.sh +10 -6
  12. package/resources/gofer/bash-scripts/verify-object-type-routing-workspace.sh +184 -0
  13. package/resources/gofer/claude-commands/eai-update.md +46 -0
  14. package/resources/gofer/claude-commands/eai.md +355 -0
  15. package/resources/gofer/claude-skills/eai/SKILL.md +365 -0
  16. package/resources/gofer/claude-skills/eai-update/SKILL.md +56 -0
  17. package/resources/gofer/claude-skills/gofer-documentation/SKILL.md +93 -0
  18. package/resources/gofer/commands/0_gofer_start.md +440 -99
  19. package/resources/gofer/commands/0a_problem_validation.md +187 -27
  20. package/resources/gofer/commands/10_gofer_cloud.md +183 -23
  21. package/resources/gofer/commands/1_gofer_research.md +239 -30
  22. package/resources/gofer/commands/2_gofer_specify.md +239 -35
  23. package/resources/gofer/commands/3_gofer_plan.md +259 -43
  24. package/resources/gofer/commands/4_gofer_tasks.md +401 -81
  25. package/resources/gofer/commands/5_gofer_implement.md +375 -84
  26. package/resources/gofer/commands/6_gofer_validate.md +284 -53
  27. package/resources/gofer/commands/7_gofer_save.md +187 -26
  28. package/resources/gofer/commands/7a_stakeholder_comms.md +183 -23
  29. package/resources/gofer/commands/8_gofer_branding.md +183 -23
  30. package/resources/gofer/commands/9_gofer_tests.md +212 -23
  31. package/resources/gofer/commands/gofer_bootstrap_workspace.md +121 -8
  32. package/resources/gofer/commands/gofer_check_workspace.md +123 -8
  33. package/resources/gofer/commands/gofer_constitution.md +183 -23
  34. package/resources/gofer/commands/gofer_diagnose.md +183 -23
  35. package/resources/gofer/commands/gofer_eai_first_run.md +254 -25
  36. package/resources/gofer/commands/gofer_hydrate.md +183 -23
  37. package/resources/gofer/commands/gofer_personality.md +117 -6
  38. package/resources/gofer/commands/gofer_plan.md +117 -6
  39. package/resources/gofer/commands/gofer_side.md +117 -6
  40. package/resources/gofer/commands/gofer_spec_summary.md +183 -23
  41. package/resources/gofer/commands/gofer_tdd.md +183 -23
  42. package/resources/gofer/commands/gofer_vocabulary.md +185 -25
  43. package/resources/gofer/commands/gofer_zoom_out.md +183 -23
  44. package/resources/gofer/config/typesafe-learning-review.json +16 -0
  45. package/resources/gofer/config/typesafe-semantic-review.json +9 -0
  46. package/resources/gofer/copilot-instructions/gofer-cost.instructions.md +15 -6
  47. package/resources/gofer/copilot-instructions/typescript.instructions.md +1 -1
  48. package/resources/gofer/copilot-prompts/eai-update.prompt.md +58 -0
  49. package/resources/gofer/copilot-prompts/eai.prompt.md +367 -0
  50. package/resources/gofer/gemini/commands/gofer/eai-update.md +22 -0
  51. package/resources/gofer/gemini/commands/gofer/eai-update.toml +2 -0
  52. package/resources/gofer/gemini/commands/gofer/eai.md +357 -0
  53. package/resources/gofer/gemini/commands/gofer/eai.toml +2 -0
  54. package/resources/gofer/gemini/commands/gofer/manifest.json +3 -27
  55. package/resources/gofer/gemini/extension.json +4 -4
  56. package/resources/gofer/github-agents/eai.agent.md +83 -0
  57. package/resources/gofer/github-agents/gofer-business.agent.md +73 -4
  58. package/resources/gofer/github-agents/gofer-implement.agent.md +71 -2
  59. package/resources/gofer/github-agents/gofer-plan.agent.md +72 -2
  60. package/resources/gofer/github-agents/gofer-research.agent.md +72 -2
  61. package/resources/gofer/github-agents/gofer-validate.agent.md +72 -2
  62. package/resources/gofer/github-skills/eai/SKILL.md +365 -0
  63. package/resources/gofer/github-skills/eai-update/SKILL.md +56 -0
  64. package/resources/gofer/github-skills/gofer-documentation/SKILL.md +93 -0
  65. package/resources/gofer/grok-skills/eai/SKILL.md +267 -14
  66. package/resources/gofer/grok-skills/eai-update/SKILL.md +56 -0
  67. package/resources/gofer/hook-scripts/user-prompt-submit.mjs +58 -13
  68. package/resources/gofer/instruction-templates/base/agents-base.md +8 -4
  69. package/resources/gofer/instruction-templates/gofer/gofer-claude.md +7 -5
  70. package/resources/gofer/instruction-templates/gofer/gofer-copilot.md +10 -8
  71. package/resources/gofer/memory/constitution.md +9 -7
  72. package/resources/gofer/memory/gofer-model-policy.yaml +23 -1
  73. package/resources/gofer/memory/lessons.md +0 -31
  74. package/resources/gofer/node-scripts/canonical-descriptions.mjs +1 -1
  75. package/resources/gofer/node-scripts/check-version-alignment.mjs +4 -7
  76. package/resources/gofer/node-scripts/delivery-lineage-corpus.mjs +156 -0
  77. package/resources/gofer/node-scripts/generate-commands.mjs +1073 -265
  78. package/resources/gofer/node-scripts/gofer-acceptance-check.mjs +143 -0
  79. package/resources/gofer/node-scripts/gofer-agent-catalog.mjs +271 -0
  80. package/resources/gofer/node-scripts/gofer-benchmark-executor.mjs +123 -0
  81. package/resources/gofer/node-scripts/gofer-benchmark-sign.mjs +62 -0
  82. package/resources/gofer/node-scripts/gofer-benchmark-signer.mjs +89 -0
  83. package/resources/gofer/node-scripts/gofer-benchmark.mjs +76 -0
  84. package/resources/gofer/node-scripts/gofer-blocker-control.mjs +274 -0
  85. package/resources/gofer/node-scripts/gofer-claude-adapter.mjs +154 -0
  86. package/resources/gofer/node-scripts/gofer-closed-loop-audit.mjs +19 -2
  87. package/resources/gofer/node-scripts/gofer-delivery-check.mjs +121 -0
  88. package/resources/gofer/node-scripts/gofer-encrypted-key.mjs +58 -0
  89. package/resources/gofer/node-scripts/gofer-execution-metrics.mjs +477 -0
  90. package/resources/gofer/node-scripts/gofer-execution-recovery.mjs +334 -0
  91. package/resources/gofer/node-scripts/gofer-grok-adapter.mjs +184 -0
  92. package/resources/gofer/node-scripts/gofer-heldout-corpus.mjs +73 -0
  93. package/resources/gofer/node-scripts/gofer-heldout-snapshot.mjs +286 -0
  94. package/resources/gofer/node-scripts/gofer-heldout-verifier.mjs +211 -0
  95. package/resources/gofer/node-scripts/gofer-host-capability.mjs +335 -0
  96. package/resources/gofer/node-scripts/gofer-independent-reviewer.mjs +130 -0
  97. package/resources/gofer/node-scripts/gofer-live-routing.mjs +109 -0
  98. package/resources/gofer/node-scripts/gofer-local-capability-issuer.mjs +71 -0
  99. package/resources/gofer/node-scripts/gofer-local-isolation.mjs +175 -0
  100. package/resources/gofer/node-scripts/gofer-local-settings-cleanup.mjs +388 -0
  101. package/resources/gofer/node-scripts/gofer-loop-audit.mjs +54 -3
  102. package/resources/gofer/node-scripts/gofer-native-adapter.mjs +567 -0
  103. package/resources/gofer/node-scripts/gofer-native-benchmark-dispatch.mjs +145 -0
  104. package/resources/gofer/node-scripts/gofer-native-runtime.mjs +169 -0
  105. package/resources/gofer/node-scripts/gofer-pre-edit-check.mjs +204 -0
  106. package/resources/gofer/node-scripts/gofer-priority-check.mjs +214 -0
  107. package/resources/gofer/node-scripts/gofer-response-check.mjs +56 -0
  108. package/resources/gofer/node-scripts/gofer-reviewed-learning.mjs +1232 -0
  109. package/resources/gofer/node-scripts/gofer-run-verified-task.mjs +330 -0
  110. package/resources/gofer/node-scripts/gofer-runtime-ledger.mjs +289 -0
  111. package/resources/gofer/node-scripts/gofer-semantic-drift.mjs +584 -0
  112. package/resources/gofer/node-scripts/gofer-surface-update.mjs +1178 -0
  113. package/resources/gofer/node-scripts/gofer-trust-bootstrap.mjs +77 -0
  114. package/resources/gofer/node-scripts/gofer-trusted-benchmark.mjs +102 -0
  115. package/resources/gofer/node-scripts/gofer-trusted-evaluator.mjs +274 -0
  116. package/resources/gofer/node-scripts/gofer-tty-prompt.mjs +34 -0
  117. package/resources/gofer/node-scripts/gofer-typesafe-credentials.mjs +435 -0
  118. package/resources/gofer/node-scripts/gofer-ui-preview.mjs +1212 -0
  119. package/resources/gofer/node-scripts/gofer-verified-execution.mjs +484 -0
  120. package/resources/gofer/node-scripts/gofer-verifier-key-ceremony.mjs +101 -0
  121. package/resources/gofer/node-scripts/gofer-worktree-layout.mjs +32 -0
  122. package/resources/gofer/node-scripts/object-type-routing-phase-bundle.mjs +360 -0
  123. package/resources/gofer/node-scripts/package-agent-plugin.mjs +574 -82
  124. package/resources/gofer/node-scripts/parse-stage-command.mjs +1 -1
  125. package/resources/gofer/node-scripts/render-delivery-lineage.mjs +178 -0
  126. package/resources/gofer/node-scripts/sync-extension-resources.mjs +78 -2
  127. package/resources/gofer/node-scripts/validate-object-type-identifiers.mjs +767 -0
  128. package/resources/gofer/node-scripts/validate-object-type-routing-workspace.mjs +1325 -0
  129. package/resources/gofer/node-scripts/validate-v4-resource-contract.d.mts +44 -0
  130. package/resources/gofer/node-scripts/validate-v4-resource-contract.mjs +957 -0
  131. package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +685 -116
  132. package/resources/gofer/references/agent-catalog.json +126 -0
  133. package/resources/gofer/references/blocker-mediation.md +156 -0
  134. package/resources/gofer/references/business-updates-and-goal-checks.md +109 -0
  135. package/resources/gofer/references/delivery-lineage.md +48 -0
  136. package/resources/gofer/references/mvp-capability-validation.md +102 -0
  137. package/resources/gofer/references/platform/README.md +1 -1
  138. package/resources/gofer/references/platform/eai-app-template.md +15 -13
  139. package/resources/gofer/references/platform/eai-auth-access.md +104 -0
  140. package/resources/gofer/references/platform/eai-config-driven-ui.md +5 -5
  141. package/resources/gofer/references/platform/eai-error-catalog.yaml +77 -19
  142. package/resources/gofer/references/platform/eai-repo-contract.md +61 -23
  143. package/resources/gofer/references/platform/eai-service-patterns.md +102 -105
  144. package/resources/gofer/references/platform/eai.md +44 -8
  145. package/resources/gofer/references/platform/vertical-template.md +10 -9
  146. package/resources/gofer/references/priority-outcome-protection.md +152 -0
  147. package/resources/gofer/references/verified-agent-execution.md +179 -0
  148. package/resources/gofer/schemas/gofer-learning-trace-v1.json +70 -0
  149. package/resources/gofer/specify-commands/0_gofer_start.md +440 -99
  150. package/resources/gofer/specify-commands/0a_problem_validation.md +187 -27
  151. package/resources/gofer/specify-commands/10_gofer_cloud.md +183 -23
  152. package/resources/gofer/specify-commands/1_gofer_research.md +239 -30
  153. package/resources/gofer/specify-commands/2_gofer_specify.md +239 -35
  154. package/resources/gofer/specify-commands/3_gofer_plan.md +259 -43
  155. package/resources/gofer/specify-commands/4_gofer_tasks.md +401 -81
  156. package/resources/gofer/specify-commands/5_gofer_implement.md +375 -84
  157. package/resources/gofer/specify-commands/6_gofer_validate.md +284 -53
  158. package/resources/gofer/specify-commands/7_gofer_save.md +187 -26
  159. package/resources/gofer/specify-commands/7a_stakeholder_comms.md +183 -23
  160. package/resources/gofer/specify-commands/8_gofer_branding.md +183 -23
  161. package/resources/gofer/specify-commands/9_gofer_tests.md +212 -23
  162. package/resources/gofer/specify-commands/gofer_bootstrap_workspace.md +121 -8
  163. package/resources/gofer/specify-commands/gofer_check_workspace.md +123 -8
  164. package/resources/gofer/specify-commands/gofer_constitution.md +183 -23
  165. package/resources/gofer/specify-commands/gofer_diagnose.md +183 -23
  166. package/resources/gofer/specify-commands/gofer_eai_first_run.md +254 -25
  167. package/resources/gofer/specify-commands/gofer_hydrate.md +183 -23
  168. package/resources/gofer/specify-commands/gofer_personality.md +117 -6
  169. package/resources/gofer/specify-commands/gofer_plan.md +117 -6
  170. package/resources/gofer/specify-commands/gofer_side.md +117 -6
  171. package/resources/gofer/specify-commands/gofer_spec_summary.md +183 -23
  172. package/resources/gofer/specify-commands/gofer_tdd.md +183 -23
  173. package/resources/gofer/specify-commands/gofer_vocabulary.md +185 -25
  174. package/resources/gofer/specify-commands/gofer_zoom_out.md +183 -23
  175. package/resources/gofer/specify-config/object-type-routing.json +24 -0
  176. package/resources/gofer/specify-config/typesafe-learning-review.json +16 -0
  177. package/resources/gofer/specify-config/typesafe-semantic-review.json +9 -0
  178. package/resources/gofer/system-skills/eai/SKILL.md +365 -0
  179. package/resources/gofer/system-skills/eai-update/SKILL.md +56 -0
  180. package/resources/gofer/system-skills/gofer-documentation/SKILL.md +93 -0
  181. package/resources/gofer/templates/build-map-template.md +64 -0
  182. package/resources/gofer/templates/business-scenarios-template.json +14 -0
  183. package/resources/gofer/templates/ciso-security-summary-template.md +3 -3
  184. package/resources/gofer/templates/context-bundle-template.md +4 -3
  185. package/resources/gofer/templates/contract-pack-template.md +8 -8
  186. package/resources/gofer/templates/cto-architecture-summary-template.md +3 -3
  187. package/resources/gofer/templates/delivery-lineage-template.json +8 -0
  188. package/resources/gofer/templates/eai-preflight-template.md +109 -68
  189. package/resources/gofer/templates/goal-ledger-template.json +1 -1
  190. package/resources/gofer/templates/gofer-model-policy.yaml +28 -6
  191. package/resources/gofer/templates/loop-contract-template.json +3 -1
  192. package/resources/gofer/templates/plan-template.md +8 -7
  193. package/resources/gofer/templates/priority-plan-template.json +29 -0
  194. package/resources/gofer/templates/proposal-review-template.md +6 -3
  195. package/resources/gofer/templates/release-capability-ledger-template.md +24 -0
  196. package/resources/gofer/templates/research-template.md +7 -6
  197. package/resources/gofer/templates/spec-summary-template.md +1 -1
  198. package/resources/gofer/templates/spec-template.md +45 -6
  199. package/resources/gofer/templates/tasks-template.md +12 -3
  200. package/resources/gofer/templates/ui-preview-brief-template.md +55 -5
  201. package/resources/gofer/templates/ui-review-log-template.md +21 -3
  202. package/resources/gofer/templates/ui-show-and-tell-template.md +46 -0
  203. package/resources/gofer/templates/visuals/capability-heatmap-template.md +2 -2
  204. package/resources/gofer/templates/working-backwards-prfaq-template.md +9 -8
  205. package/resources/linked-sources.json +4 -4
  206. package/resources/gofer/agents-skills/0_gofer_start/SKILL.md +0 -1287
  207. package/resources/gofer/agents-skills/0a_problem_validation/SKILL.md +0 -429
  208. package/resources/gofer/agents-skills/10_gofer_cloud/SKILL.md +0 -635
  209. package/resources/gofer/agents-skills/1_gofer_research/SKILL.md +0 -1159
  210. package/resources/gofer/agents-skills/2_gofer_specify/SKILL.md +0 -860
  211. package/resources/gofer/agents-skills/3_gofer_plan/SKILL.md +0 -899
  212. package/resources/gofer/agents-skills/4_gofer_tasks/SKILL.md +0 -760
  213. package/resources/gofer/agents-skills/5_gofer_implement/SKILL.md +0 -944
  214. package/resources/gofer/agents-skills/6_gofer_validate/SKILL.md +0 -2302
  215. package/resources/gofer/agents-skills/7_gofer_save/SKILL.md +0 -423
  216. package/resources/gofer/agents-skills/7a_stakeholder_comms/SKILL.md +0 -508
  217. package/resources/gofer/agents-skills/8_gofer_branding/SKILL.md +0 -315
  218. package/resources/gofer/agents-skills/9_gofer_tests/SKILL.md +0 -558
  219. package/resources/gofer/agents-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
  220. package/resources/gofer/agents-skills/gofer_check_workspace/SKILL.md +0 -119
  221. package/resources/gofer/agents-skills/gofer_constitution/SKILL.md +0 -612
  222. package/resources/gofer/agents-skills/gofer_diagnose/SKILL.md +0 -114
  223. package/resources/gofer/agents-skills/gofer_eai_first_run/SKILL.md +0 -397
  224. package/resources/gofer/agents-skills/gofer_hydrate/SKILL.md +0 -561
  225. package/resources/gofer/agents-skills/gofer_personality/SKILL.md +0 -44
  226. package/resources/gofer/agents-skills/gofer_plan/SKILL.md +0 -40
  227. package/resources/gofer/agents-skills/gofer_side/SKILL.md +0 -45
  228. package/resources/gofer/agents-skills/gofer_spec_summary/SKILL.md +0 -112
  229. package/resources/gofer/agents-skills/gofer_tdd/SKILL.md +0 -112
  230. package/resources/gofer/agents-skills/gofer_vocabulary/SKILL.md +0 -112
  231. package/resources/gofer/agents-skills/gofer_zoom_out/SKILL.md +0 -112
  232. package/resources/gofer/claude-commands/0_gofer_start.md +0 -1282
  233. package/resources/gofer/claude-commands/0a_problem_validation.md +0 -424
  234. package/resources/gofer/claude-commands/10_gofer_cloud.md +0 -630
  235. package/resources/gofer/claude-commands/1_gofer_research.md +0 -1154
  236. package/resources/gofer/claude-commands/2_gofer_specify.md +0 -855
  237. package/resources/gofer/claude-commands/3_gofer_plan.md +0 -894
  238. package/resources/gofer/claude-commands/4_gofer_tasks.md +0 -755
  239. package/resources/gofer/claude-commands/5_gofer_implement.md +0 -939
  240. package/resources/gofer/claude-commands/6_gofer_validate.md +0 -2297
  241. package/resources/gofer/claude-commands/7_gofer_save.md +0 -418
  242. package/resources/gofer/claude-commands/7a_stakeholder_comms.md +0 -503
  243. package/resources/gofer/claude-commands/8_gofer_branding.md +0 -310
  244. package/resources/gofer/claude-commands/9_gofer_tests.md +0 -553
  245. package/resources/gofer/claude-commands/gofer_bootstrap_workspace.md +0 -143
  246. package/resources/gofer/claude-commands/gofer_check_workspace.md +0 -114
  247. package/resources/gofer/claude-commands/gofer_constitution.md +0 -607
  248. package/resources/gofer/claude-commands/gofer_diagnose.md +0 -109
  249. package/resources/gofer/claude-commands/gofer_eai_first_run.md +0 -392
  250. package/resources/gofer/claude-commands/gofer_hydrate.md +0 -556
  251. package/resources/gofer/claude-commands/gofer_personality.md +0 -39
  252. package/resources/gofer/claude-commands/gofer_plan.md +0 -35
  253. package/resources/gofer/claude-commands/gofer_side.md +0 -40
  254. package/resources/gofer/claude-commands/gofer_spec_summary.md +0 -107
  255. package/resources/gofer/claude-commands/gofer_tdd.md +0 -107
  256. package/resources/gofer/claude-commands/gofer_vocabulary.md +0 -107
  257. package/resources/gofer/claude-commands/gofer_zoom_out.md +0 -107
  258. package/resources/gofer/claude-skills/eai-gofer/SKILL.md +0 -56
  259. package/resources/gofer/copilot-prompts/0_gofer_start.prompt.md +0 -1308
  260. package/resources/gofer/copilot-prompts/0a_problem_validation.prompt.md +0 -429
  261. package/resources/gofer/copilot-prompts/10_gofer_cloud.prompt.md +0 -644
  262. package/resources/gofer/copilot-prompts/1_gofer_research.prompt.md +0 -1177
  263. package/resources/gofer/copilot-prompts/2_gofer_specify.prompt.md +0 -878
  264. package/resources/gofer/copilot-prompts/3_gofer_plan.prompt.md +0 -917
  265. package/resources/gofer/copilot-prompts/4_gofer_tasks.prompt.md +0 -778
  266. package/resources/gofer/copilot-prompts/5_gofer_implement.prompt.md +0 -962
  267. package/resources/gofer/copilot-prompts/6_gofer_validate.prompt.md +0 -2310
  268. package/resources/gofer/copilot-prompts/7_gofer_save.prompt.md +0 -433
  269. package/resources/gofer/copilot-prompts/7a_stakeholder_comms.prompt.md +0 -516
  270. package/resources/gofer/copilot-prompts/8_gofer_branding.prompt.md +0 -323
  271. package/resources/gofer/copilot-prompts/9_gofer_tests.prompt.md +0 -566
  272. package/resources/gofer/copilot-prompts/gofer_bootstrap_workspace.prompt.md +0 -161
  273. package/resources/gofer/copilot-prompts/gofer_check_workspace.prompt.md +0 -132
  274. package/resources/gofer/copilot-prompts/gofer_constitution.prompt.md +0 -621
  275. package/resources/gofer/copilot-prompts/gofer_diagnose.prompt.md +0 -127
  276. package/resources/gofer/copilot-prompts/gofer_eai_first_run.prompt.md +0 -410
  277. package/resources/gofer/copilot-prompts/gofer_hydrate.prompt.md +0 -571
  278. package/resources/gofer/copilot-prompts/gofer_personality.prompt.md +0 -57
  279. package/resources/gofer/copilot-prompts/gofer_plan.prompt.md +0 -53
  280. package/resources/gofer/copilot-prompts/gofer_side.prompt.md +0 -58
  281. package/resources/gofer/copilot-prompts/gofer_spec_summary.prompt.md +0 -125
  282. package/resources/gofer/copilot-prompts/gofer_tdd.prompt.md +0 -125
  283. package/resources/gofer/copilot-prompts/gofer_vocabulary.prompt.md +0 -125
  284. package/resources/gofer/copilot-prompts/gofer_zoom_out.prompt.md +0 -125
  285. package/resources/gofer/gemini/commands/gofer/0_gofer_start.md +0 -1282
  286. package/resources/gofer/gemini/commands/gofer/0_gofer_start.toml +0 -2
  287. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.md +0 -424
  288. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.toml +0 -2
  289. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.md +0 -630
  290. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.toml +0 -2
  291. package/resources/gofer/gemini/commands/gofer/1_gofer_research.md +0 -1154
  292. package/resources/gofer/gemini/commands/gofer/1_gofer_research.toml +0 -2
  293. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.md +0 -855
  294. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.toml +0 -2
  295. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.md +0 -894
  296. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.toml +0 -2
  297. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.md +0 -755
  298. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.toml +0 -2
  299. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.md +0 -939
  300. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.toml +0 -2
  301. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.md +0 -2297
  302. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.toml +0 -2
  303. package/resources/gofer/gemini/commands/gofer/7_gofer_save.md +0 -418
  304. package/resources/gofer/gemini/commands/gofer/7_gofer_save.toml +0 -2
  305. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.md +0 -503
  306. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.toml +0 -2
  307. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.md +0 -310
  308. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.toml +0 -2
  309. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.md +0 -553
  310. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.toml +0 -2
  311. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.md +0 -143
  312. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.toml +0 -2
  313. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.md +0 -114
  314. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.toml +0 -2
  315. package/resources/gofer/gemini/commands/gofer/gofer_constitution.md +0 -607
  316. package/resources/gofer/gemini/commands/gofer/gofer_constitution.toml +0 -2
  317. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.md +0 -109
  318. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.toml +0 -2
  319. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.md +0 -392
  320. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.toml +0 -2
  321. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.md +0 -556
  322. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.toml +0 -2
  323. package/resources/gofer/gemini/commands/gofer/gofer_personality.md +0 -39
  324. package/resources/gofer/gemini/commands/gofer/gofer_personality.toml +0 -2
  325. package/resources/gofer/gemini/commands/gofer/gofer_plan.md +0 -35
  326. package/resources/gofer/gemini/commands/gofer/gofer_plan.toml +0 -2
  327. package/resources/gofer/gemini/commands/gofer/gofer_side.md +0 -40
  328. package/resources/gofer/gemini/commands/gofer/gofer_side.toml +0 -2
  329. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.md +0 -107
  330. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.toml +0 -2
  331. package/resources/gofer/gemini/commands/gofer/gofer_tdd.md +0 -107
  332. package/resources/gofer/gemini/commands/gofer/gofer_tdd.toml +0 -2
  333. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.md +0 -107
  334. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.toml +0 -2
  335. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.md +0 -107
  336. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.toml +0 -2
  337. package/resources/gofer/github-skills/eai-gofer/SKILL.md +0 -56
  338. package/resources/gofer/system-skills/0_gofer_start/SKILL.md +0 -1287
  339. package/resources/gofer/system-skills/0a_problem_validation/SKILL.md +0 -429
  340. package/resources/gofer/system-skills/10_gofer_cloud/SKILL.md +0 -635
  341. package/resources/gofer/system-skills/1_gofer_research/SKILL.md +0 -1159
  342. package/resources/gofer/system-skills/2_gofer_specify/SKILL.md +0 -860
  343. package/resources/gofer/system-skills/3_gofer_plan/SKILL.md +0 -899
  344. package/resources/gofer/system-skills/4_gofer_tasks/SKILL.md +0 -760
  345. package/resources/gofer/system-skills/5_gofer_implement/SKILL.md +0 -944
  346. package/resources/gofer/system-skills/6_gofer_validate/SKILL.md +0 -2302
  347. package/resources/gofer/system-skills/7_gofer_save/SKILL.md +0 -423
  348. package/resources/gofer/system-skills/7a_stakeholder_comms/SKILL.md +0 -508
  349. package/resources/gofer/system-skills/8_gofer_branding/SKILL.md +0 -315
  350. package/resources/gofer/system-skills/9_gofer_tests/SKILL.md +0 -558
  351. package/resources/gofer/system-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
  352. package/resources/gofer/system-skills/gofer_check_workspace/SKILL.md +0 -119
  353. package/resources/gofer/system-skills/gofer_constitution/SKILL.md +0 -612
  354. package/resources/gofer/system-skills/gofer_diagnose/SKILL.md +0 -114
  355. package/resources/gofer/system-skills/gofer_eai_first_run/SKILL.md +0 -397
  356. package/resources/gofer/system-skills/gofer_hydrate/SKILL.md +0 -561
  357. package/resources/gofer/system-skills/gofer_personality/SKILL.md +0 -44
  358. package/resources/gofer/system-skills/gofer_plan/SKILL.md +0 -40
  359. package/resources/gofer/system-skills/gofer_side/SKILL.md +0 -45
  360. package/resources/gofer/system-skills/gofer_spec_summary/SKILL.md +0 -112
  361. package/resources/gofer/system-skills/gofer_tdd/SKILL.md +0 -112
  362. package/resources/gofer/system-skills/gofer_vocabulary/SKILL.md +0 -112
  363. package/resources/gofer/system-skills/gofer_zoom_out/SKILL.md +0 -112
  364. package/resources/gofer/templates/ui-approval-template.md +0 -32
@@ -18,13 +18,133 @@ aliases: [gofer:first-run, gofer:eai-setup]
18
18
 
19
19
  # EAI Gofer First Run
20
20
 
21
- Use this command when the user is starting their first EAI Platform app, when
22
- `/0_gofer_start` is unavailable in a new repository, or when an EAI app
23
- build reaches the Gofer pipeline before the local machine, workspace, or
24
- EAI app template is ready.
21
+ ## Auth Scope Before Setup
22
+
23
+ **Authentication Access Decision**
24
+
25
+ When adding or changing authentication, read `.specify/references/platform/eai-auth-access.md`. Ask: **"Who should be able to use this app: only members of its EAI workspace (recommended), or any authenticated EAI user?"** Default to `workspace-only`. Wait for the answer before changing auth code. An unanswered question must not widen access. Preserve stricter existing rules. Record the answer in the feature spec; do not repeat a confirmed question unless its scope changes.
26
+
27
+ Confirm the sign-in method separately: EAI sign-in or client SSO through EAI. Verify platform support and CLI syntax; do not invent SSO commands. Enforce trusted server-side workspace membership and app permissions. A session, CIAM directory ID, or email domain alone is not workspace access. Platform-wide sign-in never grants access to another workspace's data. Test allowed and denied users, revoked membership, unavailable membership checks, and cross-workspace requests. These checks apply only when authentication is implemented or required, not to non-app work or an auth-free local MVP.
28
+
29
+ ## Continuation And Stop Contract
30
+ <!-- gofer:continuation:start -->
31
+
32
+ 1. Preserve the requested scope and mode, including read-only, plan-only, research-only and MVP work. Keep the full applicable pipeline, stage functions, artifacts, reviews and validation; do not expand an MVP into an unapproved release.
33
+ 2. After a stage's required evidence is complete, read and follow the next internal file in .specify/commands/ in the same conversation. Do not require a numbered command or a host-specific skill dispatcher. Optional helpers remain optional; maintenance and control commands do not start delivery work.
34
+ 3. Treat the stated business goal as authority for ordinary planning, task ordering, design, diagnosis, repair, testing, and reversible repository changes within scope. Record material Gofer decisions with their reason and effect. Do not ask the user to choose implementation details that Gofer can safely decide.
35
+ 4. Ask only when the goal is unclear or changes, the action is irreversible or destructive, it changes security or access, it creates external cost or commitment, it changes production or public exposure, it requires missing authority or credentials, or it conflicts with an explicit user constraint. Record the exact reason before asking. missing or ambiguous approval is not approval when an approval boundary applies. Rejected, revoked, changed or unclear authority requires a pause.
36
+ 5. Pause for material scope, security, cost, deployment, destructive or protected files/boundary changes and any outstanding user gate. A business goal does not authorize publishing, spending, external changes, or bypassing host permissions. Complete safe authorized work without bypassing the blocked gate.
37
+ 6. A tool proposal is not execution. If host consent is required, wait for it. After the tool result or approved proposal returns, inspect the result and resume the next authorized action within approved scope; do not end with only a plan or a proposed tool call. A denied tool or unavailable capability must not be bypassed through another host or CLI.
38
+ 7. Use the current agent's available native tools. Optional Gofer/MCP tools are conveniences, not prerequisites. If the current agent lacks a required capability, report that limitation and the safe next action; do not pretend a handoff button transfers control automatically.
39
+ 8. Stop after research only when research-only work was requested, the user paused, or a real gate blocks progress. Otherwise continue to specification. At validation, report completion only when the requested scope's required evidence passes; failures remain unfinished work.
40
+ 9. Respect budget, context and retry limits from the existing loop contract. Repair safe within-scope failures only within those limits. Preserve a checkpoint before an orderly context stop; resume by reading its recorded stage and rechecking scope, approvals and evidence. Never claim an abrupt host termination was handled.
41
+ 10. Report concise Progress during work. At every controlled stop, report Progress, Stop reason and Next action, including the exact missing input or approval and unfinished work. Reasons are requested scope complete, user pause, approval required, material change, missing capability/access, validation blocked, or budget/context/retry limit. Stage completion alone is not pipeline completion.
42
+
43
+ **Blocker Mediation**
44
+
45
+ - Before repeating a failed action or asking for missing input, read .specify/references/blocker-mediation.md and inspect the private blocker register with gofer-blocker-control.mjs. Reuse the same state directory and goal, subject and condition keys across stages, restarts and surfaces. Different wording, models or tools do not create a new blocker.
46
+ - Classify the cause first. Missing user decisions, access, external dependencies and unavailable capabilities require a recorded wait. Reserve an ask event before asking; ask once, explain the business impact and required change, then stop affected work. An unanswered question is not new evidence. Do not poll or rephrase it to keep running.
47
+ - Technical ask events require a fresh verification file under .specify/references/priority-outcome-protection.md: actual diagnosis, self-cause check and why no authorized repair is available. Business choices need no failed command. For feature tasks, use gofer-priority-check.mjs and the saved direction before switching work; this does not start delivery during maintenance or conversation.
48
+ - For AI-solvable or unknown causes, reserve each attempt before execution. Allow one investigation and one different recovery within existing tighter budgets. Record its result even when interrupted or unsuccessful. An unfinished reservation must not launch again. Do not reset the register, change keys or switch surfaces to obtain more attempts.
49
+ - Resume only after a real user answer or changed external evidence has been recorded and checked. The helper allows one evidence-backed resumption; exhausted limits need human review. Never invent approval or evidence. Successful model output and a running server do not resolve a blocker without the relevant check.
50
+ - Save the blocker, unfinished tasks and next action before stopping. Continue only approved tasks that do not depend on it. Keep the original goal; update specs, plans, tasks and validation for accepted direction changes, and reopen stale checks. Do not quietly drop requirements to make progress.
51
+ - Use node .specify/scripts/node/gofer-blocker-control.mjs --state-dir <private-state-directory> --event <private-event.json> before controlled actions; inspect with --state-dir alone, or add --task T001 for an independent task. A denied action, invalid record or missing helper means stop and explain the limitation, not bypass it. Use the installed plugin script path if no repo scaffold exists. Conversation-only work uses a private session state directory and does not require app setup or feature files.
52
+ - Strict loop validation checks every recorded feature blocker. Shared instructions guide native chats; this helper cannot intercept calls that a host sends directly. Do not claim native enforcement from package tests alone.
53
+
54
+
55
+ ## Verified Specialist Execution
56
+
57
+ Use .specify/references/verified-agent-execution.md before specialist delegation in any app or non-app stage. The shared agent-catalog.json retains specialist responsibilities. Resolve roles with gofer-agent-catalog.mjs; obtain tools and models from the current host, never from another provider's examples. Keep internal roles out of the public command picker.
58
+
59
+ Preserve every required review. Provider-specific Task/model examples describe intent, not portable commands or proof of support. Run independent work together only when dependencies, permission boundaries, scope and budgets allow it. Otherwise serialize supported work. A required independent review remains unverified if separate execution is unavailable; never relabel self-review as independent.
60
+
61
+ The experimental gofer-verified-execution.mjs controller accepts trusted adapters, not worker-supplied commands. It checks current priority, bounds calls and attempts, records required checks, and rejects stale results. Its local process tests do not qualify native model execution. Do not activate an unqualified host adapter or bypass existing blocker, permission, outcome or release gates. Preserve normal safe Gofer work and explain the limitation.
62
+
63
+ <!-- gofer:continuation:end -->
64
+ ## Token And Cost Policy
65
+ <!-- gofer:token-cost-policy:start -->
66
+
67
+ Before spawning agents, calling tools, or loading large files:
68
+
69
+ 1. Treat `.specify/memory/gofer-model-policy.yaml` as advisory capability, cost, and quality constraints. A fresh signed host receipt and independently verified benchmark evidence select the model. If it is missing, run `/gofer:bootstrap-workspace` before continuing.
70
+ 2. Use the lowest-cost model that the live router qualifies for this task. Its signed host receipt and independent benchmark evidence must govern the exact model identity. Do not select a model from static provider examples, names, or price alone.
71
+ 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.
72
+ 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.
73
+ 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.
74
+ 6. Escalate model tier only when a cheaper pass is low-confidence, contradictory, security-sensitive, or blocking release quality.
75
+ <!-- gofer:token-cost-policy:end -->
76
+
77
+ ## Business-Friendly Progress Contract
78
+ <!-- gofer:business-progress:start -->
79
+
80
+ Default user-facing updates must be concise, business-level, and easy to scan.
81
+ Keep the technical work rigorous in artifacts, tests, logs, and code, but do
82
+ not lead with implementation jargon unless the user asks for it.
83
+
84
+ Use ASD-STE100 Simplified Technical English as the target writing standard for
85
+ all Gofer-authored chat, documents, commands, summaries, PR notes, error
86
+ guidance, and validation artifacts. ASD-STE100 is copyright and a trademark of
87
+ ASD; do not bundle the protected ASD dictionary and do not claim ASD
88
+ certification.
89
+
90
+ 1. Explain progress as what is being connected, changed, checked, or fixed and
91
+ why it matters to the business outcome.
92
+ 2. Use the running build map: create or update
93
+ `.specify/specs/{feature}/build-map.md` from
94
+ `.specify/templates/build-map-template.md` for application delivery, and
95
+ refer to its plain-language areas in progress updates.
96
+ 3. When there is a problem, translate it into business impact, current status,
97
+ next action, and what input or approval is needed. Keep raw stack traces,
98
+ command logs, IDs, and acronyms out of chat unless asked.
99
+ 4. If the user asks for technical depth, provide it on request and point to the
100
+ durable artifact that contains the evidence.
101
+ 5. Prefer a compact update shape:
102
+ - `Working on`: the build-map area or stakeholder outcome
103
+ - `Why it matters`: user/business impact
104
+ - `Status`: done, checking, fixing, blocked, or needs decision
105
+ 6. Use one action per instruction.
106
+ 7. Keep instructions to 20 words or fewer where possible.
107
+ 8. Use active voice unless the actor is unknown or not important.
108
+ 9. Use simple verb forms: simple present, simple past, simple future,
109
+ infinitive, or imperative.
110
+ 10. Define acronyms on first use and use approved project terms.
111
+ 11. Avoid idioms, marketing adjectives, vague praise, and hedging.
112
+ 12. Use vertical lists for complex information and one topic per paragraph.
113
+ 13. For errors, state what happened, why it matters, what to do next, and the
114
+ exact safe command when one exists.
115
+ 14. Do not remove technical validation, security checks, EAI preflights, tests,
116
+ or loop evidence. This contract changes presentation, not engineering
117
+ standards.
118
+ 15. Before each user-facing reply, check that it leads with the business effect,
119
+ uses concise simple language, and includes only useful technical detail.
120
+ 16. If any check fails, rewrite the reply before sending it.
121
+ <!-- gofer:business-progress:end -->
122
+
123
+ Use this internal setup contract when the user is starting their first EAI
124
+ Platform app, when `/gofer` or `/eai` is unavailable in a new repository,
125
+ or when an EAI app build reaches the Gofer pipeline before the local machine,
126
+ workspace, workspace or EAI app template is ready.
25
127
 
26
128
  This command is intentionally allowed to run before `.specify/` exists.
27
129
 
130
+ ## App Preview Runner Contract
131
+ <!-- gofer:app-preview-runner:start -->
132
+
133
+ For EAI app delivery, every UI preview must use the repo runner when it exists.
134
+
135
+ 1. Use `./run.sh dev 3001` on macOS, Linux, and GitHub Codespaces.
136
+ 2. Use `run.bat dev 3001` on Windows.
137
+ 3. Use a different port only when the feature notes record the reason.
138
+ 4. Restart only this app. Before stopping a process, verify its exact checkout, process ID, start time and command, then recheck immediately before stopping it. Never stop another app, an unknown process, or every process on a port. If ownership is uncertain, leave it running and ask the user. Inspect older runners before use; do not run one that kills by port alone.
139
+ 5. Do not use direct `npm run dev`, `next dev`, or package-manager preview commands when `run.sh`, `run.bat`, or `run.ps1` exists.
140
+ 6. After every UI-facing change, run:
141
+ - `node .specify/scripts/node/gofer-ui-preview.mjs --feature-dir {FEATURE_DIR} --command "./run.sh dev 3001" --open auto --screenshot --change "<change summary>"`
142
+ 7. On Windows, use:
143
+ - `node .specify/scripts/node/gofer-ui-preview.mjs --feature-dir {FEATURE_DIR} --command "run.bat dev 3001" --open auto --screenshot --change "<change summary>"`
144
+ 8. If the runner is missing in an EAI app template repo, refresh the template before preview work continues.
145
+ 9. Check the exact preview page and the current implemented user journey after each change. A running process, open browser, screenshot alone, error page or dry run is not proof that it works. Say ready to view only after those checks pass. Otherwise explain what is unchecked or failing; do not claim readiness. Record fresh browser and test evidence. Local MVP checks cover only implemented behaviour; do not add future auth or deployment gates. Keep showing clearly labelled drafts without adding approval stops.
146
+ <!-- gofer:app-preview-runner:end -->
147
+
28
148
  ## Non-Negotiables
29
149
 
30
150
  - Ask before every install, admin action, browser login, destructive file
@@ -34,6 +154,8 @@ This command is intentionally allowed to run before `.specify/` exists.
34
154
  - Prefer existing tools over reinstalling. Keep working Git, Node.js, npm, and
35
155
  EAI CLI installations.
36
156
  - Do not scaffold over a non-empty repo silently.
157
+ - Do not start app research, specification, planning, tasks, or source changes
158
+ until the EAI app-template readiness check passes.
37
159
  - Use the EAI Platform app template first, Azure second, and non-EAI stacks only
38
160
  by explicit exception.
39
161
  - In GitHub Codespaces, avoid `sudo` or host-level package installs unless the
@@ -43,8 +165,9 @@ This command is intentionally allowed to run before `.specify/` exists.
43
165
 
44
166
  Detect and report:
45
167
 
46
- - Host: Claude Code, Codex, GitHub Copilot, Gemini, VS Code, GitHub Codespaces,
47
- or unknown.
168
+ - Host: Claude Code, Codex, GitHub Copilot, Google Antigravity, Grok Build,
169
+ VS Code, or unknown.
170
+ - Execution environment: local or GitHub Codespaces.
48
171
  - OS: macOS, Linux, Windows, or Codespaces Linux.
49
172
  - Shell: bash/zsh, PowerShell, cmd, or unknown.
50
173
  - Workspace root: current folder, opened editor workspace, Codespace checkout,
@@ -111,6 +234,8 @@ the user explicitly chooses a non-EAI path.
111
234
 
112
235
  ## Step 4: Discover EAI CLI Capabilities
113
236
 
237
+ Do not invent, guess, or complete EAI CLI commands from memory.
238
+
114
239
  Run:
115
240
 
116
241
  ```bash
@@ -123,8 +248,25 @@ If advertised, also run:
123
248
  eai agent guide --format json
124
249
  ```
125
250
 
251
+ For EAI app delivery that will publish Object Types, inspect the JSON guide and
252
+ require `capabilities` to contain
253
+ `app-manifest-name-slug-negotiation-v1`. `eai update --check` reporting
254
+ `current` does not prove the deployed receiver accepts the new request shape.
255
+ If the capability is absent, record `upgrade_required`, block Object Type
256
+ seed/publish and deployed-readiness claims, and ask before updating the CLI.
257
+ Local discovery and correct source authoring may continue, but do not hand-build
258
+ an app-manifest request.
259
+
126
260
  Prefer commands and options advertised by the installed CLI over remembered
127
- syntax. Use JSON only where the CLI advertises it. Record a safe summary in the
261
+ syntax. Before suggesting or running a specific `eai ...` command, verify its
262
+ command path and flags with command-specific `--help` or the equivalent help
263
+ path advertised by the CLI.
264
+
265
+ If the installed CLI does not list a command, do not run it. Tell the user that
266
+ this EAI CLI version does not expose the command, then choose a safe listed
267
+ command or ask the user to update EAI CLI.
268
+
269
+ Use JSON only where the CLI advertises it. Record a safe summary in the
128
270
  first-run report.
129
271
 
130
272
  When any later `eai` command fails, use the CLI's error guidance before
@@ -155,8 +297,34 @@ approves the role change:
155
297
  eai user role set --workspace <workspace-id> --member-id <member-id> --role tenant-admin --format json
156
298
  ```
157
299
 
158
- Then verify the read-back and tell the affected app user to sign out and sign
159
- back in because Auth.js session or JWT role data may be cached.
300
+ The value `tenant-admin` is the platform role ID. Describe it to users as
301
+ workspace admin access. Then verify the read-back and tell the affected app
302
+ user to sign out and sign back in because Auth.js session or JWT role data may
303
+ be cached.
304
+
305
+ If platform user lookup or membership prerequisite calls fail with
306
+ `MISSING_TENANT`, `app_token_tenant_context_required`, or "Tenant context
307
+ required for app tokens", do not start by changing workspace members, role
308
+ definitions, Entra configuration, databases, or cloud portals. Run:
309
+
310
+ ```bash
311
+ eai errors explain app_token_tenant_context_required --format json
312
+ eai whoami
313
+ eai workspace list --format json
314
+ ```
315
+
316
+ Then retry through workspace-scoped V4 platform routes:
317
+
318
+ ```text
319
+ /v4/platform/tenants/<tenant-id>/users/by-email?email=<email>
320
+ /v4/platform/tenants/<tenant-id>/users/<oid>/memberships
321
+ /v4/platform/tenants/<tenant-id>/members
322
+ /v4/platform/tenants/<tenant-id>/role-definitions
323
+ ```
324
+
325
+ If those still fail, escalate with redacted route shape, HTTP status, server
326
+ code, CLI version, active workspace slug, and deployed PublicAPI/AdminAPI versions
327
+ if visible.
160
328
 
161
329
  Specifically note whether the installed CLI advertises the commands needed for:
162
330
 
@@ -187,16 +355,18 @@ If not logged in or the token is expired, ask before running:
187
355
  eai login
188
356
  ```
189
357
 
190
- After login, list workspaces again. If more than one workspace is available, help the
191
- user choose the correct one and run the advertised equivalent of:
358
+ After login, list workspaces again. If more than one workspace is available, ask:
359
+ **“Which EAI workspace should this app use?”** Then run the advertised equivalent of:
192
360
 
193
361
  ```bash
194
362
  eai workspace select <workspace-slug-or-id>
195
363
  ```
196
364
 
197
- Require at least one usable workspace membership before EAI app delivery. Prefer a
198
- workspace admin or operator access for app enrollment and provisioning. The platform role ID `tenant-admin` grants workspace admin access. If no workspace is available, tell the user they need an EAI
199
- Platform account and workspace access before Gofer can build an app.
365
+ Require workspace access before EAI app delivery. Prefer a
366
+ workspace admin or operator-capable role because app enrollment and provisioning
367
+ are workspace actions. If no workspace is available, say: **“I cannot find an
368
+ EAI workspace that you can access. Ask a workspace admin for access, then run
369
+ `eai workspace list` again.”**
200
370
 
201
371
  ## Step 6: Confirm Project Folder And Name
202
372
 
@@ -216,18 +386,31 @@ Collect or confirm:
216
386
 
217
387
  ## Step 7: Initialize The EAI App Template
218
388
 
219
- Detect existing template markers before scaffolding:
389
+ Use the deterministic app-template gate when it exists:
220
390
 
391
+ ```bash
392
+ node .specify/scripts/node/eai-app-template-readiness.mjs --root . --json
393
+ ```
394
+
395
+ The gate requires the `.eai-manifest.json` provenance written by `eai init`
396
+ and the supported EAI app-template contract:
397
+
398
+ - `.eai-manifest.json`
399
+ - `eai.runtime.json`
221
400
  - `src/eai.config/object-types.ts`
222
401
  - `src/eai.config/register.ts`
223
402
  - `.env.example`
224
403
  - `.npmrc`
225
404
  - `package.json`
226
405
 
227
- If the repo already looks like an EAI app, run `eai verify` and continue with
228
- the existing project. If the installed CLI advertises them, also run:
406
+ Do not treat copied marker files, a partial scaffold, or a custom template as
407
+ proof that `eai init` completed. A missing checker or any status other than
408
+ `ready` blocks app delivery.
409
+
410
+ If the gate returns `ready`, run:
229
411
 
230
412
  ```bash
413
+ eai verify
231
414
  eai template check --format json
232
415
  eai gofer refresh --check --format json
233
416
  ```
@@ -243,10 +426,24 @@ run the advertised equivalent of:
243
426
  eai init <project-name> --skip-prompts --company-workspace <active-workspace-id>
244
427
  ```
245
428
 
429
+ For older CLI versions that do not advertise `--company-workspace`, use the
430
+ `--company-tenant` compatibility alias.
431
+
246
432
  If the CLI requires additional safe answers, gather them first. If the repo is
247
433
  non-empty and not an EAI app, ask whether to initialize a new sibling EAI app
248
434
  directory or stop.
249
435
 
436
+ After `eai init` succeeds, enter the created app folder and rerun:
437
+
438
+ ```bash
439
+ node .specify/scripts/node/eai-app-template-readiness.mjs --root . --json
440
+ eai verify
441
+ eai template check --format json
442
+ ```
443
+
444
+ Continue only when the readiness status is `ready`. Record the safe status in
445
+ `eai-preflight.md`; do not copy manifest values into the artifact.
446
+
250
447
  ## Step 8: Recover Known Entra Redirect Mismatches
251
448
 
252
449
  If the user provides a browser sign-in error, auth callback log, or deployment
@@ -280,7 +477,7 @@ Record only the redacted route pattern and recovery status in Gofer artifacts.
280
477
  Keep the full callback URI in the terminal/session or user-approved local notes
281
478
  only.
282
479
 
283
- Ask before changing workspace-scoped identity configuration, then run the
480
+ Ask before changing workspace identity configuration, then run the
284
481
  advertised equivalent of:
285
482
 
286
483
  ```bash
@@ -319,7 +516,21 @@ If the current host cannot run slash commands yet, use the installed plugin
319
516
  bundle or downloaded public bundle as the bootstrap source described by
320
517
  `/gofer:bootstrap-workspace`.
321
518
 
322
- ## Step 9: Open Or Attach The Created Project
519
+ ## Step 9: Start The Created Project In An AI Workspace
520
+
521
+ Prefer the provider-neutral EAI handoff:
522
+
523
+ ```bash
524
+ eai start --check
525
+ eai start
526
+ ```
527
+
528
+ The detection command is read-only. The final start action is the user's
529
+ approval for the selected AI provider to read the project and use the provider
530
+ account. If no supported surface is installed, explain why one is needed and
531
+ offer the official provider choices returned by `eai start --check`.
532
+
533
+ If `eai start` is unavailable, use the host-specific fallback below.
323
534
 
324
535
  Make sure the active host is working in the initialized EAI app folder:
325
536
 
@@ -329,7 +540,7 @@ Make sure the active host is working in the initialized EAI app folder:
329
540
  the active Codex workspace if the host cannot switch automatically.
330
541
  - Claude Code: show the absolute folder path and ask the user to attach/open it
331
542
  if the host cannot switch automatically.
332
- - Gemini/Copilot in VS Code: ensure the VS Code workspace is the initialized app
543
+ - Antigravity/Copilot in VS Code: ensure the VS Code workspace is the initialized app
333
544
  folder before starting Gofer.
334
545
  - GitHub Codespaces: keep the current Codespace workspace unless the project was
335
546
  created in a subfolder; then `cd` into it and report the path.
@@ -367,6 +578,7 @@ Each section should include:
367
578
  - EAI registry status
368
579
  - EAI CLI release status from `eai update --check`
369
580
  - EAI CLI capability source (`eai --describe` timestamp)
581
+ - Object Type seed adapter capability from `eai agent guide --format json`
370
582
  - EAI capability inventory for init, workspace, app, resources, workflow,
371
583
  template, Gofer-refresh, and blocks commands
372
584
  - Login status without tokens
@@ -383,10 +595,27 @@ When the app folder, EAI CLI, login, workspace, EAI template, and Gofer scaffold
383
595
  ready, tell the user to start:
384
596
 
385
597
  ```text
386
- /0_gofer_start <what you want to build>
598
+ /gofer <what you want to build>
387
599
  ```
388
600
 
389
- If `/0_gofer_start` is still unknown after the plugin is installed and the
390
- repo is bootstrapped, explain that the host has not loaded the Gofer plugin or
391
- repo commands yet. Give the host-specific install/update command from the Gofer
392
- README, then retry this command after the host reloads.
601
+ Use `/eai` on Claude, Copilot, Antigravity, Grok, or VS Code, and `$eai` on
602
+ Codex. If `/gofer`, `/eai`, or `$eai` is still unknown after the
603
+ plugin is installed and the repo is bootstrapped, explain that the host has not
604
+ loaded the Gofer plugin or repo commands yet. Give the host-specific
605
+ install/update command from the Gofer README, then retry after the host reloads.
606
+
607
+ ## Local Settings Cleanup Contract
608
+ <!-- gofer:local-settings-cleanup:start -->
609
+
610
+ After any Gofer install, update, release refresh, or workspace bootstrap:
611
+
612
+ 1. Archive stale Gofer command and skill entries before continuing.
613
+ 2. Prefer the repo helper:
614
+ - `node .specify/scripts/node/gofer-local-settings-cleanup.mjs --workspace . --apply --json`
615
+ 3. If the repo helper is missing, use the stable plugin bundle helper:
616
+ - macOS/Linux: `node ~/plugins/eai-gofer/.specify/scripts/node/gofer-local-settings-cleanup.mjs --workspace . --apply --json`
617
+ - Windows: `node %USERPROFILE%\plugins\eai-gofer\.specify\scripts\node\gofer-local-settings-cleanup.mjs --workspace . --apply --json`
618
+ 4. This cleanup covers old Claude, Codex, Copilot, Gemini, Grok, VS Code, desktop, and CLI command surfaces.
619
+ 5. Do not remove the current public `eai` entrypoint.
620
+ 6. Ask the user to refresh or restart the host command picker only after cleanup completes.
621
+ <!-- gofer:local-settings-cleanup:end -->