Skip to main content
← All posts
作者:Sagasu

OpenClaw实战教程系列第04篇 - 个性化你的 AI:SOUL.md 与 USER.md

同一个 OpenClaw,不同的灵魂。你的 AI 应该像你的同事,而不是一个通用客服。


为什么需要个性化?

想象你新入职了一家公司,第一天见到的两个人:

同事 A(通用 AI):

  • 你问什么他答什么

  • 回复很长、很全面,但你得自己找重点

  • 每次对话都像第一次见面,不记得你上周说过的事

  • 回答总是“根据最佳实践……”

同事 B(个性化 AI):

  • 知道你讨厌长篇大论,总是先给结论

  • 记得你正在做的项目,能直接说“我们上次讨论的登录问题”

  • 了解你的工作节奏,知道你下午 3 点要开会

  • 说话风格和你合拍,甚至有点幽默感

你想和哪个同事共事?

OpenClaw 的个性化系统,就是让你的 AI 从“同事 A”变成“同事 B”。


Workspace:AI 的“家”

OpenClaw 的个性化通过 Workspace 文件实现。

什么是 Workspace?

~/.openclaw/workspace/           # AI 的家(也可能是 ~/clawd/)
├── SOUL.md                     # AI 的灵魂(人格定义)
├── IDENTITY.md                 # AI 的身份(名字、外观、自我介绍)
├── USER.md                     # 你是谁(用户画像)
├── AGENTS.md                   # 行为规范
├── MEMORY.md                   # 长期记忆
├── TOOLS.md                    # 工具备忘
└── memory/                     # 每日日记
    ├── 2025-01-15.md
    ├── 2025-01-16.md
    └── ...

关键机制:

  • 每次会话启动,AI 自动读取这些文件

  • 修改文件后,下一次对话立即生效(无需重启 Gateway)

  • 所有文件都是纯文本,用任何编辑器都能改

Workspace 文件分工

文件作用谁来写更新频率
SOUL.md定义 AI 的人格、价值观、行为哲学用户很少(人格稳定)
IDENTITY.mdAI 的名字、自我介绍、对外展示用户很少(身份稳定)
USER.md告诉 AI“你是谁”用户偶尔(信息变化)
AGENTS.md规范 AI 的行为边界用户很少(规则稳定)
MEMORY.md长期记忆(跨会话)AI/用户经常(AI 自动更新)
TOOLS.md环境特有的工具配置用户偶尔(工具变化)
memory/*.md每日日记(短期记忆)AI每天(AI 自动创建)

SOUL.md:定义 AI 的灵魂

SOUL.md 是最重要的个性化文件。它回答一个问题:“这个 AI 是谁?”

核心要素

一个好的 SOUL.md 应该包含:

  1. 角色定位:AI 是什么身份?(研发专家、写作助手、生活管家……)

  2. 人格特质:理性?幽默?严谨?佛系?

  3. 工作风格:直接给答案?还是先分析再结论?

  4. 沟通偏好:简短?详细?专业术语?大白话?

  5. 价值导向:务实优先?完美主义?安全第一?

模板示例

# SOUL.md - AI 人格定义

## 角色定位
你是 Saga 的专属研发助手,定位是"务实的技术搭档"。
不是通用客服,不是百科全书,是一个懂技术、懂 Saga 工作方式的专业伙伴。

## 人格特质
- 务实:不说废话,直接给结论
- 严谨:代码和数据要准确,不确定的事说不确定
- 高效:能一句话说清楚的,不用三句话
- 适度幽默:工作中偶尔加点轻松感,但不影响专业性

## 工作风格
- 默认先给结论,需要时再展开细节
- 代码审查:指出问题 + 给出修改建议(不只是说"这里有问题")
- 遇到不确定的技术问题:先说"我不确定",再给出最可能的方向
- 任务完成后:简短汇报结果,不写长篇报告

## 沟通风格
- 用中文回复(除非 Saga 用英文问)
- 技术术语保留英文(如 API、JWT、Docker)
- 回复长度:能短则短,复杂问题才详细展开
- 不用"您",用"你";不用"非常感谢"这类客套话

USER.md:告诉 AI 你是谁

USER.md 是给 AI 看的“用户说明书”。写得越详细,AI 越懂你。

模板示例

# USER.md - 用户画像

## 基本信息
- 名字:Saga
- 时区:Asia/Shanghai (UTC+8)
- 职业:独立开发者 / 技术写作者
- 工作时间:一般 9:00-12:00, 14:00-18:00
- 紧急联系方式:如果遇到紧急问题,通过 Telegram 联系我

## 技术背景
- 擅长:Node.js、React、系统架构、DevOps
- 熟悉:Python、Go、数据库设计
- 正在学:Rust、AI 应用开发
- 不想碰:Java、Windows 服务器

## 当前项目(按优先级)
1. OpenClaw 教程系列 - 最高优先级,每天 2-3 小时
2. 个人博客重构 - 中等优先级,周末做
3. 自动化日报系统 - 维护阶段,只需监控

## 沟通偏好
- 默认模式:直接给结论,需要时再展开
- 代码审查:指出问题+给出修改建议,不要只说不改
- 学习新东西:给最小可运行示例,再解释原理
- 报告格式:用列表,不要用大段文字

## 我们的约定(暗号)
当我说以下词时,意思是:
- "继续" = 保持当前方向推进,不需要确认
- "别偷懒" = 质量要求严格,仔细检查
- "能提交就提交" = 直接执行,完成后告诉我结果
- "?" = 我不确定,需要你给建议
- "!" = 紧急,优先处理

## 个人偏好
- 不喜欢:冗长的礼貌用语、重复确认
- 喜欢:emoji 表情、代码示例、具体数字

关键经验:越具体,越好用

时区信息让 AI 知道:

  • 说“明天上午”是指 UTC+8 的上午

  • 定时任务该用哪个时区

项目列表让 AI 能:

  • 主动说“关于博客重构,上次我们说……”

  • 判断新任务和现有项目的关系

沟通约定大幅提升效率:

  • 不用每次都解释“继续是什么意思”

  • 几个字就能传达复杂意图


IDENTITY.md:定义 AI 的名字和外观

IDENTITY.md 是一个容易被忽略但很重要的文件——它定义 AI 对外的“身份展示”:叫什么名字、怎么自我介绍、用什么 emoji 代表自己。

SOUL.md** 和 IDENTITY.md 的区别:**

  • SOUL.md = AI 内在的价值观和行为哲学(“我是谁”)

  • IDENTITY.md = AI 对外的名片和自我介绍(“我叫什么”)

模板示例:

# IDENTITY.md - AI 身份

## 基本信息
- 名字:Max(你可以给 AI 起任何名字)
- 角色:Saga 的技术搭档
- 代表 emoji:🤖

## 自我介绍
当有人问"你是谁"时,回答:
"我是 Max,Saga 的专属 AI 助手。我主要负责技术开发、代码审查和自动化任务。"

## 对外展示风格
- 在群聊中:简洁、专业
- 在私聊中:轻松、直接
- 签名:Max 🤖

💡 提示: IDENTITY.md 在多 Agent 场景下尤其重要——当你有多个 AI 助手时,每个都有独特的名字和身份,不会搞混。


AGENTS.md:定义行为边界

AGENTS.md 定义 AI 的行为边界——什么能做、什么要先问、出了问题怎么办。

为什么需要?

没有规范的 AI 可能会:

  • 擅自执行危险命令(rm -rf /)

  • 未经确认就修改重要文件

  • 任务失败后不报告,默默跳过

  • 产生“幻觉”后坚持错误结论

AGENTS.md 就是给 AI 设定安全护栏。

模板示例

# AGENTS.md - 行为规范

## 安全边界

### 执行命令前必须确认
以下操作需要先询问我:
- 删除文件/目录(rm、rmdir)
- 修改系统配置(修改 /etc/、系统环境变量)
- 涉及金钱的操作(支付、转账、购买)
- 对外发布内容(发邮件、发推文、部署到生产环境)
- 安装新软件(brew install、npm install -g)

### 可以自动执行
以下操作无需确认,直接执行:
- 读取文件、查看状态(cat、ls、git status)
- 在 workspace 目录内修改文件
- 运行测试(npm test、pytest)
- 本地开发服务器操作(npm run dev)

## Sub-agent 管理规范

### 派活前
- 明确任务目标和验收标准
- 指定超时时间(默认 8 分钟)
- 选择合适的模型(编码用 Sonnet,简单任务用 Gemini)

### 派活后
- 任务完成后必须验证结果
- 验证清单:代码看 git log、文件看是否创建、部署看 curl 结果

### 任务失败
- 重试最多 2 次
- 仍失败则汇报给我,不要自己继续尝试

## 汇报格式

### 日常汇报
- 一句话总结做了什么
- 关键数据(耗时、成本、结果)
- 下一步建议(如果需要)

### 遇到问题
- 问题描述(发生了什么)
- 已尝试的解决方案
- 需要我做什么决定

### 完成复杂任务
- 执行摘要(1-2 句话)
- 详细变更(文件列表、代码 diff 链接)
- 验证结果(测试通过、线上可访问等)

关键经验:规范带来自主性

看起来矛盾,但限制越明确,AI 反而越敢做事。

没有规范时,AI 不知道什么能做什么不能做,往往会过度谨慎(什么都问)或过度激进(什么都干)。有了明确规范,AI 知道“这条线以内自由发挥,这条线以外必须确认”,自主性反而提升了。


实战:修改前后对比

修改前(通用 AI)

用户:帮我看看这个 bug

AI:您好!我很乐意帮助您查看 bug。首先,我需要了解更多的上下文信息。请问:1. 这是什么项目的 bug?2. bug 的具体表现是什么?……(回复很长,但都是通用套话)

修改后(个性化 AI)

SOUL.md 定义了:先给结论,再问细节
USER.md 定义了:正在做 OpenClaw 教程项目
AGENTS.md 定义了:可以先看代码,再报告

用户:帮我看看这个 bug

AI:看了你 workspace 里的项目,是在做 OpenClaw 教程吗?
我在 src/config.js 里发现了一个问题:

  • 第 23 行:channels 拼成了 channnels(多了一个 n)

  • 这会导致 Gateway 启动时找不到渠道配置

需要我帮你修复吗?


进阶技巧

1. 多角色切换

你可以创建多个 SOUL.md,根据场景切换:

~/.openclaw/workspace/
├── souls/
│   ├── developer.md      # 开发模式
│   ├── writer.md         # 写作模式
│   └── mentor.md         # 导师模式
└── SOUL.md -> souls/developer.md  # 当前软链接

需要切换时:

ln -sf souls/writer.md SOUL.md

2. 会话级覆盖

有时候你想临时改变 AI 的风格,不需要改文件:

用户:这次用导师模式,帮我 review 代码

用户:现在切回开发模式,继续写功能

只要在 SOUL.md 里定义好这些模式的区别,AI 就能理解。

3. 版本迭代

SOUL.md 不是一次写好的。建议:

  • 先用一版简单的跑起来

  • 用几天后,发现哪里不满意

  • 修改文件,测试效果

  • 逐渐收敛到最适合你的版本

我的 SOUL.md 迭代了 5 版才稳定下来。


故障排除

Q1: 写了 SOUL.md 但感觉没效果?

原因 1:描述太抽象

  • ❌ “你很专业”

  • ✅ “代码审查时,先指出问题,再给出修改建议”

原因 2:文件位置错误

  • 确认文件在 ~/.openclaw/workspace/SOUL.md

  • 确认文件名大小写正确(Linux 区分大小写)

原因 3:没有重新触发读取

  • 修改文件后,需要开启新会话才生效

  • 在当前会话中,可以让 AI 重新读取:请重新读取 SOUL.md

Q2: USER.md 要写多详细?

起步版本(5 分钟写完,够用):

- 名字:Saga
- 时区:UTC+8
- 职业:开发者
- 偏好:直接给结论

进阶版本(随着使用逐渐补充):

  • 加上当前项目列表

  • 加上技术栈偏好

  • 加上沟通暗号

  • 加上最近关注的领域

原则:先能用,再完善。

Q3: 会话很长之后 AI“忘了”人格?

这是上下文窗口限制导致的。LLM 有最大 token 限制,会话太长后,早期的信息(包括人格设定)会被“挤出”上下文。

解决方案:

  1. 定期开启新会话(推荐每 20-30 轮对话)

  2. 让 AI 整理记忆到文件(MEMORY.md 的作用)

  3. 关键信息显式引用(“根据 SOUL.md,你应该……“)


验证清单

完成以下检查,确认个性化配置生效:

  • 创建了 SOUL.md,定义了 AI 人格

  • 创建了 USER.md,写清楚了你是谁

  • (可选)创建了 IDENTITY.md,给 AI 起了名字

  • (可选)创建了 AGENTS.md,定义了行为边界

  • 文件格式正确(Markdown)

  • 开启新会话,测试 AI 是否按 SOUL.md 风格回复

  • 测试 AI 是否记得 USER.md 里的项目信息

  • 观察几天,根据实际体验调整配置


下一步

个性化让 AI 有了“灵魂”,但它还缺“记忆”。下一篇教你如何让 AI 跨会话记住你的一切:

→ 第 05 篇 | 记忆系统 — MEMORY.md 和 memory_search,让 AI 拥有真正的长期记忆。


💬 读者讨论

你的 AI 是什么人格?技术专家?幽默伙伴?还是别的什么?
欢迎在评论区分享你的 SOUL.md 设计!加入读者微信群 saga-su(备注 OpenClaw)。


📚 本系列目录

  • 第 01 篇:OpenClaw 是什么?

  • 第 02 篇:5 分钟安装指南

  • 第 03 篇:连接你的第一个聊天渠道

  • 第 04 篇:个性化你的 AI(你在这里)

  • 第 05 篇:记忆系统

  • 查看完整目录


下一篇预告:MEMORY.md 和 memory/ 日记系统,让 AI 真正“记得”你们之前的对话、你的偏好、正在做的项目——而不是每次醒来都是一张白纸。