Agent 配置
OpenClaw 的 Agent 行为主要由工作空间文件驱动,而不是配置文件。
1. 工作空间关键文件
默认目录:~/.openclaw/workspace/
| 文件 | 作用 | 何时编辑 |
|---|---|---|
AGENTS.md | 行为规范和边界约束 | 初始设置时,有新要求时 |
SOUL.md | 人格设定与回复风格 | 觉得风格不对时 |
USER.md | 你的背景、偏好、常用工具 | 背景变化时 |
TOOLS.md | 本地工具和外部 API 笔记 | 安装新工具时 |
MEMORY.md | 长期记忆存储 | Agent 自动更新 |
HEARTBEAT.md | Heartbeat 每次执行的检查清单 | 配置 Heartbeat 时 |
直接编辑这些文本文件即可改变 Agent 的行为,无需重启。
2. 如何写好 AGENTS.md
markdown
# 行为规范## 执行原则- 先理解再执行,任务模糊时主动确认,不要自行脑补- 执行完成后给出结果汇报:做了什么、结果如何- 遇到错误提供具体方案,不能只说"请稍后重试"## 边界约束- 没有明确授权时,不执行不可逆操作(删除文件、发布、转账)- 所有外部 API 调用必须告知我## 输出规范- 代码块必须标注语言类型- 长内容需提供摘要版本
3. SOUL.md 示例
markdown
# 人格设定## 风格- 说话直接,不废话,不用"好的!""没问题!"这类客套开场- 语气像一个靠谱的同事,不是客服机器人- 专业问题给专业答案,不过度解释显而易见的内容## 回复风格- 中文为主,代码、命令、专有名词保留英文- 优先用列表和代码块,不用大段散文- 回复长度与问题复杂度匹配,简单问题一两句话就够
4. USER.md 示例
markdown
# 用户信息名字:小王职业:独立开发者 / 内容创作者时区:Asia/Shanghai常用工具:VSCode、Git、Telegram偏好:- 中文回复,技术术语保留英文- 回复要简洁,不要啰嗦- 假设我有基础编程能力当前项目:创业公司内容运营,主要做 SEO 博客和微博运营
5. 常用会话命令
bash
/new # 新建会话(清空上下文)/compact # 压缩历史并存入持久记忆/model opus # 切换到 opus 模型/thinking off # 关闭思维链(节省 Token)/status # 查看当前状态/agent work # 切换到工作 Agent/agents # 列出所有 Agent
5. 多 Agent 配置示例
在 openclaw.json 里配置多个 Agent,每个独立工作空间:
json
{"agents": {"list": [{"id": "personal","default": true,"workspace": "~/.openclaw/workspace-personal","model": "anthropic/claude-opus-4-6","identity": { "name": "小助" }},{"id": "work","workspace": "~/.openclaw/workspace-work","model": "anthropic/claude-sonnet-4-5","identity": { "name": "工作助手" }}]}}
每个 Agent 的记忆完全隔离,互不干扰。切换 Agent 用 /agent <id>。
7. 常见问题
Agent 不遵守 AGENTS.md 规范
工作空间文件在每次对话开始时加载。如果修改了文件但 Agent 行为没变:
bash
/new # 用 /new 开启新会话,强制重新加载工作空间文件
确认工作空间文件已加载
bash
/status # 会显示当前加载的工作空间路径和文件列表
Agent 回复风格完全不对
依次检查:
SOUL.md是否存在且内容是你想要的/new开启新会话再试- 如果还是不对,在对话里直接说:「从现在起按照 SOUL.md 的风格回复」
多 Agent 共用了配置
每个 Agent 的 workspace 路径必须不同,否则它们会共享同一套文件,记忆会互相污染。