Anthropic 发布 Claude Code 的模组:交换功能、重新设计界面并轻松缩减核心
目录
你可能想知道的事
1) Claude Code 的模组与 hooks 有何不同,它们开启了哪些新能力?
2) 在未采用沙箱隔离的情况下运行模组,实际的安全影响为何?
主要主题
在 10 月 2 日,Anthropic 宣布对 Claude Code 作出重大扩展:一个模组系统,允许开发者和用户通过小型 TypeScript 函数改变行为、定制 UI,并替换内置功能。这些模组打包为插件,可从 CLI 或桌面应用安装,为 Claude Code 带来新的定制化层级,同时也将安全责任转移给安装者。
模组背后的理念是模块化与灵活性。Anthropic 不再将 Claude Code 视为一个整体固定的产品,而是使其可以被精简为一个最小核心,并仅重新添加用户或组织偏好的功能。官方团队简洁地描述了该能力:用几行 TypeScript 写一个模组,或让 Claude 为你生成代码,该模组可以拦截事件、修改提示、重绘 UI 元素,或完全取代原生行为。
Claude Code 之前提供的是 hooks,会在特定生命周期点运行代码。hooks 在受限方式扩展功能时很有用,但 Anthropic 明确区分:hooks 无法重写事件、无法渲染新 UI,也无法替换内置功能。模组则明确为填补这些空白而设计。操作上,Claude Code 会为诸如工具调用、权限请求和部分 UI 渲染等动作发出事件。模组附加到这些事件,并可以在原始处理程序之前、之后或替代其运行;也可以包装事件处理程序以执行前后处理。
官方文档列出典型能力:在提示到达模型前修改其内容、拦截并重写或重试工具调用、批准或拒绝权限请求,以及在系统读取工具输出前清理敏感令牌。当多个模组附加到相同事件时,它们按加载顺序执行:先加载的模组先看到事件,后加载的模组看到最终结果。这种确定性的排序允许管理员和开发者推理出优先级与行为层次。
Anthropic 已经将一些内置功能转换为模组。例如,现有的 /diff 命令现在以模组实现,并可通过 /plugin 界面禁用或替换。这表明公司的意图:将更多功能转移到模组/插件生态中,让用户能够根据特定工作流调整 Claude Code 的界面与行为。
Anthropic 在一段短示范视频中展示了三个渐进式模组示例。第一个 Token Weather 主要是观察性的:它在提示上方添加一个横幅,显示模型上下文窗口已使用多少。根据开发指南,Token Weather 大约 80 行代码且不修改系统行为——它只是观察并显示状态。
第二个示例 Blast Radius 则是主动介入。当用户提示 Claude 删除旧的 build 输出且 Claude 尝试运行 rm -rf build 时,该模组会拦截该动作并展示一个面板,列出将被删除的九个文件(498 KB)。该模组强制一个明确的确认流程:Cancel 会中止删除并由 Claude 解释,Proceed 则执行删除。此示例展示模组如何添加安全检查、丰富用户体验并改变或限制工具行为。
第三个示例 Replay Theater 聚焦于动作后的检查。当一次会话修改代码——例如将函数从 greet 重命名为 welcome,跨四个文件共六次编辑——该模组在用户按键时提供每个 diff 的逐步重放。Replay Theater 展示模组如何提供更丰富的开发者工作流、构建自定义审计或复查体验,并与编辑器界面集成以呈现可操作的历史记录。
Anthropic 也强调编写的便捷性:模组可以手写 TypeScript 或由 Claude 自动生成。系统在同一会话支持热重载——保存文件即可应用更改而无需重启应用——降低迭代门槛。要求并不高:Claude Code 2.1.287 或更新版本,模组默认启用,CLI 与桌面客户端均支持。分发方式类似现有插件工作流:用 /plugin 安装、像其他插件一样共享或提交到 Claude 目录。
然而,这种灵活性也带来安全权衡。Anthropic 的博客明确表示:模组具有与 Claude Code 本身相同的访问权限,且未被沙箱隔离。这意味着模组可以访问与宿主应用相同的文件系统和资源。Anthropic 的建议很直接——仅从受信任来源安装模组,就像在你的机器上处理任意代码一样。对于组织,平台提供缓解措施:Team 与 Enterprise 计划,以及任何受管理设置控制的设备,都会先加载一个名为 sec-default 的内置模组。Sec-default 旨在阻止用户安装模组中的危险行为,例如防止覆盖权限拒绝逻辑。管理员可插入自己的预加载模组,只要 sec-default 保持在加载顺序中,即可在保留基线限制的同时允许经过策划的扩展。
总而言之,模组将 Claude Code 从一个固定应用转变为可组合的平台。你现在可以替换视觉元素、拦截并修改事件,并完全替换内置功能的替代实现。这开启了许多可能性——从轻量的可观测性附加组件到深度行为变更与工作流自动化——但也将安全责任委托给选择安装模组的个人或管理员。该架构强调确定性顺序、用于快速迭代的热重载,以及通过现有插件系统进行包分发,使得个人开发者与团队可以根据各自的风险姿态采用此能力。
关键见解表
| 面向 | 描述 |
|---|---|
| 模组能力 | 更改提示、拦截工具调用、呈现或修改 UI、替换内置功能。 |
| 实现 | 附加到发出事件的小型 TypeScript 函数;支持热重载。 |
| 分发 | 打包为插件;通过 /plugin 安装;像其他插件一样共享或提交到 Claude 目录。 |
| 安全模型 | 无沙箱:模组具有与 Claude Code 相同的权限;仅安装受信任模组。企业的 sec-default 模组提供基线保护。 |
| 使用案例 | 可观测性(Token Weather)、安全门控(Blast Radius)、工作流重放(Replay Theater)、完整功能替换(/diff 示例)。 |
之后…
展望未来,Claude Code 的模组表明有意把曾经单一的开发者工具平台化。预计会有更多内置功能被迁移为模组、不断增长的社区与厂商提供的修改生态,以及伴随而来的治理模式,供需要在创新与安全之间取得平衡的团队采用。组织的即时下一步应包括建立受信任模组来源政策、配置像 sec-default 这样的预加载管理模组,并在受控环境中试点模组以了解其运营影响,然后再广泛推广。
对于个人开发者,模组降低了定制工作流和尝试新交互的门槛——尤其是考虑到热重载和让 Claude 生成模组代码的能力。对于更广泛的产品生态,此变更强调可组合性和用户控制,同时也提醒用户:更大的能力需要审慎的防护措施。
最後編輯時間:2026/10/2
