setup

A setup command for the noisy-coding voice backend, which is the local service that supports its voice features. It checks Docker, starts the backend container, and verifies that the services respond.

In plain words
What is it for?
Use it when installing noisy-coding, starting its voice backend, checking Docker and service status, or updating an existing container.
Why use it?
It turns the first-time installation and startup process into a guided sequence. It also checks for an already-running backend and preserves saved configuration when updating the container.

Command

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 commands/noisy/noisy-coding/setup
Clone the repo
git clone --depth 1 https://github.com/noisy/noisy-coding
Per session 16 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 834 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. 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.00016 $0.00834
Opus 5 $0.00008 $0.00417
Sonnet 5 $0.00003 $0.00167
Haiku 4.5 $0.00002 $0.00083

Measured yesterday against content hash 0ffaba3aa6ca, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

setup scanned grade A with 1 finding 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 yesterday.

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.

Makes network callslowCapability

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

2. Check whether the backend already runs: `curl -s -m 2 http://127.0.0.1:8765/status`. If it answers, skip to step 4.
commands/setup.md · 31 lines

What it actually says

Set up the noisy-coding voice backend for this user. Follow these steps in order and narrate briefly as you go:

  1. Check Docker: run docker --version. If missing, tell the user to install Docker Desktop (or the docker engine on Linux) and stop.
  2. Check whether the backend already runs: curl -s -m 2 http://127.0.0.1:8765/status. If it answers, skip to step 4.
  3. Start the backend from the published image (multi-arch, hardware-free — all audio flows through the dashboard page). ALWAYS pull first — docker run silently reuses a stale local latest, and a version-skewed container breaks the hooks in ways that are miserable to debug:
    docker pull noisy/noisy-coding:latest
    docker run -d --name noisy-coding \
      -p 127.0.0.1:8765-8767:8765-8767 \
      -v noisy-coding-config:/root/.config/noisy-coding \
      --restart unless-stopped \
      noisy/noisy-coding:latest
    
    If the container name already exists, still pull; when the pull brought a new image, recreate the container (docker rm -f noisy-coding, then the docker run above — the config volume preserves the API key); otherwise just docker start noisy-coding.
  4. Verify the services NON-INVASIVELY — exactly like this, no raw TCP probes:
    • curl -s http://127.0.0.1:8765/status must return JSON (the daemon),
    • docker port noisy-coding must list 8765, 8766 and 8767 (do NOT nc -z port 8766 — a bare TCP open on the WebSocket bridge dumps harmless-but-scary handshake tracebacks into the container logs),
    • the MCP endpoint needs no probe; if you must, know that a plain curl http://127.0.0.1:8767/mcp returning 406 Not Acceptable IS the healthy answer (MCP requires an Accept: text/event-stream header).
  5. Tell the user to finish in the browser at http://127.0.0.1:8765
    • paste their xAI API key when asked (from console.x.ai),
    • click the big amber ENABLE TAB AUDIO banner (the container preselects this tab as microphone and speaker; the click grants the mic permission),
    • keep that tab open while talking.
  6. CLOSE THE LOOP — do not declare success yet. Ask the user to say when they've pasted the key and clicked the banner, then poll curl -s http://127.0.0.1:8765/status and confirm BOTH "api_key_set": true AND "tab_audio": true. Only then report the setup as complete. If either stays false, debug with the user (key rejected? mic permission denied?).
  7. The plugin already registered the MCP server and the voice hooks. On a first install the server usually shows as failed at this point — Claude Code tried to connect it at session start, before the container existed, and its ~30 s client-side timeout expired. NO full restart is needed: tell the user to run /mcp, pick noisy-coding, and choose reconnect — the launcher respawns, finds the container running, and the speak tool appears in this same session. (A restart works too, but reconnect is one menu action.) Without the speak tool Claude cannot answer aloud, though the user's speech already comes through. After the restart, messages tagged [VOICE] are the user's real spoken words delivered by this plugin's hooks — see the plugin's voice-conversations skill for the conventions.

Do not configure anything through environment variables — every setting lives in the dashboard UI.

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. yesterday First seen · 31 lines · 16 tokens per session scan A 0ffaba3aa6ca

Subscribe to this mod's changes

setup is a command published in the GitHub repository noisy/noisy-coding (6 stars, last pushed 3d ago), licensed MIT. It adds 16 tokens to every session and 834 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.