Headless / non-interactive launch mode for orchestrators #315
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
cli.py startis interactive-only. It drives TUI selectors (agent pick, bottle multiselect, name/color modal) and a y/N preflight, then attaches a blocking PTY to the controlling terminal. That shape cannot be driven by an orchestrator (e.g. Paseo), CI, or webhook/comment dispatch, and it makes spinning up a known agent+bottle more friction than necessary.Proposal
A
--headlessmode onstartthat takes agent / bottles / label / color from flags + manifest defaults, skips every prompt, and still execs the agent on the inherited stdio/PTY so an external PTY owner drives the session.--bottle(repeatable) defaults to the agent's ownbottle:when omitted--labeldefaults to the agent name; slug collisions auto-uniquify--colordefaults to none--headless --dry-runpreviews the resolved plan without launchingOnly the launch chrome goes non-interactive — the agent itself still runs as an interactive session on whatever PTY the caller provides.
Why
Prerequisite for orchestrator integration (Paseo), webhook/comment-driven dispatch, and remote spin-up — and a direct fix for the spin-up ergonomics.