CLI Reference
yeaboi [OPTIONS]
Interactive modes
| Flag | Description |
| (no flags) | Launch the full-screen TUI with mode selection |
--quick | Quick intake — 2 questions only (team size + tech stack), auto-fill rest |
--full-intake | Full 30-question intake (standard mode) |
--mode project-planning | Skip the startup menu, go directly to project planning |
--questionnaire PATH | Import a filled-in questionnaire Markdown file |
--export-only | Auto-accept all review checkpoints and exit after plan generation |
Non-interactive / headless
| Flag | Description |
--non-interactive | Run headlessly (requires --description) |
--description TEXT | Project description. Use @file.txt to read from a file |
--output {markdown,json,html} | Output format (default: markdown). Only valid with --non-interactive or --export-only |
--team-size N | Team size (maps to intake Q6) |
--sprint-length {1,2,3,4} | Sprint length in weeks (maps to intake Q8) |
Daily Standup
| Flag | Description |
--standup-run | Run a daily standup headlessly and deliver it (what the OS scheduler invokes) |
--standup-interactive | With --standup-run: prompt for your update + confirm (timed) before generating; falls back to headless with no TTY |
--standup-session ID | Session to run the standup for (default: most recent) |
--standup-output {terminal,desktop,slack,email,all} | Override the session's saved delivery channels |
Session management
| Flag | Description |
--resume [ID] | Resume a session. No argument = interactive picker. latest = most recent. Or pass a session ID |
--list-sessions | List all saved sessions and exit |
--clear-sessions | Interactively delete saved sessions |
Configuration
| Flag | Description |
--setup | Re-run the first-time setup wizard |
--theme {dark,light} | Terminal colour theme (default: dark) |
--no-bell | Disable terminal bell after pipeline steps |
--dry-run | Run TUI with mock data and fake delays — no LLM calls |
--version | Print version and exit |
Questionnaire export
| Flag | Description |
--export-questionnaire [PATH] | Export a blank questionnaire template as Markdown |
🎵 Music (ffplay)
Play focus music while you plan. This is an optional integration with ffplay, the headless player bundled with ffmpeg — install it separately (brew install ffmpeg, or your platform's package manager). ffplay is used because background music has to play headlessly alongside our own full-screen TUI: interactive terminal players refuse to start without a controlling terminal, whereas ffplay -nodisp plays a stream with no UI of its own. If the ffplay binary isn't on your PATH, the feature is disabled — the status bar shows a dim ♪ music: brew install ffmpeg hint and the controls are no-ops until you install it.
Once installed, a compact player status appears on the bottom border of every screen, and two control chords work app-wide — even while typing in a text field:
| Key | Action |
Ctrl+P | Play / pause (starts the current channel when stopped) |
Ctrl+O | Switch to the next channel (Lofi → Jazz → Classical → Ambient) |
Music auto-pauses while you record a voice note (double-tap Space) and resumes when the recording ends, so it never bleeds into your dictation. The on/off state and selected channel are remembered between runs. Under the hood, playback runs as a headless ffplay -nodisp process (one per stream); pause/resume suspend and continue it with SIGSTOP/SIGCONT, and it is stopped automatically when you exit.
Troubleshooting — the equalizer animates but there's no sound. The equalizer is a light animation that only means "a player was launched"; it is not driven by the audio itself. If you hear nothing, the ffplay process likely exited on its own (a stream URL that's down, or a codec the build can't decode). The status bar detects a player that exits unexpectedly and reverts to ♪ music stopped — stream unavailable, ^P to retry instead of showing a phantom "playing" state — press Ctrl+P to retry, or Ctrl+O to switch to a different stream. Confirm your ffmpeg build can play a stream directly with ffplay -nodisp https://ice1.somafm.com/groovesalad-128-mp3.
In-session commands
These commands are available at the scrum> prompt during an interactive session:
| Command | Description |
help, ? | Show available commands |
skip | Skip the current intake question (uses a sensible default) |
defaults | Apply defaults for all remaining questions in the current phase |
export | Export current artifacts as HTML report + Markdown |
/compact | Switch to compact output (hide secondary columns) |
/verbose | Switch to verbose output (full detail, default) |
/resume | Load a previously saved session |
/clear | Delete saved sessions (pick one or all) |
Q6: answer | Edit Q6 inline from the summary |
edit Q6 | Re-answer Q6 interactively from the summary |
exit, quit | Exit the agent |
Ctrl+C, Ctrl+D | Exit the agent |
The status bar at the bottom of the terminal shows project name, current phase, and session info. It updates automatically as you progress through the pipeline.
Examples
yeaboi # interactive TUI (recommended)
yeaboi --quick # quick intake (2 questions only)
yeaboi --full-intake # full 30-question intake
yeaboi --questionnaire intake.md # import pre-filled questionnaire
yeaboi --export-only --quick # non-interactive, auto-accept all
yeaboi --resume # resume last session (picker)
yeaboi --resume latest # resume most recent session
yeaboi --list-sessions # list all saved sessions
yeaboi --clear-sessions # delete saved sessions
yeaboi --non-interactive --description "Build X" # headless mode
yeaboi --non-interactive --description @brief.txt --output json # JSON to stdout
yeaboi --dry-run # TUI with mock data