目录
1 分钟阅读

从 Opencode 文档学习 AI 智能体设计的 7 大构建模块

Opencode 的开源文档堪称智能体架构入门教材。以下是每位开发者都应该理解的七个核心概念。

Opencode 正迅速成为继 Claude Code 之后开发者讨论最多的 AI 编码工具。在韩国,Oh-my-opencode 的推动下采用速度飞快,全球的开发者社区也在密切关注。

但 Opencode 的真正价值不仅仅是编码辅助。因为它是开源的,你可以直接检查智能体是如何设计的 - 从工具注册到子智能体编排。开源项目受益于社区开发者的贡献,这意味着文档反映了智能体架构领域最前沿的思考。

Opencode 文档的 Configure 部分读起来就像一本智能体设计的入门教科书。以下是它呈现的七大构建模块,以及每个模块重要的原因。

Tools:智能体与世界交互的方式

Tools 定义了智能体能做什么。每个工具都是一个离散的能力 - 读取文件、写入文件、执行终端命令、搜索网页 - 注册为可调用的函数。

  • 你提供的工具集合决定了智能体的能力边界
  • 工具是语言模型与外部环境之间的接口
  • 根据我的经验,给智能体太多工具反而会适得其反:它花在选择用哪个工具上的时间比实际执行还多

设计原则很直接:没有工具的智能体只是一个聊天机器人。拥有合适工具的智能体才能成为自主工作者。

Rules(AGENTS.md):智能体的行为准则

AGENTS.md 是一种文件格式,用于向智能体传达项目特定的上下文和约束。可以把它理解为面向 AI 而非人类编写的 README。

  • 包含”没有测试不得修改代码""遵循此文件夹结构”之类的指令
  • AGENTS.md 标准已被超过 6 万个开源项目采用
  • 规则在不改变底层模型的情况下塑造智能体的决策

没有规则,智能体会将通用训练内容直接应用到你的项目上。有了规则,它会反映你项目的惯例、约束和偏好。差异是显著的。

Agents(子智能体):分而治之

复杂任务拆分给多个专业智能体处理,比交给单一通用智能体更有效。

  • 你可以定义角色特定的智能体:Build、Plan、Review、Debug 等等
  • 主智能体制定计划,子智能体执行各个步骤
  • 每个子智能体在专注的上下文中运行,减少了长时间单一会话中的噪音和偏移

这与将微服务原则应用于 AI 工作流相同。专业化提升质量,隔离防止上下文污染。

MCP(Model Context Protocol):外部连接的标准

Model Context Protocol 是 Anthropic 创建的开放协议,标准化了智能体连接外部数据源和服务的方式。

  • 为数据库、文件系统、API 等集成提供一致的接口
  • 无需为每个服务编写自定义适配器,MCP 为智能体提供统一的外部访问方式
  • 预计基于 MCP 层将出现日益增长的服务应用生态系统

MCP 解决了实际的互操作性问题。之前每个智能体框架都发明了自己连接外部工具的方式。MCP 使这些连接变得可移植、可组合。

LSP(Language Server Protocol):代码理解的基础

Language Server Protocol 最初是为 IDE 设计的,但事实证明它对需要浏览代码库的 AI 智能体同样有价值。

  • LSP 提供跳转到定义、查找引用、自动补全和诊断功能
  • 在 Opencode 中 LSP 集成仍是实验功能,但代码导航精度有了显著提升
  • 智能体可以使用 LSP 从语义层面理解代码结构,而不是纯粹依赖文本搜索

一个能追踪函数调用到其定义、追溯所有引用、理解类型层次结构的智能体,与一个只做字符串模式匹配的智能体在根本上处于不同层次。

A2A 和 ACP:智能体间通信标准

当智能体由不同框架构建时,它们需要共享协议来协作。两个标准正在兴起以填补这一空白。

  • A2A(Agent-to-Agent):由 Google 创建并捐赠给 Linux Foundation。定义了智能体如何发现彼此、协商能力和交换消息
  • ACP(Agent Communication Protocol):由 BeeAI 团队构建,最近合并到了 A2A 计划中

两者都处于早期阶段,但它们代表了多智能体系统的基础 - 来自不同供应商和框架的智能体可以无缝协作。类比就是 Web 的 HTTP - 一个使一切可互操作的共享传输层。

Skills:可重用的能力包

Agent Skills 将工具、规则和提示词打包成单一可安装单元。由 Anthropic 首先引入的这种格式现已标准化。

  • 智能体在需要特定能力时加载技能 - 如代码审查、TDD 工作流或安全分析
  • 技能可跨项目和团队共享,创建可重用智能体行为的生态系统
  • 这标志着从消费文档到消费技能的转变:不再阅读如何做,而是安装做的能力

技能之于智能体,就如同包之于应用程序。它们将专业知识模块化并使其可分发。

要点总结

构建有效的 AI 智能体不在于知道所有可用的工具,而在于理解架构:智能体如何思考、如何连接外部世界、如何彼此协作。

这七大构建模块 - Tools、Rules、子智能体、MCP、LSP、A2A/ACP、Skills - 构成了智能体设计的结构性词汇。每个模块解决一个独特的关注点,它们共同定义了一个设计良好的智能体系统的样貌。

由于 Opencode 是开源的,其文档随着开发者社区的贡献而不断演进。如果你真心想理解智能体架构,Opencode 文档值得一读。

订阅通讯

获取关于我最新项目、文章以及 AI 和 Web 开发实验的更新。