{"slug": "open-source-project-use-chatgpt-web-models-directly-in-codex", "title": "Open-source project: Use ChatGPT Web models directly in Codex", "summary": "An unofficial open-source project, codex-chatgpt-web, lets users run ChatGPT Web models directly inside OpenAI's Codex by routing selected tasks through a task-bound ChatGPT Temporary Chat via a local Responses bridge. The bridge exposes ChatGPT Web — Luna to Free and Go accounts, while accounts with the reasoning selector keep Instant, Medium, High, Extra High, and Pro tiers as their subscription allows, and full mode connects ChatGPT back to the same Codex task's tools over MCP. The project ships a cross-platform macOS, Windows, and Linux launcher that handles sign-in, model setup, health checks, and up to five visible task-bound browser tabs, and it states it is unofficial, with prompts still processed by OpenAI under the account's settings and Temporary Chat policy.", "body_md": "**Use ChatGPT Web (including Pro) as native Codex models.**\n\n  Change the model tier, save your workflow.\n\n[Troubleshooting](/miuuyy/codex-chatgpt-web/blob/main/TROUBLESHOOTING.md) · [Security](/miuuyy/codex-chatgpt-web/blob/main/SECURITY.md) · [Contributing](/miuuyy/codex-chatgpt-web/blob/main/CONTRIBUTING.md)\n\nFree and Go accounts get **ChatGPT Web — Luna** in Codex's native model picker. Accounts that\nexpose the reasoning selector keep **Instant**, **Medium**, **High**, **Extra High**, and **Pro** as\ntheir subscription allows. The bridge sends the current compiled Codex task context to a fresh\nChatGPT Temporary Chat, attaches images, and streams visible reasoning, tool activity, and Markdown\nback into the same Codex task.\n\n```\nCodex task ──Responses + SSE──▶ codex-chatgpt-web ──embedded browser──▶ ChatGPT\n     ▲                                │                                      │\n     └──────── native UI, context, images, tracing, and tool lifecycle ──────┘\n```\n\nCodex keeps the native task, context lifecycle, UI, and tool harness. The local Responses bridge routes only the selected model task through a task-bound ChatGPT Temporary Chat; in full mode, MCP connects ChatGPT back to the tools of that same Codex task until its next compaction boundary.\n\nTip\n\nI also built **[ChatGPT Persona Voice](https://github.com/miuuyy/ChatGPT-Persona-Voice)**, a local\napp that changes the ChatGPT/Codex voice in near real time. It never touches your account, browser\nsession, or ChatGPT requests, so using it carries no account-blocking risk. If you like my work,\ngive it a try.\n\n- **Native Codex models.** ChatGPT Web runs from Codex's model picker while the original task UI,\ncontext lifecycle, streaming, tracing, and tool presentation stay intact.\n- **The full Codex harness over MCP.** Full mode gives every effort exposed by the signed-in account,\nincluding Pro, the active task's filesystem, shell, images, approvals, and configured tools/apps.\n- **Continuous task sessions and native compaction.** Sequential messages reuse one task-bound\nTemporary Chat. At the context boundary, the retained agent writes the checkpoint before Codex\nstarts a clean chat; if that chat was closed, canonical Codex history supplies the fallback.\n- **One cross-platform launcher.** The macOS, Windows, and Linux app owns sign-in, model setup, MCP\nguidance, health checks, safe diagnostics, and up to five visible task-bound browser tabs.\n- **Fail-closed behavior.** Missing models, tools, or changed ChatGPT UI produce explicit errors\ninstead of silently switching route or capability. End-to-end coverage is documented in[release validation](/miuuyy/codex-chatgpt-web/blob/main/docs/release-validation.md) .\n\nTemporary Chat is a ChatGPT privacy mode, not anonymity or local-only inference: prompts are still\nprocessed by OpenAI and are subject to the account's settings and OpenAI's\n[Temporary Chat policy](https://help.openai.com/en/articles/8914046-temporary-chat-faq). This project\nis unofficial; users remain responsible for complying with applicable OpenAI terms and workspace\npolicies.\n\nInstall or update the desktop launcher. To update or repair an existing installation, quit the launcher and run the same command again; it replaces the application and embedded runtime while preserving the ChatGPT profile and launcher configuration.\n\n**macOS or Linux**\n\n```\ncurl -fsSL https://github.com/miuuyy/codex-chatgpt-web/releases/latest/download/install-launcher.sh | sh\n```\n\n**Windows PowerShell**\n\n```\nirm https://github.com/miuuyy/codex-chatgpt-web/releases/latest/download/install-launcher.ps1 | iex\n```\n\nThen complete the three checks in the app:\n\n1. Sign in directly in the launcher's embedded ChatGPT browser. Login pages and identity-provider windows stay inside the same launcher-owned private browser profile; no session is copied between browsers.\n2. Run the browser smoke test.\n3. Press **Install models** , restart Codex once, and select a**ChatGPT Web — …** model.\n\nThe launcher detects the current account's ChatGPT controls during setup: Free/Go accounts expose\nonly Luna, while Pro appears only when the signed-in account exposes it. The separate **MCP** page\nis optional and guides the full-harness setup without terminal commands.\n\nThe packaged launcher keeps sign-in and ChatGPT model turns in its embedded browser. It needs no model API key, installed Chrome/Chromium, system Node/Bun, or project-managed browser download.\n\n**Run from source**\n\n```\ngit clone https://github.com/miuuyy/codex-chatgpt-web.git && \\\ncd codex-chatgpt-web && \\\nbun run app\n```\n\nThis source path requires Bun 1.4.0. The command installs locked dependencies and opens the app.\n\n| Mode | Models | Local Codex tools | Extra setup | \n|---|---|---|---|\n| **Browser-only** | Free/Go: Luna; Plus: Instant–High; Pro: adds Extra High and Pro | No; Codex shows a warning | None | \n| **Full harness (With Automation)** | Free/Go: Luna; Plus: Instant–High; Pro: adds Extra High and Pro | Yes for every listed effort, including Pro | OpenAI tunnel + ChatGPT connector | \n| **Zero Risk** | Choose the ChatGPT model and effort manually; optional Pro-sized context | Yes; the full turn-bound Codex harness remains available | Separate OpenAI tunnel + `Codex Zero Risk` connector; paste and send manually | \n\nEach automatic picker entry has one fixed ChatGPT mode. Codex still displays its built-in Effort and Speed rows, but changing them cannot silently change the selected browser model. In automatic Full mode every available effort receives the same turn-bound MCP capability. Pro has no separate restriction or reduced tool contract.\n\nZero Risk keeps the local Responses bridge and full Codex harness, but never reads or changes the\nChatGPT page and never sends a prompt for you. The launcher prepares and copies the prompt; you\nchoose the model, effort, and `Codex Zero Risk` connector, then paste and send it yourself. This\nremoves the account risk specifically associated with ChatGPT web automation.\n\nFull mode connects ChatGPT's tool calls back to the current Codex task through the official\n[OpenAI tunnel-client](https://github.com/openai/tunnel-client). The tunnel is outbound: it does\nnot expose a public IP, open an inbound port, or require router forwarding.\n\nThe launcher's **MCP** page guides the complete setup. For the exact clicks, see the\n[video walkthroughs](/miuuyy/codex-chatgpt-web/blob/main/TROUBLESHOOTING.md).\n\n**Limits**\n\nSee [Limits](https://github.com/miuuyy/codex-chatgpt-web/discussions/309) for the current\nChatGPT message allowances for **GPT-5.6 Sol Pro** and **GPT-6 Astra**. Context limits depend on\nthe account type and selected effort. Plus Medium/High uses a measured 90,000-token window, or\nup to 270,000 tokens with experimental **3× context** enabled, with native Codex compaction\nsupported throughout.\n\n1. Finish the required setup, open **MCP** , create the Tunnel and regular API key, then press**Connect harness** .\n2. Enable ChatGPT **Developer Mode** and create a new Tunnel connector named exactly**Codex Native2** , with**Authentication: None** and**Allow all actions** .\n3. Run **Verify runtime** to confirm that**Codex Native2** is attached and available.\n\nWrite/modify actions also require the ChatGPT workspace and its administrator policy to permit\nthem. See\n[developer mode and MCP apps](https://help.openai.com/en/articles/12584461-developer-mode-and-mcp-apps-in-chatgpt).\nUnexpected approval prompts fail closed unless `--auto-approve-tool-calls` is explicitly enabled;\nthat option clicks **Allow once**, never a permanent grant.\n\nUse **Activity** for safe local diagnostics and **Settings → Run doctor** for end-to-end health.\nSettings can also cancel a retained browser turn or remove the Codex integration before uninstall.\nSet `CODEX_CHATGPT_WEB_BROWSER_DIAGNOSTICS=1` only when every browser checkpoint needs a screenshot.\n\nNew installs use **Compatibility V1** for cross-backend subagents. **Native** preserves Codex's own\nfeature settings and enables plaintext Web-to-Web V2 delegation. Restart Codex and start a new task\nafter changing the protocol:\n\n```\ncodex-chatgpt-web subagents status\ncodex-chatgpt-web subagents compatibility-v1\ncodex-chatgpt-web subagents native\n```\n\n- This is unofficial browser automation, not an OpenAI API. ChatGPT UI changes can break selectors; drift fails explicitly instead of silently switching model or transport.\n- Browser state is a sensitive login artifact, and the loopback listener is reachable by processes running as the same local user. Never share the launcher profile; use a trusted workstation.\n- Release packages currently target macOS 13+ (arm64/x64), Windows x64, and Linux x64. Runtime,\ntests, and packaging are gated on all three in CI; account-bound browser and MCP flows use the\nseparate [release validation](/miuuyy/codex-chatgpt-web/blob/main/docs/release-validation.md) .\n- Builds are not yet platform-signed, so Gatekeeper or SmartScreen may warn. The installers verify the published SHA-256 manifest before installation.\n\nRead the complete [architecture](/miuuyy/codex-chatgpt-web/blob/main/docs/architecture.md) and\n[security model](/miuuyy/codex-chatgpt-web/blob/main/docs/security-model.md) before enabling full mode. Report vulnerabilities through\n[SECURITY.md](/miuuyy/codex-chatgpt-web/blob/main/SECURITY.md).\n\n```\nbun run app\nbun run dev:launcher\nbun run src/cli.ts dev status\nbun run dev:chat compaction-lab \"Reply with exactly: DEV READY\"\nbun run verify\nbun run smoke:subagents\nbun run app:package\n```\n\n`dev:launcher` starts a second launcher profile under `~/.codex-chatgpt-web-dev`: separate Electron\nstate, browser cookies/login, ChatGPT account, configuration, sandboxed `CODEX_HOME`, chats,\ndiagnostics, broker, and tunnel profile. It can run beside the normal launcher and never starts a\nResponses daemon or changes Codex. Optional Full setup starts and supervises only its isolated MCP\ntunnel, using the distinct ChatGPT connector name `Codex Native2 DEV`.\n\n`dev:chat` is a named, persistent synthetic outer-Codex harness. It executes the current working\ntree through that isolated launcher browser, Temporary Chat, prompt compiler, Responses parser, and\ncompaction handlers. Optional Full setup also exercises the MCP connector and broker; tool effects\nare explicit simulation receipts. Browser-only chats expose no outer tools. It does\nnot open a Responses listener, change `openai_base_url`, stop the live daemon, or claim port 17841.\nRun it without a message for `/status`, `/fill 30000`, `/compact`, `/model`, and `/reset` commands.\nSign in and initialize the profile once inside the window labelled **DEV**. Configure optional Full\nharness only for simulated tool rounds; its launcher keeps the DEV tunnel ready while named chats\nattach their broker on demand. Production credentials and the `Codex Native2` connector are never\nreused implicitly. See\n[DEV chat harness](/miuuyy/codex-chatgpt-web/blob/main/docs/dev-chat.md).\n\nThis is independent software and is not affiliated with or endorsed by OpenAI. Use it only with\nyour own account and in accordance with applicable [Terms of Use](https://openai.com/policies/terms-of-use/)\nand workspace policies; it does not bypass authentication or access controls.\n\nHaving trouble? See [Troubleshooting](/miuuyy/codex-chatgpt-web/blob/main/TROUBLESHOOTING.md) for common problems and their solutions.", "url": "https://wpnews.pro/news/open-source-project-use-chatgpt-web-models-directly-in-codex", "canonical_source": "https://github.com/miuuyy/codex-chatgpt-web", "published_at": "2026-09-14 07:27:15+00:00", "updated_at": "2026-09-14 07:32:20.804103+00:00", "lang": "en", "topics": ["ai-tools", "ai-products", "developer-tools", "ai-agents", "large-language-models"], "entities": ["ChatGPT", "Codex", "OpenAI", "codex-chatgpt-web", "ChatGPT Web — Luna", "MCP", "ChatGPT Persona Voice", "Temporary Chat"], "alternates": {"html": "https://wpnews.pro/news/open-source-project-use-chatgpt-web-models-directly-in-codex", "markdown": "https://wpnews.pro/news/open-source-project-use-chatgpt-web-models-directly-in-codex.md", "text": "https://wpnews.pro/news/open-source-project-use-chatgpt-web-models-directly-in-codex.txt", "jsonld": "https://wpnews.pro/news/open-source-project-use-chatgpt-web-models-directly-in-codex.jsonld"}}