TUI voice transcription
Resolved 💬 27 comments Opened Apr 1, 2026 by fcotizelati Closed Apr 2, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
Summary
The TUI voice transcription flow in Codex CLI was removed in 0.118.0. I had been using it regularly in a terminal-first workflow, and the desktop app's Ctrl+M dictation is not an equivalent replacement for that use case.
Request
If the removal is permanent, could you document the intended replacement or migration path for terminal-first users? Otherwise, please consider restoring a supported CLI/TUI dictation path.
Environment
codex-cli 0.118.0- macOS (Apple Silicon)
- Terminal.app
Why I'm filing this
The public changelog and PR #16114 indicate this was an intentional removal, but from a user perspective it feels like a meaningful workflow regression. It would help to know whether:
- CLI/TUI dictation is planned to return
- there is another supported terminal-first voice workflow
- the desktop app is now the only supported voice input path going forward
27 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
same for me. Why was this removed ? Is this a repositioning of the CLI ? Even when it was not 100% perfect, it was super helpful.
The Ctrl+M feature is not available for API key users... so this has effectively removed all voice transcription for that group. I agree this is a downgrade in functionality with no replacement.
yikes i thought i had a bug. sucks.
@etraut-openai its not a duplicate of https://github.com/openai/codex/issues/10060
What the hell ? Voice transription in terminal was super usefull
Dictation in desktop app has stopped working for me. Could this be related?
Why on earth would you remove a feature like that from the desktop app? Everyone knows that spoken instructions are far more effective than written ones. This definitely makes the Codex solution less effective! Please bring it back!
I think this ticket is about the cli, not the desktop app.
I'm using the latest version of the Codex Mac app. The prompt still includes the option to start voice input. The app is recording, but as of today, it's no longer transcribing (the audio couldn't be transcribed).
Is this a separate technical issue unrelated to the CLI integration? Is anyone else experiencing this problem with the Mac app?
for me too. Does not transcribe on Mac.
Indeed I was referring to the Codex CLI, but I've just tested transcribing on both Codex and ChatGPT Mac apps and they're not working either.
Oh, I was just about to use a workaround with ChatGPT and realized that the transcription feature isn't working there either. So it seems to be more of a technical issue on OpenAI's end?
<img width="702" height="347" alt="Image" src="https://github.com/user-attachments/assets/7eff107e-c391-43bc-b4ee-15006afedbbe" />
No, it was an actual commit, they removed the feature from the CLI:
https://github.com/openai/codex/pull/16114
@etraut-openai
They say though "Yes. I removed the unfinished transcription path, but I left the realtime voice conversation path intact." but no idea how to use that or where to find the feature
Desktop app dictation just started working again for me, it may be worth retrying on your end too.
Voice transcription is fully supported in the desktop app.
This feature is not available in the TUI at this time. There was a partially-implemented prototype that someone checked in to the TUI sources at some point, but this impelmentation was never completed, never made it to the "experimental" phase, was never documented, and is not something we're able to support. For that reason, it was removed from the sources.
If you'd like to see voice transcription added to the TUI, please upvote the linked issue. We generally prioritize feature requests based on community upvotes.
Thanks for the clarification! I actually found the implementation very useful already. That said, I understand the decision to remove unsupported features. I’ve gone ahead and upvoted the issue, as I’d definitely like to see voice transcription make its way back into the TUI in the future.
I guess I misunderstood. Sorry about that. I was redirected here from another thread and thought this was also about the desktop app. OpenAI is currently experiencing an issue with voice transcription, as indicated in the status update, but everything has been working again for a few minutes now.
You can downgrade to version 0.117.0 to keep using transcription:
npm install -g @openai/codex@0.117.0Thanks, but I’d prefer not to stay pinned to an older version long-term, as I’d otherwise miss out on future updates and fixes
Same here, for now there is not even a clear ticket to upvote this feature request...
That's true. This issue was mistakenly closed as a duplicate and unfortunately I cannot reopen it myself
Well they now are counting as duplicate of #14630 which has 4 votes only. Better vote there if we are ever to have some visibility...
This isn't a duplicate issue. This is a downgrade in features. Super useful feature, myopic that it has been removed.
I am a blind developer who relies on VoiceOver to use the terminal. Voice transcription in the CLI was not a convenience feature for me. It was essential.
As someone who cannot see the screen, the terminal is my preferred environment. It is the most accessible way for me to work. The desktop app is not an equivalent replacement. Terminal-first workflows exist for a reason, and for blind developers, the terminal is often the only environment that works reliably with a screen reader.
Sometimes I need to get my thoughts out via voice instead of typing. Not because typing is hard, but because dictation lets me think out loud and move faster. Removing this feature without a migration path or replacement means I have to choose between the tool I want to use and the input method I need.
This is a deal breaker for me. I have been using Claude Code partly because it still supports voice in the terminal. I would love to use Codex, but I cannot commit to a tool that removes accessibility-adjacent features without considering the impact on disabled users.
Please bring this back, or at minimum, document what the intended replacement is for terminal-first users who depend on voice input.
@taylorarndt in the meantime you may try https://github.com/amicalhq/amical . I use it and it is quite good! Hope that helps until codex cli has voice again
FYI for those maintaining their own codex forks, I implemented this in https://github.com/ignatremizov/codex/commit/16c09d4d5936f0c0878c02f72ef88e56c4880783 - based on my fork from base 0.140.0 + some other features.
Demo:
https://github.com/user-attachments/assets/1f867a03-5cf5-4db9-b7af-cb7f82eb174a
It mirrors the Codex App voice transcription backend path. No guarantee this keeps working if the backend contract changes - my fork sends captured PCM as a 24 kHz mono WAV upload, which is not the exact format the Electron app sends, but the backend accepted it in my testing. Also sends a Mac-style Codex Desktop user agent, because Linux user agents returned 403s from the transcription endpoint during my Ubuntu testing.
checkout/cherry-pick/resolve conflicts, and build a release for your machine to use. Or if you don't mind the other features I added, can download the linux artifact. the macOS build takes like 4+ hours on the github runners, I started a new build action run now, you can monitor if you want (or download if finished in the future).
note that
linux-muslis not supported in my fork because dictation needs local microphone capture throughcpal, andcpal’s Linux backend depends on native audio stack pieces like ALSA. I have not wired or validated those native audio dependencies for musl packaging, just linux-gnu since its what I mostly use. Works on macOS. Windows is not tested, but the code path is not disabled there, so should work also.Relevant gates:
Need to add
voice_transcription = trueunder[features]inconfig.toml, and set/keybindforComposer Toggle Dictation(default isalt-m) - on my MacBook/iTerm this printedµinstead of sendingoption-m, so I rebound it toctrl-i. Pick a binding your terminal emits :octocat:Keymap config:
<img width="652" height="260" alt="Image" src="https://github.com/user-attachments/assets/2573212f-d40b-4c38-ab76-73ad3f699b8e" />