SOUL.md 是什么?一篇文章简单了解智能体的角色配置文件
最近在使用 DeerFlow 时,发现创建智能体会涉及一个叫 SOUL.md 的文件。这个文件到底是什么?有什么作用?是不是 DeerFlow 独有的?
下面简单介绍一下。
一、SOUL.md 是什么?
SOUL.md 可以理解为智能体的角色说明书。
SOUL 是英文“灵魂”的意思。
它主要用来定义智能体的角色、职责、性格和行为方式,让大模型知道自己应该扮演什么角色、按照什么要求工作。
例如:
- 你是谁?
- 你主要负责什么工作?
- 你应该用什么风格回答问题?
- 你需要遵守哪些行为规则?
简单来说,SOUL.md 决定智能体是谁,以及应该怎样做事。
二、SOUL.md 怎么使用?
假设我们要创建一个股票分析智能体,可以编写如下内容:
SOUL.md 示例:
# 股票分析助手
## 角色定位
你是一名专业的股票分析助手。
## 主要职责
- 分析股票行情
- 解读上市公司财报
- 提供股票风险分析
## 行为要求
- 使用简体中文回答
- 尽量用通俗易懂的语言解释
- 不编造股票行情数据
- 不承诺投资收益
当智能体运行时,Harness(智能体运行框架)会读取相关配置,并将这些要求提供给大模型。
这样,大模型就会尽量按照股票分析助手的角色和规则完成任务。
三、SOUL.md 和 SKILL.md 有什么区别?
这两个文件容易混淆,但用途不同。
| 对比项 | SOUL.md | SKILL.md |
|---|---|---|
| 主要作用 | 定义角色和行为 | 定义具体任务的执行方法 |
| 通俗理解 | 岗位职责说明书 | 工作操作手册 |
| 示例 | 你是一名股票分析助手 | 如何分析股票财报 |
| 关注重点 | 是谁、怎么做事 | 做什么、具体怎么做 |
例如:
SOUL.md: 告诉智能体,你是一名股票分析师,回答问题要专业、客观。
SKILL.md: 告诉智能体,分析股票时应该如何获取数据、计算指标、形成报告。
两者配合,可以让智能体既有明确的角色定位,又掌握具体的工作方法。
四、SOUL.md 是 DeerFlow 特有的吗?
不是。
其他智能体产品和 Harness 也采用了类似设计,只是文件名称可能不同。
| 产品 | 文件名称 | 主要用途 |
|---|---|---|
| DeerFlow | SOUL.md | 智能体角色和行为配置 |
| OpenClaw | SOUL.md | 智能体性格、行为和边界 |
| Claude Code | CLAUDE.md | 项目背景、工作规范和指令 |
| OpenAI Codex | AGENTS.md | 智能体工作规则和项目指引 |
需要注意,SOUL.md 并不是所有 Harness 必须遵循的统一标准。
不同框架有自己的配置方式,文件内容和加载机制也可能不同。
五、总结
SOUL.md 的作用其实很简单:
SOUL.md 定义智能体的角色和行为,SKILL.md 定义智能体完成具体工作的能力和方法。
可以把智能体想象成一名员工:
- SOUL.md: 告诉员工是什么岗位、承担哪些职责。
- SKILL.md: 告诉员工如何完成具体工作。
- Harness: 为员工提供执行任务所需的运行环境和工具。
理解了这三个概念,就能更容易理解 DeerFlow、OpenClaw 等智能体框架的基本运行方式。
浙公网安备 33010602011771号