【导读】Vercel Labs 刚刚放出一门全新编程语言 Zero,定位为"给 AI agents 的编程语言"——编译器错误输出结构化 JSON,agent 可以直接读取并自动修复代码。项目上线不到 24 小时,GitHub 已超 340 star。但开发者社区的核心质疑也来了:一门全新的语言,训练数据从哪来?AI 真能比写 Python 写得更好吗?
给 AI 造一门语言,这人认真的
5 月 15 日深夜,开发者 Chris Tate 在 X 上发了一条帖子,直接把一个新项目推到了开发者社区的聚光灯下。
"Introducing Zero. The programming language for agents. I wanted a systems language that was faster, smaller, and easier for agents to use and repair. Explicit capabilities. JSON diagnostics. Typed safe fixes. Made for agents on day zero."
「介绍 Zero——给 agents 的编程语言。我想要一种更快、更小、更容易被 agents 使用和修复的系统语言。显式能力声明、JSON 诊断输出、类型化安全修复。从第一天起就为 agents 而生。」


▲ Chris Tate 发布 Zero,采集时已获超千赞、17 万次浏览
帖子里最关键的四个设计锚点:Explicit capabilities、JSON diagnostics、Typed safe fixes、Made for agents。
翻译过来就是:把编译器从"给人读错误信息"的工具,改造成"给 AI agent 提供结构化修复方案"的 API。
项目仓库挂在 `vercel-labs/zero`,用 C 语言实现,官网是 `zerolang.ai`。README 开头的定义更完整:
"Zero is the programming language for agents: a systems language for small native tools, explicit effects, predictable memory, and structured compiler output."
「Zero 是给 agents 的编程语言:面向小型原生工具、显式 effect、可预测内存和结构化编译器输出的系统语言。」

▲ vercel-labs/zero 仓库,采集时 342 star,用 C 实现
不过 README 紧接着就来了一句大实话:
"Zero is experimental and still changing... the language is not stable yet."
「Zero 仍是实验性的,还在变化,语言尚未稳定。」
这是一个极早期的公开实验。v0.1.0 在 5 月 16 日凌晨刚发布,v0.1.1 几小时后就跟上了。距离生产可用,还有很长的路。
编译器变 API:Zero 到底想解决什么问题?
现在的 AI coding agents——不管是 Cursor、Copilot 还是各种开源方案——写代码的流程基本是:生成代码 → 跑编译器 → 读错误信息 → 猜怎么改 → 再试。
问题出在"读错误信息"这个环节。传统编译器的错误输出是给人看的文本,agent 需要用自然语言理解来解析它,然后猜测修复方案。每一步都可能出错。
Zero 想做的,是让编译器直接输出结构化的 JSON,包括:
- 错误代码
(如 `NAM003`) - 具体位置
(行号、列号) - 修复建议
(`"repair": { "id": "declare-missing-symbol" }`)

▲ Zero 官网展示的三大设计支柱:Small(小型原生产物)、JSON-native(结构化诊断和修复)、Explicit(显式 effect 和内存)
官网首页右下角的示例最直观:执行 `zero check --json`,编译器直接返回一个标准 JSON 对象,包含错误码、行号和修复建议——agent 可以直接解析字段、定位问题、选择修复策略,全程不需要猜。
这个思路值得关注:把编译器从"文本报错器"改造成"agent 可调用的 API"。
World、check、raises:副作用必须写在明面上
Zero 的另一个核心设计是显式 capability。来看它的 Hello World:
```zero pub fun main(world: World) -> Void raises { check world.out.write("hello from zero\n") } ```

▲ Zero 的 Getting Started 页面,展示了最小程序结构
这段代码里有三个值得注意的设计:
1.`world: World`——程序需要访问外部世界(文件系统、stdout、网络等),必须通过显式传入的 capability 对象,不能偷偷读全局变量。 2.`check`——处理可能失败的操作,错误必须被显式处理。 3.`raises`——标记这个函数可能返回错误,调用方必须知道。
官方文档的总结是:
"Zero makes effects visible. A program that writes output asks for World instead of reading a hidden global process object."
「Zero 让 effect 可见。程序写输出时请求 World,不去读取隐藏的全局进程对象。」
对 AI agent 来说,这意味着什么?
意味着 agent 在生成代码时,能从函数签名直接看到这段代码会触碰哪些外部资源——是否写文件、是否发网络请求、是否可能抛错。不需要扫描整个函数体,不需要追踪隐式状态。对自动化的安全审计和权限控制来说,这比在 Python 或 JavaScript 里猜副作用强太多了。
一门新语言的致命门槛:训练数据从哪来?
帖子发出后,开发者社区的反应迅速分成了两派。
支持方很兴奋。开发者 @mvanhorn 说自己也曾想过从零开始为 agents 设计编程语言,看到 Zero 觉得方向对了。@MRehan_5 认为这代表了一种有意思的思路转变——围绕机器可理解性来设计开发工具。
但质疑方的问题更尖锐。
@yo_swif 问了一个最根本的问题:agents 已经能写现有语言了,为什么一门新语言会"更容易"?现有语言有数十亿行真实代码作为训练语料,Zero 从零开始,agent 反而可能更容易产生幻觉。
@nuvolore 更直接:
"Wouldn't a new language be more difficult for agents?"
「一门新语言对 agents 来说难道不是更难吗?」
@nsxdavid 点出了另一层矛盾:语言通常是为人类理解而设计的,AI 是完全不同的东西;但新语言没有大量训练样本,收益不确定。
@rahulrajaramio 追问了一个实操问题:有没有专门训练模型来使用这门语言?Claude 会怎么表现?
这些质疑指向了 Zero 的核心市场障碍:AI 模型擅长 Python、JavaScript、Go、Rust,很大程度上依赖训练语料里的海量真实代码。一门全新的语言,就算编译器接口再 agent-friendly,如果模型没见过足够的 Zero 代码样本,生成质量可能还不如写 Python。
@korulang 还从系统语言的角度追问:hello world 编译出来 16.2 KiB,说好的"小"呢?有 benchmark 吗?
目前的回答是:没有。README 提到 benchmark 在本地跑,但没有公开的跨语言对比数据。GitHub issue #8 还在建议加入面向 agent 的 benchmark 测试用例——这件事还在规划中。
语言本体 vs 编译器合约:真正的价值在哪?
看完所有材料,最值得讨论的问题浮出来了:Zero 的价值到底在语言本身,还是在它提出的编译器接口规范?
从现有材料看,Zero 最扎实的几个点都落在编译器和工具链层面:
`zero check --json`:结构化诊断,包含错误码、位置、修复建议 `zero graph --json`:程序结构的 JSON 表示 Size reports:产物体积可量化 Typed repair metadata:修复方案有类型信息 Fix-plan JSON:修复计划的结构化输出 Capability/effect visibility:从签名看副作用

▲ Zero 的 Language Reference 页面,展示了 Program Model、Target capability 和 compile-time 沙盒
这些能力,理论上也可以通过现有语言的插件、LSP 扩展、lint 工具、structured diagnostics 来实现。那为什么还要造一门新语言?
Zero 的回答是:直接把这些能力做进语言和编译器核心,不靠后期插件打补丁。当 capability 和 effect 成为语言语义的一部分,编译器可以在生成代码之前就报告 target 限制、权限越界、不安全的 effect 组合。
这个思路是否成立,取决于一个判断:agent 写代码的瓶颈,到底在语法层面还是在编译器反馈质量?
如果答案是后者——agent 最大的问题在于读不懂编译器报错、猜错修复方案、看不到隐式副作用——那 Zero 提出的方向确实切中了痛点。
早期市场可能长什么样?

▲ GitHub issues 列表:agent-oriented benchmark、AI-native primitives、structured edit previews 等方向都在讨论中

▲ v0.1.0 和 v0.1.1 在 5 月 16 日前后几小时内连续发布
Zero 短期内几乎不可能取代任何主流语言。但它的早期市场可能出现在几个特定场景:
Agent 生成的小型原生工具——CI 脚本、数据转换、自动化 CLI,这些场景对语言生态的依赖相对较低,对编译器反馈质量的要求相对较高。
AI coding benchmark——如果 Zero 能提供一套标准化的 agent-oriented benchmark(issue #8 正在讨论),它可能成为衡量"agent 修复代码能力"的测试平台。
编译器合约的示范效应——即使 Zero 语言本身不成为主流,JSON diagnostics、typed safe fixes、capability/effect visibility 这些设计模式也可能被 TypeScript、Rust、Go 等现有语言的工具链吸收。
换句话说,Zero 最大的影响力可能在于提出了问题本身:当 AI agent 成为代码的主要生产者和维护者之一,编程语言和编译器是否需要重新设计它们面向机器的那一面?
回到开头的问题
Zero 目前还是一个极早期的实验项目——没有稳定版本、没有正式许可证声明、没有公开的跨语言 benchmark、没有主流媒体报道。它的仓库 5 月 15 日才创建,连 GitHub Trending 都还没上。

▲ Trendshift 已收录 Zero,但显示"尚未进入 GitHub Trending"
但它提出的核心命题值得认真对待:编程语言的编译器,是时候为 AI agent 开一个结构化的接口了。
不管 Zero 最终能走多远,这个方向的竞争已经开始了。
— END —
夜雨聆风