Introduction
Codex CLI is OpenAI’s open-source terminal coding agent that can read and write files, run commands, fix bugs, and complete full coding tasks directly in the command line.
By connecting through APIMart, you can freely use multiple models — including GPT and Claude — in Codex CLI, with more flexible and competitive pricing.
Prerequisites
Before you begin, make sure you have:
Installed Node.js
Download and install from the Node.js website (latest LTS, v20 or newer recommended) to install Codex CLI via npm
Obtained an APIMart API Key
Log in to the APIMart Console to get your API key (starts with sk-)
Tip: If you don’t have an APIMart account yet, please register at
APIMart first and obtain your API key.
Step 1: Install Codex CLI
Choose any of the following methods to install:
npm (Recommended)
Homebrew (macOS)
Install globally with npm — works on all operating systems: npm install -g @openai/codex
If you run into permission issues, prepend sudo (macOS / Linux).
macOS users can also install with Homebrew:
Verify the installation
After installing, run the following command to confirm:
If a version number is printed, the installation succeeded.
Codex CLI manages model providers via configuration files under the ~/.codex/ directory. All we need to do is add a custom provider pointing to APIMart.
2.1 Locate the config directory
macOS / Linux: ~/.codex/
Windows: C:\Users\<username>\.codex\
If the directory does not exist, run codex once in your terminal then press Ctrl + C to exit — it will be created automatically.
In the config directory, create or edit the auth.json file and fill in your APIMart key:
{
"OPENAI_API_KEY" : "sk-xxxxxxxxxxxx"
}
Field Description OPENAI_API_KEYYour APIMart API key (starts with sk-)
In the config directory, create or edit the config.toml file and add the APIMart provider:
# Default model
model = "gpt-5.5"
# Default provider — matches [model_providers.apimart] below
model_provider = "apimart"
# APIMart provider configuration
[ model_providers . apimart ]
name = "APIMart"
base_url = "https://api.apimart.ai/v1"
wire_api = "responses"
requires_openai_auth = true
Field Description modelDefault model ID — pick one from the model list below model_providerDefault provider — must match the ID inside [model_providers.xxx] nameDisplay name of the provider — can be customized base_urlAPIMart’s OpenAI-compatible URL — fixed at https://api.apimart.ai/v1 wire_apiWire protocol — recent Codex versions require responses (Responses API) requires_openai_authSet to true to authenticate using the key from auth.json
After saving both files, restart Codex CLI for the changes to take effect.
Make sure auth.json is valid JSON and config.toml is valid TOML. Do not use full-width / smart quotes, otherwise the config won’t apply.
Step 3: Get Started
Verify the configuration
In any project directory, run the following command to confirm everything is wired up:
codex "Introduce yourself in one sentence"
If you get an AI reply, the configuration is working. If you see a sign-in screen, or 401 / 403 errors, refer to the FAQ section below.
Interactive mode
Run codex directly to enter the interactive UI — ideal for full coding tasks:
Once inside, describe what you need in natural language, e.g.:
Create an Express.js server with a JSON-returning health check endpoint
Codex will analyze your project, generate code, run commands, and ask for confirmation before performing sensitive operations.
Approval modes
On first run, Codex will ask you to pick an approval level:
Mode Description Read Only Only file reads are allowed — any modification or command requires confirmation Auto Can read/write files and run commands within the working directory (recommended) Full Access Performs any operation without confirmation — use with caution
We recommend starting with Auto mode. Type /approvals in the interactive UI to change it anytime.
Switch models
In the interactive UI, type /model to switch quickly, or change the model field in config.toml and restart.
Supported Models
For Codex CLI, the following GPT-5 series models are recommended:
Model ID Strengths Recommended Use Cases gpt-5.5Latest flagship, top coding ability First pick for Codex, complex engineering gpt-5.4Previous-generation flagship, very capable Complex coding, architecture design gpt-5.4-miniLightweight, fast, cost-effective Daily coding, fast iteration gpt-5.3-codexCoding model optimized for Codex Agentic coding tasks gpt-5.2Stable and balanced Routine coding tasks
Model selection tips: The GPT-5 series above pairs best with Codex CLI. For the best experience, prefer gpt-5.5; gpt-5.3-codex is specifically optimized for Codex’s agentic coding scenarios.
Common Commands
Frequently used commands and shortcuts in Codex CLI:
Command Description codexEnter the interactive UI codex "task"Start with an initial instruction codex exec "task"Non-interactive mode — run and exit codex --model gpt-5.4Start with a specified model codex --versionShow the version number /modelSwitch model inside the interactive UI /approvalsAdjust approval mode inside the UI Ctrl + CExit the interactive UI
FAQ
Q1: A ChatGPT sign-in screen appears after launch?
If you see “Sign in with ChatGPT” or similar after launch, the configuration didn’t take effect.
Troubleshooting:
Make sure both config.toml and auth.json are inside ~/.codex/
Check that model_provider in config.toml is set to apimart
Check that auth.json is valid JSON and the key is filled in completely
Q2: Getting 401 / 403 errors?
Status Code Meaning Solution 401 UnauthorizedMissing or invalid API key Check the key in auth.json — it should start with sk- 403 ForbiddenInsufficient permission or expired key Go to the Console to verify the key
Also make sure base_url is set to https://api.apimart.ai/v1, not the official OpenAI URL.
Q3: Connection failed?
Check your network connection
Make sure base_url in config.toml is correct
If you’re behind a proxy, ensure it allows access to api.apimart.ai
Q4: wire_api = "chat" is no longer supported?
Recent Codex CLI versions (0.84.0 and later) have removed the chat protocol. Update wire_api in config.toml to responses:
APIMart supports the Responses API — just restart Codex after the change.
Make sure wire_api in config.toml is set to responses. If you still hit compatibility issues, switch to a recommended GPT-5 series model (e.g. gpt-5.5, gpt-5.3-codex) — they pair more reliably with Codex CLI.
Q6: Use environment variables instead of auth.json?
You can also configure the key via an environment variable. Change the provider block in config.toml to:
[ model_providers . apimart ]
name = "APIMart"
base_url = "https://api.apimart.ai/v1"
wire_api = "responses"
env_key = "APIMART_API_KEY"
Then set the environment variable APIMART_API_KEY to your APIMart key. auth.json is no longer required in this setup.
Q7: How do I switch models?
Two ways:
In the interactive UI : Type /model to switch
Edit the config : Change the model field in config.toml and restart Codex CLI
Q8: How do I check usage and billing?
Log in to the APIMart Console to view API call statistics, token consumption details, and cost trends.
Support and Help
If you run into any issues while using Codex CLI:
Get Started with APIMart Sign up for APIMart now, get your API key, and experience a multi-model programming assistant in Codex CLI!