Sound cues for coding agents
Amaze. Amaze. Amaze.
Your coding agent, with an Eridian engineer's enthusiasm.
Agent Rocky plays Rocky's lines from Project Hail Mary when Claude Code, Codex, or Gemini CLI does something you should hear about. You get "Hello, Grace friend" when a session starts, "Amaze! Amaze! Amaze!" when a turn ends, and "We die. We die. We die." when an approval is for rm -rf. When your usage runs out, Rocky says what every engineer on a fuel budget already knows: not enough, not enough.
Local. No telemetry. Never approves or blocks anything.
Rocky
annoyed cue works.Event map
Every cue, wired to an event.
Forty-four clips: thirty-eight lines from the film and six untranslated Eridian chords, each tied to something your agent does. Click a line to hear it. Your browser stays quiet until you do.
session_startedA session starts, resumes, or clearsOnprompt_submittedYou send a promptOnannoyedYour third prompt inside ten secondsOnapproval_requiredA tool needs permissionOninput_requiredThe agent asks you a questionOn*ready_for_inputClaude Code is idle and waitingOn*turn_completedThe agent finishes respondingOnout_of_astrophageRate limit, billing, or budget exhaustedOn*astrophage_lowThe status line meter crosses its thresholdOn*out_of_xenoniteA reply hits the output token limitOn*memory_fullThe status line memory gauge crosses its thresholdOn*errorClaude Code stops on another API errorOfftool_failedA tool call failsOffsubagent_startedA subagent starts workOffcontext_compactingContext is about to be compactedOffsession_endedA session endsOffeaster-eggRarely replaces a session, prompt, ready, or completion cue2%*Event coverage depends on your agent. Off events turn on with agent-rocky unmute EVENT.
Codex pet
Your own Eridian engineer.
Five stone limbs, nine animations, and sixteen look directions. Rocky waves, works, waits for your input, and checks the result while Codex drives his activity.
Install him independently with agent-rocky pet install, then select Rocky in the desktop pet picker or a supported Codex CLI terminal. Sounds and pets stay independent.
Download the web atlas for a separate account upload. Original artwork: CC BY 4.0.
Sixteen look directions
Destructive-command alarm
We die. We die. We die.
When an approval is for something you cannot take back, the cue changes. Recursive force deletes, force pushes, hard resets, dropped tables, mkfs, dd, and their PowerShell cousins all sound the alarm instead of the ordinary question.
It is a louder cue, not a safety check. The hook never blocks, approves, logs, or stores the command; only a yes/no flag leaves it.
agent wants to run:
$ git push --force origin main
allow? [y/n]
Usage alarms
Not enough. Not enough.
Claude Code reports why a turn failed. Rate limits, billing errors, and accounts on hold play the Astrophage line. Hitting the output token limit plays "too much." An optional status-line meter shows how much of your tightest limit is left, and Rocky asks once when the tanks run low.
Budget and status line guiderate_limit · billing_error · account_on_holdout_of_astrophagemax_output_tokensout_of_xenonitestatus line ≥ 80%astrophage_lowcontext window ≥ 85%memory_full
Install
Two commands. Fist my bump.
Run these in your terminal. Sounds need Node.js 22+ and a local audio player; restart your agent after installation.
Claude Code
claude plugin marketplace add mitchtech/agent-rocky
claude plugin install rocky@agent-rockyCodex
codex plugin marketplace add mitchtech/agent-rocky
codex plugin add rocky@agent-rockyGemini CLI
gemini extensions install https://github.com/mitchtech/agent-rockyReview and trust the sound hooks in Codex's hook settings. Running another Agent plugin too (Navi, Johnny 5, Warcraft, Star Wars, or StarCraft)? Enable one per host so they do not talk over each other. Other agents use the standalone event interface.
Install the Codex pet
npm install -g github:mitchtech/agent-rocky
agent-rocky pet install
agent-rocky doctor --petThese commands install the CLI and pet without enabling sound hooks. Prefer a standalone bundle? Download the pet ZIP and extract its rocky directory into ~/.codex/pets/. Then select Rocky in your host's pet picker. Installation never changes the selected pet.
Sound controls
agent-rocky status
agent-rocky mute prompt_submitted
agent-rocky unmute subagent_started
agent-rocky preset attention
agent-rocky preview fist-my-bump
agent-rocky unmute allOr ask your agent to "mute Rocky" or "turn off amaze amaze amaze" through the bundled control skill. Global mute preserves your event preferences.
Status line
Astrophage meter
Point Claude Code's status line at agent-rocky statusline to see how much of your tightest limit and context window is left, with a cue when either runs low. Setup guide.
Compatibility
Where it plays.
Sounds play on the machine that runs the hook, across agents and operating systems.
Full compatibility guide| Environment | Sounds | Events |
|---|---|---|
| Claude Code | Native hooks | All 16, plus the status-line meter |
| Codex CLI and desktop | Trusted hooks | Session, prompt, approval, completion, subagent, compaction, end |
| Gemini CLI | Native extension | Session, prompt, approval, completion, compaction, end |
| Other agents / scripts | Event interface | Whatever you call |
| SSH, containers, WSL | Local audio needed | Same as the host |
Fist my bump.
Keep building. Rocky will tell you when the work is done.
Explore the project