back to top
HomeTechVercel Built a Programming Language for AI Agents. The Compiler Speaks JSON.

Vercel Built a Programming Language for AI Agents. The Compiler Speaks JSON.

- Advertisement -

Every serious coding agent including Claude Code, Cursor, Copilot, whatever you’re using shares the same problem. The agent writes code, the compiler throws an error, and the agent has to read text written for a human engineer to figure out what went wrong and how to fix it.

It’s one of the main reasons agentic coding loops break down. Error message formats change between compiler versions. The same underlying problem gets described differently depending on context. There’s no built-in concept of a repair action, just prose that an agent has to parse and hope it understood correctly.

Vercel Labs just released Zero, an experimental systems language built from day one around the idea that the compiler should talk to agents as clearly as it talks to humans. Its Apache 2.0 licensed, available now and genuinely interesting even at v0.1.1.

The development loop AI agents keep breaking

The standard agentic coding loop looks roughly like this. Agent writes code. Compiler emits an error. Agent reads the error. Agent tries to fix it. Compiler emits another error. Repeat until it either works or the agent gives up and asks a human.

The fragile part is step three. Compiler errors are written for engineers who can read a stack trace, recognize a pattern from experience, and make a judgment call about what the fix probably is. Agents don’t have that. They’re parsing unstructured text, matching it against training data, and making an educated guess about what action to take.

When it works, it looks like magic. When it doesn’t, the agent spins, making changes that don’t address the actual problem, introducing new errors while fixing old ones, or confidently doing the wrong thing because the error message was ambiguous enough to support multiple interpretations.

Nobody built a language to fix this before Zero. The assumption has always been that you fix the agent, not the compiler.

Zero thinks compilers should talk to agents too

Zero check json

Zero’s answer starts with the diagnostic output. Run zero check –json and instead of a block of formatted text you get structured JSON, a stable error code, a human readable message, a line number, and a typed repair ID telling the agent exactly what category of fix is needed.

Humans read the message. Agents read the code and the repair object. The same command surfaces both without a separate mode or secondary tool.

That stable error code is more important here. NAM003 means unknown identifier in Zero today and it will mean the same thing in the next compiler version. An agent that learned to handle NAM003 doesn’t have to relearn it when the error message wording changes. The code is the contract.

The toolchain is unified into a single binary, zero check, zero build, zero run, zero fix, zero explain, and several others are all subcommands of the same CLI. For an agent operating in a loop this matters because there’s no reasoning required about which tool handles which task. One binary, predictable subcommands, consistent output format throughout.

The compiler doesn’t just fail, it explains how to repair things

This is where Zero goes further than just cleaning up diagnostic output.

Two subcommands are specifically designed for the agent repair loop. zero explain takes a diagnostic code and returns a structured explanation of what it means. An agent hits NAM003, calls zero explain NAM003, and gets back a precise description of the problem without scraping documentation that may be out of date or mismatched with the compiler version actually running.

zero fix goes one step further. Run zero fix –plan –json against a file and it emits a machine-readable fix plan, a structured description of exactly what changes to make to resolve the diagnostic. The agent doesn’t have to infer the fix from the error. The compiler tells it.

There’s also zero skills, which serves version-matched guidance directly through the CLI. Running zero skills get zero –full returns focused workflows covering Zero syntax, diagnostics, builds, packages, testing, and agent edit loops, all matched to the installed compiler version. This matters because agents working with Zero don’t need to scrape external documentation that may be out of sync with what’s actually installed. The guidance lives in the toolchain, not on a webpage somewhere.

The combined picture is a repair loop where the agent writes code, gets structured JSON when something breaks, looks up the error code directly, retrieves a machine-readable fix plan, applies it, and checks again. No human translation required at any step.

You May Like: Best AI Coding Models for Consumer Hardware (You Can Run Locally)

Why predictable software matters more when AI writes code

zero language by vercel for ai agents

Zero’s capability-based I/O design isn’t just a language preference. It has a specific consequence for agentic workflows that’s worth understanding.

In Zero, if a function touches the outside world, writes to stdout, reads a file, makes a network call, its signature says so explicitly through a capability object called World. A function that doesn’t receive World or something derived from it cannot perform I/O. The compiler rejects it at compile time.

There are no hidden globals, no implicit async or no magic process objects. Every effect is visible in the code itself.

When a human writes code this way it’s good practice. When an agent writes code this way it’s something more useful, it’s auditable. You can read a Zero function signature and know immediately what it can and cannot do without tracing through the implementation. An agent reviewing its own output can verify effects without running anything. A human reviewing agent-generated code can spot unexpected capabilities at a glance.

The binary size story points in the same direction. Zero targets under 10 KiB native executables with no mandatory garbage collector, no hidden allocator, no mandatory event loop. For agents building small tools that need to run in constrained environments, that predictability has real value. zero size –json reports artifact size before code generation when possible, so the agent knows the cost before it commits.

Zero is still experimental

Zero is at v0.1.1. The compiler, standard library, and language spec are explicitly not stable. There’s no package registry yet. Cross-compilation support is limited to a documented subset of targets. The VS Code extension covers syntax highlighting and nothing else.

Vercel Labs is describing this as an experiment worth tracking, not a production dependency. That framing is honest and worth taking seriously. The ideas behind Zero — structured diagnostics, typed repair metadata, version-matched agent guidance, explicit capability declarations are genuinely new at the toolchain level. The execution is early.

For AI engineers thinking about how agentic coding workflows actually break down in practice, the repo is worth an afternoon. The Apache 2.0 license means you can build on it without restriction. The zero skills subcommand alone is an interesting design pattern for anyone building tools that agents will use.

For anyone considering replacing their current systems language with Zero in production, that’s not what this is yet. The language itself says so. Come back when the spec stabilizes.

The more interesting question Zero raises is whether structured agent-first compiler output becomes the expectation across the industry once developers see what it actually enables. That shift, if it happens, won’t start with Zero replacing Rust. It’ll start with enough people trying Zero that the next generation of toolchain designers builds this way by default.

Want more stories worth your time?

Add us to your Google favorites. We cover the tech stories, AI developments, and open-source projects that are easy to miss in the noise.

Add as a preferred source on Google

Don’t miss any Tech Story

Subscribe To Firethering NewsLetter

You Can Unsubscribe Anytime! Read more in our privacy policy

LEAVE A REPLY

Please enter your comment!
Please enter your name here

YOU MAY ALSO LIKE
Inside Sam Altman’s High-Stakes Gamble to Save OpenAI’s Dominance

“Mostly My Fault”: Inside Sam Altman’s High-Stakes Gamble to Save OpenAI’s Dominance

0
It’s been a little over a month since Sam Altman admitted something you don't often hear from the CEO of the company that helped kick off the generative AI boom. “We did not have our best last 12 months ever, which is mostly my fault.” Then he raised the stakes. Altman said OpenAI is about to have its best 12 months to date. A month later, that promise is worth looking at more closely because OpenAI isn't simply trying to release a better model. It's spending enormous amounts of money on compute, pushing deeper into AI agents and products, competing with increasingly capable rivals, and making bets on infrastructure that could shape how the company operates for years. So what changed? And more importantly, what exactly is Altman betting on to turn a year he largely blames himself for into OpenAI's best one yet?
GrapheneOS Is Coming to Motorola: Why It Needed Pixel Hardware First

To Escape Google, You Had to Buy a Pixel. Motorola Is About to Change...

0
For years, there was a strange contradiction at the heart of one of Android’s most privacy-focused alternatives: if you wanted to get away from Google’s software, you generally had to buy a Google phone. GrapheneOS has largely been tied to the Pixel because Google’s hardware has provided the security features the project needs to build its hardened version of Android. It was an engineering compromise, not exactly an endorsement of the Google ecosystem. Now, that compromise may finally be ending. Motorola and the GrapheneOS project are working together on a new generation of Motorola phones that are expected to support GrapheneOS in 2027. For the first time, the project is preparing to expand beyond Pixel hardware with support from another major smartphone maker. That sounds like a simple hardware partnership. It isn't. Because getting GrapheneOS onto another phone isn't as easy as installing a different operating system. The hardware underneath has to meet a demanding set of security requirements and that creates an unexpected problem for anyone hoping for a cheap, privacy-focused phone.
Cursor Origin Doesn’t Want to Replace GitHub yet

Cursor Origin Doesn’t Want to Replace GitHub. (Yet.)

0
For years, GitHub was the boring part of software development. Developers wrote code, opened a pull request, waited for review, merged it, and moved on. The system was built around a fairly simple assumption: a human was creating most of the work. That workflow starts to look a little different when your coding assistant can work on multiple tasks, generate changes and open pull requests while you're doing something else. Cursor seems to be betting that this is going to change more than just how developers write code. The company just launched Origin, its own code-hosting platform, bringing repositories, pull requests and Cursor's AI agents into the same environment. Then, almost immediately, GitHub had a major outage. The timing made for an easy headline: Cursor launches a GitHub competitor as GitHub goes down. But that's not really what matters. GitHub came back up. What matters is why Cursor is moving into code hosting at all and what it sees changing as AI agents become a much bigger part of software development. Because Origin isn't really about giving developers another place to store their Git repositories.