完美 Openclaw 设置的剖析

@coreyganim
英语3个月前 · 2026年3月23日
428K
985
119
23
3.8K

TL;DR

本综合指南详细解析了 OpenClaw 的工作区结构,说明了如何利用 AGENTS.md、SOUL.md 以及自定义技能来创建高度个性化且自动化的 AI 助手。

一份完整的工作区文件、技能、频道、权限以及正确配置它们的指南。

大多数 OpenClaw 用户在安装后,连接一个频道,就再也不打开工作区文件夹了。

这是个错误。

你的工作区是控制 AI 助手行为方式的中心枢纽。它承载着你的身份、自定义技能、频道连接和记忆。一旦你明白了各个部分的位置,就能按照自己的需求精确配置 OpenClaw。

本指南将带你了解一个完美设置的整体结构。

P.S. Openclaw 只是开始。

在我们的 Build With AI 社区中,我们将教你如何构建自定义的 Agent、应用和自动化工具,供自己使用或出售给客户。即将上线。

在此加入等候名单:https://return-my-time.kit.com/1bd2720397

-----------------------------------------

两个配置层,而非一个

在深入了解之前,有一点值得提前了解:OpenClaw 使用两个配置层。

第一层是你的工作区文件夹(通常位于 ~/clawd/ 或你初始化的任何位置)。它存放你的个人配置、技能、记忆和密钥。

第二层是全局安装目录,位于 opt/homebrew/lib/node_modules/clawdbot/(或你系统上的等效位置)。它包含核心文档、内置技能和默认行为。

你的工作区是进行自定义的地方。全局安装则是你更新的部分。

AGENTS.md:你的操作指令

这是整个设置中最重要的文件。当 OpenClaw 启动一个会话时,它首先读取的就是 AGENTS.md。它会将该文件内容直接加载到系统提示中,并在整个对话过程中持续保留。

简而言之:你在 AGENTS.md 中写什么,你的 Agent 就会遵循什么。

如果你告诉它,在建议会议时间之前总是先检查你的日历,它就会照做。如果你说“未经我明确批准,绝不发送邮件”,它每次都会遵守。

AGENTS.md 中真正应该包含的内容:

应该写:

  • 你的核心操作指令(Agent 的职责是什么?)
  • 关键工具及其使用方法(邮件 CLI、任务管理工作流)
  • 永远不应违反的硬性规则
  • 重要资源的链接(API 文档、技能位置)
  • 工作流触发条件(应该自动发生什么)

不要写:

  • 可以链接到的完整文档
  • 解释理论的长段落
  • 经常变化的信息

保持 AGENTS.md 少于 300 行。超过这个长度的文件会占用过多的上下文空间,指令遵循度实际上会下降。

以下是一个简洁但有效的示例:

text
1# AGENTS.md - Clawdbot 工作区
2
3## 核心操作指令
4我的助手作为我业务的主动帮手运行。
5
6**指令:**
7- 尽可能减轻我的负担
8- 主动出击 — 不要等着被问
9
10## 关键工具
11- **邮件:** 每天检查收件箱,标记紧急事项
12- **日历:** 在安排前确认无冲突
13- **任务管理器:** 将已完成的工作同步到仪表盘
14
15## 硬性规则
16- 未经明确许可,绝不重启服务
17- 在安排前始终使用 `date` 命令确认日期
18- 将所有已完成的工作记录到跟踪系统

这大约 20 行的核心指令。它给你的 Agent 提供了高效工作所需的一切,无需不断澄清。

SOUL.md:个性和边界

SOUL.md 定义了你 Agent 的身份及其沟通方式。这里是个性所在。

text
1# SOUL.md - 个性与边界
2
3- 回复应简洁直接。
4- 必要时提出澄清性问题。
5- 切勿向外部消息界面发送流式/部分回复。

如果说 AGENTS.md 是使用说明书,那么 SOUL.md 就是个性档案。有些用户会在这里编写详细的角色设定,有些则保持简洁。两种方式都行,取决于你想要多少个性定制。

IDENTITY.md 和 USER.md:谁是谁

这两个文件建立你的 Agent 和你之间的关系。

IDENTITY.md 定义你的 Agent:

text
1# IDENTITY.md - Agent 身份
2
3- 名称:[你的 Agent 名称]
4- 形象:[可选:有趣的描述]
5- 风格:机智、乐于助人、可靠、坚韧不拔的问题解决者
6- 表情符号:[你选择的表情]

USER.md 定义你:

text
1# USER.md - 用户资料
2
3- 姓名:[你的姓名]
4- 偏好称呼:[昵称]
5- 时区:[你的时区]
6- 电话:[你的号码]
7- 日历:[日历平台和邮箱]

为什么要分开文件?因为它们服务于不同的目的。IDENTITY.md 一旦设置就很少更改。USER.md 会随着你的偏好变化而更新。分开维护更方便。

HEARTBEAT.md:定期签到

这个文件控制着你的 Agent 在心跳轮询期间的行为——即系统检查是否需要处理任何事情的计划时刻。

text
1# HEARTBEAT.md
2
3**如果消息包含 "⚠️ EXECUTION CRON":**
4- 这不是心跳检查 — 而是需要完成的工作
5- 阅读消息中的完整指令
6- 执行所有必要步骤
7- 永远不要返回 HEARTBEAT_OK
8
9**否则:**
10- 如果无需处理任何事情,返回 HEARTBEAT_OK
11- 保持简洁

心跳机制对于创建主动型 Agent 非常强大。你的 Agent 可以检查你的日历、扫描收件箱或按计划运行任何自动化工作流,所有这些都由心跳轮询触发。

TOOLS.md:外部工具文档

这个文件保存你关于外部工具和约定的笔记。它不定义哪些工具存在(OpenClaw 内部处理),但这里是你记录如何使用它们的地方。

text
1# TOOLS.md - 用户工具笔记
2
3## 邮件 CLI
4- 账户:[email protected]
5- 常用:`cli email search`,`cli calendar create`
6
7## 任务管理 API
8- 令牌位置:~/.secrets/task-api-token.txt
9- 始终使用 `limit=100` 避免分页问题
10- 状态转换:[记录你的具体工作流程]
11
12## 网页抓取工具(当站点阻止普通请求时)
13- 位置:~/clawd/.venv/scraper
14- 对受保护站点使用隐身模式

这成为了你的个人参考指南。当你的 Agent 需要使用某个工具时,它会查阅 TOOLS.md 了解你的具体约定。

skills/ 文件夹:可复用工作流

技能是 OpenClaw 的强大之处。每个技能都是一个独立的工作流,当任务匹配技能描述时,你的 Agent 可以调用它。

每个技能都位于自己的子目录中,包含一个 SKILL.md 文件:

text
1skills/
2├── meeting-prep/
3│ └── SKILL.md
4├── social-post-writer/
5│ ├── SKILL.md
6│ └── references/
7│ └── templates.md
8└── podcast-show-notes/
9 └── SKILL.md

SKILL.md 使用 YAML 前言(frontmatter)来描述何时使用该技能:

text
1---
2name: meeting-prep
3description: 自动进行通话前调研和简报。当用户要求检查即将到来的会议或运行会议准备时使用。
4---
5
6# 会议准备技能
7
8## 触发时机:
9- 用户要求检查即将到来的会议
10- 通过 cron 计划每 10 分钟运行一次
11- 仅对首次通话进行简报
12
13## 流程:
141. 检查未来 15-45 分钟的会议
152. 调研与会者(LinkedIn、公司网站)
163. 创建简报文档
174. 将链接附加到日历事件

与静态指令的关键区别:技能可以附带支持文件。references/templates.md 文件可以存放示例输出、经过验证的格式或仅在技能激活时加载的额外上下文。

memory/ 文件夹:持久上下文

这是你 Agent 的长期记忆。会话记录、学到的偏好和每日日志都存放在这里。

text
1memory/
2├── 2026-03-22.md
3├── 2026-03-21.md
4├── email-style.md
5├── business-context-2026-02.md
6└── workflow-playbook.md

良好实践:

  • 将每日日志保存在 memory/YYYY-MM-DD.md
  • 会话开始时,你的 Agent 会读取今天和昨天的日志(如果存在)
  • 记录持久的事实、偏好和决策
  • 避免存储密钥

记忆文件让你的 Agent 能在多个会话中保持上下文。没有它们,每次对话都从零开始。

.secrets/ 文件夹:凭据

API 令牌、密码和敏感配置存放在这里。此文件夹应被 .gitignore 忽略,绝不提交。

text
1.secrets/
2├── task-api-token.txt
3├── openai-api-key.txt
4├── anthropic-api-key.txt
5└── service-credentials.txt

你的 AGENTS.md 或 TOOLS.md 可以引用这些路径,而无需暴露实际值。

频道配置:你与 Agent 对话的地方

OpenClaw 支持多种消息频道:Discord、Telegram、Signal、WhatsApp 等。频道配置位于你的网关配置中(通过 clawdbot gateway 命令管理)。

关键概念:

  • 每个频道都有自己的会话行为
  • 可以同时激活多个频道
  • 频道特定规则(如“在 Discord 中除非被 @提及 否则不回复”)应写在 AGENTS.md 中

全貌

以下是所有部分如何组合在一起:

text
1~/clawd/
2├── AGENTS.md # 操作指令(日常使用)
3├── SOUL.md # 个性和边界
4├── IDENTITY.md # Agent 身份
5├── USER.md # 你的资料
6├── HEARTBEAT.md # 定期签到行为
7├── TOOLS.md # 外部工具文档
8├── BOOTSTRAP.md # 首次运行仪式(使用后删除)
9
10├── skills/ # 自定义工作流
11│ ├── meeting-prep/
12│ ├── podcast-show-notes/
13│ └── social-post-writer/
14
15├── memory/ # 持久上下文
16│ ├── 2026-03-22.md
17│ └── key-context.md
18
19├── .secrets/ # API 密钥和凭据(被 .gitignore 忽略)
20│ ├── task-api-token.txt
21│ └── anthropic-api-key.txt
22
23└── output/ # 生成的文件和导出内容

一个实用的入门设置

如果你从零开始,这是一个行之有效的渐进步骤。

步骤 1. 运行 openclaw onboard 并完成初始设置。选择你的模型提供商并至少连接一个频道。

步骤 2. 创建你的工作区文件夹,并添加包含核心指令的 AGENTS.md。从涵盖主要用例的 10-20 行开始。

步骤 3. 添加 IDENTITY.md、USER.md 和 SOUL.md。这些文件确立关系与个性。

步骤 4. 为你反复执行的工作流创建第一个技能。会议准备、邮件草稿或内容创作都是不错的起点。

步骤 5. 使用每日日志模板设置 memory/ 目录。你的 Agent 会逐渐积累上下文。

步骤 6. 随着你发现值得记录的工具特定模式,逐步添加 TOOLS.md。

坦白说,这些足以满足 95% 的用例。高级功能如 cron 任务、多 Agent 设置和自定义频道插件,在你需要自动化特定工作流时自然会用上。

关键洞见

你的 OpenClaw 工作区本质上是一套协议,用于告诉你的 AI 助手你是谁、你需要完成什么、以及它应该遵循哪些规则。你定义得越清晰,花在纠正 Agent 上的时间就越少,而花在有用工作上的时间就越多。

AGENTS.md 是你的最高杠杆文件。先把它搞定。其他一切都是优化。

从小处着手,在过程中不断改进,把它当作工作流中任何其他基础设施一样对待:一旦设置妥当,它每天都会带来回报。

P.S. Openclaw 只是开始。

在我们的 Build With AI 社区中,我将教你如何构建自定义的 Agent、应用和自动化工具,供自己使用或出售给客户。即将上线。

在此加入等候名单:

https://return-my-time.kit.com/1bd2720397

一键保存

使用 YouMind AI 深度阅读爆款文章

保存原文、追问细节、总结观点,并在一个 AI 工作空间里把爆款文章沉淀成可复用笔记。

了解 YouMind
写给创作者

把你的 Markdown 变成干净的 𝕏 文章

图片上传、表格、代码块,往 𝕏 上手动重排太痛苦。YouMind 把整篇 Markdown 一键转成干净、可直接发布的 𝕏 文章草稿。

试试 Markdown 转 𝕏

更多可拆解样本

近期爆款文章

探索更多爆款文章