{"slug": "earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu", "title": "earshot: Giving Coding Agents Ears — Hear, Review, and Make Sound in Pure Code, on CPU", "summary": "Earshot, a new CPU-only command-line tool, Python API and MCP server, gives AI coding agents the ability to analyze and generate audio so they can review the sound in the video, games and demos they produce. The tool's commands include describe, match, find, realness, timeline, sheet and critique, which scores a launch video against a profile of 7 professional launch films and returns timestamped fixes; version 0.3 adds sfx and kit, a bank of 201 sound effects stored as code that render by id without models or network access. Every sound in the project's 22-second launch film was synthesized in code via its forge command, closing a generate-listen-score-fix loop for agents that otherwise cannot hear their own output.", "body_md": "# earshot: Giving Coding Agents Ears — Hear, Review, and Make Sound in Pure Code, on CPU\n\nWe’ve written a lot lately about agents gaining *senses* and *self-verification* — [Pixel Path screenshotting its own renders until the sky stops bleeding through buildings](https://themenonlab.blog/pixel-path-claude-code-skill-real-road-flythrough/), [vision models that draw to reason](https://themenonlab.blog/sketchvlm-vision-models-draw-reasoning/). **earshot** adds the one sense everyone forgets: hearing.\n\nThe premise is sharp. AI coding agents can now write the code that renders a film, a product demo, or a game — *but they still cannot hear what they made.* They can’t tell a premium key press from a cheap one, notice that a hit lands 80 ms after the cut, or catch that the music swells in the wrong place. earshot fixes exactly that, and it runs **locally on CPU** as a CLI, Python API, and MCP server.\n\n## Turning Sound Into Evidence\n\nThe core idea is to convert audio into something an agent can *reason about in words and numbers*, not just play back. A sampling of the commands:\n\n- **`describe`** — what a file sounds like: calibrated tags (e.g.*“single mechanical keyboard key press, z +5.4”* ), closest alternative readings, AudioSet labels, and raw measurements (peak dBFS, brightness).\n- **`match`** — how well a description fits a sound, with a verdict (strong / plausible / weak / no match) and held-out evidence.\n- **`find`** — the best moments inside a long recording, returned as precise sample trims.\n- **`realness`** — is this a real/pro-produced recording or code-synthesized? With per-window scores.\n- **`timeline`** — a second-by-second*listening transcript* of a whole film: events, sections, loudness, beat grid, and how sound syncs to picture cuts.\n- **`sheet`** — an annotated PNG (frames, events, spectrogram, waveform, sync markers) for agents that read images.\n- **`critique`** — a launch-video scorecard against a profile of 7 professional launch films, with**timestamped fixes** (*“nothing reaches body level until 0:01.01”* ).\n\nThat last one is the kicker: the agent doesn’t just hear, it gets graded against professional work and told what to fix, where.\n\n## Making Sound in Code — and Hearing It Back\n\nThe other half is generative, and it closes a feedback loop:\n\n- **`forge`** — synthesize a sound*entirely in code* , then improve it by listening to the result. (Every sound in the project’s 22-second launch film was made this way — no recordings, no music track.)\n- **`fit`** — translate a real recording into a` forge` recipe Python module that re-renders it, with knobs and morphs so the agent can vary it.\n- **`sfx` / `kit`** (new in 0.3) — a bank of**201 sound effects stored as code** that render by id in seconds, no models, no network.`sfx` aims a whoosh, hit, click, or note at a moment in the picture;`kit` renders a whole film’s effects with measured sync points.\n\nStoring effects as *code with fingerprints rather than audio files* is a neat touch — it’s diffable, version-controllable, and tiny.\n\n## Why It Matters\n\nThis is the same deep pattern we keep flagging: [software built to be operated by an AI agent](https://themenonlab.blog/solidcraft-open-source-fusion-360-rust-mcp-agents/), exposing an MCP server so the model gets a real tool instead of a guess. earshot gives an agent a *perception-and-critique loop for audio* — generate, listen, score, fix — the exact discipline that separates “the code ran” from “the result is actually good.” As agents produce more video, games, and demos, being deaf to their own output is a glaring blind spot. earshot is a thoughtful, honest (it ships VALIDATION and LIMITS docs), CPU-only answer to it.", "url": "https://wpnews.pro/news/earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu", "canonical_source": "https://themenonlab.blog/blog/earshot-ears-for-coding-agents-audio-mcp/", "published_at": "2026-10-22 00:00:00+00:00", "updated_at": "2026-10-26 02:11:18.542883+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "agent-protocols", "generative-ai"], "entities": ["earshot", "AudioSet", "MCP", "Python"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu", "markdown": "https://wpnews.pro/news/earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu.md", "text": "https://wpnews.pro/news/earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu.txt", "jsonld": "https://wpnews.pro/news/earshot-giving-coding-agents-ears-hear-review-and-make-sound-in-pure-code-on-cpu.jsonld"}}