Hear Claude Code work. A game announcer that calls HEADSHOT when Claude lands a fix, a breathing break for when a session runs hot, and a status line that shows what the session is costing you.
They run beside the conversation, not in it. Claude never sees what they draw or play, so they cost no
tokens. The one exception is the announcer's optional line in CLAUDE.md (about 150 tokens, cached),
which tells Claude which call to make.
| What you get | |
|---|---|
| announcer | MO-MO-MO-MONSTER KILL KILL KILL. Claude finishes a task and Unreal Tournament's announcer calls it: HEADSHOT for one clean fix, MULTI KILL when several parts land, WINNER on a deploy. Five free options for voices, Quake III included. Separately (but in the same mod for easiness), hear sounds and a one-line animation for each key action: Claude asks you something, opens a permission dialog, commits, pushes, fails a test, starts an rm -rf. You know when Claude needs you without watching the terminal. This is fun but useful: don't let Claude idle! |
| breathe | Got ultra-angry with Claude? He knows and will make you breathe. 30 seconds of guided breathing in the terminal. Run /breathe, set a schedule, or let it open by itself when your prompts start running hot ("FOR F* SAKE HOW IS THIS still broken!??"). |
| statusline | Pre-mods from Claude, pure script. One row: context fill, a countdown to when the prompt cache goes cold (and the next turn gets expensive), session cost, and your 5-hour and weekly limits with their reset times. Ask Claude to install this. |
| Breathe in | Breathe out |
|---|---|
![]() |
![]() |
The easy way is to let Claude do all of it. These mods run code on your machine, so it reads them first and tells you what they do. Paste this into Claude Code (2.1.275 or later):
Read https://github.com/asfbr/claude-code-vibe-mods and tell me what each mod runs on my machine. Then set up
the announcer and breathe: add the marketplace, install both, add the announcer's line from its README to my
~/.claude/CLAUDE.md, and build the game voices. Tell me the download size and wait for my yes before building
them. Finish by telling me what to restart and what I should hear.
/plugin marketplace add asfbr/claude-code-vibe-mods/plugin install announcer@claude-code-vibe-mods, then the same forbreathe@claude-code-vibe-mods.- Announcer only: add its line to
~/.claude/CLAUDE.md(the announcer README has it). - Announcer only, optional: build the game voices with Python 3 (about 50 MB of downloads), also in its README. Until you do, a win plays a free sound. Run it again after each plugin update; the downloads are cached, so it's quick.
- Restart Claude Code. Options are in
/config.
No pip or npm needed. The status line isn't a mod: it needs a clone and Node 18+, plus one
block in settings.json from its README. To get it, add "and set up the status line" to the
prompt above.
To change the mods or keep the game voices across updates:
git clone https://github.com/asfbr/claude-code-vibe-mods ~/claude-code-vibe-modsThen point Claude Code at the folders in ~/.claude/settings.json (; separates them on Windows, :
elsewhere) and restart:
"env": { "CLAUDE_CODE_PLUGIN_DIRS": "~/claude-code-vibe-mods/announcer;~/claude-code-vibe-mods/breathe" }Built and used on Windows. The panes and cues work wherever Claude Code runs. The sounds and the breathing window use the PowerShell and Edge built into Windows, so elsewhere the announcer plays through Claude Code's own audio player and breathe is silent.
The win calls are the original Unreal Tournament and Quake III announcers. They belong to Epic Games and
id Software, so this repo doesn't include them. announcer/scripts/sounds.py downloads the original game
files from public archives (archive.org, id's own demo mirror) and cuts the clips on your machine. Until you
run it, a win plays a free sound instead.
Want a mod to work differently? Before forking, consider opening an issue or a pull request here: what helps you probably helps the next person too. CONTRIBUTING.md has the tests and the rules.
- Action sounds: Kenney (CC0), Freesound authors (CC0), NASA (public domain), and one CC-BY 3.0 clip. Each
one is listed in
announcer/sounds/free/CREDITS.md. - Unreal Tournament is a trademark of Epic Games; Quake is a trademark of id Software. This project is not affiliated with either, or with Anthropic.
MIT for the code. The sound clips keep their own licences (above).

