返回 文章 apply CMS 文章

Claude Mods:将智能体框架翻转成注意力接口

Claude Mods 让你用代码定制 Claude Code 的注意力接口,把框架从机器转向人类。

Claude ModsClaude Code智能体框架注意力接口
成长分 / 100 72 综合收获、行动、留存与影响

Claude Mods:将智能体框架翻转成注意力接口
为什么值得读理解智能体框架(harness)正在从机器接口演变为人类注意力接口的趋势。

学习如何通过 Claude Mods 定制 Claude Code 的交互,提升 AI 工程工作流效率。

关键洞察
  1. Claude Mods 是运行在 Claude Code 中的 TypeScript/JavaScript 插件,通过响应事件来修改界面行为和渲染。
  2. 框架反转:Mods 让人类和智能体共同构建面向人类的接口,使人类注意力层可编程。
  3. 内置 Mod 'You Should Know' 通过侧智能体观察主智能体,标记容易被忽略的重要信息。
转成行动

深入阅读

正文与原文对照

原文保真覆盖:全文原文字符:13928

过去几周,我使用 Claude Mods 将 Claude Code 塑造成适合我的 AI 工程工作流。Claude Code 开箱即用就很棒,但每个工程工作流都不同。Claude Mods 让你按照自己希望关注的方式,让 Claude Code 成为你的专属工具。

“关注”这部分现在是最重要的。

在最近 Latent Space 的一篇文章《Agent Harness 的演变》中,我提出:随着模型将更多 harness 吸收到其权重中,剩下的部分则面向人类。它变成了注意力界面(Attention Interface):决定 agent 何时打断你、向你展示什么以及需要你做出哪些决策的层次。Claude Mods 是注意力界面的早期版本,而且是一个你可以自己塑造的版本。

我的赌注是:最终,harness 会成为一个平台,其他公司在其上构建,而模型作为引擎。正如浏览器成为 Web 应用的平台,harness 也可能成为人与 agent 之间界面的平台。

Claude Mods:它是什么?

一个 mod 是一个 Claude Code 插件,由TypeScript 或 JavaScript 函数组成,这些函数在 Claude Code 内部运行。这些函数定制 CLI 和 Desktop 中界面的行为和外观。Mods 响应事件,例如提示、工具调用或界面渲染。它们可以观察事件、修改事件的渲染方式,并代替默认行为处理事件。

Claude Mods 是agent harness 的中间件。它们注入代码,改变 Claude Code 的执行和渲染流程,从而在运行时改变应用程序的行为。

Claude Mods 让人和 agent 共同构建 harness 中面向人类的部分。你现在可以与 Claude 合作,设计 Claude 如何与你协作。这就是“注意力界面”的本质。

Harness 的反转

Agent harness 最初是 agent 与其运行机器之间的接口。它让你向 agent 发出提示,然后 agent 发送命令、编辑文件并调用工具。现在它正逐渐变成 agent 与人类交互的方式。

Claude Mods 让你反转 harness 的方向。不再是 harness 从 agent 指向机器,而是你让它从 agent 指向人类操作员,harness 成为与人类注意力交互的方式。

Claude Mods 让人类层可由使用 Claude 的人编程。

Claude 也可以为你构建 mods。Claude Code 有一个内置技能,教它如何构建 mods,因此你可以用自然语言请求你想要的 mod,Claude 会构建它。

实践中的 Mods

Claude Code 自身的一些功能已经是 mods。Anthropic 已经内置发布了六个。你可以通过运行 /plugin 并打开已安装来查看这些,它们列在“内置”下:

  • agents-md:将 AGENTS.md 加载为项目指令。
  • diff:接管 /diff 并绘制其窗格。
  • plugin-authoring:为 Claude 提供它用来为你编写 mods 的技能。
  • sec-default:保护你的组织管理的内容免受用户安装的 mods 的影响。
  • telemetry:发送 Claude Code 及其内置 mods 记录的分析记录。
  • you-should-know:一个侧 agent,当它发现你可能错过的东西时,在提示上方显示一条注释。它是唯一默认关闭的。

其中大部分在后台工作,这很有趣,因为这意味着 Anthropic 正在将 Claude Code 的部分构建为 mods——甚至是你可能注意不到的部分。我自己开启的是You Should Know。

以下是我在实践中发现最有用的两个 mods:一个是内置的,一个是我自己构建的。

1. You Should Know

这是 Anthropic 构建的原生 Claude Code 插件。它运行一个侧 agent,在主 agent 工作时观察它,并标记你可能错过的重要信息。可以这样理解:对输出有实质性影响的工具调用和决策,但不一定容易看到,因为它们埋在 agent 跟踪记录中。它内置于 Claude Code,但直到你开启它才会生效。

这里有一个真实的例子。我让 Claude Code 简化我某个个人项目中嘈杂的 UI 文本。主 agent 精简了 Compare 屏幕上的文案,安装了新构建并截取了前后对比截图。一切看起来都完成了。

然后You Should Know为我标记了一些东西。CompareView.swift,即 agent 正在编辑的文件,已经有未提交的工作——大约 45 个其他文件也是如此。如果我后来丢弃了演示编辑,我也会丢弃那些早期未完成的工作。它的建议是先提交或暂存早期的工作。

在这种情况下,You Should Know mod 让我免于无意中丢弃工作。

2. Next Steps Supervisor

这个 mod 只在编辑了文件、运行了命令或进行了 8 次或更多工具调用的回合之后运行。在下面的截图中,你会看到六条不同的信息被标记出来供你注意。Next Steps Supervisor然后建议下一步操作,作为一个可点击的按钮,将指令作为消息发送给 Claude Code。这个 mod 作为ModSmith的一部分提供——一个我构建的开源 Claude Code 插件,包含几个不同的内置 mods,以及一个 Claude 可以用来构建协同工作的新 mods 的模板。

其他地方的注意力界面

Anthropic 并不是唯一构建注意力界面的公司。最近的两个产品,一个来自 OpenAI,一个来自 Cursor,指向了相同的方向。以新的ChatGPT Intelligent UI和Cursor 的 PR 路由与审批为参照,可以看出 Claude Mods 的独特之处。

ChatGPT 的 Intelligent UI

10 月 7 日,OpenAI 在 ChatGPT 中发布了 GPT-6,同时推出了一个名为Intelligent UI的新 ChatGPT 界面。ChatGPT 不再只用文本回答,现在它可以在回答的同时生成界面:图表、地图、清单、表单,以及像账单分摊器或储蓄计算器这样的小工具。所有这些都由模型即时生成,作为一种生成式 UI。

来源:OpenAI 的 GPT-6 发布公告

在 OpenAI 的一个示例中,ChatGPT 用多项选择式的追问来缩小你正在寻找的范围。可以这样理解:模型决定何时需要你的判断,然后构建界面让你给出判断。

这就是注意力界面。智能体设计了你与它的回答进行交互的方式。

但请注意 ChatGPT 的 Intelligent UI 与 Claude Mods 之间的区别。对于 Intelligent UI,模型逐个回答地从 OpenAI 构建的组件库中挑选界面。发布时提到的唯一控制项是调低视觉元素。

Cursor 的 PR 路由与审批

Cursor 从另一端着手解决同一个问题:不是一个人和一个回答,而是一个团队和一连串拉取请求,其中越来越多的请求由智能体编写。必须有人来决定哪些变更值得人类在环(human-in-the-loop)的关注。

PR 路由与审批做出了这个决定。它根据代码归属和提交历史分配审查者,并且可以自动批准低风险的 PR。它会权衡风险评分与你设定的阈值、Cursor 的 Bugbot 和安全审查者给出的发现,以及仓库中的策略文件。

研究期间有一条规则引起了我的注意。如果某个 PR 修改了审批策略,智能体不会使用修改后的版本来放宽对同一个 PR 的审查。它会改为从基础分支读取策略。这意味着智能体无法通过修改规则来让自己的 PR 获得批准。

Cursor 也明确说明了限制。其文档称该功能“不能替代完整的代码审查”。重点是把人工审查用在关键之处,而不是取消人工审查。

三个系统之间的差异

这三个系统都塑造了什么会吸引你的注意力以及如何吸引。主要区别在于谁有权设计注意力界面。

  • ChatGPT Intelligent UI:模型在实验室构建的框架内为每个回答设计界面。零配置,但控制力很弱。(我认为目标用户不是工程师。)
  • Cursor PR 路由与审批:团队编写策略,固定的审查工作流来执行它。可配置,但交互流程由 Cursor 决定。你决定规则,而不是界面。
  • Claude Mods:你和智能体用代码构建界面本身。一个 mod 可以挂接到循环中的任意位置——从你提交的提示词,到智能体发起的工具调用,再到一轮对话结束的时刻——并决定在那里向你展示什么,以及你可以对此做什么。

我之前展示的 supervisor 就是一个很好的例子。Cursor 可以很容易地因为某个 PR 触及的文件而将其路由给我。ChatGPT 也可以同样轻松地把裁决渲染成一张漂亮的卡片。但两者都不会让我决定:每一轮中,凡是编辑文件的都要获得第二意见;该意见要列出所采取的捷径;每个建议的下一步都只需按一个键即可执行。那个界面之所以存在,是因为我更喜欢以这种方式投入注意力,而 Claude 和我一起构建了它。

ChatGPT 和 Cursor 给你的是别人设计的注意力界面。Claude Mods 让你和 Claude 一起设计自己的界面,但代价是你要负责让它变得有用。

Mods 有什么问题

Mods 并非没有代价,我遇到了一些缺点。

第一个是噪音。Next Steps Supervisor 会在任何编辑文件、运行命令或进行 8 次及以上工具调用的轮次之后运行。实际上,几乎每一轮都是如此。自从我在 10 月 15 日安装它以来,我在 Claude Code 中的 111 轮里有 99 轮达到了这个标准。其中一些裁决是有用的,另一些只是噪音。所以当一个 mod 几乎每一轮都发声时,我就会开始略过它——这违背了注意力界面的初衷。

第二个是成本。每次 supervisor 检查都会分叉对话并重新读取它。其中大部分由提示词缓存提供,但该 mod 自己的 README 估计,在 50k token 的会话中,每次检查大约消耗 5–6k 输入等效 token,缓存过期时更多。

第三个是信任。Mod 是以你的权限运行的代码。Anthropic 的文档对此说得很清楚:一旦加载,mod 就可以读写你的文件、看到你发送的每一条提示词,并消耗你的用量。此外,“mods 不在沙箱中运行。”当你用 --safe-mode 启动 Claude Code 时,内置 mod 也会继续运行。对于我自己编写的或随 Claude Code 一起发布的 mod,我感到放心,但在安装任何其他人的代码之前,我会先读一遍。

好处在于,mods 可以以其他工具无法做到的方式进行修复。当 supervisor 在某个会话中成为噪音时,/supervisor off 会将其关闭。因为这是我的 mod,我可以改变它运行的条件。

这将走向何方

定制 harness 并不保证对每位工程师都是好事。我添加的每个 mod 都是另一条需要我投入注意力的信息。在我自己的一个会话中,我的 Next Steps Supervisor 把一个任务标记为“已解决”,却又列出了两个缺口和三条捷径。智能体很聪明但远非完美,我的注意力也远非完美。

所以我用来衡量 mods 有用性的测试很简单:它是否揭示了我本来会错过的东西、让决策更容易,或者让我能够采取行动而不被更多输出分散注意力?如果不是,那它就只是装饰,而不是有用的工具。

目前,构建一个 mod 的流程是这样的:我注意到自己与 Claude 协作方式中的摩擦,描述我想要的 mod,然后 Claude 和我一起构建它。仍然需要我个人的注意力来发现摩擦。

来源:Claude Code 关于创建 mods 的文档

下一步是让 harness 注意到摩擦。Claude Code 已经保存了我的会话记录。可以这样理解:一个后台进程读取这些记录,找出我反复纠正 agent 或手动检查同一件事的地方,并为此建议一个 mod。然后它帮助我测试该 mod,并根据我的反馈进行改进。

对 AI 工程师来说,这是最好的情况:一个可塑的 harness,能从真实使用中建议改进自身的方法。Claude Mods 是朝着这个方向迈出的一步。

如果我在开头所做的判断是对的,几年后我们将谈论那些建立在 Claude Code、Codex 或一个尚不存在的 harness 之上的初创公司。

我留给你一个问题,希望答案能为你提供实际价值:你在使用 Claude Code 时注意到了哪些摩擦,而本文能启发你今天就用一个 mod 来解决它?