MCPInstall

codexpro-chatgpt-local-agent

Use ChatGPT Developer Mode as a local coding agent for your repo through MCP

Installs
215
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/reason-machines/codex-skills --skill codexpro-chatgpt-local-agent
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads codexpro-chatgpt-local-agent automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

CodexPro — ChatGPT Local Coding Agent

Skill by ara.so — Codex Skills collection.

What It Does

CodexPro bridges ChatGPT Developer Mode to your local repository through the Model Context Protocol (MCP). It exposes your repo's context (AGENTS.md, .ai-bridge files, git status, source files) and gives ChatGPT tools to read, write, edit, search, and run safe verification commands locally.

Key capabilities:

  • ChatGPT web can act as a local coding agent with full file system access
  • Supports three workflows: normal coding, handoff to local agents (Codex/Pi/OpenCode), and pro context export
  • Uses MCP app infrastructure with safety defaults (workspace-only writes, allowlisted bash)
  • Stable tunnel URLs via ngrok or Cloudflare for persistent ChatGPT app configuration

Not a bypass: CodexPro uses official ChatGPT Developer Mode and does not modify rate limits, unlock models, or provide account access.

Installation

Requirements

  • Node.js 20+
  • ChatGPT Plus or Pro with Apps/Developer Mode access
  • Developer mode enabled: Settings → Apps → Advanced settings
  • Tunnel: Cloudflare quick tunnel, ngrok free dev domain, or Cloudflare named tunnel

Global Install

npm install -g codexpro

First-Time Setup

Navigate to your project directory:

cd /path/to/your/project
codexpro setup

This interactive setup:

  1. Creates .codexpro-config.json with workspace path
  2. Generates a random auth token
  3. Starts the MCP server with a tunnel
  4. Copies the Server URL to clipboard
  5. Prompts you to paste it into ChatGPT → Apps → Create App

ChatGPT App Setup:

  • Open ChatGPT → Settings → Apps → Create App
  • Paste the Server URL
  • Name it "CodexPro Local"
  • Enable the app

Daily Usage

Start the Server

codexpro start

Options:

  • --mode handoff - Include handoff/execute tools for local agent workflows
  • --mode default - Standard coding tools (default)
  • --tunnel none - Disable public tunnel (localhost only)
  • --tunnel cloudflare - Use Cloudflare quick tunnel
  • --tunnel ngrok - Use ngrok with free dev domain
  • --tool-mode minimal - Smallest tool set (demo/testing)
  • --tool-mode standard - Normal coding + handoff (default)
  • --tool-mode full - All compatibility and debugging tools

Stable URL Setup

Ngrok (recommended for persistent URLs):

# Get a free static domain at https://dashboard.ngrok.com/cloud-edge/domains
export NGROK_AUTHTOKEN=your_token_here
export NGROK_DOMAIN=your-subdomain.ngrok-free.app
codexpro start --tunnel ngrok

Cloudflare Named Tunnel:

# Install cloudflared and authenticate
cloudflared tunnel login
cloudflared tunnel create codexpro-tunnel

# Set environment variables
export CLOUDFLARE_TUNNEL_NAME=codexpro-tunnel
codexpro start --tunnel cloudflare-named

See DOMAIN_SETUP.md for full guide.

Core Workflows

1. Normal Coding Mode

ChatGPT acts directly on your repo:

User: "Add input validation to src/api.js"

ChatGPT will:

  • Read src/api.js
  • Edit it with exact text replacement
  • Show a diff card
  • Run verification commands if needed

User: "Show me what changed since last commit"

ChatGPT calls show_changes and renders a review card with git status and diff.

2. Handoff Mode

ChatGPT writes a plan for a local agent to execute:

# Terminal 1: Start with handoff mode
codexpro start --mode handoff

# Terminal 2: Watch for plans and auto-execute
codexpro watch-handoff --agent opencode --model anthropic/claude-3.5-sonnet --yes

In ChatGPT: "Create a plan to refactor auth.js for better error handling, then hand off to OpenCode"

ChatGPT writes .ai-bridge/current-plan.md, the watcher detects it, and OpenCode executes locally.

Review results:

cat .ai-bridge/agent-status.md
cat .ai-bridge/implementation-diff.patch

3. Pro Context Export

For ChatGPT sessions that can't call MCP tools:

User: "Export pro context for this workspace"

ChatGPT writes .ai-bridge/pro-context.md with:

  • AGENTS.md instructions
  • Git status and diff
  • File tree
  • Current .ai-bridge state

Copy/paste this into a new ChatGPT session.

Configuration

Config File: .codexpro-config.json

{
  "workspace": "/absolute/path/to/project",
  "token": "generated-random-token",
  "port": 3456,
  "tunnel": "cloudflare",
  "toolMode": "standard",
  "writeMode": "allow",
  "bashMode": "safe",
  "maxFileReadBytes": 524288,
  "allowedBashCommands": [
    "npm test",
    "git status",
    "eslint ."
  ]
}

Environment Variables

# Tunnel configuration
export NGROK_AUTHTOKEN=your_token
export NGROK_DOMAIN=your-subdomain.ngrok-free.app
export CLOUDFLARE_TUNNEL_NAME=codexpro-tunnel

# Safety controls
export CODEXPRO_WRITE_MODE=allow          # allow | off
export CODEXPRO_BASH_MODE=safe            # safe | off
export CODEXPRO_TOOL_MODE=standard        # minimal | standard | full

# Widget rendering (for app submission)
export CODEXPRO_WIDGET_DOMAIN=https://your-widgets-domain.com

Safety Defaults

Write protection:

  • Only writes inside configured workspace
  • Blocks: node_modules/, .git/, .env*, *.key, *.pem
  • Set CODEXPRO_WRITE_MODE=off to disable all writes

Bash allowlist (safe mode):

[
  "npm test", "npm run test", "npm run lint",
  "git status", "git diff", "git log",
  "node --version", "npm --version",
  "cat package.json", "ls -la"
]

Custom commands:

export CODEXPRO_ALLOWED_BASH_COMMANDS='["make test","cargo check"]'

Set CODEXPRO_BASH_MODE=off to disable bash entirely.

Tool Reference

Standard Mode Tools (Default)

Workspace:

  • open_current_workspace - Open default workspace (safest first call)
  • open_workspace - Open by path, returns git status, AGENTS.md, discovered skills

File operations:

  • read - Read files with line numbers
  • write - Create/overwrite files, returns diff
  • edit - Exact text replacement, returns diff
  • tree - Inspect file structure
  • search - Code search with ripgrep

Execution:

  • bash - Run allowlisted commands
  • show_changes - Visual review card with git status/diff

Handoff/Export:

  • handoff_to_agent - Write .ai-bridge/current-plan.md
  • export_pro_context - Write .ai-bridge/pro-context.md
  • read_handoff - Read .ai-bridge files
  • load_skill - Load discovered SKILL.md instructions

Server:

  • server_config - Show safety settings and limits

Minimal Mode (--tool-mode minimal)

Only: server_config, open_current_workspace, open_workspace, read, write, edit, bash, show_changes

Full Mode (--tool-mode full)

Adds debugging/compatibility tools:

  • codexpro_inventory - List discovered skills and MCP servers
  • list_workspaces - Show opened workspaces
  • workspace_snapshot - Full project status
  • git_status, git_diff - Granular git inspection
  • codex_context - Load Codex-style context in one call
  • handoff_to_codex - Legacy handoff wrapper

Real-World Examples

Example 1: Add Feature with ChatGPT

User: "Open my current workspace"
→ ChatGPT calls open_current_workspace, shows project card

User: "Add a /health endpoint to src/server.js"
→ ChatGPT reads src/server.js
→ ChatGPT edits it with new route
→ Shows diff card

User: "Test it"
→ ChatGPT calls bash with "npm test"
→ Shows test output

Example 2: Handoff to OpenCode

Terminal setup:

# Terminal 1
codexpro start --mode handoff

# Terminal 2
codexpro watch-handoff \
  --agent opencode \
  --model anthropic/claude-3.5-sonnet \
  --yes \
  --poll-interval-ms 2000

ChatGPT conversation:

User: "Refactor the auth module to use async/await. Create a plan and hand off to OpenCode."

→ ChatGPT analyzes code
→ Writes .ai-bridge/current-plan.md with:
  - Goal
  - Files to modify
  - Step-by-step instructions
  - Verification commands

→ Watcher detects new plan
→ Runs: opencode --model anthropic/claude-3.5-sonnet --task-file .ai-bridge/current-plan.md

→ OpenCode executes locally
→ Writes: .ai-bridge/agent-status.md, .ai-bridge/implementation-diff.patch

Review:

cat .ai-bridge/agent-status.md
git diff

Example 3: Custom Agent Handoff

Custom agent script (agent.js):

#!/usr/bin/env node
const fs = require('fs');
const path = require('path');

const taskFile = process.argv.find(arg => arg.startsWith('--task-file='))?.split('=')[1];
if (!taskFile) {
  console.error('Missing --task-file');
  process.exit(1);
}

const plan = fs.readFileSync(taskFile, 'utf8');
console.log('Custom agent executing plan:', plan);

// Your agent logic here
// Read plan, execute changes, write status

fs.writeFileSync('.ai-bridge/agent-status.md', `# Custom Agent Status\n\nCompleted: ${new Date().toISOString()}`);

Watch for plans:

codexpro watch-handoff \
  --agent custom \
  --command "node ./agent.js --task-file {{plan_file}}" \
  --yes

Example 4: Export Context for Pro Model

ChatGPT can't call MCP tools:

User: "Export pro context"
→ ChatGPT writes .ai-bridge/pro-context.md with:
  - AGENTS.md instructions
  - Git status, diff stats
  - File tree
  - .ai-bridge state

Use in new session:

cat .ai-bridge/pro-context.md
# Copy content, paste into new ChatGPT Pro session

Troubleshooting

ChatGPT Says "Server Offline"

# Check server is running
curl http://localhost:3456/health

# Restart with tunnel
codexpro start --tunnel ngrok

# Verify token matches
cat .codexpro-config.json
# Compare token in ChatGPT app settings

Write/Edit Not Working

# Check write mode
codexpro start
# Should show: Write mode: allow

# Check file not blocked
# Blocked: node_modules/, .git/, .env*, *.key, *.pem

# Enable writes if disabled
export CODEXPRO_WRITE_MODE=allow
codexpro start

Bash Commands Failing

# Check bash mode
codexpro start
# Should show: Bash mode: safe

# Add custom command to allowlist
export CODEXPRO_ALLOWED_BASH_COMMANDS='["make test","npm run build"]'

# Or disable bash restriction (caution)
export CODEXPRO_BASH_MODE=off

Handoff Watcher Not Executing

# Check watcher is running
codexpro watch-handoff --agent opencode --dry-run

# Verify plan file exists and is new
cat .ai-bridge/current-plan.md

# Check state file
cat .ai-bridge/watch-handoff-state.json

# Force re-execution
rm .ai-bridge/watch-handoff-state.json
codexpro watch-handoff --agent opencode --once

Tunnel URL Changed

Ngrok free tier:

  • URL changes each restart unless you use a paid static domain

Solution:

# Get free static domain at ngrok.com
export NGROK_DOMAIN=your-subdomain.ngrok-free.app
codexpro start --tunnel ngrok

Cloudflare named tunnel:

cloudflared tunnel create codexpro-tunnel
export CLOUDFLARE_TUNNEL_NAME=codexpro-tunnel
codexpro start --tunnel cloudflare-named

Widget Cards Not Showing

# Refresh ChatGPT app
# Go to: ChatGPT → Settings → Apps → CodexPro Local → Refresh actions

# Check widget domain
export CODEXPRO_WIDGET_DOMAIN=https://rebel0789.github.io
codexpro start

Security Notes

  • CodexPro is not sandboxed. It gives ChatGPT write access to your workspace.
  • Use CODEXPRO_WRITE_MODE=off for read-only sessions.
  • Use CODEXPRO_BASH_MODE=safe to restrict shell commands.
  • Tunnel URLs are token-protected but public. Use firewall rules for extra safety.
  • Never expose .codexpro-config.json (contains auth token).
  • See SECURITY.md for full guide.

Integration Patterns

With Codex

# CodexPro for ChatGPT web planning
codexpro start

# Codex for local execution
codex execute .ai-bridge/current-plan.md

With CI/CD

// .github/workflows/test.yml
- name: Test with CodexPro plan
  run: |
    npm install -g codexpro
    codexpro execute-handoff --agent opencode --review-only
    cat .ai-bridge/agent-status.md

With Docker

FROM node:20
RUN npm install -g codexpro
WORKDIR /workspace
COPY . .
CMD ["codexpro", "start", "--tunnel", "none"]
docker run -p 3456:3456 -v $(pwd):/workspace codexpro-image

Further Resources


This skill enables agents to guide users through setting up and using CodexPro to bridge ChatGPT Developer Mode to local repositories via MCP, including normal coding, handoff workflows, and pro context export.

FAQ

What does the codexpro-chatgpt-local-agent skill do?

Use ChatGPT Developer Mode as a local coding agent for your repo through MCP

How do I install codexpro-chatgpt-local-agent?

Run npx skills add https://github.com/reason-machines/codex-skills --skill codexpro-chatgpt-local-agent in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/codexpro-chatgpt-local-agent/ (personal) or .claude/skills/codexpro-chatgpt-local-agent/ (project).

Which AI agents can use codexpro-chatgpt-local-agent?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is codexpro-chatgpt-local-agent safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains codexpro-chatgpt-local-agent?

It is published by reason-machines in reason-machines/codex-skills. It has 215 recorded installs.

More from reason-machines/codex-skills

View all →

academic-research-skills-codex

reason-machines/codex-skills

Open the skill to read its SKILL.md instructions.

codexplusplus-launcher

reason-machines/codex-skills

Enhanced launcher for Codex App that unlocks plugins, enables session deletion, exports conversations, and syncs provider sessions via CDP injection

Security286 installs

awesome-codex-subagents

reason-machines/codex-skills

A curated collection of 136+ specialized Codex subagents for development tasks across 10 categories

AI & Agents273 installs

codex-plugin-claude-code

reason-machines/codex-skills

Open the skill to read its SKILL.md instructions.

273 installs

oh-my-codex-workflow

reason-machines/codex-skills

Expert in Oh My Codex (OMX) - workflow layer for OpenAI Codex CLI with agents, skills, and team coordination

codexbar-menubar-ai-usage-tracker

reason-machines/codex-skills

Monitor AI coding assistant usage limits and token resets in the macOS menu bar with CodexBar

271 installs

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs