fix(ui): picking Grok Build paired the computer to Claude (#42)
The engine toggle in both pairing surfaces offers three engines, but the pair
command was still built with a two-way ternary:
const engineFlag = engine === 'codex' ? ' --engine codex' : ''
So selecting **Grok Build** emitted no `--engine` flag at all. The daemon then
auto-detects, `engines = detected` in ENGINE_IDS order (claude, codex, grok),
and the server stores `available_engines[0]` as this computer's DEFAULT — the
engine used for the starter team and every agent later assigned there without
an explicit override.
Net effect on any machine that also has Claude Code installed: the user picks
Grok Build, and gets Claude. Silently — no error, and the UI gives no hint,
which makes the Grok engine effectively unreachable from onboarding for exactly
the users most likely to have both CLIs.
Name every non-default engine explicitly instead of special-casing Codex.
Claude stays flagless, which is the documented intent — "We DON'T append
`--engine claude` so a Claude-less machine still auto-detects rather than
erroring on a Claude it doesn't have" — and a fourth engine now works without
touching this line again.
picked before after
claude --pair ABC123 --pair ABC123 (unchanged)
codex --pair ABC123 --engine codex --pair ABC123 --engine codex (unchanged)
grok --pair ABC123 --pair ABC123 --engine grok X
Xialie Zhuang committed
c4eeceacaf0e629de4c111f9b75a066a47de35ac
Parent: 5c1792d
Committed by GitHub <noreply@github.com>
on 8/20/2026, 10:59:28 AM