Codex++ turns one desktop app into several provider profiles
Codex++ sits beside the official OpenAI Codex or ChatGPT desktop app. It starts that app, talks to it through Chromium DevTools Protocol and a local helper, then adds provider selection, protocol conversion, session actions, diagnostics, and interface controls. It does not modify app.asar or write patches into the official installation. That is a meaningful boundary, though it still depends on private-looking app surfaces such as page structure, local files, and renderer behavior.
The main README is Chinese, and the repository includes a substantial English translation. End users get 2 launch entries: Codex++ for starting the official app with saved settings, and Codex++ Manager for configuration. Release v1.2.53 provides Windows x64, macOS Intel, and macOS Apple Silicon packages. On macOS, the README warns that unsigned and unnotarized builds may be blocked by Gatekeeper.
Four provider modes solve a real configuration nuisance
The manager separates official login, official login plus API, pure API, and aggregate provider profiles. Each profile can select Responses or Chat Completions, models, context windows, automatic compaction limits, MCP servers, Skills, and Plugins. A local proxy can translate Chat Completions into the Responses shape Codex expects. Aggregate providers add failover and several rotation strategies, which is useful for people already managing multiple compatible endpoints.
Codex++ also tries to keep authentication boundaries understandable. Official state, mixed API credentials, and pure API credentials use different locations. The README says provider switching saves the current profile before writing the next one, and real keys remain on the local machine. That does not eliminate trust: this program reads and changes config.toml, auth.json, session databases, and provider metadata. Anyone installing it should treat the binary and update channel as credential-adjacent software.
What happened when we ran it
Our sandbox cloned commit 5026294, a 27 MB Rust repository with 327 files and about 117,979 source lines. Dependency installation succeeded in 31 seconds and installed 461 packages. The checkout had 3 CI workflow files, no Dockerfile, and no tests directory. Those signals describe a desktop application workspace rather than a container service or a project organized around a top-level integration-test folder.
The build ran for 212 seconds before failing with exit 101. Tauri's generate_context!() macro reported that frontendDist was configured as ../dist, but that path did not exist. The log also contained one unused-variable warning in the launcher, but the missing frontend directory was the compilation error. We did not see evidence in that tail that a system package, compiler version, or Rust dependency caused the failure.
Tests failed with exit 101 after 78 seconds for the same reason. Cargo compiled codex-plus-manager, reached the Tauri context generation in src/lib.rs, and stopped because the frontend output was absent. The README's development section lists npm ci, npm run check, and npm run vite:build inside the manager before the top-level Cargo commands. Our result makes that sequence a requirement, not an optional frontend check.
Session tools touch files worth backing up
Beyond provider switching, Codex++ scans local sessions, deletes them in batches, exports Markdown, tracks token usage, moves projects, and backs up provider metadata. It reads current databases under ~/.codex/sqlite, with a fallback to the older state_5.sqlite. Enhancements cover scroll restoration, conversation width, service tiers, Goals, Stepwise suggestions, user scripts, image overlays, and an unlocked plugin marketplace. Several injected settings need an app restart before they take effect.
That menu is attractive to a heavy Codex user, but it expands the blast radius of a bad update. On 2026-08-25, current reports included provider switching losing history or changing language, MCP turning off, plugin loading failures, and v1.2.53 conversations failing because a custom provider was missing from config.toml. These are user reports, not findings from our sandbox. They match the README's advice to keep backups before changing provider configuration or session data.
Same-day releases show speed and compatibility pressure
Release v1.2.53 and the last repository push both landed on 2026-08-25. GitHub listed 1,179 open issues and pull requests combined, while several new bug reports were updated that day. That pace makes abandonment an implausible concern. It also shows how quickly the tool must chase changes across Codex navigation, provider files, plugins, and the official desktop application's internals.
The AGPL-3.0 license is explicit, including corresponding-source duties for modified versions offered over a network. The README also separates that license from OpenAI and ChatGPT trademarks and assets. For an individual using official release packages, the harder decision is trust and compatibility. For a company modifying the manager or packaging it internally, license review belongs before deployment.
Codex++ earns a trial when the official app is already your daily workspace and repeated provider edits are the pain. Downloading a release is the practical route; building from source requires the frontend step our Cargo-only run lacked. Keep configuration and session backups, test a new release on nonessential work, and use official Codex alone if renderer injection or local credential access is unacceptable.

