
整理时间:2026-03-14
目录
配置文件基础 渠道配置(Channels) 模型配置(Models) Agent 配置 TTS 语音合成配置 会话配置(Session) 工具配置(Tools) 浏览器配置(Browser) 音频配置(Audio) Hooks 配置 Cron 定时任务配置 Gateway 配置 命令配置 诊断命令 配置示例
一、配置文件基础
1.1 配置文件位置
~/.openclaw/openclaw.json1.2 配置格式
使用 JSON5 格式(支持注释 //和/* */,支持尾随逗号)所有字段都是可选的,OpenClaw 有安全默认值
1.3 配置热重载
Gateway 自动监听配置文件变化,大多数设置无需手动重启。
hybrid | gateway.reload: "hybrid" | |
hot | gateway.reload: "hot" | |
restart | gateway.reload: "restart" | |
off | gateway.reload: "off" |
热重载支持的配置:
渠道、Agent、模型、自动化、会话、消息、工具、媒体、UI 等
需要重启的配置:
Gateway 端口、绑定地址、认证、TLS、插件等
1.4 环境变量
OpenClaw 从以下位置读取环境变量:
父进程环境 当前目录的 .env文件~/.openclaw/.env(全局回退)
在配置中使用环境变量:
{"models": {"providers": {"openai": {"apiKey": "${OPENAI_API_KEY}"}}}}
二、渠道配置(Channels)
每个渠道在其配置部分存在时自动启动(除非 enabled: false)。
2.1 私聊策略(dmPolicy)
pairing | |
allowlist | allowFrom 列表中的发送者 |
open | allowFrom: ["*"]) |
disabled |
2.2 群聊策略(groupPolicy)
allowlist | |
open | |
disabled |
2.3 群聊提及限制
群聊默认需要提及机器人才会响应:
提及类型:
元数据提及:平台原生 @提及(WhatsApp 点击提及、Telegram @bot 等) 文本模式: mentionPatterns中的正则表达式
{"agents": {"list": [{"id": "my-agent","groupChat": {"mentionPatterns": ["机器人", "助手", "@my_bot"]}}]}}
2.4 Telegram 配置
{"channels": {"telegram": {"enabled": true,"botToken": "YOUR_BOT_TOKEN","dmPolicy": "pairing","groupPolicy": "open","allowFrom": ["123456789"],"groups": {"-1001234567890": {"requireMention": true,"enabled": true}},"accounts": {"default": {"botToken": "BOT_TOKEN_1"},"scholar": {"botToken": "BOT_TOKEN_2"}}}}}
字段说明:
botToken | ||
tokenFile | ||
dmPolicy | ||
groupPolicy | ||
allowFrom | ||
groups | ||
requireMention | ||
configWrites | ||
streaming | "partial" |
2.5 Discord 配置
{"channels": {"discord": {"token": "YOUR_DISCORD_BOT_TOKEN","dmPolicy": "pairing","guilds": {"GUILD_ID": {"enabled": true,"ignoreOtherMentions": true}},"voice": {"enabled": true,"autoJoin": true}}}}
2.6 WhatsApp 配置
{"channels": {"whatsapp": {"enabled": true,"dmPolicy": "pairing","accounts": {"default": {"sendReadReceipts": true}}}}}
2.7 多账号配置
所有渠道都支持多账号:
{"channels": {"telegram": {"defaultAccount": "default","accounts": {"default": {"botToken": "TOKEN_1"},"butler": {"botToken": "TOKEN_2"},"scholar": {"botToken": "TOKEN_3"}}}}}
三、模型配置(Models)
3.1 模型格式
provider/model-id例如:anthropic/claude-opus-4-6、openai/gpt-5.4、google/gemini-3.1-pro-preview
3.2 默认模型配置
{"agents": {"defaults": {"model": "freeapi/gpt-5.2","imageModel": "openai/gpt-4o","pdfModel": "anthropic/claude-sonnet-4-6"}}}
字段说明:
model | { primary, fallbacks } |
imageModel | image 工具) |
pdfModel |
3.3 模型目录和别名
{"agents": {"defaults": {"models": {"anthropic/claude-opus-4-6": {"alias": "opus","params": {"temperature": 0.7,"maxTokens": 4096}},"openai/gpt-5.4": {"alias": "gpt"}}}}}
3.4 内置别名快捷方式
opus | anthropic/claude-opus-4-6 |
sonnet | anthropic/claude-sonnet-4-6 |
gpt | openai/gpt-5.4 |
gpt-mini | openai/gpt-5-mini |
gemini | google/gemini-3.1-pro-preview |
gemini-flash | google/gemini-3-flash-preview |
3.5 故障转移
{"agents": {"defaults": {"model": {"primary": "anthropic/claude-opus-4-6","fallbacks": ["openai/gpt-5.4", "google/gemini-3.1-pro-preview"]}}}}
3.6 自定义提供商
{"models": {"mode": "merge","providers": {"my-custom-provider": {"baseUrl": "https://api.example.com/v1","apiKey": "${MY_API_KEY}","api": "openai-completions","models": [{"id": "my-model","contextWindow": 128000,"maxTokens": 8192}]}}}}
四、Agent 配置
4.1 默认设置
{"agents": {"defaults": {"workspace": "~/.openclaw/workspace","repoRoot": "/path/to/repo","model": "provider/model-id","maxConcurrent": 1,"timeoutSeconds": 1800,"contextTokens": 1000000,"imageMaxDimensionPx": 1200,"userTimezone": "Asia/Shanghai","timeFormat": "auto"}}}
字段说明:
workspace | ~/.openclaw/workspace | |
repoRoot | ||
model | ||
maxConcurrent | ||
timeoutSeconds | ||
contextTokens | ||
imageMaxDimensionPx | ||
userTimezone | ||
timeFormat | auto |
4.2 Bootstrap 文件
Agent 启动时会加载工作空间中的以下文件:
AGENTS.md | |
SOUL.md | |
TOOLS.md | |
IDENTITY.md | |
USER.md | |
HEARTBEAT.md | |
BOOTSTRAP.md |
相关配置:
{"agents": {"defaults": {"skipBootstrap": false,"bootstrapMaxChars": 20000,"bootstrapTotalMaxChars": 150000}}}
4.3 多 Agent 配置
{"agents": {"list": [{"id": "main","default": true,"workspace": "~/.openclaw/workspace-main","groupChat": {"mentionPatterns": ["诺玛", "@main_bot"]}},{"id": "butler","workspace": "~/.openclaw/workspace-butler","groupChat": {"mentionPatterns": ["管家", "@butler_bot"]}},{"id": "scholar","workspace": "~/.openclaw/workspace-scholar","groupChat": {"mentionPatterns": ["学霸", "@scholar_bot"]}}]}}
4.4 Agent 绑定(路由)
{"bindings": [{"agentId": "main","match": {"channel": "telegram","accountId": "default"}},{"agentId": "butler","match": {"channel": "telegram","accountId": "butler"}},{"agentId": "scholar","match": {"channel": "telegram","accountId": "scholar"}}]}
匹配字段说明:
match.channel | |
match.accountId | * 表示任意账号) |
match.peer | { kind: "direct|group|channel", id } |
match.guildId | |
match.teamId |
4.5 心跳配置(Heartbeat)
定期运行 Agent 任务:
{"agents": {"defaults": {"heartbeat": {"every": "30m","suppressToolErrorWarnings": true,"directPolicy": "allow","lightContext": true}}}}
字段说明:
every | 30m | |
suppressToolErrorWarnings | ||
directPolicy | allow | allow / block |
lightContext |
4.6 上下文压缩(Compaction)
长会话自动压缩:
{"agents": {"defaults": {"compaction": {"mode": "safeguard","identifierPolicy": "strict","model": "anthropic/claude-sonnet-4-6","memoryFlush": {"enabled": true,"softThresholdTokens": 6000}}}}}
4.7 沙箱配置(Sandbox)
使用 Docker 隔离 Agent:
{"agents": {"defaults": {"sandbox": {"mode": "off","workspaceAccess": "rw","scope": "agent","docker": {"image": "openclaw-sandbox:latest","network": "none","binds": ["/host/path:/container/path"]}}}}}
工作空间访问模式:
none | |
ro | |
rw |
作用域:
session | |
agent | |
shared |
五、TTS 语音合成配置
5.1 启用 TTS
{"messages": {"tts": {"auto": "always","provider": "edge"}}}
5.2 TTS 模式
off | |
always | |
inbound | |
tagged | [[tts]] 标签时生成语音 |
5.3 支持的 TTS 服务
| Edge TTS | ||
5.4 Edge TTS 配置
{"messages": {"tts": {"auto": "always","provider": "edge","edge": {"enabled": true,"voice": "zh-CN-XiaoxiaoNeural","lang": "zh-CN","outputFormat": "ogg-24khz-16bit-mono-opus","rate": "+0%","pitch": "+0%","volume": "+0%"}}}}
常用中文音色:
zh-CN-XiaoxiaoNeural | |
zh-CN-YunxiNeural | |
zh-CN-YunyangNeural | |
zh-CN-XiaoyiNeural |
常用英文音色:
en-US-JennyNeural | |
en-US-GuyNeural | |
en-GB-SoniaNeural | |
en-GB-RyanNeural |
5.5 OpenAI TTS 配置
{"messages": {"tts": {"auto": "always","provider": "openai","openai": {"voice": "alloy","model": "tts-1"}}}}
5.6 用户偏好文件
位置:~/.openclaw/settings/tts.json
{"enabled": true,"provider": "edge","maxLength": 10000,"summarize": false}
字段说明:
enabled | ||
provider | ||
maxLength | ||
summarize |
5.7 斜杠命令
/tts on # 开启 TTS(等同于 /tts always)/tts off # 关闭 TTS/tts always # 总是生成语音/tts inbound # 只在收到语音后回复语音/tts tagged # 只在标记时生成语音/tts audio # 生成一次性语音回复/tts limit 5000 # 设置长度限制
5.8 模型驱动的音色切换
Agent 可以在回复中插入指令切换音色:
这是中文内容。[[tts:voice=en-US-JennyNeural]][[tts:text]]This is English content.[[/tts:text]]继续中文内容...
六、会话配置(Session)
6.1 会话作用域(dmScope)
main | |
per-peer | |
per-channel-peer | |
per-account-channel-peer |
{"session": {"dmScope": "per-channel-peer"}}
6.2 会话重置
{"session": {"reset": {"mode": "idle","idleMinutes": 30},"resetByType": {"direct": {"mode": "idle","idleMinutes": 30},"group": {"mode": "idle","idleMinutes": 60}}}}
重置模式:
idle | |
daily |
七、工具配置(Tools)
7.1 工具白名单/黑名单
{"tools": {"allow": ["*"],"deny": ["exec", "process"],"profile": "coding"}}
工具配置文件(Profile):
minimal | session_status |
coding | |
messaging | |
full |
7.2 工具组(Groups)
group:runtime | execbash, process |
group:fs | readwrite, edit, apply_patch |
group:sessions | sessions_listsessions_history, sessions_send, sessions_spawn, session_status |
group:memory | memory_searchmemory_get |
group:web | web_searchweb_fetch |
group:ui | browsercanvas |
group:automation | crongateway |
group:messaging | message |
group:nodes | nodes |
group:openclaw |
7.3 Web 搜索配置
{"tools": {"web": {"search": {"enabled": true,"provider": "brave","maxResults": 10},"fetch": {"enabled": true,"maxCharsCap": 50000}}}}
支持的搜索提供商:
brave(推荐)perplexitygeminigrokkimi
7.4 Agent 间通信
{"tools": {"agentToAgent": {"enabled": true,"allow": ["main", "butler", "scholar"]}}}
7.5 命令执行配置
{"tools": {"exec": {"host": "gateway","security": "full"},"elevated": {"enabled": true,"allowFrom": {"telegram": ["123456789"]}}}}
安全级别:
deny | |
allowlist | |
full |
八、浏览器配置(Browser)
8.1 基本配置
{"browser": {"enabled": true,"defaultProfile": "openclaw","executablePath": "/usr/bin/chromium"}}
8.2 多 Profile 配置
{"browser": {"profiles": {"openclaw": {"color": "orange","cdpPort": 18800},"work": {"color": "blue","cdpPort": 18801}}}}
8.3 远程 CDP 配置
连接到远程浏览器(如 Browserless、Browserbase):
{"browser": {"profiles": {"browserless": {"cdpUrl": "wss://chrome.browserless.io?token=YOUR_TOKEN"}}}}
8.4 浏览器工具操作
status | |
startstop | |
tabs | |
openfocus / close | |
snapshot | |
screenshot | |
navigate | |
act |
8.5 CLI 命令示例
# 查看状态openclaw browser status# 截图openclaw browser screenshot --full-page# AI 快照openclaw browser snapshot# 交互模式快照(带 ref)openclaw browser snapshot --interactive# 点击元素openclaw browser click 12 # AI snapshot 数字 refopenclaw browser click e12 # Role snapshot ref# 输入文字openclaw browser type 23 "hello" --submit# 导航openclaw browser navigate https://example.com
九、音频配置(Audio)
9.1 自动检测
如果不配置,OpenClaw 会自动检测可用的转录方案:
本地 CLI: sherpa-onnx-offline、whisper-cli、whisperGemini CLI Provider API:OpenAI → Groq → Deepgram → Google
9.2 配置示例
{"tools": {"media": {"audio": {"enabled": true,"maxBytes": 20971520,"maxChars": null,"echoTranscript": false,"models": [{"provider": "openai","model": "gpt-4o-mini-transcribe"}]}}}}
9.3 字段说明
enabled | ||
maxBytes | ||
maxChars | ||
echoTranscript | ||
models |
9.4 群聊语音提及检测
在需要提及的群聊中,OpenClaw 会先转录语音再检查是否提及:
{"channels": {"telegram": {"groups": {"-1001234567890": {"requireMention": true,"disableAudioPreflight": false}}}}}
十、Hooks 配置
Hooks 是事件驱动的自动化系统,在特定事件发生时运行脚本。
10.1 内置 Hooks
session-memory | command:new | |
bootstrap-extra-files | agent:bootstrap | |
command-logger | command | |
boot-md | gateway:startup |
10.2 启用 Hooks
{"hooks": {"internal": {"enabled": true,"entries": {"session-memory": {"enabled": true},"command-logger": {"enabled": true}}}}}
10.3 事件类型
命令事件:
command:new- 执行/new时command:reset- 执行/reset时command:stop- 执行/stop时
会话事件:
session:compact:before- 压缩前session:compact:after- 压缩后
Agent 事件:
agent:bootstrap- Agent 启动时
Gateway 事件:
gateway:startup- Gateway 启动时
消息事件:
message:received- 收到消息message:transcribed- 语音转录完成message:sent- 发送消息
10.4 自定义 Hook 结构
~/.openclaw/hooks/my-hook/├── HOOK.md└── handler.ts
HOOK.md 格式:
---emoji: "📝"events:- command:new- command:reset---# My Custom HookDescription of what this hook does.
handler.ts 格式:
import { HookHandler } from 'openclaw';const handler: HookHandler = async (event, context) => {// 处理事件console.log('Event:', event);};export default handler;
10.5 CLI 命令
# 列出所有 Hooksopenclaw hooks list# 查看 Hook 详情openclaw hooks show session-memory# 启用/禁用 Hookopenclaw hooks enable session-memoryopenclaw hooks disable session-memory# 检查 Hook 是否符合条件openclaw hooks check session-memory
十一、Cron 定时任务配置
11.1 基本概念
Cron 是 Gateway 内置的调度器,支持:
一次性任务( at)固定间隔任务( every)Cron 表达式任务( cron)
11.2 任务配置
{"cron": {"enabled": true,"store": "~/.openclaw/cron/jobs.json","sessionRetention": "24h","runLog": {"maxBytes": 2000000,"keepLines": 2000},"jobs": [{"id": "daily-summary","enabled": true,"schedule": {"kind": "cron","expr": "0 9 * * *","tz": "Asia/Shanghai"},"sessionTarget": "isolated","payload": {"kind": "agentTurn","message": "Generate daily summary"},"delivery": {"mode": "announce","channel": "telegram","to": "123456789"}}]}}
11.3 调度类型
at | schedule.at | |
every | schedule.everyMs | |
cron | schedule.expr |
11.4 会话目标
main | |
isolated | cron:<jobId> 中运行 |
current | |
session:xxx |
11.5 投递模式
announce | |
webhook | |
none |
11.6 CLI 命令
# 查看状态openclaw cron status# 列出任务openclaw cron list# 添加一次性任务openclaw cron add --at "2026-03-15T09:00:00+08:00" --message "Reminder"# 添加重复任务openclaw cron add --every 30m --message "Check status"# 添加 cron 任务openclaw cron add --cron "0 9 * * *" --message "Daily task"# 编辑任务openclaw cron edit <jobId> --message "New message"# 删除任务openclaw cron remove <jobId># 立即运行任务openclaw cron run <jobId># 查看运行历史openclaw cron runs --id <jobId>
十二、Gateway 配置
12.1 基本配置
{"gateway": {"port": 18789,"mode": "local","bind": "loopback","auth": {"mode": "token","token": "your-secure-token"}}}
12.2 字段说明
port | ||
mode | local | local / remote |
bind | loopback | loopback / 0.0.0.0 |
auth.mode | token / password / none | |
auth.token |
12.3 TLS 配置
{"gateway": {"tls": {"enabled": true,"autoGenerate": true}}}
12.4 健康检查
curl http://127.0.0.1:18789/health# 返回:{"ok":true,"status":"live"}
十三、命令配置
13.1 命令开关
{"commands": {"native": "auto","restart": true,"bash": false,"config": false,"ownerDisplay": "raw"}}
字段说明:
native | auto | auto / true / false |
restart | /restart 命令 | |
bash | ! <cmd> 执行 Shell | |
config | /config 命令 |
13.2 常用命令
/new | |
/reset | |
/model <model> | |
/models | |
/tts on/off | |
/allowlist | |
/config show | |
/restart | |
/help |
十四、诊断命令
14.1 CLI 诊断
# 检查配置问题openclaw doctor# 自动修复问题openclaw doctor --fix# 查看日志openclaw logs# 健康检查openclaw health# 运行状态openclaw status
14.2 日志位置
/tmp/openclaw/openclaw-YYYY-MM-DD.log~/.openclaw/logs/commands.log
十五、配置示例
15.1 最小配置
{"agents": {"defaults": {"model": "anthropic/claude-sonnet-4-6"}},"channels": {"telegram": {"botToken": "YOUR_BOT_TOKEN","dmPolicy": "pairing"}}}
夜雨聆风