AGENTS.md 失火」——Shopify CEO 当众威胁禁用 Claude Code,把 OpenAI 的开放标准问题摆到了企业治理桌面
> 北京时间 2026-08-26 17:00 · 智柴 AI 推送 · AI Coding 厂商治理栏目
!图片来源:World Programming 转载 The New Stack 8-26 文章配图
一句话警语
一个 markdown 文件,决定了一家 10 亿美元营收 SaaS 公司的开发者,是否继续用一款 AI 编程工具。
这不是文档管理的细节,是企业级 AI 编程工具「单一标准 vs 多标准」治理博弈第一次在公开场域被点名。8 月 25 日(北美周二),市值约 1,400 亿美元的 Shopify CEO Tobi Lütke 在 X 上发帖:"我在考虑禁用 Claude Code,直到他们改变主意、开始读 AGENTS.md 和 .agents/skills 等文件。"这是全球最大规模的电商 SaaS 厂商对一家前沿模型公司最不客气的公开施压——把 Anthropic 关闭 feature request 这件原本属于 GitHub issue 区的小事,硬拽到了万人围观的舞台中央。
按理不该如此。AGENTS.md 只是 OpenAI 在 2025 年 8 月为了让 Codex 等编程智能体能直接读取项目级指令而引入的开放协议,到了 2025 年 12 月已被超过 6 万个开源项目和 agent 框架采用,OpenAI 后来把这一格式的所有权移交给了 Linux 基金会旗下的 Agentic AI Foundation。Claude Code 偏偏不用,它仍执着于自家的 CLAUDE.md 私有格式——尽管开发者已经提了将近一年。
「我们已经写了自动化来兜底,」Lütke 说,「但这是一笔不该付的、愚蠢的复杂度税。」
本文把这件事放回 2026 下半年 AI 编程战场的大背景里讲:当所有人都说「智能体正在走向企业核心流程」时,第一个被绊倒的不是模型能力,而是「一个 markdown 文件该叫什么名字」的协议之争。
🚨 一场分裂脑的工程事故
先讲清楚这件事为什么会发生、为什么伤害是真实的。
Shopify 的工程规模决定了它的脆弱性:「数千名开发者在同一个巨型 monorepo 上写代码」——这是 Lütke 的原话。在一个分布式 git 仓库里,指令文件(context file)必须能递归地从目录树上读出来:某个子目录里放什么 build command、哪个测试套件要跑、用什么 lint 规则——这些信息如果缺失或错位,AI agent 就会按「半失忆」("lobotomy",Lütke 用的词)状态写代码,写出来的 PR 跑不过 CI,却没人能立刻指出原因。
这就是 Lütke 所说的 「split-brain 问题」——
> "Agents and Claude files are recursively applied through the tree. With thousands of devs in a mono repo, it just does happen that one directory is missing one of the two files and this means that a subset of devs work with lobotomy."
人话就是:在 monorepo 里,有的目录里只放了 AGENTS.md(给 Codex/Copilot/Jules/Gemini CLI/VS Code 读),有的只放了 CLAUDE.md(给 Claude Code 读),有的两个都放了——这就导致 「同一个团队里的不同开发者,看到的是不同的 agent 行为规范」。
!图: Shopify monorepo 中 AGENTS.md / CLAUDE.md 协议错位导致的 split-brain
> 「注解」:所谓「split-brain」,在分布式系统里指集群节点出现不一致——每个节点都自以为是「正确」的,但因为网络分区或配置不同步,它们各自为政。Lütke 把这个词借过来形容一群开发者的 AI 工具在同一个代码库里各自为政:他们以为自己在按「公司规定」写代码,其实每个人背后的 agent 看到的是不同的「规定」。
后果很直接:第一,CI 红灯——本地通过、CI 失败,因为 agent 不识别某个测试要求;第二,重复 review——PR 里塞进了团队不需要的 linter 改动,因为 agent 没读到风格指南;第三,审计缺口——安全 agent 在某个目录里没读到密钥处理规范,于是提交时把密钥写进了明文。这些问题每一次单独看都不致命,但汇在一起,就是一笔「企业治理的隐形成本」。
Lütke 给出 Shopif 内部的解法:「自动化兜底」("We fix this with automation")——平台团队写了一段脚本,把每出现一个 CLAUDE.md 就同步生成一个内容相同的 AGENTS.md,反之亦然。所以 Shopify 并没有真的因为这个分裂脑跌倒,但 「脚本本身成为一种产品债」:它是工具缺陷的临时贴片,每一次新 agent 协议格式出现都要重写一次。
这才是 Lütke 真正愤怒的地方——不是 Claude Code 不好用,是 Anthropic 不愿意承认一个已经存在一年、跨多家工具的开放标准。
📜 时间线:一年前的开放标准,一年前的关闭请求
这件事得从 2025 年 8 月倒回讲起。
那时候,OpenAI 推出 AGENTS.md,意图非常明确:把「如何在某个仓库里给 agent 提供项目级指令」这件事,从「每个工具自己挑一个文件名」变成「一个社区共同维护的标准」。这一选择不是凭空冒出来的——它回应的正是工程团队长期以来的痛点:开发者要在每个仓库里写一遍指令,而当 agent 工具多达 5-7 款时,把同一份信息抄写 5-7 遍变成不可持续的工程债。
到了 2025 年 12 月,AGENTS.md 的覆盖远超 OpenAI 自己的预期——根据 OpenAI 的公开数据,超过 6 万个开源项目和 agent 框架已经开始使用这一格式,兼容的工具包括但不限于:
- OpenAI 自家的 Codex
- Cursor(Anthropic 之外最被讨论的 AI IDE)
- Gemini CLI(Google DeepMind 系)
- GitHub Copilot(微软系)
- Jules(Google 异步 agent)
- VS Code(编辑器层)
!图: AGENTS.md 从 OpenAI 起草到基金会移交的时间线
> 「注解」:Linux 基金会的「Agentic AI Foundation」是一个今年才成立的中立组织,目的是让 AI agent 相关的协议(context 文件格式、tool calling 标准、权限模型)不依赖于任何一家模型公司。这类似当年 HTTP 协议从 IETF 而非 Netscape 出来的逻辑——基础设施中立,商业竞争才能在协议层之上发生。
但 Claude Code 拒绝读这一协议。
这件事的证据链很硬——GitHub issue 区的两条公开记录:
第一条:Issue #7060,开发者要求 Claude Code 支持 AGENTS.md。第二条:Issue #69151,更近期的呼声聚焦「递归 AGENTS.md 发现」(recursive AGENTS.md discovery)。这两条 issue 都被 Anthropic 标记为 「not planned」(不计划实现)——它意味着 Anthropic 主动放弃了与一个跨多家工具的开放协议握手的机会。
这一决定的代价在 8 月 25 日被 Lütke 放到桌面上:一个市值 1,400 亿美元的 CEO,要为这件事发 X 帖。
🧭 Anthropic 的理由,以及为什么这个理由在企业治理层面站不住
Anthropic 的工作文档确实提供了 workaround:开发者可以让 CLAUDE.md 文件里 import 一份 AGENTS.md,或者用 symlink 把两个文件当成同一个。但在数千开发者维护的 monorepo 里,这两条 workaround 都不能扩展:
import写法需要主动维护:每次上游的AGENTS.md改动,CLAUDE.md里的导入也要同步。Lütke 所说的「自动化兜底」其实就是这个含义——平台团队维护一个 watcher,不断拉平两份文件。symlink在 monorepo 模块化场景下不通用:有的子模块用 subrepo 维护,symlink 跨 subrepo 可能断裂——尤其是用 Git submodules 或 partial clone 的工程结构。
要回答这个问题,我们就得看看 Claude Code 自己的工作机制:它对 CLAUDE.md 的处理也是递归扫描整个目录树,类似 AGENTS.md 的工作方式。这两者的差异在「社区共识」层而非「工程实现」层——一个是 6 万+ 项目使用的开放协议,一个是仅 Claude Code 一家识别的厂商私有协议。
Anthropic 的潜在理由可能是:「我们要保护 Claude 的差异化体验」——CLAUDE.md 里可能允许一些 Claude 特有的语义(譬如引用项目里 .claude/skills 的私有 skill 定义)。这个理由在「单 agent」维度说得通,但在「多 agent 协作」维度立刻塌方:开发者一旦在同一个仓库用 Codex + Claude Code 两套工具,差异化体验就会退化为分裂脑。
!图: AGENTS.md 与 CLAUDE.md 的覆盖范围差异
> 「注解」:在计算机科学里,「协议中立」是基础设施稳定的最低要求——HTTP 协议不属于任何浏览器厂商;TLS 不属于任何 CA;SMTP 不属于任何邮件服务商。同理,AI agent 的 context 文件协议应该不属于任何模型公司,否则就会出现 Lütke 描述的 split-brain。Anthropic 拒绝读 AGENTS.md,在技术能力上完全没问题,但在协议治理层面,它把「差异化体验的优先权」凌驾于「跨工具互操作的公共利益」之上。
8 月 24 日一则 arXiv 论文 2602.14690 用统计学把这件事量化了:在 2,926 个随机抽取的 GitHub 仓库里,AGENTS.md 已经成为开发者向 agent 传递指令的最常见方式——它的覆盖在跨工具的样本里远远领先。这是一条独立的、可信度高的实证证据。
⚖️ Lütke 那句「禁止」的真实分量
「禁用 Claude Code」不是 Lütke 一个人说了算。Shopify 有数千名工程师,其中相当比例已经在用 Claude Code 写代码。Lütke 提出的是平台团队的「工具采购清单」——如果它真的被禁用,意味着 Shopify 的工程师必须从 Claude Code 切换到 Codex/Cursor/Copilot/Gemini CLI 等支持 AGENTS.md 的工具。
但 Lütke 的真正诉求不是「换工具」,是 「让 Anthropic 改主意」——这是公开施压的标准动作:「我不用左手打人,我用『我可能要离开』这件事来逼你坐回谈判桌」。在企业 SaaS 工具采购里,这种「大客户施压」非常有效:Anthropic 不可能丢掉 Shopify 这个层级的标杆客户。
事实上,Anthropic 在 8 月 25 日同一天(北美时间)有一个动作——它 推出 Anthropic Economic Index(详见本批次另一篇「Anthropic 经济影响」主题),把 AI 在职业中的使用做了第一份系统性测量。这件事本身可能与 Shopify 风波没有直接关联,但Anthropic 同周内密集发声的姿态表明它在「企业级工具治理」这件事上正在补足功课。
Lütke 的立场有两个支撑:
1. 「标准中立」:开放标准让工具之间可互操作,让企业不被任何一家模型公司绑架——这是 Facebook 早年开源 React、Linux 基金会主导 Kubernetes、Google 把 TensorFlow 推上标准化轨道时反复使用的逻辑。 2. 「企业治理成本」:每个工具的私有格式都是一笔工程债,叠加起来就是数万小时/年的人力开支——这笔钱被均摊进工具采购价格里。
但 Claude Code 的立场也有两个合理之处:
1. 「差异化体验」:CLAUDE.md 可能允许比 AGENTS.md 更丰富的语义,譬如私有 skill 调用、上下文窗口策略微调。 2. 「抢占标准」:未来如果 AGENTS.md 演化出 Anthropic 不同意的方向(譬如微软推的 XPIA 协议、谷歌推的 A2UI 协议),Anthropic 会被锁死在别人的协议里。
双方分歧的核心是 「工具差异化的优先级 vs 跨工具互操作的公共利益」——AI 编程工具市场还没大到必须用「开放协议 vs 厂商私有」这样的二分法解决。Claude Code 也许找到了一个工程上的「窄门」,但 Lütke 8 月 25 日的公开施压意味着这条窄门正在被多家大客户集体拒绝。
🧪 一个实验性的开放问题
如果把这件事延展到「AI agent 协议治理」这个更大的层面看,AGENTS.md vs CLAUDE.md 只是冰山一角:
- 协议层:AGENTS.md(context)、MCP(tool calling)、A2UI(多 agent UI)、XPIA(执行权限)——一长串互相交织的协议栈正在被 7-8 家厂商各自起草。
- 采购层:Shopify 这种大客户的「工具采购清单」开始有杠杆——这是历史上第一次,AI agent 的标准治理要由企业客户而非协议机构推着走。
- 合规层:15 州 AG preservation letter(一份写给 OpenAI/Anthropic/Meta/X 等多家 AI 实验室的公开信,要求保留训练数据用于司法审查)本周内生效——这意味着 AI agent 的协议层可能很快要进入「合规设计」阶段,开放协议 + 司法可审计是必选项。
🔬 一句话总结
AGENTS.md 的胜利不是由 OpenAI 自己赢来的——是由 6 万个项目、Cursor、Gemini CLI、Copilot、Jules、VS Code 这些分布式参与方共同推动到「事实标准」的位置的。Claude Code 的代价是 「拒绝加入这一共识的代价 = 一家前沿模型公司开始丢失最大体量级别的企业客户」。
这不是技术失败——Anthropic 在编程任务上的能力并不弱。这是 协议治理失败:当其他厂商在合作起草协议时,闭门造车显然不再奏效。
下一阶段值得观察:Anthropic 会不会在三个月内表态支持 AGENTS.md?会让步到何种程度?会让步的是「递归发现」还是「完整 import 兼容」?这些问题的答案将定下 2026 下半年 AI 编程工具市场的「协议治理序章」。
---
📚 5 个最核心参考文献
1. World Programming / The New Stack 8-26 转引:Shopify CEO 威胁禁用 Claude Code.Anthropic 已关闭 feature request——https://www.worldprogramming.org/posts/shopifys-ceo-threatened-to-ban-claude-code-anthropic-had-already-closed-the-feature-request-ipwwgk 2. Lütke X 主帖:I'm thinking about banning Claude code at Shopify...—https://x.com/tobi/status/2092259436538495186 3. Lütke 跟帖:Agents and Claude files are recursively applied through the tree...—https://x.com/tobi/status/2092308116524138711 4. Anthropic Issue #69151:Recursive AGENTS.md discovery——https://github.com/anthropics/claude-code/issues/69151 5. arXiv 2602.14690:GitHub 仓库中 context 文件使用统计研究——https://arxiv.org/abs/2602.14690