Using Codex with Convex
Codex, OpenAI's coding agent, makes it easy to write and maintain apps built with Convex. Let's walk through how to set up Codex for the best possible results with Convex.
Starting a new project
From an empty directory, launch Codex with what you want to build:
codex "build me a todo app with Convex"Codex handles the rest. It runs npm create convex@latest,
npx convex ai-files install (which writes a managed Convex section into
AGENTS.md and installs Convex Agent Skills into
.agents/skills/), and npx convex dev --once, which
auto-provisions a local backend without
prompting for login because the agent's shell is non-interactive.
After the initial setup, leave npx convex dev running in a separate terminal
so Codex always sees up-to-date generated types. Without it the agent can get
stuck in a linting loop.
If you'd rather scaffold the project yourself first and then bring in Codex, the manual sequence is:
npm create convex@latest my-app
cd my-app
npx convex ai-files install
codex
Adding to an existing project
If your project already has Convex set up, run these two steps from the project root to make Codex Convex-aware.
Add Convex Rules
The Convex CLI can install and maintain a managed section in your project's
AGENTS.md file that teaches Codex about Convex conventions and best practices.
npx convex ai-files install
This will create or update AGENTS.md and install Convex
Agent Skills into .agents/skills/ so Codex can use
specialized workflows like setting up auth, designing a schema, and running
migrations.
See Convex AI files for more on managing these files.
We're constantly working on improving the quality of these rules for Convex by using rigorous evals. You can help by contributing to our evals repo.
Setup the Convex MCP Server
The Convex CLI comes with a Convex Model Context Protocol (MCP) server built in. The Convex MCP server gives Codex access to your Convex deployment to query and optimize your project.
Add the following to your Codex MCP configuration (~/.codex/config.toml):
[mcp_servers.convex]
command = "npx"
args = ["-y", "convex@latest", "mcp", "start"]
Now start asking Codex questions like:
- Evaluate my convex schema and suggest improvements
- What are this app's public endpoints?
- Run the
my_convex_functionquery
Running Codex with Convex in the cloud
When running Codex in a remote environment (like ChatGPT's Codex cloud), use Convex's Agent Mode so the agent can iterate on code, run tests, and call one-off functions without needing full deployment permissions.
A good setup script for ChatGPT Codex looks like:
npm i
npx convex dev --once
In non-interactive shells (the typical case for an agent's setup script),
npx convex won't prompt the agent to log in. It provisions a local deployment
automatically. See Agent Mode → Local backend
for details.
This command requires "full" internet access to download the Convex binary.
For per-agent cloud dev deployments scoped to a single throwaway deploy key, see Cloud dev deployments per agent.