@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.
- package/package.json +3 -3
- package/resources/deploy/eai-app-template/producer-pin.json +5 -5
- package/resources/deploy/eai-app-template/tests/source-unknown-deployment-evidence.test.mjs +2141 -1
- package/resources/gofer/.gofer-version +4 -357
- package/resources/gofer/agents-skills/eai/SKILL.md +365 -0
- package/resources/gofer/agents-skills/eai-update/SKILL.md +56 -0
- package/resources/gofer/agents-skills/gofer-documentation/SKILL.md +93 -0
- package/resources/gofer/bash-scripts/create-new-feature.sh +3 -1
- package/resources/gofer/bash-scripts/sync-implementation-status.sh +4 -3
- package/resources/gofer/bash-scripts/update-agent-context.sh +7 -8
- package/resources/gofer/bash-scripts/validate-artifact.sh +10 -6
- package/resources/gofer/bash-scripts/verify-object-type-routing-workspace.sh +184 -0
- package/resources/gofer/claude-commands/eai-update.md +46 -0
- package/resources/gofer/claude-commands/eai.md +355 -0
- package/resources/gofer/claude-skills/eai/SKILL.md +365 -0
- package/resources/gofer/claude-skills/eai-update/SKILL.md +56 -0
- package/resources/gofer/claude-skills/gofer-documentation/SKILL.md +93 -0
- package/resources/gofer/commands/0_gofer_start.md +440 -99
- package/resources/gofer/commands/0a_problem_validation.md +187 -27
- package/resources/gofer/commands/10_gofer_cloud.md +183 -23
- package/resources/gofer/commands/1_gofer_research.md +239 -30
- package/resources/gofer/commands/2_gofer_specify.md +239 -35
- package/resources/gofer/commands/3_gofer_plan.md +259 -43
- package/resources/gofer/commands/4_gofer_tasks.md +401 -81
- package/resources/gofer/commands/5_gofer_implement.md +375 -84
- package/resources/gofer/commands/6_gofer_validate.md +284 -53
- package/resources/gofer/commands/7_gofer_save.md +187 -26
- package/resources/gofer/commands/7a_stakeholder_comms.md +183 -23
- package/resources/gofer/commands/8_gofer_branding.md +183 -23
- package/resources/gofer/commands/9_gofer_tests.md +212 -23
- package/resources/gofer/commands/gofer_bootstrap_workspace.md +121 -8
- package/resources/gofer/commands/gofer_check_workspace.md +123 -8
- package/resources/gofer/commands/gofer_constitution.md +183 -23
- package/resources/gofer/commands/gofer_diagnose.md +183 -23
- package/resources/gofer/commands/gofer_eai_first_run.md +254 -25
- package/resources/gofer/commands/gofer_hydrate.md +183 -23
- package/resources/gofer/commands/gofer_personality.md +117 -6
- package/resources/gofer/commands/gofer_plan.md +117 -6
- package/resources/gofer/commands/gofer_side.md +117 -6
- package/resources/gofer/commands/gofer_spec_summary.md +183 -23
- package/resources/gofer/commands/gofer_tdd.md +183 -23
- package/resources/gofer/commands/gofer_vocabulary.md +185 -25
- package/resources/gofer/commands/gofer_zoom_out.md +183 -23
- package/resources/gofer/config/typesafe-learning-review.json +16 -0
- package/resources/gofer/config/typesafe-semantic-review.json +9 -0
- package/resources/gofer/copilot-instructions/gofer-cost.instructions.md +15 -6
- package/resources/gofer/copilot-instructions/typescript.instructions.md +1 -1
- package/resources/gofer/copilot-prompts/eai-update.prompt.md +58 -0
- package/resources/gofer/copilot-prompts/eai.prompt.md +367 -0
- package/resources/gofer/gemini/commands/gofer/eai-update.md +22 -0
- package/resources/gofer/gemini/commands/gofer/eai-update.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/eai.md +357 -0
- package/resources/gofer/gemini/commands/gofer/eai.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/manifest.json +3 -27
- package/resources/gofer/gemini/extension.json +4 -4
- package/resources/gofer/github-agents/eai.agent.md +83 -0
- package/resources/gofer/github-agents/gofer-business.agent.md +73 -4
- package/resources/gofer/github-agents/gofer-implement.agent.md +71 -2
- package/resources/gofer/github-agents/gofer-plan.agent.md +72 -2
- package/resources/gofer/github-agents/gofer-research.agent.md +72 -2
- package/resources/gofer/github-agents/gofer-validate.agent.md +72 -2
- package/resources/gofer/github-skills/eai/SKILL.md +365 -0
- package/resources/gofer/github-skills/eai-update/SKILL.md +56 -0
- package/resources/gofer/github-skills/gofer-documentation/SKILL.md +93 -0
- package/resources/gofer/grok-skills/eai/SKILL.md +267 -14
- package/resources/gofer/grok-skills/eai-update/SKILL.md +56 -0
- package/resources/gofer/hook-scripts/user-prompt-submit.mjs +58 -13
- package/resources/gofer/instruction-templates/base/agents-base.md +8 -4
- package/resources/gofer/instruction-templates/gofer/gofer-claude.md +7 -5
- package/resources/gofer/instruction-templates/gofer/gofer-copilot.md +10 -8
- package/resources/gofer/memory/constitution.md +9 -7
- package/resources/gofer/memory/gofer-model-policy.yaml +23 -1
- package/resources/gofer/memory/lessons.md +0 -31
- package/resources/gofer/node-scripts/canonical-descriptions.mjs +1 -1
- package/resources/gofer/node-scripts/check-version-alignment.mjs +4 -7
- package/resources/gofer/node-scripts/delivery-lineage-corpus.mjs +156 -0
- package/resources/gofer/node-scripts/generate-commands.mjs +1073 -265
- package/resources/gofer/node-scripts/gofer-acceptance-check.mjs +143 -0
- package/resources/gofer/node-scripts/gofer-agent-catalog.mjs +271 -0
- package/resources/gofer/node-scripts/gofer-benchmark-executor.mjs +123 -0
- package/resources/gofer/node-scripts/gofer-benchmark-sign.mjs +62 -0
- package/resources/gofer/node-scripts/gofer-benchmark-signer.mjs +89 -0
- package/resources/gofer/node-scripts/gofer-benchmark.mjs +76 -0
- package/resources/gofer/node-scripts/gofer-blocker-control.mjs +274 -0
- package/resources/gofer/node-scripts/gofer-claude-adapter.mjs +154 -0
- package/resources/gofer/node-scripts/gofer-closed-loop-audit.mjs +19 -2
- package/resources/gofer/node-scripts/gofer-delivery-check.mjs +121 -0
- package/resources/gofer/node-scripts/gofer-encrypted-key.mjs +58 -0
- package/resources/gofer/node-scripts/gofer-execution-metrics.mjs +477 -0
- package/resources/gofer/node-scripts/gofer-execution-recovery.mjs +334 -0
- package/resources/gofer/node-scripts/gofer-grok-adapter.mjs +184 -0
- package/resources/gofer/node-scripts/gofer-heldout-corpus.mjs +73 -0
- package/resources/gofer/node-scripts/gofer-heldout-snapshot.mjs +286 -0
- package/resources/gofer/node-scripts/gofer-heldout-verifier.mjs +211 -0
- package/resources/gofer/node-scripts/gofer-host-capability.mjs +335 -0
- package/resources/gofer/node-scripts/gofer-independent-reviewer.mjs +130 -0
- package/resources/gofer/node-scripts/gofer-live-routing.mjs +109 -0
- package/resources/gofer/node-scripts/gofer-local-capability-issuer.mjs +71 -0
- package/resources/gofer/node-scripts/gofer-local-isolation.mjs +175 -0
- package/resources/gofer/node-scripts/gofer-local-settings-cleanup.mjs +388 -0
- package/resources/gofer/node-scripts/gofer-loop-audit.mjs +54 -3
- package/resources/gofer/node-scripts/gofer-native-adapter.mjs +567 -0
- package/resources/gofer/node-scripts/gofer-native-benchmark-dispatch.mjs +145 -0
- package/resources/gofer/node-scripts/gofer-native-runtime.mjs +169 -0
- package/resources/gofer/node-scripts/gofer-pre-edit-check.mjs +204 -0
- package/resources/gofer/node-scripts/gofer-priority-check.mjs +214 -0
- package/resources/gofer/node-scripts/gofer-response-check.mjs +56 -0
- package/resources/gofer/node-scripts/gofer-reviewed-learning.mjs +1232 -0
- package/resources/gofer/node-scripts/gofer-run-verified-task.mjs +330 -0
- package/resources/gofer/node-scripts/gofer-runtime-ledger.mjs +289 -0
- package/resources/gofer/node-scripts/gofer-semantic-drift.mjs +584 -0
- package/resources/gofer/node-scripts/gofer-surface-update.mjs +1178 -0
- package/resources/gofer/node-scripts/gofer-trust-bootstrap.mjs +77 -0
- package/resources/gofer/node-scripts/gofer-trusted-benchmark.mjs +102 -0
- package/resources/gofer/node-scripts/gofer-trusted-evaluator.mjs +274 -0
- package/resources/gofer/node-scripts/gofer-tty-prompt.mjs +34 -0
- package/resources/gofer/node-scripts/gofer-typesafe-credentials.mjs +435 -0
- package/resources/gofer/node-scripts/gofer-ui-preview.mjs +1212 -0
- package/resources/gofer/node-scripts/gofer-verified-execution.mjs +484 -0
- package/resources/gofer/node-scripts/gofer-verifier-key-ceremony.mjs +101 -0
- package/resources/gofer/node-scripts/gofer-worktree-layout.mjs +32 -0
- package/resources/gofer/node-scripts/object-type-routing-phase-bundle.mjs +360 -0
- package/resources/gofer/node-scripts/package-agent-plugin.mjs +574 -82
- package/resources/gofer/node-scripts/parse-stage-command.mjs +1 -1
- package/resources/gofer/node-scripts/render-delivery-lineage.mjs +178 -0
- package/resources/gofer/node-scripts/sync-extension-resources.mjs +78 -2
- package/resources/gofer/node-scripts/validate-object-type-identifiers.mjs +767 -0
- package/resources/gofer/node-scripts/validate-object-type-routing-workspace.mjs +1325 -0
- package/resources/gofer/node-scripts/validate-v4-resource-contract.d.mts +44 -0
- package/resources/gofer/node-scripts/validate-v4-resource-contract.mjs +957 -0
- package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +685 -116
- package/resources/gofer/references/agent-catalog.json +126 -0
- package/resources/gofer/references/blocker-mediation.md +156 -0
- package/resources/gofer/references/business-updates-and-goal-checks.md +109 -0
- package/resources/gofer/references/delivery-lineage.md +48 -0
- package/resources/gofer/references/mvp-capability-validation.md +102 -0
- package/resources/gofer/references/platform/README.md +1 -1
- package/resources/gofer/references/platform/eai-app-template.md +15 -13
- package/resources/gofer/references/platform/eai-auth-access.md +104 -0
- package/resources/gofer/references/platform/eai-config-driven-ui.md +5 -5
- package/resources/gofer/references/platform/eai-error-catalog.yaml +77 -19
- package/resources/gofer/references/platform/eai-repo-contract.md +61 -23
- package/resources/gofer/references/platform/eai-service-patterns.md +102 -105
- package/resources/gofer/references/platform/eai.md +44 -8
- package/resources/gofer/references/platform/vertical-template.md +10 -9
- package/resources/gofer/references/priority-outcome-protection.md +152 -0
- package/resources/gofer/references/verified-agent-execution.md +179 -0
- package/resources/gofer/schemas/gofer-learning-trace-v1.json +70 -0
- package/resources/gofer/specify-commands/0_gofer_start.md +440 -99
- package/resources/gofer/specify-commands/0a_problem_validation.md +187 -27
- package/resources/gofer/specify-commands/10_gofer_cloud.md +183 -23
- package/resources/gofer/specify-commands/1_gofer_research.md +239 -30
- package/resources/gofer/specify-commands/2_gofer_specify.md +239 -35
- package/resources/gofer/specify-commands/3_gofer_plan.md +259 -43
- package/resources/gofer/specify-commands/4_gofer_tasks.md +401 -81
- package/resources/gofer/specify-commands/5_gofer_implement.md +375 -84
- package/resources/gofer/specify-commands/6_gofer_validate.md +284 -53
- package/resources/gofer/specify-commands/7_gofer_save.md +187 -26
- package/resources/gofer/specify-commands/7a_stakeholder_comms.md +183 -23
- package/resources/gofer/specify-commands/8_gofer_branding.md +183 -23
- package/resources/gofer/specify-commands/9_gofer_tests.md +212 -23
- package/resources/gofer/specify-commands/gofer_bootstrap_workspace.md +121 -8
- package/resources/gofer/specify-commands/gofer_check_workspace.md +123 -8
- package/resources/gofer/specify-commands/gofer_constitution.md +183 -23
- package/resources/gofer/specify-commands/gofer_diagnose.md +183 -23
- package/resources/gofer/specify-commands/gofer_eai_first_run.md +254 -25
- package/resources/gofer/specify-commands/gofer_hydrate.md +183 -23
- package/resources/gofer/specify-commands/gofer_personality.md +117 -6
- package/resources/gofer/specify-commands/gofer_plan.md +117 -6
- package/resources/gofer/specify-commands/gofer_side.md +117 -6
- package/resources/gofer/specify-commands/gofer_spec_summary.md +183 -23
- package/resources/gofer/specify-commands/gofer_tdd.md +183 -23
- package/resources/gofer/specify-commands/gofer_vocabulary.md +185 -25
- package/resources/gofer/specify-commands/gofer_zoom_out.md +183 -23
- package/resources/gofer/specify-config/object-type-routing.json +24 -0
- package/resources/gofer/specify-config/typesafe-learning-review.json +16 -0
- package/resources/gofer/specify-config/typesafe-semantic-review.json +9 -0
- package/resources/gofer/system-skills/eai/SKILL.md +365 -0
- package/resources/gofer/system-skills/eai-update/SKILL.md +56 -0
- package/resources/gofer/system-skills/gofer-documentation/SKILL.md +93 -0
- package/resources/gofer/templates/build-map-template.md +64 -0
- package/resources/gofer/templates/business-scenarios-template.json +14 -0
- package/resources/gofer/templates/ciso-security-summary-template.md +3 -3
- package/resources/gofer/templates/context-bundle-template.md +4 -3
- package/resources/gofer/templates/contract-pack-template.md +8 -8
- package/resources/gofer/templates/cto-architecture-summary-template.md +3 -3
- package/resources/gofer/templates/delivery-lineage-template.json +8 -0
- package/resources/gofer/templates/eai-preflight-template.md +109 -68
- package/resources/gofer/templates/goal-ledger-template.json +1 -1
- package/resources/gofer/templates/gofer-model-policy.yaml +28 -6
- package/resources/gofer/templates/loop-contract-template.json +3 -1
- package/resources/gofer/templates/plan-template.md +8 -7
- package/resources/gofer/templates/priority-plan-template.json +29 -0
- package/resources/gofer/templates/proposal-review-template.md +6 -3
- package/resources/gofer/templates/release-capability-ledger-template.md +24 -0
- package/resources/gofer/templates/research-template.md +7 -6
- package/resources/gofer/templates/spec-summary-template.md +1 -1
- package/resources/gofer/templates/spec-template.md +45 -6
- package/resources/gofer/templates/tasks-template.md +12 -3
- package/resources/gofer/templates/ui-preview-brief-template.md +55 -5
- package/resources/gofer/templates/ui-review-log-template.md +21 -3
- package/resources/gofer/templates/ui-show-and-tell-template.md +46 -0
- package/resources/gofer/templates/visuals/capability-heatmap-template.md +2 -2
- package/resources/gofer/templates/working-backwards-prfaq-template.md +9 -8
- package/resources/linked-sources.json +4 -4
- package/resources/gofer/agents-skills/0_gofer_start/SKILL.md +0 -1287
- package/resources/gofer/agents-skills/0a_problem_validation/SKILL.md +0 -429
- package/resources/gofer/agents-skills/10_gofer_cloud/SKILL.md +0 -635
- package/resources/gofer/agents-skills/1_gofer_research/SKILL.md +0 -1159
- package/resources/gofer/agents-skills/2_gofer_specify/SKILL.md +0 -860
- package/resources/gofer/agents-skills/3_gofer_plan/SKILL.md +0 -899
- package/resources/gofer/agents-skills/4_gofer_tasks/SKILL.md +0 -760
- package/resources/gofer/agents-skills/5_gofer_implement/SKILL.md +0 -944
- package/resources/gofer/agents-skills/6_gofer_validate/SKILL.md +0 -2302
- package/resources/gofer/agents-skills/7_gofer_save/SKILL.md +0 -423
- package/resources/gofer/agents-skills/7a_stakeholder_comms/SKILL.md +0 -508
- package/resources/gofer/agents-skills/8_gofer_branding/SKILL.md +0 -315
- package/resources/gofer/agents-skills/9_gofer_tests/SKILL.md +0 -558
- package/resources/gofer/agents-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
- package/resources/gofer/agents-skills/gofer_check_workspace/SKILL.md +0 -119
- package/resources/gofer/agents-skills/gofer_constitution/SKILL.md +0 -612
- package/resources/gofer/agents-skills/gofer_diagnose/SKILL.md +0 -114
- package/resources/gofer/agents-skills/gofer_eai_first_run/SKILL.md +0 -397
- package/resources/gofer/agents-skills/gofer_hydrate/SKILL.md +0 -561
- package/resources/gofer/agents-skills/gofer_personality/SKILL.md +0 -44
- package/resources/gofer/agents-skills/gofer_plan/SKILL.md +0 -40
- package/resources/gofer/agents-skills/gofer_side/SKILL.md +0 -45
- package/resources/gofer/agents-skills/gofer_spec_summary/SKILL.md +0 -112
- package/resources/gofer/agents-skills/gofer_tdd/SKILL.md +0 -112
- package/resources/gofer/agents-skills/gofer_vocabulary/SKILL.md +0 -112
- package/resources/gofer/agents-skills/gofer_zoom_out/SKILL.md +0 -112
- package/resources/gofer/claude-commands/0_gofer_start.md +0 -1282
- package/resources/gofer/claude-commands/0a_problem_validation.md +0 -424
- package/resources/gofer/claude-commands/10_gofer_cloud.md +0 -630
- package/resources/gofer/claude-commands/1_gofer_research.md +0 -1154
- package/resources/gofer/claude-commands/2_gofer_specify.md +0 -855
- package/resources/gofer/claude-commands/3_gofer_plan.md +0 -894
- package/resources/gofer/claude-commands/4_gofer_tasks.md +0 -755
- package/resources/gofer/claude-commands/5_gofer_implement.md +0 -939
- package/resources/gofer/claude-commands/6_gofer_validate.md +0 -2297
- package/resources/gofer/claude-commands/7_gofer_save.md +0 -418
- package/resources/gofer/claude-commands/7a_stakeholder_comms.md +0 -503
- package/resources/gofer/claude-commands/8_gofer_branding.md +0 -310
- package/resources/gofer/claude-commands/9_gofer_tests.md +0 -553
- package/resources/gofer/claude-commands/gofer_bootstrap_workspace.md +0 -143
- package/resources/gofer/claude-commands/gofer_check_workspace.md +0 -114
- package/resources/gofer/claude-commands/gofer_constitution.md +0 -607
- package/resources/gofer/claude-commands/gofer_diagnose.md +0 -109
- package/resources/gofer/claude-commands/gofer_eai_first_run.md +0 -392
- package/resources/gofer/claude-commands/gofer_hydrate.md +0 -556
- package/resources/gofer/claude-commands/gofer_personality.md +0 -39
- package/resources/gofer/claude-commands/gofer_plan.md +0 -35
- package/resources/gofer/claude-commands/gofer_side.md +0 -40
- package/resources/gofer/claude-commands/gofer_spec_summary.md +0 -107
- package/resources/gofer/claude-commands/gofer_tdd.md +0 -107
- package/resources/gofer/claude-commands/gofer_vocabulary.md +0 -107
- package/resources/gofer/claude-commands/gofer_zoom_out.md +0 -107
- package/resources/gofer/claude-skills/eai-gofer/SKILL.md +0 -56
- package/resources/gofer/copilot-prompts/0_gofer_start.prompt.md +0 -1308
- package/resources/gofer/copilot-prompts/0a_problem_validation.prompt.md +0 -429
- package/resources/gofer/copilot-prompts/10_gofer_cloud.prompt.md +0 -644
- package/resources/gofer/copilot-prompts/1_gofer_research.prompt.md +0 -1177
- package/resources/gofer/copilot-prompts/2_gofer_specify.prompt.md +0 -878
- package/resources/gofer/copilot-prompts/3_gofer_plan.prompt.md +0 -917
- package/resources/gofer/copilot-prompts/4_gofer_tasks.prompt.md +0 -778
- package/resources/gofer/copilot-prompts/5_gofer_implement.prompt.md +0 -962
- package/resources/gofer/copilot-prompts/6_gofer_validate.prompt.md +0 -2310
- package/resources/gofer/copilot-prompts/7_gofer_save.prompt.md +0 -433
- package/resources/gofer/copilot-prompts/7a_stakeholder_comms.prompt.md +0 -516
- package/resources/gofer/copilot-prompts/8_gofer_branding.prompt.md +0 -323
- package/resources/gofer/copilot-prompts/9_gofer_tests.prompt.md +0 -566
- package/resources/gofer/copilot-prompts/gofer_bootstrap_workspace.prompt.md +0 -161
- package/resources/gofer/copilot-prompts/gofer_check_workspace.prompt.md +0 -132
- package/resources/gofer/copilot-prompts/gofer_constitution.prompt.md +0 -621
- package/resources/gofer/copilot-prompts/gofer_diagnose.prompt.md +0 -127
- package/resources/gofer/copilot-prompts/gofer_eai_first_run.prompt.md +0 -410
- package/resources/gofer/copilot-prompts/gofer_hydrate.prompt.md +0 -571
- package/resources/gofer/copilot-prompts/gofer_personality.prompt.md +0 -57
- package/resources/gofer/copilot-prompts/gofer_plan.prompt.md +0 -53
- package/resources/gofer/copilot-prompts/gofer_side.prompt.md +0 -58
- package/resources/gofer/copilot-prompts/gofer_spec_summary.prompt.md +0 -125
- package/resources/gofer/copilot-prompts/gofer_tdd.prompt.md +0 -125
- package/resources/gofer/copilot-prompts/gofer_vocabulary.prompt.md +0 -125
- package/resources/gofer/copilot-prompts/gofer_zoom_out.prompt.md +0 -125
- package/resources/gofer/gemini/commands/gofer/0_gofer_start.md +0 -1282
- package/resources/gofer/gemini/commands/gofer/0_gofer_start.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/0a_problem_validation.md +0 -424
- package/resources/gofer/gemini/commands/gofer/0a_problem_validation.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.md +0 -630
- package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/1_gofer_research.md +0 -1154
- package/resources/gofer/gemini/commands/gofer/1_gofer_research.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/2_gofer_specify.md +0 -855
- package/resources/gofer/gemini/commands/gofer/2_gofer_specify.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/3_gofer_plan.md +0 -894
- package/resources/gofer/gemini/commands/gofer/3_gofer_plan.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.md +0 -755
- package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/5_gofer_implement.md +0 -939
- package/resources/gofer/gemini/commands/gofer/5_gofer_implement.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/6_gofer_validate.md +0 -2297
- package/resources/gofer/gemini/commands/gofer/6_gofer_validate.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/7_gofer_save.md +0 -418
- package/resources/gofer/gemini/commands/gofer/7_gofer_save.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.md +0 -503
- package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/8_gofer_branding.md +0 -310
- package/resources/gofer/gemini/commands/gofer/8_gofer_branding.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/9_gofer_tests.md +0 -553
- package/resources/gofer/gemini/commands/gofer/9_gofer_tests.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.md +0 -143
- package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.md +0 -114
- package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_constitution.md +0 -607
- package/resources/gofer/gemini/commands/gofer/gofer_constitution.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_diagnose.md +0 -109
- package/resources/gofer/gemini/commands/gofer/gofer_diagnose.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.md +0 -392
- package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_hydrate.md +0 -556
- package/resources/gofer/gemini/commands/gofer/gofer_hydrate.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_personality.md +0 -39
- package/resources/gofer/gemini/commands/gofer/gofer_personality.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_plan.md +0 -35
- package/resources/gofer/gemini/commands/gofer/gofer_plan.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_side.md +0 -40
- package/resources/gofer/gemini/commands/gofer/gofer_side.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.md +0 -107
- package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_tdd.md +0 -107
- package/resources/gofer/gemini/commands/gofer/gofer_tdd.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.md +0 -107
- package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.toml +0 -2
- package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.md +0 -107
- package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.toml +0 -2
- package/resources/gofer/github-skills/eai-gofer/SKILL.md +0 -56
- package/resources/gofer/system-skills/0_gofer_start/SKILL.md +0 -1287
- package/resources/gofer/system-skills/0a_problem_validation/SKILL.md +0 -429
- package/resources/gofer/system-skills/10_gofer_cloud/SKILL.md +0 -635
- package/resources/gofer/system-skills/1_gofer_research/SKILL.md +0 -1159
- package/resources/gofer/system-skills/2_gofer_specify/SKILL.md +0 -860
- package/resources/gofer/system-skills/3_gofer_plan/SKILL.md +0 -899
- package/resources/gofer/system-skills/4_gofer_tasks/SKILL.md +0 -760
- package/resources/gofer/system-skills/5_gofer_implement/SKILL.md +0 -944
- package/resources/gofer/system-skills/6_gofer_validate/SKILL.md +0 -2302
- package/resources/gofer/system-skills/7_gofer_save/SKILL.md +0 -423
- package/resources/gofer/system-skills/7a_stakeholder_comms/SKILL.md +0 -508
- package/resources/gofer/system-skills/8_gofer_branding/SKILL.md +0 -315
- package/resources/gofer/system-skills/9_gofer_tests/SKILL.md +0 -558
- package/resources/gofer/system-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
- package/resources/gofer/system-skills/gofer_check_workspace/SKILL.md +0 -119
- package/resources/gofer/system-skills/gofer_constitution/SKILL.md +0 -612
- package/resources/gofer/system-skills/gofer_diagnose/SKILL.md +0 -114
- package/resources/gofer/system-skills/gofer_eai_first_run/SKILL.md +0 -397
- package/resources/gofer/system-skills/gofer_hydrate/SKILL.md +0 -561
- package/resources/gofer/system-skills/gofer_personality/SKILL.md +0 -44
- package/resources/gofer/system-skills/gofer_plan/SKILL.md +0 -40
- package/resources/gofer/system-skills/gofer_side/SKILL.md +0 -45
- package/resources/gofer/system-skills/gofer_spec_summary/SKILL.md +0 -112
- package/resources/gofer/system-skills/gofer_tdd/SKILL.md +0 -112
- package/resources/gofer/system-skills/gofer_vocabulary/SKILL.md +0 -112
- package/resources/gofer/system-skills/gofer_zoom_out/SKILL.md +0 -112
- 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
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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,
|
|
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.
|
|
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
|
-
|
|
159
|
-
|
|
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,
|
|
191
|
-
|
|
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
|
|
198
|
-
workspace admin or operator
|
|
199
|
-
|
|
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
|
-
|
|
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
|
-
|
|
228
|
-
|
|
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
|
|
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:
|
|
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
|
-
-
|
|
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
|
-
/
|
|
598
|
+
/gofer <what you want to build>
|
|
387
599
|
```
|
|
388
600
|
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
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 -->
|