本文根據 Claude Code 官方文檔《Voice dictation》《Commands》整理,資料核對於 2026-11-05。配圖為本站整理的示意圖,不是介面截圖。本站(bigolab.com)不是 Anthropic 官方網站。
適用於誰
- 搜「claude code 支持語音輸入嗎」,想用說話代替打字的人;
- 開了
/voice但按空格沒反應、或者報麥克風錯誤的人; - 想知道中文能不能語音輸入的人。
結論先說
- 支持。 Claude Code 命令行版有語音聽寫(voice dictation),說的話會實時轉成文字進入輸入框,可以和打字混着用。
- 開啟用
/voice。 預設是 hold(按住說話)模式:按住Space錄音,鬆開後文字定稿;/voice tap是點一下開始、再點一下發送;/voice off關閉。 - 要求:必須用 claude.ai 帳號登入(用 API 密鑰、Amazon Bedrock、Google Cloud 的 Agent Platform 或 Microsoft Foundry 時不能用);要有本地麥克風,雲端會話和 SSH 會話不能用。
- 語音會上載到 Anthropic 的伺服器轉寫,不在本地處理。官方同時說,轉寫不消耗 Claude 消息或 token,也不計入
/usage顯示的限額。 - 聽寫語言有限:官方清單有 20 種語言,裏面沒有中文;語言設定不在清單裏時,
/voice會警告並退回英文聽寫。

圖:本站根據 Claude Code 官方文檔:Voice dictation 整理的示意圖
一、前提條件
官方列的三項都要滿足:
- claude.ai 帳號:語音轉寫服務只在用 claude.ai 帳號認證時可用。用
ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN、apiKeyHelper設定,或第三方雲廠商,會優先於 claude.ai 登入,需要去掉並重啟。登入與帳號相關的事見 /guides/claude-code-login-logout-switch-account;需要訂閱可以了解 /chongzhi/claude-code。 - 本地麥克風:雲端會話(網頁版 Claude Code)和 SSH 會話不能用。VS Code 擴展也支持語音,同樣要求 claude.ai 帳號,但在 VS Code 的遠程會話(SSH、Dev Containers、Codespaces)裏不能用,因為麥克風在本機、擴展跑在遠端。
- WSL 用戶:官方說需要 WSLg。從 Microsoft Store 裝的 WSL2(Windows 10 或 11)帶 WSLg;WSL1 沒有,這時改在原生 Windows 上運行 Claude Code。
錄音在 macOS、Linux 和 Windows 上用內置的原生模組;Linux 上如果原生模組加載不了,會退而用 ALSA 工具裏的 arecord 或 SoX 的 rec,兩個都沒有時,/voice 會打印適合你的包管理器的安裝命令。
二、怎麼開、怎麼用
在會話裏運行:
text
/voice
官方說開啟時會做一次麥克風檢查,在 macOS 上這會觸發系統的麥克風權限提示。/voice 的參數:
| 命令 | 效果 |
|---|---|
/voice | 開關切換,保持當前模式 |
/voice hold | 以 hold 模式開啟 |
/voice tap | 以 tap 模式開啟 |
/voice off | 關閉 |
語音設定會跨會話保留。也可以直接寫進用戶設定文件,不用每次運行 /voice:
json
{
"voice": {
"enabled": true,
"mode": "tap"
}
}
hold 模式(預設):按住 Space 開始錄音。官方說 Claude Code 靠終端的按鍵重複事件來識別「按住」,所以開始前有一小段預熱,底部顯示 keep holding…,錄音開始後變成 listening…;預熱期間輸入框裏可能先打出一兩個空格,錄音啟動時會自動刪掉,單按一下空格仍然輸入空格。鬆開後文字定稿,插在游標位置,你可以再按住繼續追加。預設情況下鬆手後文字只是進入輸入框,等你按 Enter;在 voice 設定裏加 "autoSubmit": true,鬆開後會自動發送(轉寫至少 3 個詞才發)。
tap 模式:/voice tap 後,輸入框為空時點一下 Space 開始錄音,底部顯示 ● REC · tap to send,再點一下停止,轉寫文字達到 3 個詞就自動提交,更短的只插入不提交,避免誤觸發。官方說輸入框裏有內容時,第一次點擊不會開始錄音,所以你仍然可以正常輸入空格。錄音在靜音 15 秒或總共 2 分鐘後自動停止。
想跳過 hold 模式的預熱,可以改用 tap 模式,或把按鍵改成帶修飾鍵的組合(如 meta+k)。改鍵寫在 ~/.claude/keybindings.json 裏,動作名是 voice:pushToTalk,上下文是 Chat。
取消錄音:按 Esc 或 Ctrl+C,會停止麥克風、丟掉轉寫,並把輸入框還原成錄音開始前的內容;這一下不會同時打斷 Claude 的回覆或清空輸入。
配了自定義狀態欄時,首次幾次出現的 hold space to speak 提示不會顯示,見 /guides/claude-code-statusline-model-context-usage。更多快捷鍵見 /guides/claude-code-keyboard-shortcuts。
三、支持什麼語言:中文呢
官方說聽寫用的是和 Claude 回覆語言相同的 language 設定;這個設定為空時,聽寫預設英文。官方列出的聽寫語言(括號內是語言代碼):捷克語(cs)、丹麥語(da)、荷蘭語(nl)、英語(en)、法語(fr)、德語(de)、希臘語(el)、印地語(hi)、印尼語(id)、意大利語(it)、日語(ja)、韓語(ko)、挪威語(no)、波蘭語(pl)、葡萄牙語(pt)、俄語(ru)、西班牙語(es)、瑞典語(sv)、土耳其語(tr)、烏克蘭語(uk)。
這個清單裏沒有中文。 官方寫明:如果你的 language 設定不在清單裏,/voice 開啟時會警告,並對聽寫退回英文,Claude 的文字回覆不受影響。所以按官方當天的說法,對着 Claude Code 說中文,目前不在官方支持的聽寫語言裏。官方頁面在另一處(說明「3 個詞自動提交」的計數規則時)提到中文、日文、泰文按詞計數,但沒有說中文能被聽寫,以你實際運行 /voice 時的提示為準。
想讓 Claude 回覆用中文,是另一個設定,見 /guides/claude-code-chinese-language-setting。如果需要的是對話式語音,Claude 手機和桌面應用裏有自己的語音模式,見 /guides/claude-voice-mode。
四、用不了時按提示排查

圖:本站根據 Claude Code 官方文檔:Voice dictation 整理的示意圖
官方的排查條目:
Unknown command: /voice:只有當前登入的是 claude.ai 帳號時才有這個命令。沒登入就運行/login;如果環境裏設了ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN、apiKeyHelper或第三方雲廠商,它們會優先於 claude.ai 登入,要去掉並重啟;Voice mode requires a Claude.ai account:沒找到可用的 claude.ai 登入,/login重登;Voice mode is disabled by your organization's policy:管理員的組織策略關閉了語音聽寫,聯絡管理員;Microphone access is denied:給終端開麥克風權限。macOS:System Settings → Privacy & Security → Microphone;Windows:Settings → Privacy & security → Microphone,打開桌面應用的麥克風訪問,然後再運行/voice;- Linux 上
Voice mode requires SoX for audio recording:原生模組沒加載且沒有備用工具,按提示裝 SoX,如sudo apt-get install sox; - WSL 上
Voice mode could not find a working audio recorder in WSL:官方說 WSLg 用的是 PulseAudio,要裝sudo apt install sox libsox-fmt-pulse; Voice input is failing repeatedly and has been paused:10 秒內連續 3 次失敗,Claude Code 暫停聽寫,直到第一次失敗後 10 秒;多半是麥克風或音頻棧在這台機器上抓不到音頻;- 按住
Space沒反應:觀察輸入框。空格一直累積,說明語音沒開,運行/voice hold;只出現一兩個空格就沒了,說明語音開着但按住檢測沒觸發,要求終端發送按鍵重複事件,系統層關了按鍵重複時識別不了,改用/voice tap; - tap 模式下點空格輸入了空格:第一次點擊只在輸入框為空時開始錄音,先清空輸入框;
No audio detected from microphone:錄到了靜音。確認系統預設輸入裝置選對且沒靜音,Windows 在 Settings → System → Sound → Input 裏選麥克風;Voice connection failed:錄音沒送到轉寫服務,檢查網絡後重試;No speech detected:音頻到了但沒識別出詞,靠近麥克風、減小噪音,確認聽寫語言和你說的語言一致;- 轉寫亂碼或語言不對:聽寫預設英文,說別的語言要先在
/config裏設語言。
macOS 上終端不在麥克風列表裏:官方的辦法是用 tccutil reset Microphone <bundle-id> 重置該終端的麥克風權限(系統自帶終端是 com.apple.Terminal,iTerm2 是 com.googlecode.iterm2),然後用 Cmd+Q 完全退出終端再打開,運行 /voice 觸發新的權限提示。官方警告:不帶 bundle ID 運行會撤銷所有應用的麥克風權限。
常見問題
Q:語音輸入用的是我的 token 額度嗎?
官方說轉寫不消耗 Claude 消息或 token,也不計入 /usage 的限額。發出去的那條提示本身仍是一條普通提示,用量怎麼看見 /guides/claude-usage-limits。
Q:我的聲音會被儲存嗎?
官方說錄音會流式上載到 Anthropic 的伺服器轉寫,不在本地處理;數據怎麼處理見官方的 Data usage 頁。
Q:桌面版或網頁版也能用嗎?
本文說的是命令行版和 VS Code 擴展。官方說雲端會話不能用。
相關教學
參考資料
- Claude Code 官方文檔:Voice dictation — https://code.claude.com/docs/en/voice-dictation
- Claude Code 官方文檔:Commands — https://code.claude.com/docs/en/commands
0 條評論
還沒有評論,來搶沙發~