Run OpenAI Codex CLI through Crazyrouter with one command.
Crazyrouter provides an OpenAI-compatible API endpoint, so Codex CLI can use Crazyrouter by setting the API key and base URL.
Important: API endpoints should not include UTM parameters. Use UTM only on human-facing links.
Open PowerShell as your normal user and run:
iwr -UseB https://raw.githubusercontent.com/xujfcn/crazyrouter-codex-cli/main/install-crazyrouter-codex.ps1 | iexOr download and double-click:
install-crazyrouter-codex.bat
curl -fsSL https://raw.githubusercontent.com/xujfcn/crazyrouter-codex-cli/main/install-crazyrouter-codex.sh | bashThe installer will:
- ask for your Crazyrouter API key
- save it as an environment variable
- configure Codex CLI to use
https://crazyrouter.com/v1 - back up your existing Codex config if one exists
npm install -g @openai/codexmacOS / Linux:
export OPENAI_API_KEY=sk-your-crazyrouter-key
export OPENAI_BASE_URL=https://crazyrouter.com/v1Windows PowerShell:
setx OPENAI_API_KEY "sk-your-crazyrouter-key"
setx OPENAI_BASE_URL "https://crazyrouter.com/v1"Restart your terminal after using setx.
codexcat >> ~/.zshrc << 'CONF'
# Codex CLI via Crazyrouter
export OPENAI_API_KEY=sk-your-crazyrouter-key
export OPENAI_BASE_URL=https://crazyrouter.com/v1
CONF
source ~/.zshrcIf you use Bash, write the same lines to ~/.bashrc instead.
setx OPENAI_API_KEY "sk-your-crazyrouter-key"
setx OPENAI_BASE_URL "https://crazyrouter.com/v1"Some Codex versions support provider configuration in %USERPROFILE%\.codex\config.toml on Windows or ~/.codex/config.toml on macOS/Linux.
model = "gpt-5.5"
model_provider = "crazyrouter"
[model_providers.crazyrouter]
name = "Crazyrouter"
base_url = "https://crazyrouter.com/v1"
env_key = "OPENAI_API_KEY"
wire_api = "chat"
[model_providers.crazyrouter.query_params]codex # default model from config
codex --model gpt-5.5 # Crazyrouter default recommendation
codex --model gpt-4o-mini # budget option
codex --model claude-sonnet-4-6 # Claude via Crazyrouter, if enabled in your accountModel availability may vary by account and provider route. Check the Crazyrouter model list before using a model name in production.
codex --approval-mode suggest # read-only suggestions
codex --approval-mode auto-edit # auto-edit, confirm commands
codex --approval-mode full-auto # full autonomous modeQ: Does Codex CLI work with Crazyrouter?
A: Yes. Crazyrouter exposes an OpenAI-compatible endpoint. Use https://crazyrouter.com/v1 as the base URL.
Q: Should I add UTM parameters to OPENAI_BASE_URL?
A: No. Never add UTM parameters to API endpoints. This is wrong:
export OPENAI_BASE_URL=https://crazyrouter.com?utm_source=github&utm_medium=github&utm_campaign=dev_community/v1Use this instead:
export OPENAI_BASE_URL=https://crazyrouter.com/v1Q: Can I use non-OpenAI models?
A: Yes. Through Crazyrouter, you can use supported Claude, Gemini, Llama, Qwen, DeepSeek, and other models with compatible routes.
Q: Node.js version requirement?
A: Node.js 22+ is recommended. Use nvm install 22 if needed.
- 🌐 Crazyrouter
- 📦 Codex CLI
- 💬 Telegram
MIT