noisy-coding CLAUDE.md

Project instructions for noisy-coding, a voice-coding system with a background service, coding-agent hooks, and an MCP server.

In plain words
What is it for?
Running a local development instance, connecting its MCP server and hooks, finding key documentation, and releasing new versions.
Why use it?
They document the correct development setup, ports, service connections, and release process so changes do not interfere with the production instance.

Instructions file

Install

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.

agentmods
npx agentmods add instructions/noisy/noisy-coding/claude-md
Clone the repo
git clone --depth 1 https://github.com/noisy/noisy-coding
Per session 865 This file is loaded in full into every session.
When invoked 865 The same file — it is already loaded in full.
Security scan B 2 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00865 $0.00865
Opus 5 $0.00432 $0.00432
Sonnet 5 $0.00173 $0.00173
Haiku 4.5 $0.00086 $0.00086

Measured 2d ago against content hash 87f9fb795d53, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

noisy-coding CLAUDE.md scanned grade B with 2 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 2d 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.

Sends data to an external URLmediumData exfiltration

A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.

curl -X POST http://127.0.0.1:7765/shutdown -d '{"delay_seconds":60}'

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -s http://127.0.0.1:8765/status | grep -o '"version": "[^"]*"'
CLAUDE.md · 75 lines

How it starts

The opening of the file, as written. The whole thing — 75 lines — stays where its author put it; the contents beside it link to each section on GitHub.

noisy-coding — agent notes

Voice coding for Claude Code: a daemon (production runs in Docker) plus Claude Code hooks and an MCP server. Python backend in src/noisy_coding/, Vue dashboard in dashboard/, hooks in hooks/.

Local development setup

Follow docs/local-development.md — do not improvise. In short: production owns ports 8765–8767; the dev instance from this checkout runs on 7765 (scripts/dev_daemon.sh). Wiring a session to dev means BOTH:

  1. a second MCP server named noisy-coding-dev (stdio, LOCAL scope — one claude mcp add --scope local per machine; NEVER commit it to a .mcp.json, the plugin auto-ships that file to end users), and
  2. project-scoped hook overrides in this repo's .claude/settings.json pointing at local hooks/*.py with NOISY_CODING_LISTENER_PORT=7765. These DUPLICATE the global docker-exec hooks on purpose — global ones keep serving production, project ones serve dev.

Key docs

  • docs/hooks.md — the five hooks, why each exists, registration paths
  • docs/ports.md — what each port is for
  • docs/local-development.md — dev instance next to production

Releasing

Run python3 scripts/bump_version.py X.Y.Z - it bumps all four version files AND prints the release checklist. Follow it to the letter; the one step agents keep forgetting: auto-generated release notes only list PRs and miss direct commits - always write real notes (highlights for humans) and publish with gh release edit vX.Y.Z --notes-file ... --draft=false, then verify the GitHub release and the Docker image manifest.

Deploying to the local prod container is part of the release:

docker compose pull && docker compose up -d
curl -s http://127.0.0.1:8765/status | grep -o '"version": "[^"]*"'

The curl MUST report the version just released - up -d alone proves nothing. docker-compose.yml runs the PUBLISHED image; never point it at build: (a stale local build once shadowed a release as 2.13.4) - the working tree runs via docker-compose.dev.yml under a distinct name.

Read the full file on GitHub · 75 lines

Changes

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.

  1. 2d ago First seen · 75 lines · 865 tokens per session scan B 87f9fb795d53

Subscribe to this mod's changes

noisy-coding CLAUDE.md is an instructions file published in the GitHub repository noisy/noisy-coding (6 stars, last pushed 3d ago), licensed MIT. It adds 865 tokens to every session, about $0.0043 per session on Opus 5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.