Bug: VS Code extension hardcodes dictation language to "en", ignores settings.json

Resolved 💬 2 comments Opened Apr 24, 2026 by geriwald Closed Apr 24, 2026

Problem

The Claude Code VS Code extension sends language: "en" hardcoded in its transcription WebSocket request to Deepgram, regardless of the language setting in ~/.claude/settings.json. This makes voice dictation unusable for non-English speakers when using the VS Code integration.

The CLI respects the language setting correctly; only the VS Code extension is affected.

Reproduction

  1. Set "language": "fr" (or any non-English code/name) in ~/.claude/settings.json
  2. Fully quit and relaunch VS Code
  3. Open the Claude Code panel, click the microphone button (or press Ctrl+D)
  4. Speak in French

Expected: French transcription.
Actual: Attempted English phonetic transcription of the French audio, often resulting in garbled text or no output at all.

Root cause

In extension.js (v2.1.119), the function that builds the Deepgram WebSocket URL contains:

\\\js
let N = new URLSearchParams({
encoding: "linear16",
sample_rate: "16000",
channels: "1",
endpointing_ms: "300",
utterance_end_ms: "1000",
language: "en", // hardcoded
use_conversation_engine: "true",
stt_provider: "deepgram-nova3"
});
\
\\

The function receives \(K, V, B)\ where \K\ is the auth token and \B\ is a list of keyterms, but the user's configured \language\ is never read.

Workaround

Manually patching \extension.js\ to replace \language:"en"\ with \language:"fr"\ fixes dictation. This needs to be redone after each extension update.

Environment

  • OS: Debian (Linux 6.12)
  • VS Code extension: \anthropic.claude-code\ v2.1.119
  • \~/.claude/settings.json\ contains \"language": "fr"\
  • CLI voice dictation (\/voice\ in a terminal) works correctly with the same settings file

Related

  • #36224 (closed) — similar issue for Remote Control sessions; this issue is specifically about the VS Code extension.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗