0.144.0: codex-code-mode-host is missing
Open 💬 31 comments Opened Jul 9, 2026 by mustafa0x
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
0.144.0 / pro / any model / macos
What issue are you seeing?
Codex CLI doesn't work at all. Rather, it complains:
I’m blocked by the local Codex command runner: ~/.local/bin/codex-code-mode-host is missing. No commands ran and no files, commits, branches, or PRs were changed.
Please restore/reinstall that binary or restart Codex.
31 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
on apple silicon, seems like it got placed in
symlinking fixes it for now
I solved it with clade code lol, here is what worked for me:
Root cause looks like helper resolution off the un-canonicalized
current_exe()— same class as #30732 / #30856, which hit the sandbox helpers on Windows.The standalone installer creates
~/.local/bin/codex -> ~/.codex/packages/standalone/current/bin/codex(per #17022).codex-code-mode-hostships next to the real binary and is intentionally not placed on PATH. But the spawner resolves the helper as a sibling ofcurrent_exe(), and on macOS that returns the symlink path rather than its target — so it looks in~/.local/bin/and finds nothing. Neither fallback saves it: the packagedcodex-resources/contains only the bundledzsh.Notably,
codex doctorreportsinstall: consistentand correctly resolvesbinto the release directory, while printingexecutable: ~/.local/bin/codex. So the two code paths disagree —doctorcanonicalizes, the spawner doesn't.Minimal A/B on 0.144.0, macOS aarch64. Same binary, two invocation paths:
Since
code_mode_hostisstableand enabled by default, this breaks every tool call on standalone installs.The more severe bug is the second-order failure
In the first run there is no
execblock at all. The helper spawn fails, the error is logged — and then the turn continues and the model answers from nothing. It reported the branch asmain. The actual branch ismaster.A tool-host spawn failure is being surfaced to the model as something it can proceed past, so a hard infrastructure error degrades into a silently fabricated tool result. That seems worth separating from the install bug: even after the path issue is fixed, a helper that dies mid-session would presumably produce the same class of invented output.
Workarounds
No reinstall needed — the helper is already on disk, just not where the spawner looks.
~/.codex/packages/standalone/current/binahead of~/.local/binonPATH(note:~/.zshrcis only read by interactive shells, so non-interactive/GUI launches still break), or~/.local/bin/, orCODEX_CODE_MODE_HOST_PATHto the packaged helper.Suggested fix
Canonicalize
current_exe()before the sibling lookup — matching whatdoctoralready does — and fail the turn when the helper cannot spawn, rather than letting the model answer without its tools.Can confirm that symlinking works
Completely broken on archlinux as well, with no opportunity to symlink if installed directly from the arch packages, because that bin doesn't exist anywhere in
.codexeither.I assume this PR (and related) are supposed to fix: https://github.com/openai/codex/pull/31858
You can download codex-code-mode-host from releases and place it to /usr/bin/codex-code-mode-host after decompress, such as: https://github.com/openai/codex/releases/download/rust-v0.144.0/codex-code-mode-host-x86_64-unknown-linux-musl.tar.gz
Download, extract and run:
Working on a fix for this, submitting a PR shortly
Root cause
default_host_program()incodex-rs/code-mode/src/remote_session.rspassesstd::env::current_exe()directly toresolve_host_program(), which derives the host path as a sibling of the exe. On macOS,current_exe()is backed by_NSGetExecutablePathand returns the invocation path (the symlink), not its target.The standalone installer creates
~/.local/bin/codexas a symlink to~/.codex/packages/standalone/current/bin/codexbut does not create a matchingcodex-code-mode-hostsymlink. So the sibling lookup resolves to~/.local/bin/codex-code-mode-host— which doesn't exist — and every tool call fails before execution.The host binary is on disk at
~/.codex/packages/standalone/current/bin/codex-code-mode-host, just not where the resolver looks for it.Proposed fix
Canonicalize
current_exebefore the sibling lookup:dunce::canonicalizeis already used throughout the workspace (e.g.windows-sandbox-rs,path-utils,core). The pureresolve_host_programfunction stays unchanged — canonicalization happens at the call site, which is the filesystem boundary.The
unwrap_or(exe)fallback preserves the current behavior if canonicalization fails.This is the same class of bug as #30732 / #30856 (Windows sandbox helpers resolved
current_exe()without canonicalization).Workarounds
Any of these unblocks tool execution until the fix lands:
ln -s ~/.codex/packages/standalone/current/bin/codex-code-mode-host ~/.local/bin/codex-code-mode-hostexport CODEX_CODE_MODE_HOST_PATH=~/.codex/packages/standalone/current/bin/codex-code-mode-host~/.codex/packages/standalone/current/binahead of~/.local/binonPATHFWIW, I also see this with
0.144.0on Windows, but the workaround doesn't apply as there isn't acodex-code-mode-host.exeanywhere in%USERPROFILE%\.codexas with the macOS workaround, nor anywhere in%USERPROFILE%\scoop. Installed via scoop andcodex doctordoesn't find anything wrong, but GPT 5.6 Sol is unable to access local files, reporting that "the tool adapter expectscodex-code-mode-host.exe".Well not only on windows. Same issue on arch linux where the file simply does not exist when using the official package so there is nothing to symlink.
The maintainer says the issue is with codex itself not the package which has been confirmed by the issue not being arch specific.
The archlinux package issue:
https://gitlab.archlinux.org/archlinux/packaging/packages/openai-codex/-/work_items/49
Did they test the release with "chatGPT work translating from japanese to japanese"?
bad humor aside, same issue here.
None of the proposed fixes solves the issue on Mac
I installed via BREW. is that a common pattern here?
Same issue here
Thanks for reporting the issue. We're working on a fix.
If you installed with the official shell installer and hit this issue, rerun the installer:
curl -fsSL https://chatgpt.com/codex/install.sh | shIt now includes the fix.
What about homebrew installs?
Still working on a fix for homebrew.
Hit this issue after switching back to codex after a while and riiiiight back to claude i go
Additional Linux/Homebrew data point.
Environment:
/home/linuxbrew/.linuxbrew/Caskroom/codex/0.144.0/codex-x86_64-unknown-linux-muslgpt-5.6-solObserved behavior:
pwdandtrue.ghitself was installed and authenticated, butghcould not be reached from affected agents because the tool host failed first.Errors observed:
After manually symlinking
codex-code-mode-hosttocodex-x86_64-unknown-linux-musl, the missing-file error changed to:That symlink did not fix the issue, presumably because the regular CLI binary does not behave as a valid code-mode host entrypoint when invoked under that name.
Homebrew cask contents after
brew reinstall --cask codex:No
codex-code-mode-hostbinary was present anywhere under the cask directory.codex doctorreported the install as broadly healthy, and websocket/auth checks passed, so the issue was isolated to the code-mode host execution path.Workaround that restored shell/tool execution:
After disabling
code_mode_host, newly spawned agents could run:successfully.
Using
codex -c features.code_mode_host=falseseems to be a workaround for me before the upstream fixFor Homebrew users: opened Homebrew/homebrew-cask#274197 switching the cask to the
codex-package-<arch>-<os>.tar.gzrelease asset, which already contains bothbin/codexandbin/codex-code-mode-host. Tested end-to-end on Apple Silicon — tool execution works again with no code-mode host spawn errors.@etraut-openai can you expand on what the "fix" is? Do downstream packages need to change how they build from source? In a later comment you said you were fixing "for homebrew", does that mean a new release of Codex to solve it or changes to how Homwbrew's Codex formula works?
https://github.com/openai/codex/actions/runs/29053738151 is the build for the
0.144.1hotfix that should fix the Homebrew release.FWIW this was previously done for the homebrew cask and it caused some issues so was backed out. We're still figuring out how to make the new packaging strategy compatible with Apple's signing requirements and will follow up to update the cask when it's ready. I would not recommend using this approach right now.
A short term workaround until version 0.144.1 lands in homebrew: you can download the released
codex-code-mode-host-*from the latest release https://github.com/openai/codex/releases/tag/rust-v0.144.0 and colocate the binary with your currentcodexbinary.Easy mode workaround for MacOS users (using Darwin) who installed with homebrew:
%APPDATA%\Roaming\npm\node_modules\@openai\codex\node_modules\@openai\codex-win32-x64\vendor\x86_64-pc-windows-msvc\binAll you need to do is copy the
codex-code-mode-host.exeto%USERPROFILE%\.codex\plugins\.plugin-appserver\after that, everything works.
Additional confirmation from macOS ARM64 with Codex CLI
0.144.0installed via Homebrew:/opt/homebrew/bin/codex-code-mode-host(No such file or directory (os error 2)).codex doctor --summary --no-colorreports17 ok · 1 idle · 0 warn · 0 fail, includinginstall: consistent.codexbinary but not the separate code-mode host expected at that path.~/.codexreset are unrelated; the terminal CLI can launch independently.This also suggests
codex doctorshould validate that the code-mode host required by the active workspace/client path exists and is executable.Guys I ask you to please read the issue in its entirety before posting comments, there is a lot of duplicated info/messages and it only clutters this thread.
If you don't have anything new just don't comment please, thank you.
I have no authority, I am just kindly asking you to keep it to the theme here.
https://github.com/Homebrew/homebrew-cask/pull/274225 updates homebrew to point at
0.144.1which we expect to resolve the issue for brew users.