Most of the discussion about AI coding agents assumes you pick one. In practice, if you run agents all day, you don't — you reach for whichever one fits the task in front of you, and increasingly you run them at the same time on the same project. Here's what that actually looks like.
// // multi-vendor
Claude Code and Codex, side by side
you're not betting on a vendor, you're picking a tool
Treating "Claude Code vs Codex" as a loyalty decision is a category error. They're tools with different feels, and the interesting question isn't which one wins — it's which one you reach for when. After enough sessions you develop a hand for it, the same way you develop a hand for when to write a script versus do it manually.
Roughly how it shakes out: one agent gets the nod for tasks you can describe crisply and want executed, the other for work where you want it to sit with the ambiguity longer before touching anything. Which is which depends on the day, the model versions, and your own taste. It shifts as both tools change.
The point isn't a fixed ranking. It's that having both on hand means you're never forcing the wrong tool onto a task because it's the only one you've got open.
running both on one codebase
The genuinely useful move is parallelism across vendors. Point one agent at the API layer and another at the tests. Have one draft a migration while the other works through the UI changes that depend on it. Run a couple of the same vendor and one of the other, and stop thinking of them as "my Claude sessions" and "my Codex sessions" — they're just your agents, working.
This is where vendor lock-in actually bites, and not in the way people usually mean. The problem isn't being unable to switch later. It's that a single-vendor tool can only show you half your fleet at once. If your status view only understands Claude, the two Codex sessions you've got running are invisible to it — back to tabbing through to check on them. The unified view only works if it's vendor-agnostic from the ground up, with a detector per agent feeding one grid.
the coordination problem nobody warns you about
Two agents in the same repo can step on each other. Both decide to touch the same file. Both assume they're the only one working. You end up refereeing a merge between two of your own agents, which is a genuinely strange way to spend an afternoon.
There's no magic fix, but there's a real mitigation: tell each agent it isn't alone. A peer hint — "there are two other agents working in this project right now" — changes how an agent reasons about scope. It's more cautious about sweeping changes, more likely to stay in its lane. It doesn't eliminate conflicts, but it cuts the confident, oblivious ones where an agent rewrites a file out from under another because it had no idea anyone else was there.
The other half is on you: give them disjoint work. Parallelism is safe when the agents own separate files or separate concerns. The moment two agents are editing the same area, you've turned parallel work back into sequential work with extra conflict on top. Carve the task so the seams between agents fall on real boundaries.
the workflow, concretely
What this looks like in a tool that supports it:
One grid, both vendors. Claude Code and Codex sessions in the same view, same status states, sorted waiting-first. You don't context-switch between two apps to see two halves of your work.
MCP managed for both. The MCP servers your agents use get managed in one place — for Claude and Codex alike, through their official CLIs — so capabilities are consistent across vendors instead of configured twice.
Status that knows the difference. Each vendor has its own detector under the hood, but they all resolve to the same working / waiting / idle states, so the grid reads uniformly no matter who's running.
Review in one place. When either agent finishes, the same git inspector shows you the diff. You check Claude's work and Codex's work the same way.
one grid
Claude Code and Codex, in the same view
Both vendors, one status grid. Claude sessions and Codex sessions share the same states — working, waiting, idle — and sort the same way. Anything waiting on you sits at the top, regardless of who made it.
- Each vendor has its own detector; both feed one grid.
- MCP servers for Claude and Codex managed in one place, through their official CLIs.
- Status reads uniformly — working / waiting / idle — no matter who's running.
review
check the work, whoever made it
When an agent finishes — Claude or Codex — the same git inspector shows you the diff. You don't switch tools to review different vendors. Tree-sitter syntax highlighting, hunk-level staging, AI-drafted commit messages. Same flow for both.
the honest limit
Running both doesn't double your output, and it isn't free. It doubles the decisions, the diffs to read, and the chance of two agents colliding. It pays off when the work genuinely splits into independent pieces and you've got a view that shows both vendors as one fleet.
If you're forcing parallelism onto work that's actually sequential, you'll feel it as friction, not speed.
But when the work does split — and a lot of it does — having Claude Code and Codex side by side, in one grid, watched by one status engine, is a noticeably better day than alt-tabbing between two tools that each only see their own half.
// // more from the blog
keep reading
run Claude Code and Codex in one grid
vord is in soft launch. Join the waitlist, and when your invite is ready you get in and try it free for 14 days.