Technology & AI

Vercel Labs Introduces Zero, a Programming Language Designed for AI Agents to Learn, Modify, and Deploy Native Programs

Vercel Labs
01 / 09 · Overview

Zero
Programming Language
Agents

A diagnostic programming language that provides AI agents with structured diagnostics,
typed maintenance metadata, and machine-readable documents — near sub-10 KiB native binaries.

Programming Language
Native agent
v0.1.1
Apache-2.0
For testing

Context
02 / 09 · Why Zero Exists

Agent maintenance loop problem

Most programming languages ​​produce batch output written for human readers – unstructured text that AI agents must analyze to determine what went wrong and how to fix it. This creates a fragile loop.

  • The agent writes the code — the compiler outputs an error as unstructured text
  • The agent parses the text – The error format can change between compiler versions
  • No repair advice – no built-in concept of “corrective action”
  • Someone enters — the loop requires manual intervention to resolve errors

Zero was designed from day zero so that agents can read code, interpret diagnostics, and debug the system — without human translation.

Main Feature
03 / 09 · JSON diagnostics

Scheduled Merge Output

Running zero check ——json outputs machine-readable diagnostics instead of plain text. All errors include a fixed code, character message, line number, and typed fix ID.

$ zero check --json
{
  "ok": false,
  "diagnostics": [{
    "code": "NAM003",
    "message": "unknown identifier",
    "line": 3,
    "repair": { "id": "declare-missing-symbol" }
  }]
}
  • the code – Stable identifiers can reliably match (NAM003)
  • the message – a human-readable error description
  • to fix – Machine-entered repair ID can work without text analysis

Main Feature
04 / 09 · Repair instructions

zero explain & zero fix

Two CLI subcommands break the agent maintenance loop without requiring agents to parse prose scripts.

zero explain

zero explain NAM003

Returns a structured description of any diagnostic code. Agents look up NAM003 exactly – no scratching of the document.

zero to fix

zero fix --plan --json add.0

It issues a machine-readable maintenance plan that explains exactly what changes need to be made – no guesswork required.

Together, zero explain again zero fix --plan --json allow agents to understand errors and act on them without human interpretation of compiler output.

Main Feature
05 / 09 · Agent guidance

zero capabilities: Version-Matched Agent Guidance

Many tools require agents to compile external documents that may not be compatible with the installed compiler. Zero solves this by saying zero skills – the directive is given directly from the CLI, matched with the installed version.

zero skills get zero --full

Returns a fixed workflow for:

  • Zero syntax — Basics of the language of the current version
  • Diagnosis — how to interpret and execute with compiler output
  • Construction & packages – Manifest structure, target, and output
  • Testing and editing loops – Confirming and correcting work flow patterns

Language Design
06 / 09 · Power-Based I/O

Transparent Effects & Power-Based I/O

In Zero, if a work touches the outside world, its signature says so. There is no hidden global process object, no implicit async, and no magic globals.

pub fun main(world: World) -> Void raises {
  check world.out.write("hello from zeron")
}
  • world: The world – thing to know; provides access to I/O, file system, network
  • check – Manages inappropriate activities; failure at the top of the call stack
  • suggests — marks that the function may propagate errors — appear in the signature
  • Compilation of enforcement time – Unavailable skills are rejected at compile time, not runtime

Language Design
07 / 09 · Memory and Size

Unpredictable Memory & Small Binaries

Zero targets areas where binary size and memory predictability are important. There is no hidden working time tax.

Binary target

< 10KiB

Native execution using static dispatch, no forced GC, no forced event loop

Cross-Compilation

zero build --emit exe 
  --target linux-musl-x64 
  add.0 --out .zero/out/add

  • zero size --json – report artifact size before code generation if possible
  • There is no hidden fear – Allocation is clear and visible in the code
  • IC ABI exports — target interop metadata for C parameters

Get Started Immediately
08 / 09 · Getting started

Install & Run Zero

Install the compiler with a single curl command:

curl -fsSL  | bash
export PATH="$HOME/.zero/bin:$PATH"
zero --version

Test, use, and build your first program:

zero check examples/hello.0
zero run   examples/add.0
zero build --emit exe --target linux-musl-x64 
  examples/add.0 --out .zero/out/add

Create a new package:

zero new cli hello
cd hello
zero check .  &&  zero test .  &&  zero run .

The situation
09 / 09 · Current situation

What’s Available and What’s Not

  • v0.1.1 (Experimental) – compiler, stdlib, and language spec are not stable yet
  • There is no package registration – The scope of the ecosystem is the first stage
  • Cross integration — limited to a targeted subset
  • VS code extension – To highlight the syntax of .0 files are uploaded to the repo
  • Donors – Chris Tate and Matt Van Horn (Vercel Labs)
Documents & Install

zerolang.ai

The source

github.com/vercel-labs/zero

Zero is a working experiment worth tracking for AI developers interested in native agent chain design – not yet dependent on production.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button