ChatGPT Bridge is an open-source Codex plugin that uses your own signed-in ChatGPT web session in the Codex in-app browser to generate images and export the original assets into your local project.
It does not use an OpenAI API key, collect credentials, or copy browser cookies. You sign in directly on chatgpt.com inside the in-app browser.
- Generates one image or guides a coherent batch workflow of up to 9 independent images through ChatGPT. Actual availability and limits depend on the signed-in account and current ChatGPT product surface.
- Waits for the expected number of fresh images instead of accepting a partial batch.
- Exports original page assets rather than screenshots.
- Measures real dimensions and computes SHA-256 checksums.
- Detects missing outputs, duplicate files, and ratio mismatches, then records visual review status separately.
- Writes appendable manifests and a regeneration queue.
- Separates
Generated,Exported,Measured,Needs Review, andApprovedstates. - Guides first-time users through safe ChatGPT sign-in in the Codex in-app browser.
- Routes supported one-off text tasks into ChatGPT Temporary Chat while keeping image, research, batch, and iterative work in standard chats.
- Detects retryable ChatGPT response errors and performs one verified recovery instead of waiting until timeout.
Requirements:
- Codex desktop with plugin and in-app browser support.
- A ChatGPT account. Image availability and limits depend on that account's plan and current ChatGPT product behavior.
Add this repository as a Codex marketplace, then install the plugin:
codex plugin marketplace add yuyou-dev/ChatGPT-Bridge
codex plugin add chatgpt-bridge@chatgpt-bridgeVerify the marketplace and plugin are visible:
codex plugin marketplace list
codex plugin listThe output should include the chatgpt-bridge marketplace and
chatgpt-bridge@chatgpt-bridge plugin. Start a new Codex task after installation
so the new skill is loaded.
Ask Codex:
Use ChatGPT Bridge to generate one image and save the original locally.
ChatGPT Bridge opens https://chatgpt.com/ in the Codex in-app browser and checks whether the message composer is available.
If you are signed out:
- Sign in to your own ChatGPT account directly in the in-app browser.
- Complete password, passkey, CAPTCHA, or two-factor verification yourself on ChatGPT.
- Return to Codex and say that sign-in is complete.
- The plugin verifies that the composer is visible before it continues.
Never send a password or one-time code to Codex. The plugin does not read or export cookies, local storage, passwords, passkeys, or session tokens. See ChatGPT sign-in and privacy.
Use ChatGPT to generate a 3:4 editorial jewelry poster and save the original locally.
Generate exactly 9 independent training cards in one coherent visual system. Do not make a collage. Export all originals and report their actual dimensions.
Use this reference image in ChatGPT, generate three independent variations, and keep each result in Needs Review until I approve it.
For a small one-off text task, the plugin can open Temporary Chat:
Use Temporary Chat to rewrite this product title more concisely. I do not need the conversation history.
Ordinary image requests use a clean standard chat. If a user explicitly requests Temporary Chat for an image while that surface lacks image tools, the plugin blocks the incompatible request instead of silently changing modes.
The router uses ordered, conservative rules:
- explicit mode requests are honored unless they conflict with required existing context or an unsupported capability; conflicting explicit requests fail closed
- existing conversation/history/attachments use
reuse_current - image generation, 3-9 image batches, research, campaigns, and iterative work use
new_standard - supported one-turn, one-off text work can use
new_temporary - ambiguous requests default to a clean standard chat
When Temporary Chat is selected automatically but cannot be activated, the router may fall back to a clean standard chat. An explicit Temporary Chat request never falls back silently. Verify that the ChatGPT surface shows the Temporary Chat indicator when that mode matters.
Run the routing benchmark with:
npm run benchmark:routinggenerated-images/my-run/
image-01.png
image-02.png
manifest.json
The manifest includes counts, actual dimensions, requested ratio checks, checksums, job metadata, review status, and a regeneration queue. Temporary ChatGPT asset URLs are redacted by default.
Refresh the Git marketplace snapshot and reinstall the plugin:
codex plugin marketplace upgrade chatgpt-bridge
codex plugin add chatgpt-bridge@chatgpt-bridgeStart a new Codex task after updating.
To uninstall:
codex plugin remove chatgpt-bridge@chatgpt-bridge
codex plugin marketplace remove chatgpt-bridgeEach GitHub release contains:
chatgpt-bridge-plugin-vX.Y.Z.zip: the standalone plugin directory.chatgpt-bridge-marketplace-vX.Y.Z.zip: a local marketplace bundle that can be extracted and added withcodex plugin marketplace add /path/to/extracted-folder.
The Git marketplace command above is the recommended installation method.
Repository development requires Node.js 20 or newer. Building local release
packages also requires the zip command.
npm test
npm run validate
npm run packageRepository layout:
.agents/plugins/marketplace.json
plugins/chatgpt-bridge/
.codex-plugin/plugin.json
skills/chatgpt-task-router/SKILL.md
skills/chatgpt-image-generator/SKILL.md
scripts/chatgpt-bridge.mjs
scripts/
tests/
See Architecture, Troubleshooting, Contributing, and Security.
- Prompts and uploaded references are sent to ChatGPT because generation happens on
chatgpt.com. - Local manifests omit prompt text, conversation-specific URLs, absolute paths, and temporary image URLs by default. Explicit debug options can include sensitive details, so review manifests before sharing.
- This project is unofficial and is not affiliated with or endorsed by OpenAI.
- ChatGPT, OpenAI, and related marks belong to their respective owners. Use of ChatGPT is subject to its own terms, privacy policy, account limits, and availability.
MIT. See LICENSE.