Summary
The implement-review skill reserves a /implement-review mcp trigger as a "forward-compat slot" but does not implement it (skills/implement-review/SKILL.md:165: an MCP-based Codex channel, "currently out of scope"). On Windows the codex mcp-server MCP transport now drives a Codex review fully automatically, sidestepping the fragile codex exec subprocess path. This issue tracks promoting MCP to a real, preferred auto channel, with the important caveat that the MCP/Codex path has previously tripped Windows antivirus and is currently working for reasons not yet understood.
Current channels
SKILL.md supports three paths to Codex:
- Terminal-relay (default, manual copy-paste)
- Auto-terminal (
codex exec subprocess via dispatch-codex.{ps1,sh}, plus a Copilot backend dispatch-copilot.{ps1,sh} for the agent-fungibility case)
- Plugin (user-initiated)
MCP is only a reserved trigger slot, not a channel.
What works now (Windows)
claude mcp list shows the Codex MCP server connected:
codex: .../npm/codex mcp-server -c approval_policy=on-failure - Connected
- In a session where its tools are exposed, Claude can call the Codex MCP tool directly: Codex reviews in-process and returns findings. No terminal spawn, no
codex exec, no copy-paste. A recent watchlist-monitor review used this path successfully.
Why this was deferred: Windows antivirus
Previously, exercising the /implement-review mcp / codex mcp-server path tripped the system antivirus on Windows (maintainer-observed). That interaction is a likely reason MCP was kept out of scope. It is working again now for unknown reasons (AV definitions update, an added exclusion, or a changed binary). The intermittency is the core risk: an AV false-positive that blocks codex mcp-server would silently break the channel.
Reliability gotcha: "connected" is not "callable"
Observed this session: claude mcp list reports the codex server Connected, yet its tools were not exposed to the agent (ToolSearch could not surface a codex tool; it was absent from the session's deferred-tool list). A connected server does not guarantee the channel is usable in a given session. This argues against making MCP the only auto path.
Proposed design
Per AGENTS.md "Agent Fungibility" (keep alternatives reachable):
- Implement the reserved trigger pattern:
/implement-review mcp slash arg plus plain phrases (use mcp, mcp mode) under the existing negation guard (SKILL.md:165).
- Dispatch via the Codex MCP tool instead of
codex exec.
- Make MCP the preferred auto channel on Windows when the server is reachable.
- Keep
codex exec (Auto-terminal) and the Copilot backend as fallbacks: when the MCP server is not running, not exposed in the session, or AV-blocked; and for the fungibility case (Claude absent, Codex cannot self-review, so Copilot reviews).
Open questions / to investigate
- AV root cause and mitigation: what exactly did the antivirus flag (the
codex mcp-server process, a dispatch script, a temp file)? Document a recommended AV exclusion, or detection-and-graceful-fallback so an AV block degrades to codex exec / terminal-relay instead of hanging.
- Tool-exposure reliability: detect when the codex MCP tools are connected-but-not-callable and fall back automatically.
- Dispatch implementation: how the skill invokes the MCP tool (the MCP call replaces the
dispatch-codex subprocess), including the prompt/response file contract the existing health-check and review-loop machinery rely on.
- Cross-agent parity: the same MCP-as-reviewer idea for the Claude / Copilot backends.
Acceptance criteria
/implement-review mcp (and use mcp / mcp mode) selects an MCP-dispatched Codex review.
- A bare
/implement-review auto prefers MCP when reachable, else falls back to codex exec, else terminal-relay, with the chosen channel logged.
- The AV interaction is documented (exclusion or graceful degradation), so an AV block does not hang the loop.
- Fallback channels remain reachable per fungibility.
Summary
The implement-review skill reserves a
/implement-review mcptrigger as a "forward-compat slot" but does not implement it (skills/implement-review/SKILL.md:165: an MCP-based Codex channel, "currently out of scope"). On Windows thecodex mcp-serverMCP transport now drives a Codex review fully automatically, sidestepping the fragilecodex execsubprocess path. This issue tracks promoting MCP to a real, preferred auto channel, with the important caveat that the MCP/Codex path has previously tripped Windows antivirus and is currently working for reasons not yet understood.Current channels
SKILL.mdsupports three paths to Codex:codex execsubprocess viadispatch-codex.{ps1,sh}, plus a Copilot backenddispatch-copilot.{ps1,sh}for the agent-fungibility case)MCP is only a reserved trigger slot, not a channel.
What works now (Windows)
claude mcp listshows the Codex MCP server connected:codex: .../npm/codex mcp-server -c approval_policy=on-failure - Connectedcodex exec, no copy-paste. A recent watchlist-monitor review used this path successfully.Why this was deferred: Windows antivirus
Previously, exercising the
/implement-review mcp/codex mcp-serverpath tripped the system antivirus on Windows (maintainer-observed). That interaction is a likely reason MCP was kept out of scope. It is working again now for unknown reasons (AV definitions update, an added exclusion, or a changed binary). The intermittency is the core risk: an AV false-positive that blockscodex mcp-serverwould silently break the channel.Reliability gotcha: "connected" is not "callable"
Observed this session:
claude mcp listreports the codex serverConnected, yet its tools were not exposed to the agent (ToolSearch could not surface a codex tool; it was absent from the session's deferred-tool list). A connected server does not guarantee the channel is usable in a given session. This argues against making MCP the only auto path.Proposed design
Per
AGENTS.md"Agent Fungibility" (keep alternatives reachable):/implement-review mcpslash arg plus plain phrases (use mcp,mcp mode) under the existing negation guard (SKILL.md:165).codex exec.codex exec(Auto-terminal) and the Copilot backend as fallbacks: when the MCP server is not running, not exposed in the session, or AV-blocked; and for the fungibility case (Claude absent, Codex cannot self-review, so Copilot reviews).Open questions / to investigate
codex mcp-serverprocess, a dispatch script, a temp file)? Document a recommended AV exclusion, or detection-and-graceful-fallback so an AV block degrades tocodex exec/ terminal-relay instead of hanging.dispatch-codexsubprocess), including the prompt/response file contract the existing health-check and review-loop machinery rely on.Acceptance criteria
/implement-review mcp(anduse mcp/mcp mode) selects an MCP-dispatched Codex review./implement-review autoprefers MCP when reachable, else falls back tocodex exec, else terminal-relay, with the chosen channel logged.