Codex Desktop macOS crash/blank threads when remote feature flag enables unknown `thread_tools` feature

Open 💬 2 comments Opened Jun 7, 2026 by shahrul91

Summary

Codex Desktop on macOS repeatedly crashes with (code=null, signal=SIGKILL) and then reopens with thread titles visible in the sidebar but the selected thread body blank. Local session JSONL files are still present and contain messages, so this looks like an app-server crash during thread read/resume rather than lost chat data.

Environment

  • Codex Desktop app: 26.602.40724 (CFBundleVersion 3593)
  • Install path: /Applications/Codex.app
  • macOS: 26.1 (25B78)
  • Launch method: Dock, bundle id com.openai.codex
  • CLI/runtime check: codex features list does not list thread_tools

Relevant codex features list excerpt:

apps                                    stable             true
apps_mcp_path_override                  under development  false
enable_mcp_apps                         under development  false
plugins                                 stable             true
workspace_owner_usage_nudge             removed            false

Crash signature

Crash screen shows:

(code=null, signal=SIGKILL)
Most recent error: {"timestamp":"2026-06-07T04:32:30.293649Z","level":"WARN","fields":{"message":"unknown feature key in config: thread_tools"},"target":"codex_features"}

App logs show the desktop feature list enabling thread_tools shortly before the app-server closes:

Features enabled enabledFeatures="enable_request_compression, collaboration_modes, personality, request_rule, image_generation, image_detail_original, workspace_dependencies, guardian_approval, apply_patch_streaming_events, workspace_owner_usage_nudge, thread_tools, enable_mcp_apps, apps, plugins, tool_call_mcp_elicitation"

app_server_connection.closed ... reason={"timestamp":"2026-06-07T04:32:30.293649Z","level":"WARN","fields":{"message":"unknown feature key in config: thread_tools"},"target":"codex_features"} signal=SIGKILL

After the app-server crash, thread read/resume calls fail, which matches the blank chat pane:

Request failed ... method=thread/read ... "Codex app-server is not available"
Request failed ... method=thread/resume ... "Codex app-server is not available"

Local config check

~/.codex/config.toml was checked and does not contain thread_tools. Adding it manually was not attempted because unknown feature keys appear to be the crash trigger. The only local [features] entry present was unrelated.

Reproduction observed

  1. Open Codex Desktop from the Dock.
  2. Select an existing project thread.
  3. Sidebar thread titles load, but the chat body is blank.
  4. In some attempts, Codex shows the SIGKILL crash page with the unknown feature key in config: thread_tools warning.
  5. Reloading/reopening may temporarily show the sidebar again, but thread bodies remain blank or crash on read/resume.

Expected behavior

Codex should ignore or safely handle an unknown remotely-enabled feature flag, or the app-server/runtime bundled with the desktop app should understand thread_tools. Existing local sessions should remain readable.

Actual behavior

A remotely-enabled thread_tools feature appears to be passed to a runtime that does not recognize it, causing the app-server to terminate and leaving existing threads unreadable in the UI.

Data safety note

Local session JSONL files were verified to still exist and contain the expected message counts. This appears to be a UI/app-server crash, not deletion of chat history.

Reported on behalf of a user from a live Codex Desktop troubleshooting session; private project names, home paths, thread IDs, and screenshots intentionally omitted.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗