PeonPing/peon-ping is a notification tool that alerts users with game-character voice lines and on-screen banners when an AI coding agent needs attention or finishes work. It helps people monitor terminal-based agents without constantly watching the terminal. Its catalogue add-ons configure or extend these notifications for coding agents and MCP clients.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add PeonPing/peon-ping --skill peon-ping-create-packgit clone --depth 1 https://github.com/PeonPing/peon-pingWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/peonping/peon-ping/peon-ping-create-pack)<a href="https://agentmods.dev/skills/peonping/peon-ping/peon-ping-create-pack"><img src="https://agentmods.dev/badge/skills/peonping/peon-ping/peon-ping-create-pack.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00134 | $0.01749 |
| Opus 5 | $0.00067 | $0.00874 |
| Sonnet 5 | $0.00027 | $0.00350 |
| Haiku 4.5 | $0.00013 | $0.00175 |
Grade A, and why
peon-ping-create-pack scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
peon-ping-create-pack
You are drafting ONE brand-new PeonPing pack from scratch. Work only inside the draft directory you create. Do not touch any other directory, do not install anything, do not commit anything, and never finish by declaring the pack "done" or "installed" — a freshly created pack is never installed directly (see Hard rules).
If invoked without name/flavor/vibe/draft_root
This skill is internal: it is only ever invoked headlessly by peon create
with name, flavor, vibe, and draft_root already filled in. If you were
invoked WITHOUT all four (a human ran this directly with missing arguments),
do nothing except tell them to run peon create instead. Do not touch any
files. Exit.
Procedure
- Parse the invocation:
name(already validated by the caller against^[a-z0-9][a-z0-9_-]*$),flavor(sfxorvoice),vibe(a one-line description),draft_root. - Compute
draft_dir = <draft_root>/<name>. If it already exists, STOP — tell the human a draft with that name already exists and to runpeon eval <name>on it (never overwrite an existing draft). Otherwise createdraft_dir/sounds/. - Author a concept honoring the vibe, covering all 7 CESP categories
with at least one sound each:
session.start,task.acknowledge,task.complete,task.error,input.required,resource.limit,user.spam. This mirrors the concept-authoring discipline of thebrand-to-peon-packsskill's step 2:- Every sound needs a
label— short, caption-quality text describing what's heard (not a filename, not a restatement of the category — e.g. "Soft acknowledgement", "Serene completion", not "task_complete_0"). - Keep the aesthetic consistent across all 7 sounds so the pack reads as
one coherent idea, not seven unrelated clips. Let the
vibestring drive instrument palette / tone / register (e.g. "calm bells" implies soft chimes and bowls throughout, never harsh or percussive). flavor: sfx— wordless. Each sound needs aprompt: a concrete, renderable description for ElevenLabs sound-generation (instrument or texture, character, brief shape — e.g. "two gentle bells, soft decay, warm room tone"). Avoid vague adjectives with nothing to render ("nice sound") — describe what would actually produce the sound.flavor: voice— spoken. Each sound needstext(an in-character line fitting the category and vibe) plus avoice_id(an ElevenLabs voice id). Reuse ONEvoice_idacross all 7 sounds — a pack has one voice, not seven. If no voice was specified in the invocation, pick a stock ElevenLabs voice whose character plausibly fits the vibe; do not invent avoice_idstring — use one you can confirm actually exists (list voices via the ElevenLabs API if unsure).
- Every sound needs a
- Write
draft_dir/openpeon.json— a CESP manifest withcesp_version,name,display_name,version(start at"0.0.1"), a shortdescriptionreflecting the vibe, and"x_openpeon_draft": true(always — a pack authored by this skill is never anything but a draft).categoriesmaps each of the 7 category names to{"sounds": [{"file": "sounds/<category>_<index>.wav", "label": "..."}]}. - Write
draft_dir/prompts.json— the contract thepeon-ping-remixskill reads for rerolls:{"<file>": {"type": "sfx"|"tts", "prompt": "..."}}for sfx sounds, or{"<file>": {"type": "tts", "text": "...", "voice_id": "..."}}for voice sounds. Keys are the samefilepaths used inopenpeon.json(relative todraft_dir, e.g.sounds/session_start_0.wav). - Render every sound. For each entry, write a small job file under
draft_dir/jobs/(e.g.draft_dir/jobs/render-job-<category>_<index>.json— never at the draft root;approveprunes everything underjobs/, so a render input left at the root would ship as junk in the approved pack) shaped as{"type": "sfx"|"tts", "prompt"|"text"+"voice_id", "out": "<absolute path to the WAV>"}, then run:
Passpython3 <peon-ping>/scripts/pack-render.py --job <file>--mockwhen the environment variablePEON_RENDER_MOCK=1is set — this writes a silent placeholder WAV instead of calling ElevenLabs, so the whole draft can be authored and rendered with no network, no API key, and no ffmpeg. This is how automated tests exercise this skill. (Resolve<peon-ping>as the scripts directory next to the running peon install, in the same order thepeon-ping-remixskill uses:$PEON_DIR/scriptswhen set, else${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hooks/peon-ping/scripts, else the repo checkout you were invoked from.) - The renderer exits nonzero on a malformed job, a missing key, or a
silent-after-retry render. If ANY sound fails to render, STOP — print the
renderer's stderr and exit nonzero. Do not leave
openpeon.jsonclaiming sounds exist that never rendered; it is fine to leave the partialdraft_diron disk for the human to inspect or retry — do not delete it. - After every sound renders successfully, print a short summary (pack name,
flavor, category count, sound count) and always end by telling the
human to run:
to listen to and approve the draft. Never claim the pack is finished, ready to use, or installed — creation only ever produces a draft that still has to clear the eval gate.peon eval <name>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 110 lines · 134 tokens per session scan A 6ee1c3d74acc
peon-ping-create-pack is a skill published in the GitHub repository PeonPing/peon-ping (5,021 stars, last pushed 8d ago), licensed MIT. It adds 134 tokens to every session and 1,749 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
excalidraw-architect
Choose and compose the right Excalidraw diagram - architecture, flowchart, sequence, state, ER, swimlane, process, timeline, quadrant, pyramid, venn, loop, gantt, bar, line, scatter, and more - using the excalidraw-architect-mcp server. Use whenever a reader would learn more from a picture than from prose, or when…
paid-creative-ai
When the user wants to create AI-generated ad creative, test performance creative, manage creative fatigue, or optimize paid media with AI tools. Also use when the user mentions 'ad creative,' 'performance creative,' 'creative testing,' 'creative fatigue,' 'Meta ads,' 'Google ads,' 'TikTok ads,' 'AI ads,' 'ad budget,'…
ai-ugc-ads
When the user wants to create UGC ad campaigns, recruit UGC creators, generate AI UGC content, or scale with user-generated content. Also use when the user mentions 'UGC,' 'user-generated content,' 'creator ads,' 'Spark Ads,' 'whitelisting,' 'AI UGC,' 'Arcads,' 'Creatify,' 'creator brief,' or 'UGC testing.' This skill…
magnifier-callout
Create broadcast-quality floating rounded-rectangle/circular magnifier callouts and background blur focus effects for screen recordings and video clips, seamlessly integrated with DaVinci Resolve timelines.
resolve-camera-motion
Create smooth camera motions, zoom punch-ins, pull-outs, and multi-keyframe paths in DaVinci Resolve using 14 standard easing curves and AI presets.
resolve-ai-editing
Plan, perform, and verify careful edits in an open DaVinci Resolve project through Resolve AI Bridge MCP tools.