When a kitchen runs out of a dish, the news travels by shouting. Servers keep selling it, so do the delivery apps — refunds, comped meals, angry reviews. Cooks can't tap screens with gloved or greasy hands, and kitchens are too loud for ordinary voice assistants. 86 It is a headset voice station for the line, built end-to-end on the AssemblyAI Voice Agent API. A cook says "86 salmon" and the salmon greys out on the kitchen display, the servers' screen and the online ordering page at the same moment. "Fire 12" / "Bump 4" / "Hold 9" move tickets. "How long on 7?" gets a one-second spoken answer. "Two short rib left" updates the count everywhere. Dangerous actions confirm first ("Void 7?" → "yes"), unknown items get "Which item?" instead of a guess, and kitchen chatter gets silence — a "dash" prompt rule plus a silent-reply gate keep the agent quiet unless a real command is heard. Technically: the browser streams audio straight to AssemblyAI over a single WebSocket (STT + LLM + TTS in one connection), sending prompt, 10 client tools, keyterms and voice focus inline in session.update — so config lives in git and applies on the next session. JSON-Schema enums keep the model on the real menu, keyterms cover kitchen slang, near-field voice focus isolates the cook, min_latency transcription and 1-5 word replies keep it fast. session.resume survives Wi-Fi blips, reply.create powers proactive late-ticket alerts, and a Worker mints temporary tokens so the API key never reaches the browser. State lives in a Cloudflare Durable Object that broadcasts to every screen. Eval: 43 clips (31 commands + 12 chatter) — 96.8% command accuracy, 12/12 chatter ignored, zero spoken false triggers, in clean air and under noise. 15 unit tests pass. Live demo: https://86-it.rd5510.workers.dev/station
Category tags: