Notion 创始人不写代码:AI 编程工具成熟见证
讲述 Notion 联合创始人以 AI Agent 驱动开发的实践,Agent 连续运行 13 天、半年推倒重写的幕后故事,体现 AI 编程工具的成熟度。
讲述 Notion 联合创始人以 AI Agent 驱动开发的实践,Agent 连续运行 13 天、半年推倒重写的幕后故事,体现 AI 编程工具的成熟度。
Simon Last 是 Notion 的联合创始人,也是 Notion AI 背后的核心推动者。他和另一位联合创始人 Ivan Zhao 于 2013 年创办 Notion,目前平台用户已超过 1 亿。
在这期访谈中,Simon 讲述了 Notion AI 的完整发展历程:从 2022 年墨西哥全员大会上第一次体验 GPT-4,到推出写作助手、语义搜索,再到经历三四次失败后做出通用 Agent,以及最近发布 Custom Agent。
他还分享了自己使用编码 Agent 的工作方式——他的个人纪录是让一个 Agent 连续运行 13 天——以及 Notion 的使命如何从“帮助人们做事的工具”,转变为“帮助人们管理 Agent 的工具”。
访谈来源:No Priors 播客第 153 期,2026 年 3 月 12 日,主持人 Sarah Guo。
Notion 的 AI harness(围绕大模型构建的系统层)大约每六个月就会推倒重写一次。很多公司做完一个版本便不再改动,Simon 认为这是一个常见错误。
Notion 尝试了三到四次,才做出真正可用的通用 Agent。2025 年 9 月,Notion 发布 Personal Agent;2026 年 2 月,又发布了可以自主运行的 Custom Agent。
编码 Agent 用得好,产出可以比人类编写的代码更加健壮;用得不好,产出就全是垃圾。关键在于如何设计验证循环,而不是“凭感觉编程”。
Simon 的个人纪录,是让一个编码 Agent 连续运行 13 天。他每天睡觉前都会给 Agent 安排任务,目标是第二天醒来时,Agent 仍然没有做完。
Notion 还专门为 Agent 设计了新的 API:页面使用自定义 Markdown 方言,数据库使用 SQLite 语法。原有的 JSON 格式对 Agent 来说太过冗余。
Notion 将自己称为“模型界的瑞士”:不锁定任何一家模型厂商,并且已经开始上线中国的开源模型。
Notion 的使命也发生了根本转变:从“为人类创造最好的直接做事的工具”,变成“为人类创造最好的管理 Agent、让 Agent 替你做事的工具”。
Sarah 问 Simon,听说 Notion 第一次接触 GPT-4,是在墨西哥举行的公司全员大会上?
Simon 说,那是在 2022 年。他一直在关注 AI 领域的进展,但直到真正拿到 GPT-4 的测试权限,事情才变得“非常、非常真实”。
当时,他和 Ivan 都拿到了一个类似 ChatGPT 的早期界面。两人很快发现了两件事:
“当我们试用之后,对我们俩来说,一切立刻就变得非常清楚:现在就是开始思考如何应用它的时候了。它只会越来越好。”
他们随即制定了一个短期计划和一个长期计划。
短期计划非常明确:在文档中加入写作助手,让用户选中文本后,可以请 AI 帮忙改写或生成内容。团队为此组建了一支突击小队,并在两三个月后发布了产品。
长期计划则更加大胆:打造一个通用 Agent,把 Notion 中所有人类可以使用的工具都交给它,让它能够自行创建数据库、撰写文档、执行搜索,并将这些操作串联起来,完成更长链条的任务。
短期计划很快上线了,但长期计划在当时根本无法正常运行。
【注:Simon 和 Ivan 通过 Twitter 上的 Tools for Thought(思维工具)社区相识,并于 2013 年创办 Notion。Notion 在 2024 年达到 1 亿用户,2025 年 ARR 约为 6 亿美元,估值约为 110 亿美元。】
Notion AI 的第一个功能是 AI Writer,于 2023 年 2 月向所有用户开放。
这是最容易实现的一类功能:它处理的是单步任务,例如改写和编辑文本,不需要检索,只需要直接调用模型。
紧接着,团队开始开发 Q&A 功能:为整个工作空间建立语义索引(semantic index,也就是将文本转换为向量,从而按照语义而非关键词进行检索),然后让用户提出问题,由 AI 给出基于来源的回答。
Q&A 于 2023 年 10 月上线,但其工程量要大得多。它不是简单地接入一个大模型,而是需要构建一套能够实时更新的索引系统,并认真搭建评估体系,以保证结果质量。
Q&A 上线后,Simon 立刻意识到,索引范围应该扩展到 Notion 之外。因此,团队开始接入 Slack、Google Drive 等外部数据源。
Sarah 追问:这些平台自己的搜索功能都没有做好,Notion 凭什么认为自己可以做得更好?
Simon 笑着说,他们也很困惑,为什么大多数公司会把索引做得这么差。
在他看来,关键在于两件事。
第一,是通过长期浸泡形成的 AI 直觉。他使用的说法是 AI-pilled savviness,也就是清楚模型能做什么、不能做什么。
第二,是工匠精神和对细节的关注。
每一种数据源都不一样。你不能使用同一套方案处理 Slack 和 Google Drive,因为它们承载的是完全不同类型的信息。团队必须尝试大量不同的查询,在日常工作中持续使用产品,并不断迭代分块策略和检索流程。
Sarah 问,Notion 工作空间的组织方式千差万别,这是否会给搜索带来巨大挑战?
Simon 的回答有些反直觉:在向量嵌入(embedding)时代,工作空间的组织结构其实没有那么重要。
AI 并不关心你的文件夹树状结构是什么样子,它只关心是否存在一段文本,包含了用户需要的信息。
Simon 现在甚至会建议用户:“不要过度纠结组织方式,把东西扔进去就行。”
当然,分块策略(chunking strategy,也就是把长文档切分成多大的片段供系统检索)等技术决策仍然十分关键。但这些决策对用户是透明的,与用户如何组织自己的内容没有关系。
Sarah 说,Ivan 特别嘱咐她一定要问一个问题:Notion 的 AI harness 到底重写过多少次?
【注:harness 在这里是指围绕大模型构建的整套系统层,包括 prompt 管理、工具调用、上下文拼装和输出处理等。】
Simon 说,这已经成了公司内部的一个梗。
Notion 大约每六个月就会重写一次 AI harness,而且重写周期还在不断缩短,因为技术进步正在加速。
他认为,很多公司都会犯一个关键错误:做完一个版本之后,便将其固定下来,不再改动。
团队必须时刻关注模型和技术的最新状态,然后围绕当前状态,对整个系统和产品进行深度设计。这意味着,大约每六个月就要重写一次。
“我觉得这挺有趣的。这就是整个过程的一部分。你可以重新开始,重新思考。”
Simon 说,他们马上就要发布新版 harness,同时已经开始思考再下一版了。
Sarah 接着问:既然 Notion 如此愿意推倒重来,编码 Agent 是否让这件事变得更容易了?
Simon 说,完全正确。
他大约从 2025 年 4 月开始使用 Claude Code,从此工作方式彻底改变。
他将编码 Agent 的演化分为几个阶段:
关键在于,开发者必须认真思考架构和验证循环。
这不是“凭感觉编程”(vibe coding),也不是随口说一句自己想要什么,然后就不再管了。
你必须想清楚:
然后,再让 Agent 帮助你执行整个过程。
“如果使用得好,你可以去做比以前更有野心的事情,而且可以让产出比人类编写的代码更加健壮。反过来,如果使用得不好,产出就全是垃圾。”
Notion 内部还发生了一个有趣的变化。
设计团队创建了一个名为 Design Playground 的 git 仓库。它相当于一个简化版 Notion,包含大量 UI 基础组件,以及一个内置 Agent。
所有设计师都可以使用它快速构建高保真、可部署的原型。
过去,大家讨论设计方案时,只能指着一张静态图片问:“这个最终会是什么样子?”
现在,设计师可以直接交付一个能够打开和体验的 URL。
整个工程团队都在经历类似的变化。内部环境变得稍微混乱了一些,但 Simon 说,他喜欢这种混乱:更多原型、更多实验,而且每个 PR 都更有野心。
Sarah 问:对于涉及数据安全等高风险的部分,Notion 是否会划定边界?
Simon 说,所有 PR 仍然必须接受代码审查。
现在的 PR 通常由 Agent 编写,规模更大,也更加复杂,这是不好的一面。
但好的一面是,测试覆盖率大幅提高。Simon 个人现在不会提交任何缺少完整单元测试的 PR。
Sarah 问,AI 工具对团队规模和人才结构产生了什么影响?
Simon 说,核心变化在于:每个人的产出上限都大幅提高了,而实际产出越来越取决于个人使用工具的能力和意愿。
但 Notion 的团队规模并没有因此显著缩小。
Notion 一直倾向于使用小规模的突击小队。这在 AI 出现之前就是正确的做法,在 AI 出现之后可能稍微更加正确,但总体变化不大。
Sarah 追问,普通工程师与那些特别擅长使用工具的工程师之间,差距是否会越来越大?
Simon 的回答是:差距确实变大了。
“如果你现在会使用这些工具,就可以成为一名 100 倍甚至 1000 倍工程师。最低门槛没有改变,但能力上限得到了极大提高。”
Sarah 问:你之前说,通用 Agent 当时还无法运行,现在进展到什么程度了?
Simon 说,他们为了开发 Agent,挣扎了好几年。
每次做出来的东西都“差不多能用”,但始终不够有用。主要原因在于,时机太早了。他们前后尝试了三到四次。
最终,通用 Agent 在 2025 年 8 月或 9 月上线。
现在,用户在 Notion 中使用的 AI,就是一个完整的 Agent。它几乎可以访问 Notion 中的一切,包括创建数据库、更新内容、创建文档、搜索网页和开展研究。
每位用户都有一个 Personal Agent,它拥有与用户本人相同的访问权限。
【注:这就是 2025 年 9 月 18 日发布的 Notion 3.0。Notion 将其定位为继 1.0(文档协作)和 2.0(数据库与工作流)之后的第三次重大进化。】
随后,在这次访谈的大约两周前,Notion 发布了 Custom Agent。
与 Personal Agent 不同,Custom Agent 默认没有任何权限,用户需要手动授权它可以访问的内容。但一旦获得授权,它便可以在后台自主运行。
例如,用户可以给它一个用于记录任务的数据库,再将它连接到某个 Slack 频道。它便可以自动回复 Slack 消息并创建任务。
用户也可以让它定期搜索网页和工作空间,然后自动填充周报数据库。
【注:Custom Agent 于 2026 年 2 月 24 日正式发布。Notion 表示,早期测试者已经创建了超过 21000 个 Agent,而 Notion 内部运行的 Agent 数量也已经超过员工数量。】
Simon 说,他最兴奋的方向之一,是让 Agent 从一个初始内核出发,自我引导(bootstrap)出新的能力。
例如,如果某个集成尚不存在,Agent 可以自己编写代码来构建这个集成,部署它,然后开始使用它。
Sarah 确认:所以 Notion 对 Agent 采用的是一种更广义的定义,写代码也只是其中一种工具?
Simon 回答:
“我认为,编码 Agent 就是 AGI 的内核。AGI 将会是一个编码 Agent,而代码是一种非常有用的原语,可以用来表达确定性逻辑。”
Simon 认为,这对于知识工作 Agent 尤其重要,因为它能够自行“长出”新的能力。
集成不存在?自己构建。
需要连接新的数据源?自己接入。
Sarah 提出了一个关于竞争格局的问题:Notion 面对的是规模更大的生产力平台和 AI 实验室,而它们也在尝试构建跨数据源的集成与 Agent。Notion 凭什么获胜?
Simon 将市场分为三层:
在模型层面,Notion 将自己定位为“模型界的瑞士”。
Notion 不绑定任何一家模型厂商。客户不希望被锁定,而不同月份、不同模型各有优势。Notion 希望用户可以随时使用当下最好的模型,并且能够方便地切换。
Simon 说,开源模型确实已经变得非常优秀。
目前有四家中国模型都“相当不错”。Notion 刚刚在 Agent 中上线了其中一款,并计划将它们全部接入。
这些模型比前沿模型便宜得多,在许多应用场景中更加合适。
Notion 的定位是:接入所有最优秀的模型,提供高质量的 Agent 实现,然后打造一个真正适合人类与 Agent 协作的工作空间。
【注:截至访谈时,Notion 已支持 GPT-5、Claude Sonnet 4 等前沿模型,以及 MiniMax 等开源模型。用户可以在 Agent 设置中选择模型。】
Sarah 问,Notion 现有的 blocks、数据库等结构,对 Agent 是否有用?
Simon 说,非常有用。
但现在出现了一个新的挑战:必须让 Agent 可以方便地使用这些结构。
过去,Notion 的 API 是为人类开发者设计的。现在,Notion 多了一个“新客户”,也就是 Agent 本身。
最初,这确实是一个问题。
Notion 的 API 使用一种非常冗余的 JSON 格式来表示 blocks。对于 Agent 而言,这种格式既啰嗦,又难以处理。
团队接受了这个挑战,并完成了两项工作。
第一,他们为页面读写设计了一种 Markdown 方言。它看起来与标准 Markdown 相似,但扩展了对所有 Notion block 类型的支持。模型非常擅长处理这种格式。
第二,数据库交互使用 SQLite 语法,因为模型天然擅长 SQL。
Sarah 问,团队如何判断什么对 Agent 更好?
Simon 说,有两条路径。
第一条是经验主义:持续尝试,然后发现“它不擅长这个”“这消耗的 Token 太多了,应该如何压缩”。
第二条是第一性原理:思考模型的训练数据中包含什么、模型具有什么先验知识、它天然擅长什么格式,以及什么才是高效的 Agent 循环模式。
Sarah 总结说:所以你们其实是在做用户研究,只不过用户是 Agent。
Simon 笑着回答:没错,而且这个“用户”随时都可以聊天。你对它拥有无限的访问权限,还可以编写脚本进行批量测试。
Sarah 问到了 Simon 个人的 Agent 工作流。
Simon 说,他正在开发一个新原型,同时运行着好几个 Agent。
他的日常工具是 Claude Code 或 Codex 的命令行版本。他很喜欢命令行工具,因为它们简单、好用。
他现在的目标,是全天候不间断地同时运行尽可能多的 Agent。
每天晚上睡觉之前,他都会确保自己已经给 Agent 安排了足够多的任务,从而保证第二天早上醒来时,它们仍然没有做完。
“对,那就是胜利。我的个人纪录是让一个编码 Agent 连续运行了 13 天,中间没有停过,基本上一直在按照任务列表工作。”
Sarah 承认,自己这一周也多次在半夜醒来,检查 Agent 是否仍在运行。
Simon 说,他也是如此。每天睡觉前,他都会最后确认一遍 Agent 还在转。
Simon 的 Personal Agent 也是他的日常工具,因为它能够访问公司工作空间中的所有内容。
例如,在访谈前一天晚上,他让 Agent 帮自己查看 Custom Agent 发布后的用户反馈。
但他最得意的是一个邮件分拣 Agent。
这个 Agent 连接了他所有的工作邮箱和个人邮箱,每天自动归档不需要阅读的邮件。
搭建过程非常简单:
最初几天,Simon 还需要不断纠正它。几周后,他完全取消了审批环节,让 Agent 全自动运行。
Simon 说,这彻底解决了他的邮件问题。
他的工作主要在 Slack 上进行,95% 的个人邮件和工作邮件根本不需要查看。
现在,当他打开收件箱时,里面只剩下真正需要自己处理的内容。
Simon 还有一个反馈路由 Agent。
Notion 内部有一个 Slack 频道,同事们会随手在里面发布产品反馈和 bug 报告。
过去,这些反馈有时会有人回应,有时则会被忽略,因为它们涉及太多不同的团队。
这个 Agent 唯一的工作,就是将反馈路由到正确的位置。
它采用了类似的“记忆”模式,在实际运行过程中学习路由规则,并逐渐积累了数百条规则。
例如,如果收到一个移动端 bug,它会知道应该将其路由给移动团队,并在该团队的数据库中创建任务。
Simon 说,在最初阶段,他会检查 Agent 学到的规则是否合理。一旦确认它能够正常工作,他就不再查看了。
偶尔出现问题时,他再回来修正。
他的通用模式是:
Sarah 提到,Simon 和 Ivan 最初是在 Tools for Thought 社区认识的。经历这几年的 AI 变革之后,Notion 的核心定位是否发生了变化?
在 AI 出现之前,Notion 的目标是为人类创造最好的工具,让人类直接完成自己的工作。
现在,它的目标变成了为人类创造最好的工具,让人类管理 Agent,由 Agent 替自己完成工作。
“在 AI 出现之前,我们的目标是创造最好的工具,让人类直接完成自己的工作。现在,我们的目标是创造最好的工具,让人类管理 Agent,由 Agent 替他们完成工作。这是一个巨大的转变。”
不过,Simon 随后提到了一个重要发现:Notion 过去构建的所有原语,在 Agent 时代依然非常有用。
文档依然是必需的,因为 Agent 很喜欢编写 Markdown。
数据库也依然是必需的,因为结构化数据仍然是一项刚需。
如果有 100 个后台编码 Agent 同时工作,你不会想要 100 个聊天窗口,而是会想要一个看板。这一点与过去完全相同。
Notion 只需要增加一些新的原语:
Sarah 最后问:过去六个月里,你个人的工作方式发生了什么变化?
Simon 说,已经完全改变了。
从 2025 年夏天开始,他就不再手写代码。
这个过程经历了几个阶段:
如果 Agent 跑偏了,他再介入纠正。
现在,他是一名 Agent 管理者,而不再是一名程序员。
Sarah 问,Notion 内部如何帮助非技术团队建立使用 Agent 的直觉。
Simon 说,公司会定期举办内部 workshop 和 hackathon。
一个月前,他刚刚与人力资源团队(People Team)开展了一次活动。
这个团队反而成了 Custom Agent 最积极的使用者,因为他们的日常工作中,存在大量需要在 Slack 与 Notion 之间来回搬运信息的重复任务。
Simon 的观察是,大家其实都非常兴奋,也都想尝试,只是需要一点推动,帮助他们迈出第一步。
一旦跨过“什么是 prompt”“Agent 如何被触发和唤醒”等最初的技术门槛,Agent 的交互方式其实非常符合直觉,因为用户只是在与它说话。
最大的障碍可能不是能力问题,而是信心问题:必须让人们相信,这些东西真的可以工作。
Notion 的 AI harness 多久重写一次?为什么?
大约每六个月重写一次。因为模型和技术进步得太快,系统必须紧贴当前状态进行设计。完成一个版本后便停止迭代,是一种常见错误。
编码 Agent 对团队规模有影响吗?
个人产出的上限大幅提高,但 Notion 的团队规模并没有显著缩小。小团队一直更好,这一点在 AI 出现前后没有发生本质变化。
Notion 如何为 Agent 设计 API?
页面读写使用 Markdown 方言,数据库交互使用 SQLite。其设计方法结合了经验主义试错与第一性原理推演:既观察 Agent 的实际表现,也考虑模型训练数据所形成的先验能力。
Custom Agent 和 Personal Agent 有什么区别?
Personal Agent 拥有与用户相同的权限,被动响应用户请求。Custom Agent 默认没有权限,需要用户手动授权,但可以按照计划或触发器在后台自主运行。
Simon 认为 AGI 会是什么样子?
AGI 会是一个编码 Agent。代码是表达确定性逻辑的优秀原语,而能够编写代码的 Agent,可以不断自我扩展能力。
Simon 在这次对话中反复传递了三个核心信息。
第一,AI 系统必须随着模型能力的变化持续重写,不能完成一个版本后就停止迭代。
第二,编码 Agent 不只是开发者的效率工具,它还是 Agent 实现自我进化的关键能力。
第三,生产力软件的定义,正在从“人类使用的工具”转变为“人类用来管理 Agent 的工具”。
一个值得继续追问的问题是:Custom Agent 自主运行带来的 prompt injection 安全风险。
Simon 在访谈中并未提及这一点,但 Notion 官方文档已经表明,这是他们正在投入的领域。当 Agent 数量超过员工数量时,安全和控制问题只会变得越来越重要。
另一个悬而未决的问题是:如果 AGI 真的是编码 Agent,那么模型厂商自己开发的 Agent,与 Notion 的 Agent 将是什么关系?
在模型厂商同样希望成为平台的时代,“模型界的瑞士”这一定位还能维持多久?
不过,Simon 自己也给出了一个方向:管理 100 个 Agent 的人究竟需要什么?
答案不是 100 个聊天窗口,而是一个看板。
如果这个判断成立,那么 Notion 十多年来积累的协作基础设施就不是包袱,而是一道壁垒。