Skip to content

peon-ping logo peon-ping

peon-ping allows you to play an iconic game voice line and pop a desktop banner when your AI coding agent finishes a task, hits an error, or needs your input. There is a whole site with many different sound packs available for it now, but at heart it is a small tool that allows your agent to communicate sounds and notifications.

Hear a peon

The name comes from the Warcraft III Orc Peon. My own default is the StarCraft SCV. Hit a line to hear what both packs sound like.

Warcraft III Orc Peon

StarCraft SCV

Sounds from the peon and sc_scv packs (openpeon.com).

The problem I was having

I kept running into the same thing: I would give a coding agent inside VS Code a big instruction, expect it to work for a few minutes, and in the mean time I would move my attention to another window. Then I would come back later and find it had stalled thirty seconds in, waiting on input.

At some point I just told the agent: "ping me if you need me." But, it had no way to do that just yet. So I went looking for a tool to allow my coding agent to "ping me"m, I found peon-ping, and the 90s gaming sound packs I recognized made me love it instantly. Now when I tell an agent to turn on alerts, it actually can.

How I have it wired up

I use it with the two agent harnesses I work in most, Claude Code and GitHub Copilot CLI, both through their hook systems. The binary comes in through my dotfiles as a Homebrew tap, so a fresh laptop gets it automatically.

On top of that I built a small custom layer in my agents config repo:

  • One alert-me skill instead of juggling separate commands, so any agent triggers it the same way.
  • A gate in front of every hook event, so only sessions that opted in make noise and every other agent stays silent. Subagent events are dropped entirely.
  • A CLI path (alert.sh done -m "..."), which is handy when I want the agent to ping me halfway through a plan, not only when the whole turn ends.

It sends both an audio clip and a desktop notification. The overlay banner shows the repo name and which harness it is, like .agents - Claude Code, so parallel agents stay distinguishable.

Personalizing each agent

peon-ping ships 165+ sound packs pulled from games like Warcraft III, Red Alert 2, StarCraft II, and Counter-Strike. I decided I wanted my agents to feel a little distinct, so I set the pack per project and per session. My default is the StarCraft SCV, and I rotate through a handful that all point at other things I like: Jarvis from Iron Man, GLaDOS from Portal, the Red Alert 2 SCV and Tanya, and the Warcraft III Peon.

There is an MCP server too, but I steer away from MCP in general because it is too token-hungry for my taste, so the per-session voice switching is something I wired up myself instead.

It is still quite a new project, but I expect I will be spreading the love on this one the same way I do with clipboard history.