Shimex sits between Codex Desktop and any LLM provider — Anthropic, DeepSeek, Ollama, LM Studio, Cloudflare Workers AI, ClinePass — behind an OpenAI-compatible HTTP daemon. Your original Codex install is never modified.
http://127.0.0.1:18765/admin./Applications/Codex.app into a managed Shimex.app with an isolated profile and model catalog. The original Codex app stays untouched.http://127.0.0.1:18765/v1: /v1/chat/completions, /v1/responses, /v1/models, and a Codex picker catalog..env and are referenced via auth: { type: env, name: … }.Shimex is a local gateway. It does not add a usage meter or hosted subscription layer.
Run the Shimex daemon and managed Codex app on your machine.
Use your own API keys, ClinePass session, LM Studio server, Ollama models, or other configured endpoints.
macOS with Codex Desktop installed at /Applications/Codex.app, Node 20+, npm 10+.
git clone <repo-url> ~/Projects/shimex
cd ~/Projects/shimex
npm install
cp .env.example .env # add your API keys; .env is git-ignored
npm start # prepares Shimex.app, launches the daemon at :18765
Then open the managed Shimex.app and the admin UI at http://127.0.0.1:18765/admin.
Run Shimex from npm. These commands manage the daemon, inspect health, and list configured provider models.
npm run status # PID, log path, health
npm run shimex -- doctor # prerequisite check
npm run shimex -- providers list # configured providers
npm run shimex -- models list # discovered models
Shimex is configured by shimex.yml and a local git-ignored .env. The managed app copy, isolated Codex profile, model catalog, and local gateway are all created from those files.
Shimex copies Codex Desktop into a managed app and points that copy at the local gateway.
Adapters translate provider-specific request, response, model, and streaming behavior into Codex-ready shapes.
No. Shimex creates a managed app copy and isolated profile so the original Codex Desktop installation stays untouched.
Shimex can route to ClinePass, DeepSeek, LM Studio, Cloudflare Workers AI, Anthropic, Ollama, Cursor Composer, OpenAI-compatible endpoints, and other configured providers.
Provider secrets live in a local .env file that is ignored by git. shimex.yml references those secrets by environment variable name.