[FEATURE] Voice input support for hands-free prompting in Claude Code CLI
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
When working on long coding sessions, switching between typing code and typing prompts to Claude Code breaks flow. Voice input would allow users to describe what they want — explain a bug, request a refactor, ask a question — without lifting their hands from the keyboard or interrupting their train of thought.
This is especially valuable when thinking through architecture or debugging, where the cognitive load is high and typing a precise prompt adds friction. Currently there is no way to interact with Claude Code without text input, which limits its usefulness during active coding where hands and eyes are already occupied.
Proposed Solution
A push-to-talk hotkey (e.g. Cmd+Shift+Space) activates voice input in the CLI. A subtle indicator shows it's listening. When released, the audio is transcribed and dropped into the prompt field exactly as if it had been typed — the user can review and edit before hitting Enter, or configure it to auto-submit for trusted commands.
In the desktop app and IDE extensions, a microphone icon in the input bar serves the same purpose. No new UI, no separate mode — voice is just another way to fill the prompt.
Optionally, a "always listening" mode with a wake word (e.g. "Hey Claude") for fully hands-free operation during long sessions.
Transcription should happen locally where possible (Whisper) to avoid sending audio to a third-party service — keeping it consistent with Claude Code's existing privacy model.
Alternative Solutions
_No response_
Priority
High - Significant impact on productivity
Feature Category
Interactive mode (TUI)
Use Case Example
- I'm deep in a debugging session, eyes on the code, hands on the keyboard
- I spot a pattern I want Claude Code to refactor across multiple files
- Instead of stopping to type a prompt, I press a hotkey to activate voice input
- I say: "Refactor all the fetch functions in the services folder to use async/await instead of promise chains"
- Claude Code transcribes, confirms what it heard, and executes
- I stay in flow — no context switch, no typing, no interruption
Additional Context
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗