Enable voice transcription in Linux/WSL builds

Resolved 💬 4 comments Opened Feb 26, 2026 by DirkSchlossmacher Closed Feb 27, 2026
💡 Likely answer: A maintainer (etraut-openai, contributor) responded on this thread — see the highlighted reply below.

What version of Codex CLI is running?

codex-cli 0.105.0

What subscription do you have?

ChatGPT Business

Which model were you using?

gpt-5.3-codex

What platform is your computer?

Linux 6.6.87.2-microsoft-standard-WSL2 x86_64 x86_64

What terminal emulator and version are you using (if applicable)?

WSL

What issue are you seeing?

Voice transcription does not work when Codex runs on Windows 11 inside WSL (Linux target), even when the feature is explicitly enabled.

With this in config:

[features]
voice_transcription = true

Press-and-hold space never enters recording/transcription flow in WSL builds. The code path is compiled out on Linux (target_os = "linux"), so voice capture/transcription is unavailable in practice on WSL.

What steps can reproduce the bug?

  1. Run Codex inside WSL on Windows 11.
  2. Enable:

[features]
voice_transcription = true

  1. Start Codex TUI and focus composer input.
  2. Press and hold Space to trigger hold-to-talk transcription.

Repro context:

  • Environment: Win11 + WSL (Codex built as Linux target)
  • Relevant upstream change: PR #3381 (voice transcription)

What is the expected behavior?

When features.voice_transcription = true, hold-to-talk transcription should work in WSL/Linux builds the same way as other supported desktop targets:

  • press/hold Space starts recording
  • release Space stops recording
  • transcription placeholder is replaced with transcribed text (or cleanly removed on failure)

Additional information

Root cause is compile-time OS gating, not the feature flag:

  • Voice deps were restricted to cfg(not(target_os = "linux"))
  • Voice module/event handling/composer paths were also gated by not(target_os = "linux")

Proposed fix branch/commit:

  • Branch: DirkSchlossmacher/codex:fix/wsl-voice-transcription
  • Commit: 4bbfa27cb2fcf0aa2564abf641ac05f018a60642

The fix switches those guards to feature = "voice-input" so Linux/WSL builds can use voice transcription when the feature is enabled.

View original on GitHub ↗

4 Comments

Idate96 · 6 months ago

Confirmed on native Linux (not just WSL), same behavior.

Environment:

  • codex-cli 0.105.0
  • Linux 6.8.0-100-generic (Ubuntu)
  • feature flag enabled in ~/.codex/config.toml: [features] voice_transcription = true
  • codex features list reports: voice_transcription under development true

Observed:

  • In TUI composer, holding/releasing Space only inserts spaces; recording/transcribing UI never appears.

Why this happens in rust-v0.105.0:

  • Linux voice space handler is a no-op:

https://github.com/openai/codex/blob/rust-v0.105.0/codex-rs/tui/src/bottom_pane/chat_composer.rs#L2761-L2767

  • Linux recording key handler is also a no-op:

https://github.com/openai/codex/blob/rust-v0.105.0/codex-rs/tui/src/bottom_pane/chat_composer.rs#L2844-L2850

  • Voice feature gate is effectively disabled on Linux:

https://github.com/openai/codex/blob/rust-v0.105.0/codex-rs/tui/src/bottom_pane/chat_composer.rs#L599-L602

So this reproduces even with correct feature configuration on native Linux desktop.

juanfradb · 6 months ago

Here also not working, reproduced the exact same environment and behavior as @Idate96

Felix3322 · 6 months ago

#12804

etraut-openai contributor · 6 months ago

This feature is still under development and not yet ready for use. We will mark it as "experimental" when it is.