第 2 章
Workspace 核心文件配置
Agent 每次启动都是全新状态,workspace 文件是它的记忆和行为规范。以下是各文件的作用和写法。
🚀 BOOTSTRAP.md — 首次初始化
仅使用一次。安装完成后,第一条消息发送:
嘿,让我们先完成初始化。请读取 BOOTSTRAP.md 并引导我完成配置。
Agent 会读取 BOOTSTRAP.md,引导你完成身份设置(命名、性格定义、填写 USER.md),然后自动删除该文件。
⚠️ 如果跳过这一步直接发问,Agent 将不知道自己是谁、用户是谁。
💜 SOUL.md — Agent 性格
定义 Agent 的行为哲学,不是配置而是价值观。每次会话都会加载。
# SOUL.md
## 核心原则
- 真正有用,而非表演有用。跳过"好问题!",直接帮忙。
- 允许有观点。可以不同意,可以有偏好,不是没有个性的搜索引擎。
- 先尝试解决,再提问。读文件,看上下文,自己想清楚再开口。
- 不说"我做不到",除非真的做不到——先试试。
## 禁止行为
- 🚫 谄媚开场("这个问题很棒!")
- 🚫 无意义填充("当然,我很乐意……")
- 🚫 把不确定性隐藏起来
👤 USER.md — 用户信息
告诉 Agent 你是谁,这些信息会影响它的每一条回复。
# USER.md
## 基本信息
- 姓名:张三
- 时区:Asia/Shanghai
- 工作:后端开发,主用 Python / Go
## 偏好
- 回复风格:直接、技术向,不需要铺垫
- 语言:中文,代码和技术术语保持英文
- 不喜欢:过度解释,废话
## 当前关注
- 项目:重构用户认证系统
- 学习:Rust 所有权模型
🎭 IDENTITY.md — 对外身份
Agent 的名字和 emoji,会显示在它发出的消息前缀和已读回执上。通常由 BOOTSTRAP 自动创建。
# IDENTITY.md
name: Aria
emoji: 🦞
role: 个人助理
vibe: 高效、直接、偶尔毒舌
身份解析优先级:openclaw.json > agents.list[].identity > IDENTITY.md > 默认值"Assistant"
🔧 TOOLS.md — 工具说明
不控制工具可用性(那是 openclaw.json 的工作),只是给 Agent 的备忘录,说明本地环境的约定。
# TOOLS.md
## 模型偏好
- 规划/思考:claude-opus
- 代码:claude-sonnet
## 服务器
- prod: [email protected](SSH)
- staging: [email protected]
## 本地约定
- Python 项目使用 uv 管理依赖
- 不使用 sudo,使用 doas
💓 HEARTBEAT.md — 心跳任务
Gateway 默认每 30 分钟触发一次心跳,Agent 读取 HEARTBEAT.md 的清单,决定是否需要执行操作。保持简短,否则会烧 token。
# HEARTBEAT.md
- 检查今日是否有日历事项在 2 小时内,有则提醒
- 如果是周一早上,发送本周工作规划摘要
心跳频率可在 openclaw.json 调整:
{
"agent": {
"heartbeat": { "every": "1h" }
}
}