跳转到内容

边界辨析

围绕 Skill,常被一起讨论的还有四个机制:Rule / CLAUDE.md(项目记忆)MCP(外部世界访问)Subagent(独立执行体)。它们看起来都在"扩展 AI",但解决的问题完全不同——选错了机制,往往就是后续返工的开始。

下面这张表是社区共识的速查地图:

机制性质加载方式解决的问题
Skill按需能力包description 命中时加载"怎么做好这件事"——把 SOP / 模板 / 脚本封装成可复用的工作手册
Rule / CLAUDE.md / AGENTS.md项目长期记忆每次对话始终加载"不能做什么 / 项目长期上下文是什么"——红线、规范、架构约定
MCP外部世界访问工具被调用时"如何访问 X 服务"——给 AI 接通数据库 / 邮箱 / Jira / 内网 API 的能力
Subagent独立任务执行体主 agent 显式委派"把一段任务交给单独的 agent"——并行执行 / 隔离上下文 / 专精分工

一句话决策模型

  • 这件事该不该做?→ Rule
  • 这件事怎么做好?→ Skill
  • 这件事需要外部数据/接口?→ MCP
  • 这件事需要单独的执行流?→ Subagent

它们之间不互斥,可以组合使用:例如一个"创建 NPC"的 Skill 内部可调用 MCP(拉取仓库列表)+ 遵守 Rule(不允许提交 .env)+ 委派 Subagent(并行生成多个文件)。

Skill 与 Rule 的细致对比

Rule 在不同平台名字不同,但核心都是"项目长期记忆":

平台对应名称约定位置
Claude CodeCLAUDE.md项目根 / 用户目录
OpenAI Codex / CursorAGENTS.md项目根
CodeBuddyRULE.mdc.codebuddy/rules/<name>/

具体到 Skill 与 Rule 的差异:

维度RuleSkill
生效时机所有对话都生效,始终占用上下文命中 description 才加载
Token 成本始终占用上下文 Token懒加载,未触发零成本
内容性质全局底线 — 红线 / 规范 / 长期上下文按需能力 — SOP / 模板 / 脚本
典型场景"禁止提交 .env"
"本项目用 Vue 3 + TypeScript"
"所有 PR 必须含测试"
"创建一个 CNB NPC Agent"
"把 PDF 表单填好交差"
"按公司模板生成发布稿"
文件形式单个 CLAUDE.md / AGENTS.md / RULE.mdc<name>/SKILL.md + 可选资源目录

TIP

常见误用:把"项目长期上下文"硬塞进 Skill 的 description 触发——结果命中率极低;把"一次性的工作流"塞进 Rule——结果每次对话都消耗上下文 Token。两类信息性质不同,按上表对号入座。

Skill 与 MCP 的细致对比

二者经常被放在一起讨论,因为都是"扩展 AI 能力"。但:

  • MCP 教 AI 如何"获取/操作"外部世界——是连接器
  • Skill 教 AI 如何"用好"已有的工具完成一类任务——是手册

举例:要让 Agent 帮你在 Jira 上创建合规的 Bug——

  • MCP 提供能力:连上 Jira、能调 create_issue API
  • Skill 提供方法:这家公司怎么写标题、必填哪些字段、bug 优先级怎么定、要 link 到哪个 epic

二者叠加使用最佳:Skill 内部直接引用 MCP 工具的全限定名,例如:

text
使用 Jira:create_issue 工具创建工单,标题必须遵循 [模块] 摘要 (priority) 格式...

IMPORTANT

在 Skill 中引用 MCP 工具时,务必使用全限定名 ServerName:tool_name(如 Jira:create_issue),否则在多 MCP 服务器并存时会找不到工具。

Skill 与 Subagent 的细致对比

Subagent(也叫 Custom Agent / Sub-Agent)是把一段任务外包给一个独立运行的 agent 实例:

维度SkillSubagent
本质主 agent 加载一份"工作手册"主 agent 启动一个新的 agent 实例去执行
上下文与主对话共享上下文独立上下文,不污染主对话
并发串行可并行执行多个
代价低(只是注入文本)高(启动新会话 + 多轮 token)
适用有标准流程的可复用任务长任务 / 隔离敏感操作 / 多任务并行

判别法:如果你想"让 AI 按某种方式做这件事"——用 Skill;如果你想"让 AI 派一个分身去专心干这件事,干完再回报"——用 Subagent。

下一步

了解了边界后:

Released under the MIT License.