The coding agent that picks the right model for every step
Classify, extract, draft, verify, most agents route every one of those steps to the same expensive model. ML.ai Code reads your repo, hands each step to the right agent, and picks the most cost-efficient model that clears your quality bar.
ML.ai is a product of Pixis.ai, backed by SoftBank Vision Fund and General Atlantic.
Checking how auth refresh is wired before changing anything.
- Reading src/auth/session.ts
- Reading src/lib/tokenStore.js
- Reading src/middleware/auth.ts
Find where session tokens expire and fix the refresh path.
30-45%
Typical cut in model spend on the same work
4
Focused agents: Explore, General, Architect, Plan
16ms
From your Allow to the file actually changing
Memory on
Remembers your repo and conventions by default
Trusted by leading teams
The problem
Every step gets the expensive model, even the easy ones.
ML.ai Code is how you spend less without a surprise drop in quality. Four focused agents, and a model chosen per step, not one frontier model for the whole task.
One model, every step
Classify the intent, extract the fields, draft the change, verify it, most agents route all four turns to the same frontier model.
The bill grows faster than quality
Frontier models are right for some turns and wasteful for the rest. Every request pays the expensive default whether the step needs it or not.
Nothing writes without your say
A different model per step is not a trust problem. Every edit and command still stops at one gate until you Allow it.
How it works
One agent for the read, a different one for the write.
Type @ to hand a task to a focused agent. Only General can change your code, the other three cannot. You can also ask ML.ai to build a custom agent from a plain-language description.
Explore
Searches and explains your repository. Changes nothing.
General
Carries out work that is already well defined, in one self-contained turn.
Architect
Reads the code, returns the order of work, the files, and the trade-offs.
Plan
Does the same, and writes the finished plan to a file for you to review.
Why it costs less
Same shipped answer. Different model per step. Lower bill.
Most agents route every step to the same frontier model: classify, extract, draft, verify, all on the expensive tier. ML.ai Code picks the most cost-efficient model that clears your quality bar for each step.
Frontier, every step
$0.70
/ completed task
Classify intent
$0.09
Extract fields
$0.14
Draft the response
$0.28
Verify against your evals
$0.19
Every turn on the top-tier model. Simple, expensive.
ML.ai Code
$0.43
/ completed task
Classify intent
$0.03
Extract fields
$0.06
Draft the response
$0.20
Verify against your evals
$0.14
Frontier where it matters, a lighter model where it doesn’t. Same output.
Not just cheaper
It solved more of the same real bugs than a leading model working alone.
We ran ML.ai Code against SWE-bench Verified, the industry-standard benchmark built from real, unmodified GitHub issues, on the official harness with gold-patch verification.
A leading frontier model, single shot
58%
SWE-bench Verified
One expensive guess per issue. No retries, no verification loop.
ML.ai Code
86%
SWE-bench Verified, 28 points ahead
Retries, test-driven verification, and multi-sample selection instead of one expensive guess.
Measured on a 50-instance slice of the public set. Full 500-instance results and SWE-bench Pro are in progress.
ML.ai Code is the same engine, in your editor.
An agent for VS Code and Cursor. It can read, edit, and run commands. Nothing hits disk until you Allow or Deny.
42 async function refresh(token) {
- 43 if (!token) return null
+ 43 if (!token?.exp) throw new Error('expired')
+ 44 return await rotate(token)
45 }
Ask ML.ai, @ to delegate
ML.ai: Chat
42 async function refresh(token) {
- 43 if (!token) return null
+ 43 if (!token?.exp) throw new Error('expired')
+ 44 return await rotate(token)
45 }
2 lines changed
Allowed
Nothing changes on disk until you say so.
ML.ai Code shows the proposed edit first. Allow, Always, or Deny. Only then does the file change, measured at 16ms after your yes.
See the diff before you approve
A native diff opens with the permission prompt, so you are not guessing.
Always, for this kind of action
Approve once and stop being asked for that same action in this session.
One door for every side effect
Chat cannot write files itself. Every edit and command goes through one gate.
Deny means stop
A denied action is not retried through another tool. It stops, with a reason.
Turned off on purpose, so they cannot quietly appear later.
Remote terminal sessions
Blocked on the network, not just unused. Shell output stays in the editor.
Publishing a session
Would put your conversation on a public URL. Refused in both directions.
The engine upgrading itself
The engine ships with the extension version you installed.
Your token stays on your machine.
ML.ai Code is a local agent. The chat panel is only a screen, it cannot read your disk and cannot talk to the engine by itself. Your ML.ai access token is stored in VS Code Secret Storage, handed only to the local engine, and never shown again.
The engine listens on localhost only, behind a generated password. Prompts and file content go straight to the model provider your token is scoped to. MCP input goes to the server you connected. Nothing else leaves your machine.
Beyond editing files: skills, delegation, and a command classifier that actually parses.
Four capabilities that go past the basic read-edit-run loop, each one already shipping.
Skills
Type / for a packaged workflow: a commit message from your current diff, a plain-language explainer of what a run’s verification actually proved, a project overview as a PDF, or a new subagent composed on request. Your own project and global skills show up in the same list.
Read moreBackground runs
Hand a job to a subagent and keep working. It runs in its own session, survives the panel being closed, and reports live status in a drawer: queued, running, awaiting approval, done. Take the result into your draft when it lands, or follow up on it directly.
Read moreThe command safety classifier
A shell command is not a string to pattern-match. ML.ai parses it, walks every executable position, and judges each one, so curl url is fine but curl -o ~/.zshrc url is not, and sudo, xargs, and timeout can’t hide a dangerous command behind a wrapper.
Read moreMCP servers
Connect local or remote tools over the Model Context Protocol, scoped per project or globally, with environment variables, headers, timeouts, and OAuth sign-in for the ones that need it.
Read moreML.ai Code: four steps, then you are in your own project.
No extra server to run. One sign-in issues your token. If you can install a VS Code extension, you can run ML.ai.
1
Install the extension
From the VS Code Marketplace. macOS on Apple Silicon, or Windows on x64.
$code --install-extension ml-ai-local.ml-ai2
Open ML.ai
Click the icon in the Activity Bar, or run ML.ai: Open ML.ai.
3
Sign in with ML.ai
One click issues a ML.ai access token. Stored in VS Code Secret Storage, not in a file you might commit.
4
Open a folder and ask
Plain English is enough. You can start with a question that changes nothing.
Explain how authentication is wired here. Do not modify files.Frequently asked questions.
ML.ai Code is the editor agent you install today, built on ML.ai Inference, the harness behind it.
Try ML.ai Code today, or talk to us about what is next.
Install the editor agent on your own machine, or book a call to talk through your team's workloads.

