Talk to Code with CritiqueCode Voice Mode
Speak to the author and the reviewer. Qwen3 ASR 0.6B turns speech into the same prompts and commands as typing.
Talk to code
Voice mode on CritiqueCode.
critique.sh
CritiqueCode voice mode lets you speak to the author and the reviewer in the same session as typing. /voice records one prompt (Enter to stop). /voice on keeps listening after each reply. critique-code --voice starts already listening. Qwen3 ASR 0.6B transcribes the clip. Spoken review, repair, ship, and exit still run as commands. An empty clip drops you back to the keyboard.
Hands on a keyboard are not always the fastest way to steer a coding agent. A long intent is easier to say than to type. A review command is easier to bark than to slash. Voice mode is dictation into CritiqueCode, not a second product and not a spoken assistant that reads the reply aloud.
What CritiqueCode voice mode is
You already talk to CritiqueCode in the repository you mean to change. Slash lines stay in the TUI. They are never sent to the model. Voice uses that same path. The recorder captures a WAV clip. The Inference API transcribes it. The resulting text is an author line, or a parsed command if you said one.
That last part is the product difference. Voice is not a sidecar that dumps words into a text box and hopes you press send. If you say review, repair, ship, or exit, the session treats them the way typed review and /review already do. You can talk the author through a change, then talk the controller into evidence.
How to talk to CritiqueCode
Install @critiquedotsh/harness, cd into the git repo, and connect Critique Inference with critique-code login (or keep an OpenRouter key). Grant the terminal microphone access when the OS asks. Then start listening.
Start voice, or keep listening
One-shot /voice records a single prompt. /voice on repeats after each reply.
critique-code --voice
# or, inside an already-open session:
# /voice| Input | What happens |
|---|---|
| /voice | Record one prompt. Press Enter to stop. |
| /voice on | Keep listening after each reply. |
| /voice off | Return to the keyboard. |
| critique-code --voice | Start the session already listening. |
| Spoken review / repair / ship / exit | Same as typing those commands. |
| Empty clip | Drops /voice on back to typing. |
ffmpeg-static), then PATH ffmpeg, then PATH sox. You do not need a separate sox install to talk to CritiqueCode.Qwen3 ASR 0.6B, billed per second
Transcription is not a chat completion. CritiqueCode posts audio to POST /api/v1/audio/transcriptions with model qwen/qwen3-asr-0.6b. OpenRouter describes Qwen3 ASR 0.6B as a compact speech recognizer with multilingual language identification across 30 languages and 22 Chinese dialects. The Qwen3-ASR technical report publishes the 0.6B and 1.7B family as Apache-2.0 open weights.
On Critique Inference, that route bills $0.000003 per second of audio (the OpenRouter DeepInfra list rate we resell). A 20-second prompt is about $0.00006. It does not consume the PR review credit pool, and it does not use /1M token rates. Author and review generations still bill as chat. ASR is only the speech-to-text hop.
CritiqueCode voice vs Claude Code dictation
Claude Code already has a /voice surface. Official docs call it voice dictation: enable with /voice, then hold Space (or tap in tap mode) so speech streams into the prompt input. You can mix voice and typing in one message. Anthropic positions it as dictation, not a spoken reply. Third-party writeups note it needs a Claude.ai account, and that transcription is not billed as plan tokens.
CritiqueCode is the same category of idea with a different contract. We record a clip, transcribe it, then treat the text as a full author line or a command. There is no live dimmed-text stream into a half-typed prompt. There is a listen loop (/voice on) so you can stay off the keyboard between turns. Spoken review is the evidence harness, not a word inserted at the cursor.
| Claude Code | CritiqueCode | |
|---|---|---|
| Enable | /voice (hold or tap) | /voice, /voice on, --voice |
| Stop a clip | Release Space, or tap again | Enter |
| Transcript lands as | Live insert into the prompt | A completed author line or command |
| Mix type + talk mid-prompt | Yes, at the cursor | No. Finish the clip, then type. |
| Spoken review / ship | Words in the prompt unless you send a command | Parsed as the same commands as typing |
| ASR / billing | Anthropic dictation; not plan tokens | Qwen3 ASR 0.6B at $0.000003/s on Inference |
| Account | Claude.ai (not API-key-only setups) | Critique Inference login or OpenRouter key |
If you already live in Claude Code, keep it. Pair it with the Critique CLI sidecar when you want an independent finish pass. Switch to CritiqueCode when you want Critique to author, force review, and now take the prompt from a microphone. Voice is not a reason to swap harnesses by itself.
What voice mode is not
It is not text-to-speech. The author still prints. It is not always-on ambient listening with a wake word. You start a clip; Enter stops it. It is not a substitute for /review. Saying “looks good” is still a prompt. Saying “review” is the command. It will not work without a TTY, a microphone, or a transcription key. Remote SSH sessions fail unless the mic is local to that machine.