Xanadu 期待智能体
摘要
文章讨论了 Ted Nelson 对 Project Xanadu 的愿景,强调署名和版本控制,这一愿景正随着能够管理复杂引用并维护信息完整性的AI智能体的出现而变得可行。
暂无内容
查看缓存全文
缓存时间: 2026/09/03 21:00
# Xanadu 已为智能体铺路多年 - Zed 博客
来源:https://zed.dev/blog/agentic-xanadu
泰德·尼尔森(Ted Nelson)今年一直萦绕在我的思绪中。
尼尔森是计算领域的先驱,他在 1965 年提出了“超文本”(hypertext)一词,作为其毕生事业——仙纳度计划(Project Xanadu)(https://xanadu.com/)的一部分。仙纳度计划蕴含着他对计算未来的具体愿景,他称之为“文档宇宙”(docuverse)。他设想了一个能保存文档所有版本的系统;超文本链接将同时知晓其源与目标,而引用将通过引用而非复制的方式保存,使任何被引用的文本都能保持其身份和来源。在这个计算愿景中,一切将是“深度交织”(intertwingled)且“类比相通”(xanalogical)的。我们要讨论的是精细到文本片段的归属问题。
“类比相通”意味着遵循两条规则:永不复制,始终引用(也被称为尼尔森的术语“跨文引用” transclusion);永不覆盖,始终版本化。尼尔森的设计中,仙纳度系统将自行管理其复杂性和海量的簿记负担,因此用户只需体验这个永不遗忘的系统所带来的好处。
无限簿记的愿景需要无限的存储空间和一种面向未来的命名方案,而在尼尔森致力于仙纳度计划的数十年间,这两者都尚未实现。因此,当 Web 技术在 90 年代爆发时,开发者们绕开了类比计算,选择了便捷:链接只是简单的字符串,目标移动后就会失效。维护成了用户的问题——不再是系统的责任——但这让任何人都能快速发布产品,他们也确实这么做了。仙纳度计划从新时代的承诺,逐渐沦为计算界最著名的 vaporware(软件界的著名 vaporware)(https://www.wired.com/1995/06/xanadu/)。
尼尔森毕生都在解释(https://www.youtube.com/watch?v=Bqx6li5dbEY)Web 是对超文本应有面貌的扁平化戏仿。他说得对,但这无关紧要,因为人们实际上并不需要追踪每个链接或比较每个版本。我们是缺乏耐心的物种,更倾向于跟随他人追逐的链接或阅读他人选择的版本。扁平化,够用就好。
然后,智能体(Agent)登场了。
让智能体成为尴尬协作者的特质,恰恰使其成为尼尔森系统的完美公民。智能体能处理比人脑一次性能容纳的更多层的潜文本,例如引用的来源、围绕它的所有讨论,以及附加在运行中确切代码上的堆栈跟踪信息。基于片段(fragment-based)的表示使这些引用无损,因此在文本变化时,每一层都能保持附着在相同的跨度上。智能体可以同时阅读这些维度,将其引用起来以便人类审计其工作,并耐心地在每一次都跟踪每一个链接。但这些链接需要真实存在于某处,智能体才能找到它们。
如今当我重温尼尔森的愿景时,我认出了 DeltaDB 的设计目标以及 Delta(https://delta.dev/)的承诺。几十年来,为了适应人类注意力的局限而压缩历史之后,我们正处在一个新现实之中,它需要更……类比化(xanalogical)的事物来更好地服务。
## 在部件就绪前如何构建系统 (https://zed.dev/blog/agentic-xanadu#how-to-build-a-system-before-the-parts-exists)
几年前,我曾撰文谈论观看恩格尔巴特(Engelbart)1968 年的演示(https://zed.dev/blog/crdts),并意识到为了构建协作编辑器,他的团队必须发明它所依赖的一切:新的编程语言、操作系统和显示器。
尼尔森面临着同样的问题(但资金远少于恩格尔巴特)。他无法构建仙纳度计划,因为它的大部分部件尚不存在,例如一种无需权威机构颁发的内容命名方式,或者廉价到无需删除的存储。他的团队手工构建自己的数据结构多年,但这个项目最终胎死腹中(died on the vine)。《连线》杂志将尼尔森的故事描绘为管理不善,但我认为他只是在仙纳度计划的依赖树出现前几十年就定义了它。
## 依赖树如今已就位 (https://zed.dev/blog/agentic-xanadu#the-dependency-tree-exists-today)
今天我们能构建 Delta,是因为六十年来其他人路线图的交付填补了文档宇宙的缺失部分:内核开发、照片存储、无服务器冷启动、协作光标。我认为令人着迷的是,突破性进展往往有着平凡的日常工作,却将开启计算的下一个时代。
**一个为无中心世界打造的时钟。** Lamport 时间戳,1978 年。每个人类和智能体的每一个操作都由一个参与者加上一个 Lamport 时间戳命名,永久如此。
**无法说谎的名字。** Merkle 树,1979 年,因 Git 在 2005 年的应用而普及。一个 Git 提交哈希值命名一个确切的、不可变的项目状态;DeltaDB 则通过其继承的 Git 提交以及应用在其上的参与者与时间戳增量 ID 的集合,来命名提交之间的每个状态。
**无需协调的收敛。** CRDTs,2016 年形式化,是过去十年 Zed 自身工作的核心。Delta 工作树可以由不同大洲的多人和智能体同时编辑。
**廉价到无需删除的存储。** 1981 年,1GB 的存储成本数万美元;如今只需一分钱。我们默认保存所有内容的每一个版本。
**复制一切的网络。** 21 世纪中期,始终在线、快速的宽带取代了拨号上网。每个线程都是活跃的、复制到每个参与者机器及浏览器中的数据。
**毫秒内召唤的机器。** Firecracker 级别的 microVM,2018 年。Delta 中的智能体可以在对话中途配置一台新的隔离云机器。
**作为持久内容视图的文档。** Max Brunsfeld 的 Tree-sitter(https://zed.dev/blog/syntax-aware-editing),2018 年,速度快到可以在你打字时重新解析。与 Zed 一同开创的 GPUI,速度快到能在每一帧绘制时,从应用程序状态派生出全新的界面。Delta 线程是其持久化结构历史的实时投影,通过重新计算而非存储为扁平文档来呈现。
在一个细节上——在整个职业生涯中被告知梦想太宏大的职业生涯里——尼尔森的梦想却不够宏大。他缺失的最终依赖项是一种新型用户。他并未构想人工阅读器,尽管它们在科幻小说中早已存在(如阿西莫夫的 Multivac,或斯蒂芬森的 Librarian)。
尽管仙纳度计划因缺失组件而被搁置数十年,但它最需要的,是一个完美的用户。
## 为何文档宇宙正在版本控制中具现化 (https://zed.dev/blog/agentic-xanadu#why-the-docuverse-is-materializing-in-version-control)
大多数实际的代码创作一直都发生在提交之间(https://zed.dev/blog/introducing-deltadb),但过去压缩上下文不那么痛苦,因为我们依靠人类记忆(而且反正也没人会读按键更改的完整记录)。但智能体不在脑中保留任何东西,它们会阅读一切,因此我们需要一种方式来捕捉这个新的真实来源,完全按照尼尔森的规定:持久性和连接性。
每一个 Delta 线程都实现了这个承诺。对话和代码在共享历史中一起被捕获。在屏幕上,文件看起来仍然像一维字符字符串,但在底层,DeltaDB 将其表示为具有稳定身份的片段。这些身份使我们能够创建锚点:对跨度的引用,即使在周围代码更改后仍可解析。行号可以表达文本在某一个快照中的位置,而锚点则能在不同快照间保留我们所指的跨度。
我们一直在探索智能体如何基于这个坐标系统进行构建。早期智能体反复读取、编辑、引用或返回的文件和符号,可以成为下一个智能体的地标,根据当前存在的代码进行解析,并链接回形成该理解的对话。通过保留表面表示之下的因果元数据,比如哪个操作产生了每个片段以及它构建于哪个先前状态,DeltaDB 为模型提供了一种方式,不仅能遍历当前代码,还能遍历其谱系、累积的关注和先前的推理过程。
## 避免仙纳度之咒 (https://zed.dev/blog/agentic-xanadu#avoiding-xanadus-curse)
仙纳度有一个最终的失败模式,这是自找的:它拒绝与低级格式互操作。在我们向世界引入 DeltaDB 时,我们正从这个错误中学习。我们将与你已有的 Git 仓库协作。每个线程也是一个 Git 分支,因此从未打开 Delta 的队友会看到一个正常的仓库。并且由于文件是真实的,它能与智能体可用的任何工具无缝集成。你可以继续将仓库镜像到 GitHub,以与尚未准备好切换的任何人协作(这是我们开源 IDE Zed 在过渡期的做法)。
恩格尔巴特和尼尔森是早期计算的先知,然而我们从未完整交付过两者的愿景:我们从前者那里采用了鼠标(以及最终的多人编辑),从后者那里取用了“超文本”一词。这两个想法都存活了下来,但都没有达到其创造者构想的深度。我们仍将实时会话与持久记录分开:讨论、中间状态和意图被压缩成最终的文件或提交,而绑定到路径和行号的链接随着代码的移动而逐渐失效。我希望 Delta 线程能同时满足这两种愿景:一个留下持久、互联文献的实时会话,因为会话与记录是同一个对象。
构建 Delta 和 DeltaDB 所需的每一项属性,都是尼尔森在我出生前就定义好的。尽管我的目标并非实现仙纳度计划,但我仍然能感受到尼尔森在期待一个酝酿已久的愿景落入人们手中时可能体验到的那种焦躁不安。一个想法等待它的用户,六十年太长了。他们现在就在这里。
### 相关文章
浏览 Zed 团队的其他博客。
---
### 在寻找更好的编辑器?
你今天就可以在 macOS、Windows 或 Linux 上试用 Zed。立即下载(https://zed.dev/download)!
---
### 我们正在招聘!
如果你对我们博客涵盖的话题充满热情,请考虑加入我们的团队(https://zed.dev/jobs),帮助我们交付软件开发的未来。
相似文章
@ashwingop: https://x.com/ashwingop/status/2052777467732283817
对Claude的“托管代理”(Managed Agents)的分析,将其视为下一代AI基础设施层——“公司大脑”(Company Brain)的先兆。这是一个运营状态层,使代理和应用能够基于共享的公司上下文行动,与更简单的知识库或基于Markdown的原型形成对比。
AI Agent 入门
关于构建可靠AI Agent的全面指南,解释感知、决策逻辑和行动接口的核心组件,并包含前Meta工程师的见解。
@SuJinyan6: https://x.com/SuJinyan6/status/2073955240349770069
这篇由SuJinyan6撰写的博文探讨了AI Agent从简单的LLM加工具使用,向上下文工程和长时间运行框架的演变。文中引用了Anthropic的最新研究,讨论了Agent能力如何成为一种系统级属性,涉及多个组件。
@tom_doerr: 用于数据分析、插件和网页浏览的AI智能体 https://github.com/xlang-ai/OpenAgents…
OpenAgents 是一个开放平台,用于在日常生活中使用和托管语言智能体,提供数据分析、插件和网页浏览等智能体功能,并开放代码和演示。
IP备忘录:多智能体("代理型")AI系统在编程、营销和创作中的应用 – 2026年全面分析。(整合可专利性、炒作与现实、人类依赖性及成本超支)
本综合分析评估了编程、营销和创作中的多智能体AI系统,认为尽管供应商大肆宣传其自主性和效率,但这些系统仍高度依赖人类输入,面临可专利性和版权限制,并在微软和Uber等主要科技公司导致成本超支,质疑其可持续价值。