所有配置文件的位置、权重、作用与加载时机 · 更新于 2026-03-18 · 基于 OpenClaw 2026.3.13 · 含 Day 3/4 依从性实测修正
models.providers — 模型供应商连接信息(baseUrl / apiKey / api adapter / 模型列表)agents.defaults.model — 主模型 + fallback 链agents.defaults.models — 可切换模型注册表 + aliasagents.defaults.subagents — 子 agent 并发数、模型、嵌套深度agents.list[] — 多 agent 定义(id + workspace)channels — 消息平台配置tools.profile — 工具权限级别(coding / full)hooks.internal — 内部钩子开关gateway — 端口、认证、Tailscale
openclaw gateway restart,或用 config.patch RPC 热更新${VAR_NAME} 引用。加载顺序与权重
| 顺序 | 文件 | 加载时机 | 作用 | 标签 |
|---|---|---|---|---|
| 1 | AGENTS.md |
每次会话 | 操作规程 — 优先级最高的行为指令(SOP) | 每次加载 |
| 2 | SOUL.md |
每次会话 | 人格内核 — 价值观、边界、思维方式 | 每次加载 |
| 3 | USER.md |
每次会话 | 用户画像 — 你是谁、偏好、时区、工作背景 | 每次加载 |
| 4 | IDENTITY.md |
每次会话 | 外在身份 — 名字、emoji、头像、主题 | 每次加载 |
| 5 | TOOLS.md |
每次会话 | 工具环境 — 本机路径、命令别名、适配器注意事项 | 每次加载 |
| 6 | MEMORY.md |
仅主 DM 会话 | 长期记忆 — 精炼的持久事实和偏好 | 仅主会话 |
| 7 | memory/今天.md |
每次会话 | 今日记录 — 当天发生的事 | 每次加载 |
| 8 | memory/昨天.md |
每次会话 | 昨日记录 — 近期上下文 | 每次加载 |
⚡ 实测依从性层级(Day 3 验证,加载顺序 ≠ 依从性)
| 文件 | 加载方式 | 依从性 | 说明 |
|---|---|---|---|
SOUL.md |
✅ 每次启动注入 | ★★★ | 人格底线,最高依从 |
TOOLS.md |
✅ 每次启动注入 | ★★★-★★★★ | 工具指令,高依从(留空策略后效果更佳) |
SKILL.md |
❌ 模型按需 read | ★★★★(触发) / ★(未触发) | 触发后极高依从,但模型可能跳过不读 |
AGENTS.md |
✅ 每次启动注入 | ★★☆ | 被 Lost in Middle 稀释,实际影响力有限 |
chmod 444 设为只读身份解析优先级(CSS 级联,最具体的赢)
agents.defaults.heartbeat.every: "30m"hooks.internal.enabled: true 且 boot-md.enabled: trueagent.skipBootstrap: true 跳过npx clawhub@latest install <slug>agents.list[] 定义,通过 bindings 路由到不同渠道。
sessions_spawn 工具派发任务给子 agentmaxSpawnDepth: 2 允许编排者模式(主 → 编排 → 工作)agents.defaults.subagents.model
| 错误 | 正确做法 |
|---|---|
| TOOLS.md 里写了完整的操作规范 | TOOLS.md 故意留空只放路由指针,完整规范放 SKILL.md。信息太全 → 模型跳过 SKILL.md 自己干 |
| 认为 AGENTS.md 优先级最高 | 加载顺序 #1 ≠ 依从性 #1,实测 AGENTS.md 被 Lost in Middle 稀释,依从性仅 ★★☆ |
| 在 SOUL.md 里放临时任务 | 临时任务放 memory/ 或直接对话,SOUL.md 只放稳定的人格特质 |
| 在 AGENTS.md 里放个人偏好 | 个人偏好放 USER.md |
| 把 MEMORY.md 当聊天记录 | MEMORY.md 是精炼的事实库,不是原始 transcript |
| 在 agents.list[] 里写 systemPrompt | systemPrompt 字段不存在,灵魂在各自 workspace 的 SOUL.md 里 |
| apiKey 写环境变量名字面量 | 用 "${VAR_NAME}" 引用格式,或写真实 key |
| OpenRouter 用 openai-responses adapter | 必须用 openai-completions |
| maxTokens 设太小(如 8192) | thinking 模型会吃 80% token,至少设 32768-65536 |
| fallback 里引用未定义的 provider | 不报错只会静默降级,务必检查 provider 存在 |