Odel
Codex Delegate

Codex Delegate

Local
@andreilungeanu1JavaScriptMITUpdated 3 days ago

Bridge AI coding hosts to the OpenAI Codex CLI for delegated implementation.

Codex Delegate

Stop burning your frontier agent's limits on boilerplate.

Delegate implementation to the OpenAI Codex CLI — your agent writes the brief and reviews the diff.

npm version npm downloads MCP Registry codex-delegate-mcp MCP server node license: MIT tests

Codex Delegate logo

Use your best coding agent where its judgment matters most: understanding the task, shaping the plan, and reviewing the result.

Codex Delegate is the MCP bridge that lets Claude Code, Cursor, Copilot — or any MCP client — hand implementation to the OpenAI Codex CLI, then get a clean, structured result back for review.


A terminal recording of Claude Code delegating to Codex: a health check confirms the Codex CLI, auth and model catalog; an ask-mode run diagnoses why the demo repo prints "today 0", naming commitDay() bucketing by UTC while cellDay() labels by local time, with line numbers; one sentence then fans out to two Codex models at once — one editing the repo, one researching in a separate directory — and the fix lands with tests passing and the footer reading today 4, current streak 23, longest streak 23; finally Codex reviews its own diff and reports three findings

🧠 Frontier quality, kept

Your assistant does what frontier models are actually for: understands the task, writes a precise brief, reviews the finished diff. Codex holds its own as the implementer — guided and checked by a smarter orchestrator. The result reads like frontier work, because a frontier model planned it and signed off on it.

⚡ Done faster

Codex tears through multi-file edits while a frontier chat model would still be streaming the first file. You delegate, keep working with your assistant, and the diff shows up done.

🔋 Your limits stop being the bottleneck

Delegated work runs on the OpenAI Codex CLI and its own usage — separate from your orchestrator's chat quota, though the Codex side still bills its own way. Your Claude, Cursor, or Copilot subscription spends tokens on the brief and the review; Codex does the grinding. On API? That's the per-token grind moved off your main bill.

You and your agent understand the task, write the brief and review the diff; the MCP delegate tool hands that brief to the OpenAI Codex CLI, which implements it and edits your workspace; one compact JSON result comes back with what changed, which files, and the thread id

A delegate result: one compact JSON block with the final answer, status, thread and delegation ids, workspace, Codex CLI version, per-turn token usage, and the files the edit tools reported changing

Features

  • 📦 One result you can review — a compact JSON block: the final answer, status, the files Codex's edit tools reported changing, per-turn token counts, and the threadId to continue from. Fields that carry no signal are omitted.
  • 📋 Plan first, then build it on the same threadplan returns schema-validated steps for you to approve, and agent implements them. ask answers questions. review runs Codex's own reviewer over uncommitted work, a base branch, or a single commit.
  • 🧵 Resume — continue a Codex thread with resumeThreadId. resumed: false tells you the context did not carry over.
  • 🧑‍🤝‍🧑 Run several, cancel cleanly — the same question across models, or independent workers on independent directories. cancel waits for the exit and warns when a process outlives the kill deadline.
  • 🤝 One-command install — Claude Code and GitHub Copilot CLI take it as a plugin, with a skill that teaches your agent how to delegate well. Cursor, VS Code, JetBrains, Windsurf and Visual Studio add the stdio server in settings.
  • 🩺 doctor — tells you exactly what's missing if setup isn't right.

Install

You need Node.js 20+ and the OpenAI Codex CLI, already logged in (codex login).

Claude Code

/plugin marketplace add andreilungeanu/codex-delegate-mcp
/plugin install codex-delegate@codex-delegate-mcp

Then just ask:

Delegate to Codex: migrate src/api from callbacks to async/await and update the tests, then walk me through what changed.

That's the whole loop — Claude writes the brief, Codex grinds through the files, Claude walks you through the diff.

Cursor

Add an MCP server in Cursor Settings → MCP (or project .cursor/mcp.json):

{
  "mcpServers": {
    "codex-delegate": {
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

Then ask Cursor to delegate implementation to Codex the same way.

GitHub Copilot CLI

copilot plugin install andreilungeanu/codex-delegate-mcp

More clients

VS Code — one-click install, or .vscode/mcp.json

Install in VS Code Install in VS Code Insiders

{
  "servers": {
    "codex-delegate": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

Or run Chat: Install Plugin From Source with this repository's URL.

JetBrains AI Assistant — Settings → Tools → AI Assistant → MCP

Under Settings → Tools → AI Assistant → Model Context Protocol (MCP), add a server with command npx and arguments -y codex-delegate-mcp.

Windsurf~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "codex-delegate": {
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

Heads-up: Cascade caps you at 100 tools across all servers.

Visual Studio 2022%USERPROFILE%\.mcp.json
{
  "servers": {
    "codex-delegate": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

Requires 17.14+. Note the top-level key is servers, not mcpServers.

OpenCode~/.config/opencode/opencode.json or project opencode.json

OpenCode does not use mcpServers. Local servers go under mcp, with type: "local" and command as one array:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "codex-delegate": {
      "type": "local",
      "command": ["npx", "-y", "codex-delegate-mcp"],
      "enabled": true
    }
  }
}
Google Antigravity~/.gemini/config/mcp_config.json or workspace .agents/mcp_config.json
{
  "mcpServers": {
    "codex-delegate": {
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

In the IDE: on the agent panel → MCP ServersManage MCP ServersView raw config. Antigravity 2.0, IDE, and CLI share the Gemini config file. You may need to approve the server's tools on first run.

Kilo Codekilo.jsonc (mcp key, not mcpServers)

Same shape as OpenCode: type: "local" and command as one array.

{
  "mcp": {
    "codex-delegate": {
      "type": "local",
      "command": ["npx", "-y", "codex-delegate-mcp"],
      "enabled": true
    }
  }
}

In the VS Code extension: Settings → MCP → Add Server → Local (stdio). On Windows, if npx is not found, use command cmd with arguments /c, npx, -y, codex-delegate-mcp.

Zed — Settings → AI → MCP Servers, or context_servers in Zed settings
{
  "context_servers": {
    "codex-delegate": {
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"],
      "env": {}
    }
  }
}

Zed's native agent uses this. External ACP agents in Zed read their own MCP config unless you forward Zed's servers.

Kiro and any other MCP client

Add the following server to the client's MCP config:

{
  "mcpServers": {
    "codex-delegate": {
      "command": "npx",
      "args": ["-y", "codex-delegate-mcp"]
    }
  }
}

MIT © Andrei Lungeanu

Configuration · Security · Privacy · Terms · Changelog