downtime fills the wait with one trivia question at a time, then snaps back the instant your command finishes.
↓ this one is real. press a-d, or click. ↓
npm install -g github:lyhjeremy/downtime-cli
then: dt <any command> · e.g. dt npm run build
dt npm run build · dt pytest -x · dt claude -p "fix the tests". Output, exit code and behaviour are identical to running it bare, so it is safe anywhere.
Longer, and the trivia takes over the screen. Answer with letters, numbers or arrow keys. Flags, maps and landmarks are drawn right in the terminal.
The moment the command exits you get one line saying what ran and how long it took, then the full output, untouched. Nothing is ever lost.
Anything that runs to completion works: builds, tests, installs, deploys, and coding agents in their non-interactive mode. Tools that open their own interface, like bare claude or vim, are the one thing not to wrap.
| Tool | Command | |
|---|---|---|
| Claude Code | dt claude -p "refactor the auth module" | verified |
| Codex CLI | dt codex exec "fix the failing test" | same pattern |
| Gemini CLI | dt gemini -p "explain this repo" | same pattern |
| Aider | dt aider --message "add tests" --yes | same pattern |
| Everything else | dt npm run build · dt cargo build · dt pytest | works |
| Where | |
|---|---|
| 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 | skipped, runs as a plain wrapper |
Everything printed while the game is up is held and replayed in order, on the stream it came from, with the real exit code. Verified against a 40,000-line firehose with zero lines lost.
No streaks, no daily goals, no notifications, no feed. Bounded questions with a clean finish, so there is nothing to pull you back once your work is ready.