OpenClaw Anvil Voice live validation¶
Publication redaction: Operator-specific network hostnames and the OS account name in linked raw evidence were replaced with public-safe placeholders. The observed workflow and result are unchanged.
Date: 2026-07-06
Task: openclaw-anvil-voice-option:T008
Result: PASS for the live speech-to-speech goal.
Topology addendum (2026-07-08). This PASS covers the optional Mini-local audio mode. It does not set the current reference topology. Companion Node's 16 GB RAM is reserved for OpenClaw Gateway, Anvil Voice Realtime/proxy, Claude Code, and Codex; normal Talk validation and candidate A/B should keep Mini model-free and use Dark-host or Mini-proxied audio.
Evidence files¶
docs/findings/2026-07-openclaw-anvil-voice-option-live.jsondocs/findings/2026-07-openclaw-anvil-voice-mini-validation.jsondocs/findings/2026-07-openclaw-anvil-voice-realtime-process.jsondocs/findings/2026-07-openclaw-anvil-voice-gateway-smoke.jsondocs/findings/2026-07-openclaw-anvil-voice-talk-catalog.jsondocs/findings/2026-07-openclaw-anvil-voice-talk-config.jsondocs/findings/2026-07-openclaw-anvil-voice-plugin-inspect.jsondocs/findings/2026-07-openclaw-anvil-voice-gateway-status.json
Key proof¶
mini_validation.pywas rerun with externally managed Mini STT/TTS serves and returnedsupported.- Anvil Voice realtime, STT, TTS, and OpenClaw Gateway loopback ports were open on the Mini.
- STT model probe found
mlx-community/parakeet-tdt-0.6b-v3; TTS model probe foundmlx-community/Kokoro-82M-bf16. - Router route proof reached tier
local, modelqwen36-27b, providerfast-local, work classchat-fast. - Missing-token route probe returned HTTP
401. - Voice benchmark measured
ttfa_ms: 1224.28,turn_latency_ms: 1224.68,tts_rtf: 0.1004, andtts_output_bytes: 76800. - T008 OpenClaw Gateway smoke created
talk.session.createagainst provideranvil, transportgateway-relay, brainagent-consult, modelfast-local. - The smoke streamed synthesized 24 kHz PCM through
talk.session.appendAudio, produced final transcriptTesting the local voice proof., emitted76764output audio bytes across19frames, and closed cleanly. - The refreshed provider catalog on the installed Mini exposed both
g711_ulaw:8000andpcm16:24000input/output audio formats foranvil.
Review Dispositions¶
- Huygens: fixed evidence-gate mismatch by rerunning Mini validation with
lifecycle = "external", adding process/listener/log proof, recording exact commands, and refreshing the Gateway smoke. - Einstein: fixed harness/MCP issues by removing legacy generated plugin defaults while preserving operator overrides, requiring env SecretRefs for private/tailnet realtime URLs, and adding MCP voice passthrough.
- Plato: fixed OpenClaw provider issues by adding G.711 default/Voice Call explicit format, quiet-silence commit threshold, transcript dedupe, URL credential/query rejection, connect timeout, and source catalog brain compatibility.
Caveat¶
The live Mini runs installed OpenClaw 2026.6.11, so its catalog still reports brains: ["none"] for Anvil until the OpenClaw source PR is merged and released. The live session path with brain: "agent-consult" passed, and the source catalog fix is covered by src/gateway/server-methods/talk.test.ts.