codex app-server hanging since 0.117.0+ after it emits some tool calls

Resolved 💬 9 comments Opened Mar 31, 2026 by xoofx Closed Apr 7, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using (From “About Codex” dialog)?

0.117.0 and 0.118.0

What subscription do you have?

pro

What platform is your computer?

Windows x64

What issue are you seeing?

Since 0.117.0, codex app-server is not responding after it emits some tool calls and it is stuck. If I revert back to 0.116.0 everything is running fine again. I just tested with 0.118.0 and the same behavior happen.

Not sure if there is anything I could locally to do investigate this further. Let me know.

What steps can reproduce the bug?

Session Id: 019d455c-81c1-73e3-b9b1-fea917a44466

What is the expected behavior?

_No response_

Additional information

_No response_

View original on GitHub ↗

9 Comments

xoofx · 3 months ago

Sorry, it's for the CLI, not the app.

github-actions[bot] contributor · 3 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #16086
  • #15842
  • #16283

Powered by Codex Action

etraut-openai contributor · 3 months ago

Thanks for the bug report. Were you using codex exec (the non-interactive mode of the CLI)? That's what it looks like from your logs. If so, I think I have identified the root cause of the problem.

xoofx · 3 months ago
Thanks for the bug report. Were you using codex exec (the non-interactive mode of the CLI)? That's what it looks like from your logs. If so, I think I have identified the root cause of the problem.

Not exactly, I'm using codex app-server --listen stdio:// with my own TUI around it.

etraut-openai contributor · 3 months ago

I've looked into this (with the help of codex), and I don't see an obvious cause. If you're using your own custom client, then it could be that your client has some assumptions about event ordering that have been broken in this release. That could be a bug in the app server implementation or in your client. I think you'll need to do more diagnosis to determine which. You could try bisecting the Codex changes between 0.116.0 and 0.117.0 and see if you can figure out which commit introduced the relevant behavioral change. Codex thinks that the most likely change is related to our recent introduction of event hooks, but it wasn't able to identify any smoking gun.

xoofx · 3 months ago

@etraut-openai I have ran a regression between 0.117-alpha.2 and 0.117-alpha.25. It was quite difficult to reproduce, as it has to run several tool commands to make sure that we hit the issue but two times it pointed out to the same version, actually 0.117-alpha.25

Diff https://github.com/openai/codex/compare/rust-v0.117.0-alpha.24...rust-v0.117.0-alpha.25

Both times it printed the following log and no update after:

[00:01:21] [0.117.0-alpha.25] item completed AgentMessageThreadItem
[00:01:21] [0.117.0-alpha.25] ThreadTokenUsageUpdated
[00:01:21] [0.117.0-alpha.25] AccountRateLimitsUpdated
[00:01:21] [0.117.0-alpha.25] item started CommandExecutionThreadItem
[00:01:21] [0.117.0-alpha.25] item started CommandExecutionThreadItem
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:22] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] item completed CommandExecutionThreadItem
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] CommandExecutionOutputDelta
[00:01:23] [0.117.0-alpha.25] item completed CommandExecutionThreadItem

I ran it through the same setup than my app (via codex app-server)

I'm not 100% sure that it is definitely the 0.117.0-alpha.25 version that introduced this regression, but so far it's the only one that has surfaced this issue 2 times.

xoofx · 3 months ago

Closing, as I'm going to investigate if it is not an issue on my side with permission requests. I'm supposed to run in full permissive mode, but it might not work as intended. The changes in alpha.25 have some stuffs related to permissions to .codex folder so this could be it.

xoofx · 3 months ago

@etraut-openai I finally found the issue. It appears that codex app-server when running a tool (e.g. dotnet test) could write to stderr (Not sure why), and my program interacting with it was not expecting to have something on stderr, so stderr was not drained. This is fixed on my side.

etraut-openai contributor · 3 months ago

Great! Thanks for the follow-up. Glad to hear you're unblocked.