6
0
0

功能包全景

2026-08-14
2026-09-07
功能包全景
文章摘要
|

入门09:功能包全景

前面我们深入学了核心机制。现在快速扫一眼所有功能包,了解每个包是干啥的——就像看一个项目的 package.json 里的 dependencies 列表,知道每个包有什么用。


1. 功能包总览

基础设施
util - 工具函数
typert - 类型RPC
lsp - 语言服务器
preset - Agent预设
code-runtime - 代码执行
e2b - 云端沙箱
test-support - 测试
交互与安全
interaction - 交互层
feedback - 消息反馈
guard - 守卫
extensions - 自修改
管理工具
jobs - 后台任务
schedule - 定时器
todo - 任务列表
settings - 设置
credentials - 凭证
identity - 身份标识
外部集成
mcp - 外部工具连接
acp - 标准化协议
sdk - 编程接口
api - 远程调用
hooks - Git 钩子
数据存储
storage - 存储枢纽
compaction - 会话压缩
session-query - 会话查询
spill - 溢出存储
attachment - 附件
智能能力
subagent - 子Agent
plan - 计划模式
workflow - 工作流
skill - 技能系统
goal - 目标管理
输入输出(让 AI 能动手)
shell - 执行命令
fs - 文件操作
web - 搜网页
terminal - 终端
subprocess - 子进程
核心骨架
packages/core/* - 大脑和骨架

2. 输入输出类(让 AI 能"动手")

Shell 执行

干啥的
packages/shell/shell/定义"执行命令"这个能力
packages/shell/shell-bash/真正执行 bash 命令
packages/shell/shell-pwsh/执行 PowerShell 命令

用前端话理解:就像你在终端里敲 npm install,AI 也能敲 ls -lanode test.js

文件系统

干啥的
packages/fs/fs/定义"文件操作"这个能力
packages/fs/fs-local/操作本地文件
packages/fs/fs-e2b/操作云端沙箱里的文件

用前端话理解:就像 fs.readFilefs.writeFile,但 AI 可以自己决定读哪个文件、写什么内容。

Web 搜索

干啥的
packages/web/web/定义"上网搜索"这个能力
packages/web/web-fetch-http/抓取网页内容
packages/web/web-search-deepseek/DeepSeek 搜索
packages/web/web-search-exa/Exa 搜索
packages/web/web-search-perplexity/Perplexity 搜索

用前端话理解:就像你在浏览器里搜百度/谷歌,AI 也能搜,而且能选不同的搜索引擎。

终端

干啥的
packages/terminal/terminal/定义"持久化终端"这个能力
packages/terminal/terminal-bash/真正打开 bash 终端
packages/terminal/tool-terminal/AI 能用的终端工具

用前端话理解:就像你在 VSCode 里开了个终端窗口,可以一直用。AI 也能开一个,发命令、读输出、关掉。

子进程

干啥的
packages/subprocess/subprocess/定义"创建子进程"这个能力
packages/subprocess/subprocess-local/创建本地子进程

用前端话理解:就像 child_process.spawn(),但会自动过滤敏感环境变量。


3. 智能层(让 AI 更聪明)

子 Agent

干啥的
packages/subagent/subagent/定义"创建子 Agent"这个能力
packages/subagent/subagent-spawn/在当前进程创建
packages/subagent/subagent-fork/分叉子进程
packages/subagent/subagent-acp/通过 ACP 连接外部

用前端话理解:就像 Web Worker——主线程太忙了,开个 Worker 去干活。

计划模式

干啥的
packages/plan/plan-mode/让 AI 先做计划再执行

用前端话理解:就像写代码之前先画架构图,AI 先出计划,你确认了再执行。

工作流

干啥的
packages/workflow/workflow/定义"工作流引擎"
packages/workflow/workflow-worker-thread/在工作线程里跑工作流
packages/workflow/tool-workflow/AI 能调用的工作流工具

用前端话理解:就像 CI/CD 的 pipeline——定义好步骤,按顺序自动执行。

技能系统

干啥的
packages/skill/skill/定义"技能注册表"
packages/skill/skill-filesystem/从文件系统发现技能
packages/skill/tool-skill/AI 能用的技能工具

用前端话理解:就像 VSCode 的扩展市场——需要什么技能就装什么。

目标管理

干啥的
packages/goal/goal/管理 Agent 的会话目标

用前端话理解:就像 Todo List——创建目标、激活、暂停、完成。


4. 数据层(存数据)

存储枢纽

干啥的
packages/storage/storage/统一的存储接口,支持插件式后端

用前端话理解:就像 localStorage 的抽象层——你想用 IndexedDB 还是 SQLite 都行,接口一样。

会话压缩

干啥的
packages/compaction/compaction/压缩引擎定义
packages/compaction/compaction-basic/用 AI 压缩历史
packages/compaction/compaction-tool-result-pruner/删掉多余的工具体输出

溢出存储

干啥的
packages/spill/spill/把过大的内容存到外部
packages/spill/spill-local/本地溢出存储
packages/spill/spill-policy/什么情况下溢出

用前端话理解:就像文件太大传不上去,先压缩再上传。

附件

干啥的
packages/attachment/attachment/存图片等附件
packages/attachment/attachment-local/存在本地

5. 集成层(对接外部系统)

MCP 客户端

干啥的
packages/mcp/mcp-client/连接外部 MCP 服务器

用前端话理解:就像用 npm 装个包,就多了一个 API 可用。

ACP 协议

干啥的
packages/acp/acp/标准化 Agent 通信协议

SDK 协议

干啥的
packages/sdk/protocol/JSON-RPC 协议定义
packages/sdk/client/TypeScript 客户端
packages/sdk/server/JSON-RPC 服务器

Git 钩子

干啥的
packages/hooks/hook-protocol/钩子协议定义
packages/hooks/hooks-claude-code/Claude Code 集成
packages/hooks/hooks-codex/Codex 集成

用前端话理解:就像 husky——在 git commit 之前自动触发 AI 做代码审查。


6. 管理类

后台任务

干啥的
packages/jobs/jobs/后台任务管理
packages/jobs/jobs-local/本地实现
packages/jobs/tool-jobs/AI 能用的任务工具

用前端话理解:就像 setTimeout + setInterval,但更强大。

定时器

干啥的
packages/schedule/schedule/定时提醒

设置与凭证

干啥的
packages/settings/settings/用户配置管理
packages/credentials/credentials/API Key 等敏感信息管理

7. 交互与安全

交互层

干啥的
packages/interaction/user-approval/用户审批(敏感操作需确认)
packages/interaction/user-questions/AI 向用户提问
packages/interaction/commands/命令系统
packages/interaction/permission-presets/权限预设

守卫

干啥的
packages/guard/timeout-policy/超时控制
packages/guard/repeat-tool-reminder/防止 AI 反复调同一个工具

自修改

干啥的
packages/extensions/tool-cordis/AI 可以在运行时修改自己的插件
packages/extensions/cordis-host-runner/宿主端插件注册
packages/extensions/cordis-client-runner/客户端插件注册

用前端话理解:就像代码可以自己修改自己——有点"元编程"的味道。


8. 基础设施

干啥的
packages/util/工具函数合集(原子写文件、品牌类型、超时等)
packages/typert/类型安全的远程调用框架
packages/lsp/lsp/语言服务器协议(代码补全、跳转定义)
packages/preset/agent-presets/Agent 预设配置
packages/code-runtime/让 AI 写的代码能跑起来
packages/e2b/云端沙箱(E2B)
packages/test-support/测试工具(Mock LLM、快照测试等)
packages/runtime-diagnostics/运行时健康检查

要点总结

  • 50+ 个包,覆盖了 Agent 运行所需的各个方面
  • 每个包都遵循"服务定义 + 实现"模式,通过 Cordis 插件系统组合
  • 输入输出:Shell、文件、Web、终端、子进程(让 AI 能动手)
  • 智能能力:子 Agent、计划、工作流、技能、目标(让 AI 更聪明)
  • 数据存储:压缩、查询、溢出、附件(怎么存数据)
  • 外部集成:MCP、ACP、SDK、钩子(怎么对接外部)
  • 管理工具:任务、定时器、设置、凭证(怎么管理)
  • 交互安全:审批、守卫、自修改(怎么保证安全)

进阶阅读

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!