Local coding tools for ChatGPT, scoped to one repo.
Requirements:
- Node.js 20+
- A ChatGPT account with Apps / Developer Mode access
- One HTTPS route to your local machine when connecting ChatGPT from the web
Install the CLI:
npm install -g codexproRun setup inside the repo you want ChatGPT to work on:
cd /path/to/your/repo
codexpro setupCodexPro prints and copies the Server URL. In ChatGPT, open:
Settings -> Apps -> Advanced settings -> Create app
Paste the Server URL and choose Authentication: No Authentication / None.
CodexPro uses its own URL token.
Daily use from the same repo:
codexpro startCodexPro starts a local MCP server for the current workspace. ChatGPT can then:
- read files and inspect the repo
- search code
- make scoped edits with
write,edit, or guardedapply_patch - run safe verification commands through
bash - review changed files with
show_changes - write handoff plans under
.ai-bridge - export a selected context bundle for model surfaces that cannot call tools
CodexPro is not a hosted service, model proxy, quota bypass, account pool, or OS sandbox. It connects your own ChatGPT session to your own local repo through the official Developer Mode / MCP app path.
codexpro setup
codexpro start
codexpro start --root /path/to/repo
codexpro doctor
codexpro settingsUseful modes:
codexpro start --no-bash
codexpro start --tool-mode minimal
codexpro start --tool-mode full
codexpro start --mode handoff
codexpro start --mode proTool cards are opt in:
CODEXPRO_TOOL_CARDS=1 codexpro startChatGPT web needs a public HTTPS Server URL. CodexPro supports:
- Fast demo URL:
codexpro start --tunnel cloudflare - Stable ngrok domain:
codexpro ngrok --hostname your-domain.ngrok-free.dev - Stable Cloudflare route:
codexpro stable --hostname codexpro.example.com --tunnel-name codexpro - Tailscale Funnel:
codexpro tailscale --hostname your-device.your-tailnet.ts.net - Local only:
codexpro start --tunnel none
Cloudflare quick tunnels honor HTTPS_PROXY, ALL_PROXY, or HTTP_PROXY when those env vars are set.
Stable modes should use a stable CodexPro token:
codexpro tailscale \
--hostname your-device.your-tailnet.ts.net \
--token keep-this-token-stableTailscale Funnel must already be allowed for your tailnet. It requires MagicDNS, HTTPS certificates, and Funnel policy support. CodexPro runs:
tailscale funnel http://127.0.0.1:8787Then ChatGPT uses:
https://your-device.your-tailnet.ts.net/mcp?codexpro_token=keep-this-token-stable
- Public tunnel mode requires a CodexPro HTTP token.
- Generic writes are hidden unless
CODEXPRO_WRITE_MODE=workspace. - Safe bash blocks broad shell patterns and secret/build/cache paths.
apply_patchis workspace-scoped and rejects blocked paths, symlink patches, and secret-looking patch content.show_changeskeeps a review checkpoint so repeated unchanged reviews collapse.- Tool-card metadata is off unless
CODEXPRO_TOOL_CARDS=1.
Read SECURITY.md before exposing CodexPro through any tunnel.
CodexPro can reduce what it sends to ChatGPT. Current local fixes:
- binary-file checks scan with a reusable 64 KiB buffer instead of allocating the whole file
- ChatGPT tool-card structured payloads are compacted only for card output, not for normal tool data
- bash chat transcripts stay compact by default
That helps avoid oversized MCP/card payloads. It does not force Chrome, ChatGPT, or an old browser iframe to release memory that the client already holds. If the browser tab has already grown, reload the ChatGPT page or restart the browser.
CodexPro uses explicit files, not hidden chat memory:
AGENTS.md
.ai-bridge/current-plan.md
.ai-bridge/agent-status.md
.ai-bridge/decisions.md
.ai-bridge/open-questions.md
.ai-bridge/execution-log.jsonl
For non-tool model surfaces:
codexpro start --mode proOr from a local checkout:
codexpro pro-bundle --root /path/to/repo --copy
codexpro pro-apply --root /path/to/repo --file plan.mdChatGPT can write a plan without executing a local agent:
codexpro start --mode handoffThen you run execution locally:
codexpro execute-handoff --agent codex --yes
codexpro watch-handoff --agent codex --yeshandoff_to_agent is planning-only over MCP. CodexPro does not expose arbitrary local agent execution as a remote ChatGPT tool.
Run:
codexpro doctorCommon fixes:
- Quick tunnel URL changed: rerun
codexpro startand update the ChatGPT app Server URL. - Stable URL does not respond: check the tunnel provider first, then the CodexPro token.
- ChatGPT cannot call tools in one model/chat: switch to a ChatGPT surface that supports Developer Mode app actions.
- Local port is busy: start another repo with
--port 8788. - Tool list looks stale: create a new ChatGPT app entry or change the connector URL token.
npm install
npm run build
npm run smoke
npm run stressUseful release checks:
npm run build
npm run smoke
CODEXPRO_TOOL_CARDS=1 npm run smoke
npm audit --audit-level=high
npm pack --dry-run
git diff --check