[FEATURE] Optional voice session mode for the Claude Code VS Code extension (four-panel layout)
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
/voice dictation in the VS Code extension today is one-way: it is hold-to-talk or tap-to-talk input only. I speak, and it types into the prompt box. There are no spoken replies, no live session indicator, and no separate pane for the activity behind the scenes.
Voice is good for intent ("here's what I'm trying to do") but poor for exact details like function names, error text, and paths. Typed input alongside voice would cover that.
In a voice session, spoken-style replies, tool calls, and diffs all landing in one scrolling thread is hard to follow. Separating what's said from what's done would keep both clear. A visible live indicator would also tell me the session is listening.
Proposed Solution
An optional voice conversation mode built into the official VS Code extension, using the same sign-in the extension already has. I'd like to talk with Claude, hear the replies, and see the work happen in a layout built for that.
Non-voice behavior
Voice mode would be optional. When it's off, the extension keeps its traditional two-panel layout: the conversation and the input box. The four panels appear only when a voice session is started, and ending the session returns to the normal layout.
Proposed layout (voice mode)
- Voice activity box: a small waveform showing that the session is live and who is speaking (me or Claude), with mic status and a mute button.
- Dialog panel: a running transcript of the spoken conversation, kept short and readable.
- Context and steps panel: code, diffs, file reads, and the steps Claude is taking, kept separate from the dialog so the conversation stays light.
- Input box: for pasting stack traces, file paths, snippets, or data points while talking. Anything added here becomes context in the same conversation.
Keeping this inside the official extension means it uses my existing sign-in and subscription, with no separate login, API key, or terminal setup.
<img width="2400" height="1560" alt="Image" src="https://github.com/user-attachments/assets/c4b4a762-9525-4d32-b583-9ed56acfacf1" />
<img width="1200" height="780" alt="Image" src="https://github.com/user-attachments/assets/66c980f0-747e-4209-9849-cd1ab81185fe" />
Alternative Solutions
If a full voice mode isn't planned, please consider exposing the voice session, or commands to send text to the chat and read its state, so that companion extensions can build on it.
Priority
Medium - Would be very helpful
Feature Category
Other
Use Case Example
Example scenario:
- I'm debugging a failing test and start a voice session.
- I say what I'm trying to do out loud: "this test started failing after my last change, help me find out why."
- The exact details (the stack trace and the file path) are hard to say out loud, so I paste them into the typed input box while I keep talking. They become context in the same conversation.
- Claude answers by voice, and the dialog panel keeps a short, readable transcript of what was said.
- Meanwhile the context and steps panel shows the files Claude reads, the commands it runs, and the diff it proposes, so I can follow the work without it cluttering the conversation.
- When I'm done I end the session and the extension returns to the normal two-panel layout.
Additional Context
The mockup of the four-panel layout (sample content only) is shown under Proposed Solution above.
Related requests (all closed: stale or duplicate). None of them covers a dedicated voice session layout:
- #27908: voice mode in Claude Code, especially in VS Code (a conversation that drives implementation; closed as not planned)
- #87559: audio output for Claude's responses (spoken replies only; closed as not planned)
- #33794: voice input in the VS Code chat (dictation, which now exists; closed as a duplicate)
What this request adds beyond those is the session layout itself: a live voice indicator, a short dialog transcript kept separate from the code, diffs and steps, and a typed input box alongside voice for exact details. It also keeps everything inside the official extension, using the existing sign-in.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗