Problem
The primary one-command onboarding flow silently wires WORKFLOW.md for Codex regardless of what the user has installed. packages/cli/src/commands/setup.ts hardcodes runtime: "codex" in all four artifact-generation calls (lines 289, 302, 464, 505). The interactive wizard prompts for project/state-mapping/blocker/priority but has no runtime step, and parseSetupFlags (setup.ts:50-85) accepts no --runtime flag. By contrast workflow init offers a runtime selector and --runtime <kind> (packages/cli/src/index.ts:250-253, workflow-init.ts:301-319) plus runtime preflight.
Impact (OSS user)
A user who only has Claude Code completes the wizard and silently gets a Codex-wired config; repo start then fails on the missing codex binary. The wizard never offered a choice and never checked the runtime was installed, so there is no signal until dispatch fails. The success message (setup.ts:523-524) points straight to repo start with no runtime reminder.
Evidence (real files)
packages/cli/src/commands/setup.ts:50-85, 289, 302, 464, 505, 523-524.
packages/cli/src/index.ts:250-253; packages/cli/src/commands/workflow-init.ts:301-319, 330-366.
packages/cli/src/workflow/workflow-runtime.ts (codex -> codex binary).
Proposed fix
Add a runtime-selection prompt to interactive setup (Codex / Claude Code) mirroring workflow init, accept a --runtime flag in non-interactive setup, and run a PATH check for the chosen runtime at the end of setup (reusing doctor's commandExistsOnPath) with a clear install hint when missing.
Priority: P1 · Symphony layer: Configuration · category: onboarding
Filed from an OSS-user-perspective audit of the repo.
Problem
The primary one-command onboarding flow silently wires WORKFLOW.md for Codex regardless of what the user has installed.
packages/cli/src/commands/setup.tshardcodesruntime: "codex"in all four artifact-generation calls (lines 289, 302, 464, 505). The interactive wizard prompts for project/state-mapping/blocker/priority but has no runtime step, andparseSetupFlags(setup.ts:50-85) accepts no--runtimeflag. By contrastworkflow initoffers a runtime selector and--runtime <kind>(packages/cli/src/index.ts:250-253,workflow-init.ts:301-319) plus runtime preflight.Impact (OSS user)
A user who only has Claude Code completes the wizard and silently gets a Codex-wired config;
repo startthen fails on the missingcodexbinary. The wizard never offered a choice and never checked the runtime was installed, so there is no signal until dispatch fails. The success message (setup.ts:523-524) points straight torepo startwith no runtime reminder.Evidence (real files)
packages/cli/src/commands/setup.ts:50-85, 289, 302, 464, 505, 523-524.packages/cli/src/index.ts:250-253;packages/cli/src/commands/workflow-init.ts:301-319, 330-366.packages/cli/src/workflow/workflow-runtime.ts(codex->codexbinary).Proposed fix
Add a runtime-selection prompt to interactive
setup(Codex / Claude Code) mirroringworkflow init, accept a--runtimeflag in non-interactive setup, and run a PATH check for the chosen runtime at the end of setup (reusing doctor'scommandExistsOnPath) with a clear install hint when missing.Priority: P1 · Symphony layer: Configuration · category: onboarding
Filed from an OSS-user-perspective audit of the repo.