miuuyy/codex-chatgpt-web

TypeScript
macOSWindowsLinux

Use ChatGPT Web (including Pro) as a native model in the Codex app — with context, tools, streaming and images beyond Codex usage limits.

chatgptchatgpt-procodexmcpopenaiplaywrightresponses-apitypescriptfree-aiquickstart
Star Growth
Stars
4.9k
Forks
433
Weekly Growth
+2.5k
Issues
16
2k4k
Jul 26Jul 26Aug 26Sep 26
Artifactsnpm
README

ChatGPT Web for Codex

Use ChatGPT Web (including Pro) as native Codex models.
Change the model tier, save your workflow.

English · 简体中文 · 日本語

Troubleshooting · Security · Contributing

CI MIT license macOS arm64 and x64 Windows x64 Linux x64 Free AI with no API fees

Free and Go accounts get ChatGPT Web — Luna in Codex's native model picker. Accounts that expose the reasoning selector keep Instant, Medium, High, Extra High, and Pro as their subscription allows. The bridge sends the current compiled Codex task context to a fresh ChatGPT Temporary Chat, attaches images, and streams visible reasoning, tool activity, and Markdown back into the same Codex task.

A live ChatGPT Web turn using the native Codex harness

Codex task ──Responses + SSE──▶ codex-chatgpt-web ──embedded browser──▶ ChatGPT
     ▲                                │                                      │
     └──────── native UI, context, images, tracing, and tool lifecycle ──────┘

Codex 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.

[!TIP] I also built ChatGPT Persona Voice, a local app that changes the ChatGPT/Codex voice in near real time. It never touches your account, browser session, or ChatGPT requests, so using it carries no account-blocking risk. If you like my work, give it a try.

Highlights

  • Native Codex models. ChatGPT Web runs from Codex's model picker while the original task UI, context lifecycle, streaming, tracing, and tool presentation stay intact.
  • The full Codex harness over MCP. Full mode gives every effort exposed by the signed-in account, including Pro, the active task's filesystem, shell, images, approvals, and configured tools/apps.
  • Continuous task sessions and native compaction. Sequential messages reuse one task-bound Temporary Chat. At the context boundary, the retained agent writes the checkpoint before Codex starts a clean chat; if that chat was closed, canonical Codex history supplies the fallback.
  • One cross-platform launcher. The macOS, Windows, and Linux app owns sign-in, model setup, MCP guidance, health checks, safe diagnostics, and up to five visible task-bound browser tabs.
  • Fail-closed behavior. Missing models, tools, or changed ChatGPT UI produce explicit errors instead of silently switching route or capability. End-to-end coverage is documented in release validation.

Temporary Chat is a ChatGPT privacy mode, not anonymity or local-only inference: prompts are still processed by OpenAI and are subject to the account's settings and OpenAI's Temporary Chat policy. This project is unofficial; users remain responsible for complying with applicable OpenAI terms and workspace policies.

Quick start

Install 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.

macOS or Linux

curl -fsSL https://github.com/miuuyy/codex-chatgpt-web/releases/latest/download/install-launcher.sh | sh

Windows PowerShell

irm https://github.com/miuuyy/codex-chatgpt-web/releases/latest/download/install-launcher.ps1 | iex

Then complete the three checks in the app:

  1. 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.
  2. Run the browser smoke test.
  3. Press Install models, restart Codex once, and select a ChatGPT Web — … model.

The launcher detects the current account's ChatGPT controls during setup: Free/Go accounts expose only Luna, while Pro appears only when the signed-in account exposes it. The separate MCP page is optional and guides the full-harness setup without terminal commands.

The 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.

Run from source

git clone https://github.com/miuuyy/codex-chatgpt-web.git && \
cd codex-chatgpt-web && \
bun run app

This source path requires Bun 1.4.0. The command installs locked dependencies and opens the app.

Modes

Mode Models Local Codex tools Extra setup
Browser-only Free/Go: Luna; Plus: Instant–High; Pro: adds Extra High and Pro No; Codex shows a warning None
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
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

Each 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.

Zero Risk keeps the local Responses bridge and full Codex harness, but never reads or changes the ChatGPT page and never sends a prompt for you. The launcher prepares and copies the prompt; you choose the model, effort, and Codex Zero Risk connector, then paste and send it yourself. This removes the account risk specifically associated with ChatGPT web automation.

Full harness

Full mode connects ChatGPT's tool calls back to the current Codex task through the official OpenAI tunnel-client. The tunnel is outbound: it does not expose a public IP, open an inbound port, or require router forwarding.

The launcher's MCP page guides the complete setup. For the exact clicks, see the video walkthroughs.

Limits

See Limits for the current ChatGPT message allowances for GPT-5.6 Sol Pro and GPT-6 Astra. Context limits depend on the account type and selected effort. Plus Medium/High uses a measured 90,000-token window, or up to 270,000 tokens with experimental 3× context enabled, with native Codex compaction supported throughout.

  1. Finish the required setup, open MCP, create the Tunnel and regular API key, then press Connect harness.
  2. Enable ChatGPT Developer Mode and create a new Tunnel connector named exactly Codex Native2, with Authentication: None and Allow all actions.
  3. Run Verify runtime to confirm that Codex Native2 is attached and available.

Write/modify actions also require the ChatGPT workspace and its administrator policy to permit them. See developer mode and MCP apps. Unexpected approval prompts fail closed unless --auto-approve-tool-calls is explicitly enabled; that option clicks Allow once, never a permanent grant.

Operations

Use Activity for safe local diagnostics and Settings → Run doctor for end-to-end health. Settings can also cancel a retained browser turn or remove the Codex integration before uninstall. Set CODEX_CHATGPT_WEB_BROWSER_DIAGNOSTICS=1 only when every browser checkpoint needs a screenshot.

New installs use Compatibility V1 for cross-backend subagents. Native preserves Codex's own feature settings and enables plaintext Web-to-Web V2 delegation. Restart Codex and start a new task after changing the protocol:

codex-chatgpt-web subagents status
codex-chatgpt-web subagents compatibility-v1
codex-chatgpt-web subagents native

Limitations and security

  • 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.
  • 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.
  • Release packages currently target macOS 13+ (arm64/x64), Windows x64, and Linux x64. Runtime, tests, and packaging are gated on all three in CI; account-bound browser and MCP flows use the separate release validation.
  • Builds are not yet platform-signed, so Gatekeeper or SmartScreen may warn. The installers verify the published SHA-256 manifest before installation.

Read the complete architecture and security model before enabling full mode. Report vulnerabilities through SECURITY.md.

Development

bun run app
bun run dev:launcher
bun run src/cli.ts dev status
bun run dev:chat compaction-lab "Reply with exactly: DEV READY"
bun run verify
bun run smoke:subagents
bun run app:package

dev:launcher starts a second launcher profile under ~/.codex-chatgpt-web-dev: separate Electron state, browser cookies/login, ChatGPT account, configuration, sandboxed CODEX_HOME, chats, diagnostics, broker, and tunnel profile. It can run beside the normal launcher and never starts a Responses daemon or changes Codex. Optional Full setup starts and supervises only its isolated MCP tunnel, using the distinct ChatGPT connector name Codex Native2 DEV.

dev:chat is a named, persistent synthetic outer-Codex harness. It executes the current working tree through that isolated launcher browser, Temporary Chat, prompt compiler, Responses parser, and compaction handlers. Optional Full setup also exercises the MCP connector and broker; tool effects are explicit simulation receipts. Browser-only chats expose no outer tools. It does not open a Responses listener, change openai_base_url, stop the live daemon, or claim port 17841. Run it without a message for /status, /fill 30000, /compact, /model, and /reset commands. Sign in and initialize the profile once inside the window labelled DEV. Configure optional Full harness only for simulated tool rounds; its launcher keeps the DEV tunnel ready while named chats attach their broker on demand. Production credentials and the Codex Native2 connector are never reused implicitly. See DEV chat harness.

Star History

Star History Chart

Disclaimer

This is independent software and is not affiliated with or endorsed by OpenAI. Use it only with your own account and in accordance with applicable Terms of Use and workspace policies; it does not bypass authentication or access controls.

Having trouble? See Troubleshooting for common problems and their solutions.

Related repositories
NousResearch/hermes-agent

The agent that grows with you

PythonPyPIMIT Licenseaiai-agent
hermes-agent.nousresearch.com
242.1k49.7k
f/prompts.chat

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

HTMLawesomeOtherchatgptai
prompts.chat
169.4k21.8k
langflow-ai/langflow

Langflow is a powerful tool for building and deploying AI-powered agents and workflows.

PythonPyPIMIT Licensereact-flowchatgpt
langflow.org
154.3k10k
langchain-ai/langchain

The agent engineering platform.

PythonPyPIlibraryMIT Licenseaianthropic
docs.langchain.com/langchain/
145.7k24.3k
microsoft/generative-ai-for-beginners

21 Lessons, Get Started Building with Generative AI

Jupyter NotebooktutorialMIT Licenseaichatgpt
119.2k62.8k
ChatGPTNextWeb/NextChat

✨ Zero-config AI chat assistant. No API key needed — sign up and instantly chat with GPT-5, Claude 4, Gemini 2.5, DeepSeek & 100+ top models. Pay-as-you-go saves you more. Available on Web, iOS, macOS, Android, Linux, Windows.

TypeScriptnpmappMIT Licensechatgptnextjs
nextchat.club
88.7k59.1k
OpenHands/OpenHands

🙌 OpenHands: AI-Driven Development

TypeScriptnpmcliMIT Licenseagentartificial-intelligence
openhands.dev
86.3k11.3k
lobehub/lobehub

🤯 LobeHub is your Chief Agent Operator, organizing your agents into 7×24 operations by hiring, scheduling, and reporting on your entire AI team.

TypeScriptnpmskillOtherchatgptopenai
lobehub.com
82.3k15.9k
dair-ai/Prompt-Engineering-Guide

🐙 Guides, papers, lessons, notebooks and resources for prompt engineering, context engineering, RAG, and AI Agents.

MDXMIT Licensedeep-learningprompt-engineering
promptingguide.ai
78k8.6k
openai/openai-cookbook

Examples and guides for using the OpenAI API

Jupyter NotebooktutorialMIT Licenseopenaichatgpt
cookbook.openai.com
75.8k12.8k
unslothai/unsloth

Local UI to run and train LLMs and diffusion models. Supports GGUF, MLX, Qwen3.8, DeepSeek-V4, MiniMax-H3, Gemma 4, FLUX and more.

PythonPyPIApache License 2.0fine-tuningllama
unsloth.ai/docs
75.7k6.9k
binary-husky/gpt_academic

为GPT/GLM等LLM大语言模型提供实用化交互接口,特别优化论文阅读/润色/写作体验,模块化设计,支持自定义快捷按钮&函数插件,支持Python和C++等项目剖析&自译解功能,PDF/LaTex论文翻译&总结功能,支持并行问询多种LLM模型,支持chatglm3等本地模型。接入通义千问, deepseekcoder, 讯飞星火, 文心一言, llama2, rwkv, claude2, moss等。

PythonPyPIGNU General Public License v3.0academicchatglm-6b
github.com/binary-husky/gpt_academic/wiki/online
71.3k8.3k