Summary
/codex:review (run via codex-companion.mjs) calls the xcode/XcodeListWindows MCP tool and then hangs indefinitely. The tool call never logs a completion event and the review never finishes — the job stays in "running" / "investigating" until it's manually cancelled. Repro'd twice in a row on the same project.
Environment
- Codex plugin:
openai-codex/codex/1.0.4
- Claude Code CLI
- macOS with Xcode 26.4.1 (Apple's built-in MCP server registered via
xcrun mcpbridge — i.e. the xcode/* MCP, not the third-party xcodebuildmcp/*)
- Project: SwiftUI iOS app
Repro
/codex:review --base <sha>
Review progresses normally through many xcodebuildmcp/* tool calls (all complete in < 1 s each). At some point it calls xcode/XcodeListWindows and stalls. No completion event is ever logged.
Log excerpt
[21:17:13.523Z] Command completed: git show ... KidsBookAI/ContentView.swift (exit 0)
[21:18:25.543Z] Calling xcode/XcodeListWindows.
[nothing after — stuck 5+ minutes before I cancelled]
Every other tool call in the same run (both shell and xcodebuildmcp/*) completed fine. The hang is specific to the xcode/* MCP.
Impact
- Review has to be killed manually via
/codex:cancel <job-id>.
- No partial review output is preserved, so the whole run has to start over.
- Happens repeatedly, not a one-off.
Suggested fixes
- Add a per-tool-call timeout / deadline in
codex-companion.mjs so a hung MCP tool doesn't block the whole review indefinitely.
- Optionally skip
xcode/* tools (or expose a flag like --no-xcode-mcp) until Apple's upstream MCP stabilizes — the xcodebuildmcp/* alternative already covers build/sim needs.
- Log a warning when a tool call exceeds some threshold (e.g. 60 s) so the user knows to cancel instead of waiting blind.
Summary
/codex:review(run viacodex-companion.mjs) calls thexcode/XcodeListWindowsMCP tool and then hangs indefinitely. The tool call never logs a completion event and the review never finishes — the job stays in "running" / "investigating" until it's manually cancelled. Repro'd twice in a row on the same project.Environment
openai-codex/codex/1.0.4xcrun mcpbridge— i.e. thexcode/*MCP, not the third-partyxcodebuildmcp/*)Repro
Review progresses normally through many
xcodebuildmcp/*tool calls (all complete in < 1 s each). At some point it callsxcode/XcodeListWindowsand stalls. No completion event is ever logged.Log excerpt
Every other tool call in the same run (both shell and
xcodebuildmcp/*) completed fine. The hang is specific to thexcode/*MCP.Impact
/codex:cancel <job-id>.Suggested fixes
codex-companion.mjsso a hung MCP tool doesn't block the whole review indefinitely.xcode/*tools (or expose a flag like--no-xcode-mcp) until Apple's upstream MCP stabilizes — thexcodebuildmcp/*alternative already covers build/sim needs.