downtime
Zero-dependency Node CLI
When the command exits, the game closes mid-question and you get one line saying what ran and how long it took, then the command's full output, untouched.
claude, vim) fail at once, because the wrapped command gets a closed stdin. Only Claude Code has been run end to end; Codex, Gemini CLI and Aider are untested, and so is Windows. Order between stdout and stderr while output is held is best effort.questions.json. The build is simulated and "finishes" after three answers. In a real terminal the right answer gets a check mark and the colors come from your theme.npm install -g github:lyhjeremy/downtime-cli
Then dt <any command>, for example dt npm run build. Node 18 or newer.
How it works
dt npm run build, dt pytest -x, dt claude -p "fix the tests". Output, exit code and behavior are the same as running it bare.
Past the threshold the trivia takes over the screen, on the terminal's alternate buffer so it never reaches your scrollback. Answer with letters, numbers or the arrow keys. Flags, country outlines and landmarks are drawn in the terminal.
Everything the command printed while the game was up is held and replayed in order, on the stream it came from, with the real exit code.
Keys
Compatibility
Builds, tests, installs, deploys, and coding agents in their non-interactive mode. The wrapped command gets an empty stdin, so tools that open their own interface, like bare claude or vim, fail at once and visibly. Don't wrap those.
| Tool | Command | Status |
|---|---|---|
| Claude Code | dt claude -p "refactor the auth module" | tested |
| Codex CLI | dt codex exec "fix the failing test" | same pattern, untested |
| Gemini CLI | dt gemini -p "explain this repo" | same pattern, untested |
| Aider | dt aider --message "add tests" --yes | same pattern, untested |
| Everything else | dt npm run build, dt cargo build, dt pytest | works |
| Where | Behavior |
|---|---|
| Terminal.app, iTerm2, Alacritty, Kitty, WezTerm, GNOME Terminal | full support |
| VS Code, Cursor and JetBrains integrated terminals | full support |
| tmux and GNU screen | full support |
| Emacs shells, dumb terminals, CI, pipes | plain wrapper, no trivia |
Design rules