{"id":49725845,"url":"https://github.com/veath/codexfast","last_synced_at":"2026-06-05T04:00:51.591Z","repository":{"id":352560751,"uuid":"1215573682","full_name":"Veath/codexfast","owner":"Veath","description":"codexfast: enable Fast mode, /fast, Speed menu, and Plugins in OpenAI Codex.app for custom API users on macOS","archived":false,"fork":false,"pushed_at":"2026-06-02T02:31:47.000Z","size":1262,"stargazers_count":32,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-02T04:16:09.388Z","etag":null,"topics":["cli","codex","codex-app","codex-fast","codex-plugins","codexfast","custom-api","developer-tools","electron-asar","fast-mode","macos","npm-cli","openai-codex","patch-script","plugins","shell-script"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/codexfast","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Veath.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-20T03:42:44.000Z","updated_at":"2026-06-02T02:31:50.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Veath/codexfast","commit_stats":null,"previous_names":["veath/codexfast"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/Veath/codexfast","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Veath%2Fcodexfast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Veath%2Fcodexfast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Veath%2Fcodexfast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Veath%2Fcodexfast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Veath","download_url":"https://codeload.github.com/Veath/codexfast/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Veath%2Fcodexfast/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33928631,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-05T02:00:06.157Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","codex","codex-app","codex-fast","codex-plugins","codexfast","custom-api","developer-tools","electron-asar","fast-mode","macos","npm-cli","openai-codex","patch-script","plugins","shell-script"],"created_at":"2026-05-09T04:04:31.433Z","updated_at":"2026-06-05T04:00:51.579Z","avatar_url":"https://github.com/Veath.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# codexfast - runtime patches for OpenAI Codex.app\n\n[中文说明](./README.zh-CN.md)\n\n**A macOS runtime launcher for OpenAI `Codex.app` that re-enables hidden custom API features on verified compatible builds without modifying the installed app bundle.**\n\n`codexfast` launches Codex with temporary runtime patches for the current session. It keeps the original `app.asar`, `Info.plist`, app bundle, and app signature untouched.\n\n- **Fast settings** control in Settings\n- **Composer `/fast`** slash command\n- **Speed submenu** in the composer\n- **GPT-5.5** model-list compatibility for custom-API users where the supported build still needs it\n- **Plugins access** for custom-API users\n\n```bash\nnpx codexfast launch\n```\n\nVerified for `Codex.app` `26.602.30954` (`build 3575`), `26.601.21317` (`build 3511`), `26.527.60818` (`build 3437`), `26.527.31326` (`build 3390`), `26.519.81530` (`build 3178`), `26.519.41501` (`build 3044`), `26.519.31651` (`build 3017`), `26.519.22136` (`build 3003`), `26.513.31313` (`build 2867`), `26.513.20950` (`build 2816`), `26.506.31421` (`build 2620`), `26.506.21252` (`build 2575`), `26.429.61741` (`build 2429`), `26.429.30905` (`build 2345`), `26.429.20946` (`build 2312`), `26.422.71525` (`build 2210`), `26.422.62136` (`builds 2180, 2176`), `26.422.30944` (`build 2080`), `26.422.21637` (`build 2056`), `26.417.41555` (`build 1858`), and `26.415.40636` (`build 1799`). Feature scope: [`docs/feature-scope.md`](./docs/feature-scope.md).\n\n## How It Works\n\n`Codex.app` already contains the Fast, `/fast`, Speed, model-list, and Plugins UI paths in its packaged frontend bundle, but some of those paths are hidden or disabled for custom API users by local gate checks. `codexfast` does not add a backend service or call a private OpenAI API.\n\n`codexfast launch` starts Codex with a local Chrome DevTools Protocol endpoint, attaches through the browser-level CDP target before renderer JavaScript runs, intercepts matching renderer JavaScript responses for that launched session, and applies narrow patch rules in memory. Keep the `codexfast launch` process running while you use Codex; Settings and Plugins load some feature chunks lazily, so the runtime interceptor must stay attached after the first window appears.\n\nThe launcher sends a lightweight browser-level CDP heartbeat, tries up to three bounded reconnects if the runtime patch session drops, and reports `Runtime patch session lost` instead of silently continuing unpatched. If the launch process exits or the runtime patch session disconnects after Codex has started, Codex keeps running. Lazy-loaded features that were not patched before that point may stay unavailable until you fully quit Codex and relaunch with `codexfast`.\n\nIf an older codexfast version installed the launchd auto-repair watcher, `launch` removes that legacy watcher before starting Codex.\n\n## Usage\n\nmacOS only. Requires `Codex.app` at `/Applications` and Node.js `\u003e=18.12.0`.\n\nRecommended runtime launch:\n\n```bash\nnpx codexfast launch\n```\n\nOr from a clone of this repo:\n\n```bash\n./bin/codexfast launch\n```\n\nPrint help or the installed package version:\n\n```bash\nnpx codexfast help\nnpx codexfast version\n```\n\nThe interactive menu exposes the same launch path:\n\n```text\n1) Launch Codex with runtime patches\nq) Quit\n```\n\n### Command Reference\n\n| Command | Purpose |\n| --- | --- |\n| `npx codexfast launch` | Launch Codex with runtime patches for the current foreground session. Keep this command running while you use Codex. |\n| `npx codexfast help` | Show help. |\n| `npx codexfast version` | Print the codexfast version. |\n\n## Compatibility\n\nThe script matches code signatures in frontend build output, so it can break after a Codex update.\n\n- `launch` is blocked unless the installed version/build is whitelisted\n- Runtime launch does not rewrite `app.asar`, `Info.plist`, the app bundle, backups, the app signature, or macOS privacy permissions\n- The GPT-5.5 model-list patch only injects the UI catalog entry on supported builds that still need it. Your configured provider must still support `gpt-5.5`\n- For Plugins, the script removes the custom-API gates needed to open the Plugins sidebar/page path on supported builds. Actual plugin behavior can still depend on plugin state, connector runtime behavior, or admin restrictions\n\n## Troubleshooting\n\n**Script fails immediately** - check `/Applications/Codex.app` exists and `node -v` reports `18.12.0` or later.\n\n**Runtime launch shows `Codex failed to start` / `ERR_FAILED`** - fully quit Codex and rerun the latest `npx codexfast launch`. A failed runtime launch should not modify `app.asar`, `Info.plist`, the app bundle, backups, the app signature, or macOS privacy permissions.\n\n**Settings Fast or Plugins content is still missing after `launch`** - confirm the `codexfast launch` terminal process is still running. Closing it ends CDP interception, so lazy-loaded Settings and Plugins chunks cannot be patched later in the session.\n\n**Runtime patch session lost after reconnect attempts** - Codex keeps running, but no further lazy-loaded chunks can be patched by that launch process. Fully quit Codex and rerun `npx codexfast launch` when you need a fresh patched session.\n\n**Plugins visible but a specific plugin is still unusable** - codexfast only removes known local custom-API gates. Remaining failures usually come from plugin state, connector runtime behavior, or admin-side restrictions.\n\n**GPT-5.5 visible but requests fail** - the UI entry is present, but your custom API provider still needs to accept `model: \"gpt-5.5\"`.\n\n**An older auto-repair watcher was installed** - run `npx codexfast launch` once. The launcher removes `~/Library/LaunchAgents/com.codexfast.watcher.plist` and the old local watcher runtime before starting Codex.\n\n## License\n\nMIT. See [`LICENSE`](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveath%2Fcodexfast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fveath%2Fcodexfast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveath%2Fcodexfast/lists"}