Booping is a three-lane dodger game that runs in your terminal while Claude thinks and freezes the second it's done. Give it a try below.
↑ it's playing itself — click in and use your arrow keys to take over
One line. It downloads the game, registers two Claude Code hooks, and tells you how to play.
curl -fsSL https://get.booping.cc/install.sh | bashPiping a script straight into your shell means running code you haven't seen. If you'd rather look before you leap, download it, read it, then run it:
curl -fsSL https://get.booping.cc/install.sh -o booping-install.sh && less booping-install.sh && bash booping-install.shOr grab the zip, inspect everything, and run ./install.sh by hand. The installer writes only to ~/.booping/ and merges two hooks into ~/.claude/settings.json — nothing else.
Then, to play in a split: run ~/.booping/play-with-claude.sh — it opens Claude on top with the game split in below (click a pane to switch). Or type /booping inside a session. The tmux tabs install tmux so the split works; add --window for a separate window.
booping.zip SHA-256 — verify your download matches:
85d17b2fc70cce787992b6d3eb954b6e6967499d6c2a855db55ff3594b5723f7
check with shasum -a 256 booping.zip
After installing, type /booping in your session and the game opens beside you. The easiest way in.
Install with --auto and the game opens itself on every new session — nothing to remember.
Run ~/.booping/play-with-claude.sh to open Claude + the game in one tmux split (click a pane to switch). It splits natively in iTerm2, WezTerm and Kitty too; add --window for a separate window.
Terminal.app and the Cursor / VS Code terminal can't be split by a script, so the game opens in a new window there — run Claude inside tmux for an in-editor split, or add the .vscode/tasks.json task from the README.
Claude Code fires lifecycle events. booping registers UserPromptSubmit and Stop — nothing more.
Those hooks write thinking or idle to ~/.booping/state. That's the whole connection to Claude.
Running in a second pane, the game reads that file each frame — runs while thinking, freezes when done, counts you back in on the next prompt.
It's as safe as the source you trust — the script is served over HTTPS from a host we control, and it's short and readable. If you'd rather not run unseen code, use the inspect option above: download, read with less, then run. We recommend it.
It creates ~/.booping/ (the game + helper scripts), merges two entries into ~/.claude/settings.json (preserving everything already there), and adds a /booping slash command at ~/.claude/commands/booping.md. Nothing else is modified.
No — not on its own. The game never touches the network unless you ask it to: on the game-over screen you can press s to post a score to the leaderboard (just three initials and your score, anonymously). Skip it and the game stays completely offline. That's why we can still say no telemetry — nothing is ever sent automatically.
No — it runs in a second terminal pane beside it. Claude Code's hooks can't draw to the screen; they just pass a one-word status through a file the game reads. Use a tmux split or any second window. Easiest of all: after installing, just type /booping in your Claude Code session and it opens beside you. Or install with --auto and it opens that pane on each session; in Cursor / VS Code, run Claude inside tmux for an in-editor split, or add the .vscode/tasks.json snippet from the README.
No. Just Python 3 with the built-in curses module, which ships with virtually every macOS and Linux install. No pip install, no build step.
Run ~/.booping/install.sh --uninstall. It removes ~/.booping/ and strips only booping's hooks from your settings, leaving the rest untouched.