为啥这三个词容易混

因为大家说法不一致。橙书说一套,Anthropic 官方说一套,社群又说一套。本条目的目的:统一这个 wiki 里的说法,让后面所有文章引用时指向明确。

本 wiki 的三个定义(强制对齐)

Agent

一个有人格、有任务边界的 md 文件。它知道:

  • 我是谁(名字、角色)
  • 我服务谁(调用者)
  • 我负责啥(任务边界)
  • 我不负责啥(边界外推给别人)

典型:.claude/agents/code-reviewer.md.claude/agents/ai-xueze.md

来源:skill-library/anthropic-official/skills-repo/README.md + claude-code-docs/sub-agents.md

Skill

一个可被 agent 调用的技能包。它知道:

  • 我能干啥(一件具体的事)
  • 我怎么干(步骤/资源)
  • 调我的前置(什么时候该调我)

典型:.claude/skills/pdf/SKILL.md.claude/skills/kb-compile/SKILL.md

来源:橙书 04(huasheng-orange-books/04-agent-skills.md)+ 官方 spec(skill-library/anthropic-official/skills-repo/spec/agent-skills-spec.md)。

Workflow

多个 agent + 多个 skill 协同完成的一条流程。它不是单个 md,是一组文件配合的过程

典型:陈彬的 “raw → wiki 编译” 就是 workflow——AI 学者 agent 调 kb-compile skill 读 raw,产出候选,陈彬策展,批准后调 kb-lint skill 检查。

来源:本项目本身就是一个 workflow 的实例。

一张表

维度AgentSkillWorkflow
是什么有人格的 md可调用的技能多个 agent+skill 的协同流程
粒度
单位1 个 md 文件1 个 md 文件(或目录)不是单文件,是过程
例子code-reviewer.mdpdf/SKILL.md”raw → wiki 编译”
谁调用谁调 skill、调其他 agent被 agent 调用编排 agent 和 skill

容易错的 3 种混用

  1. 把 skill 写成 agent:把一个技能包写成带人格的 agent → 过度设计。技能就是技能,不需要人格。
  2. 把 agent 写成 skill:角色的判断和边界塞进一个 skill → 没有自主边界,结果谁都能改它。
  3. 工作流没 agent 负责总控:一串 skill 调用,但没人对”整个流程是否成功”负责 → 出问题甩锅。

决策逻辑(何时用哪个)

  • 一件事每次做都差不多 → Skill
  • 一个角色要反复出场、有判断 → Agent
  • 多个角色协作完成一个目标 → Workflow

陈彬的独立观察

大多数人第一次搭系统,都先搞 Agent(因为有人格、好玩)。正确顺序其实是反过来——先想清楚 workflow(整个流程是啥),再决定哪里需要 agent(有判断的地方),剩下的全是 skill(可复用的技能)。

从 workflow 倒推 agent,不从 agent 发散出 workflow。这个方向反了,系统就会变成”一堆 agent 各干各的”。

关联

needs_sources

  • Workflow 这个词目前没一个权威正式定义——本条目给的是 AIBuilder wiki 内部约定。希望下一轮能补 Anthropic 官方或其他认可来源。