zerolang README

The project's README from github.com/vercel-labs/zerolang. As one markdown file: README.md.

Zerolang

The programming language for agents.

Zerolang is an experimental graph-native programming language where the semantic graph is the program database. Humans ask for outcomes. Agents query the graph, submit checked edits, and prove the result.

Safety warning

Zerolang is experimental. Expect breaking changes, rough edges, and security issues. Run it in isolated workspaces, not against production systems or sensitive data.

Start With a Request

The expected workflow is a normal conversation:

build hello world for zerolang

The agent should use the compiler, not guess from source text:

zero init
zero patch --op 'addMain' --op 'addCheckWrite fn="main" text="hello from zero\n"'
zero run

The result is still reviewable as a text projection:

pub fn main(world: World) -> Void raises {
    check world.out.write("hello from zero\n")
}

That .0 file is a projection of zero.graph. Humans can read it, review it, and occasionally edit it. Agents should normally keep using zero query and zero patch.

The Program Database

Traditional agent coding loops treat text as the source of truth:

flowchart LR
    A[agent writes text] --> B[check]
    B --> C[format]
    C --> D[build]
    D --> E[inspect failures]
    E --> A

Zerolang moves the agent closer to the compiler:

flowchart LR
    A[agent queries graph] --> B[agent submits checked patch]
    B --> C{compiler accepts?}
    C -- invalid or stale --> A
    C -- valid --> D[agent runs task validation]
    D --> E[human reviews projection when useful]

The graph gives agents explicit handles: symbols, node IDs, graph hashes, types, effects, ownership facts, capabilities, imports, call edges, and target facts. Edits can target semantic structure instead of line ranges. Stale graph hashes, unexpected field values, invalid shapes, and type errors fail before the store is written.

What Exists Today

Install

Install the compiler:

curl -fsSL https://zerolang.ai/install.sh | bash
export PATH="$HOME/.zero/bin:$PATH"
zero --version

Install the agent bootstrap skill:

npx skills add vercel-labs/zerolang

The compiler bundles version-matched skills for agents:

zero skills
zero skills get agent
zero skills get graph
zero skills get language
zero skills get stdlib

Daily Loop

For most package work:

zero query
zero patch --op help
zero patch --op 'addMain'
zero check
zero test
zero run -- <args>

The default input is the current directory. Use . only when you want to be explicit.

When a human wants to review projection text:

zero export
zero verify-projection

When a human intentionally edits a projection:

zero import
zero check

Runtime Goals

The graph-first model should reduce agent guessing without relaxing the runtime goals:

Developing Zerolang

Build the local compiler:

pnpm install
make -C native/zero-c
bin/zero --version

Useful checks:

pnpm run docs:build
pnpm run conformance
pnpm run native:test
pnpm run command-contracts

For local iteration:

pnpm run conformance:local -- --list
pnpm run conformance:local -- --shard 1/4
pnpm run command-contracts:local

Read the docs at zerolang.ai.

zerolang (vercel-labs/zerolang)

Searching Database…

Что это такое?Zerolang — экспериментальный язык программирования с графовой моделью, созданный для ИИ-агентов, которые пишут код. Вместо редактирования исходного текста агенты запрашивают семантический граф (zero.graph), отправляют проверенные правки, а компилятор проверяет результат, прежде чем что-либо будет записано.
Это полноценный язык программирования или инструмент поверх существующего языка?Это самостоятельный язык со своим компилятором и CLI-утилитой zero. Входными данными для проверяемого компилятора служит zero.graph, а читаемые человеком текстовые файлы .0 являются лишь проекциями этого графа, а не основным способом написания кода.
Как установить и начать пользоваться?Установите компилятор zero и навык-загрузчик для агентов (компилятор включает навыки для агентов, соответствующие его версии), затем запускайте команды вроде zero query, zero check или zero patch для каталога — по умолчанию это текущий каталог.
Нужно ли что-то особенное для сборки или запуска, например определённая версия Node?Опубликованный компилятор — автономный артефакт, но для сборки Zerolang из исходников требуется Node.js 24 или новее, согласно полю engines в проекте.
Безопасно ли запускать это на моей реальной кодовой базе?Нет. В README прямо сказано, что проект экспериментальный: в нём возможны несовместимые изменения, шероховатости и проблемы безопасности. Запускать его следует только в изолированных рабочих областях, но никогда не на производственных системах или с чувствительными данными.
Кто на самом деле пишет код на Zerolang — люди или агенты?Основными авторами являются агенты: они используют zero query и zero patch для работы напрямую с графом. Люди в основном читают, проверяют и изредка редактируют текстовую проекцию .0, которую можно просматривать и проверять.
Какие команды предоставляет CLI zero?Он включает zero query, zero inspect, zero check, zero test и zero run для получения сведений от компилятора, а также zero patch для проверяемых правок графа и zero import/export для перехода между графом и текстовыми проекциями .0.
Зачем создавать новый язык, а не позволять агентам редактировать исходный текст напрямую?В традиционном цикле работы агентов с кодом текст считается источником истины, и агентам приходится угадывать структуру по строкам. Zerolang даёт агентам явные опоры — символы, идентификаторы узлов, хеши, типы, эффекты, владение и возможности, — поэтому правки нацелены на семантическую структуру, а не на диапазоны строк.
Что произойдёт, если агент попытается применить устаревшую или некорректную правку?zero patch её отклонит: устаревшие хеши графа, неожиданные значения полей, неверная структура и ошибки типов — всё это приводит к отказу до того, как что-либо будет записано в хранилище.
Каких целей по производительности добивается Zerolang?Язык стремится к экономному по токенам просмотру, низкому потреблению памяти, быстрому запуску и сборке, малой задержке во время выполнения, явным возможностям и компактным артефактам без зависимостей.
What are similar projects?qwen-code, fixing-smartass-opus-5, Tov, openrig, acryl, cf, Odin, git-ai
Size
73.2 MB
Stars
5.4K
Age
5mo
Commits · 90 Days