【OpenClaw】OpenClaw 配置完全指南:从入门到精通

张开发
2026/4/5 13:56:51 15 分钟阅读

分享文章

【OpenClaw】OpenClaw 配置完全指南:从入门到精通
【OpenClaw】OpenClaw 配置完全指南从入门到精通一、配置文件基础1.1 配置文件位置1.2 配置文件结构二、核心配置详解2.1 Agents 配置2.1.1 基本配置2.1.2 模型配置2.2 Channels 配置2.2.1 飞书配置2.2.2 WebChat 配置2.3 Bindings 配置2.4 Gateway 配置2.5 Plugins 配置三、审批配置管理3.1 审批配置概述3.2 基本命令3.2.1 查看当前审批配置3.2.2 管理白名单添加到白名单从白名单移除3.3 实际使用示例3.3.1 添加常用安全命令3.3.2 批量管理3.3.3 创建审批配置文件3.4 高级选项3.4.1 目标选项3.4.2 详细输出四、常见配置场景4.1 开发环境配置4.2 生产环境配置4.3 多代理配置五、配置管理最佳实践5.1 配置文件管理5.2 安全配置5.3 监控和维护六、故障排除6.1 常见问题6.1.1 配置错误6.1.2 插件加载失败6.1.3 审批配置问题6.2 调试技巧一、配置文件基础1.1 配置文件位置OpenClaw 的配置文件主要位于用户主目录下的.openclaw文件夹中# 主配置文件~/.openclaw/openclaw.json# 审批配置文件自动生成~/.openclaw/exec-approvals.json# 工作目录~/.openclaw/workspace/1.2 配置文件结构主配置文件openclaw.json采用 JSON 格式包含以下主要部分{meta:{lastTouchedVersion:2026.3.23-2,lastTouchedAt:2026-04-02T08:20:51.104Z},agents:{defaults:{model:{primary:zai/glm-5,fallbacks:[...]},workspace:/home/ubuntu/.openclaw/workspace}},channels:{feishu:{enabled:true,appId:...,appSecret:...}},gateway:{port:18789,mode:local,bind:loopback},plugins:{entries:{feishu:{enabled:true}}}}二、核心配置详解2.1 Agents 配置Agents 是 OpenClaw 的核心组件负责处理用户请求和响应。2.1.1 基本配置agents:{defaults:{model:{primary:zai/glm-5,fallbacks:[qwen-portal/coder-model,qwen-portal/vision-model,custom-api-deepseek-com/deepseek-chat]},models:{qwen-portal/coder-model:{alias:qwen},zai/glm-5:{alias:GLM}},workspace:/home/ubuntu/.openclaw/workspace,compaction:{mode:safeguard}}}2.1.2 模型配置OpenClaw 支持多种模型提供商models:{mode:merge,providers:{zai:{baseUrl:https://open.bigmodel.cn/api/paas/v4,api:openai-compat,models:[{id:glm-5,name:GLM-5,reasoning:true,cost:{input:1,output:3.2}}]},custom-api-deepseek-com:{baseUrl:https://api.deepseek.com/v1,apiKey:sk-your-api-key,api:openai-compat,models:[{id:deepseek-chat,name:deepseek-chat (Custom Provider)}]}}}2.2 Channels 配置Channels 定义了 OpenClaw 支持的通信渠道。2.2.1 飞书配置channels:{feishu:{enabled:true,appId:...,appSecret:...,connectionMode:websocket,domain:feishu,groupPolicy:disabled}}2.2.2 WebChat 配置channels:{webchat:{enabled:true,port:18789}}2.3 Bindings 配置Bindings 将 Agents 与 Channels 绑定bindings:[{agentId:main,match:{channel:feishu,accountId:default}},{agentId:main,match:{channel:webchat,accountId:default}}]2.4 Gateway 配置Gateway 是 OpenClaw 的核心服务组件gateway:{port:18789,mode:local,bind:loopback,controlUi:{allowedOrigins:[http://localhost:18789,http://127.0.0.1:18789]},auth:{mode:token,token:...},tailscale:{mode:off,resetOnExit:false},nodes:{denyCommands:[camera.snap,camera.clip,screen.record,contacts.add,calendar.add,reminders.add,sms.send]}}2.5 Plugins 配置Plugins 扩展 OpenClaw 的功能plugins:{allow:[feishu,qwen-portal-auth],load:{paths:[/home/ubuntu/.npm-global/lib/node_modules/openclaw/dist/extensions/feishu]},entries:{feishu:{enabled:true},qwen-portal-auth:{enabled:true}}}三、审批配置管理3.1 审批配置概述审批配置通过openclaw approvals命令管理而不是手动编辑配置文件。3.2 基本命令3.2.1 查看当前审批配置# 查看本地审批配置openclaw approvals get# 查看 Gateway 的审批配置openclaw approvals get--gateway# 查看特定节点的审批配置openclaw approvals get--nodenode-id3.2.2 管理白名单添加到白名单# 添加单个命令所有代理openclaw approvals allowlistadd/usr/bin/ls# 添加到特定代理openclaw approvals allowlistadd--agentmain/usr/bin/cat# 添加到所有代理openclaw approvals allowlistadd--agent*/usr/bin/echo# 添加通配符模式openclaw approvals allowlistadd/usr/bin/*openclaw approvals allowlistadd/home/user/scripts/*从白名单移除# 移除单个命令openclaw approvals allowlist remove/usr/bin/ls# 移除特定代理的命令openclaw approvals allowlist remove--agentmain/usr/bin/cat3.3 实际使用示例3.3.1 添加常用安全命令# 添加基础文件操作命令openclaw approvals allowlistadd--agent*/usr/bin/lsopenclaw approvals allowlistadd--agent*/usr/bin/catopenclaw approvals allowlistadd--agent*/usr/bin/headopenclaw approvals allowlistadd--agent*/usr/bin/tailopenclaw approvals allowlistadd--agent*/usr/bin/grepopenclaw approvals allowlistadd--agent*/usr/bin/findopenclaw approvals allowlistadd--agent*/usr/bin/wcopenclaw approvals allowlistadd--agent*/usr/bin/echoopenclaw approvals allowlistadd--agent*/usr/bin/pwdopenclaw approvals allowlistadd--agent*/usr/bin/whichopenclaw approvals allowlistadd--agent*/usr/bin/whoami# 添加网络命令openclaw approvals allowlistadd--agent*/usr/bin/curlopenclaw approvals allowlistadd--agent*/usr/bin/wget# 添加系统信息命令openclaw approvals allowlistadd--agent*/usr/bin/psopenclaw approvals allowlistadd--agent*/usr/bin/topopenclaw approvals allowlistadd--agent*/usr/bin/freeopenclaw approvals allowlistadd--agent*/usr/bin/dfopenclaw approvals allowlistadd--agent*/usr/bin/du3.3.2 批量管理# 创建一个脚本批量添加catadd-safe-commands.shEOF #!/bin/bash commands( /usr/bin/ls /usr/bin/cat /usr/bin/head /usr/bin/tail /usr/bin/grep /usr/bin/find /usr/bin/wc /usr/bin/echo /usr/bin/pwd /usr/bin/which /usr/bin/whoami ) for cmd in ${commands[]}; do openclaw approvals allowlist add --agent * $cmd echo Added: $cmd done EOFchmodx add-safe-commands.sh ./add-safe-commands.sh3.3.3 创建审批配置文件# 创建自定义审批配置文件catmy-approvals.jsonEOF { version: 1, defaults: { security: allowlist }, agents: { main: { allowlist: [ /usr/bin/*, /bin/*, /usr/local/bin/*, /home/user/scripts/* ] }, subagent: { allowlist: [ /usr/bin/ls, /usr/bin/cat, /usr/bin/grep ] } } } EOF# 应用配置openclaw approvalsset--filemy-approvals.json3.4 高级选项3.4.1 目标选项# 目标类型--local# 本地默认--gateway# Gateway--nodeid# 特定节点# 代理选项--agent*# 所有代理默认--agentmain# 特定代理--agentsubagent# 另一个代理3.4.2 详细输出# 详细模式openclaw approvals get--verbose# JSON 输出openclaw approvals get--json# 格式化输出openclaw approvals get--formatpretty四、常见配置场景4.1 开发环境配置{agents:{defaults:{model:{primary:zai/glm-5,fallbacks:[qwen-portal/coder-model]}}},channels:{feishu:{enabled:true,groupPolicy:allowlist},webchat:{enabled:true}}}# 开发环境允许更多命令openclaw approvals allowlistadd--agent*/usr/bin/gitopenclaw approvals allowlistadd--agent*/usr/bin/npmopenclaw approvals allowlistadd--agent*/usr/bin/dockeropenclaw approvals allowlistadd--agent*/usr/bin/vimopenclaw approvals allowlistadd--agent*/usr/bin/nano4.2 生产环境配置{gateway:{mode:remote,bind:any},channels:{feishu:{enabled:true,groupPolicy:disabled}},plugins:{entries:{feishu:{enabled:true}}}}# 生产环境只允许必要命令openclaw approvals allowlistadd--agent*/usr/bin/lsopenclaw approvals allowlistadd--agent*/usr/bin/catopenclaw approvals allowlistadd--agent*/usr/bin/grepopenclaw approvals allowlistadd--agent*/usr/bin/ps4.3 多代理配置{agents:{main:{model:zai/glm-5,thinking:high},coder:{model:custom-api-deepseek-com/deepseek-chat,thinking:medium},assistant:{model:qwen-portal/coder-model,thinking:low}},bindings:[{agentId:main,match:{channel:feishu,accountId:default}},{agentId:coder,match:{channel:webchat,accountId:coding}}]}五、配置管理最佳实践5.1 配置文件管理# 备份配置文件cp~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.backup# 查看配置文件差异diff~/.openclaw/openclaw.json.backup ~/.openclaw/openclaw.json# 修复配置错误openclaw doctor--fix5.2 安全配置# 限制敏感命令openclaw approvals allowlist remove--agent*/usr/bin/rmopenclaw approvals allowlist remove--agent*/usr/bin/mvopenclaw approvals allowlist remove--agent*/usr/bin/cp# 只允许特定目录的命令openclaw approvals allowlistadd--agent*/usr/bin/ls /home/useropenclaw approvals allowlistadd--agent*/usr/bin/cat /etc/hosts5.3 监控和维护# 定期备份审批配置openclaw approvals getapprovals-backup-$(date%Y%m%d).json# 检查最近使用的命令openclaw approvals get--verbose|grepLast Used# 验证配置完整性openclaw status六、故障排除6.1 常见问题6.1.1 配置错误# 检查配置语法python3-mjson.tool ~/.openclaw/openclaw.json# 修复配置openclaw doctor--fix6.1.2 插件加载失败# 检查插件状态openclaw plugins list# 重新加载插件openclaw gateway restart6.1.3 审批配置问题# 重置审批配置openclaw approvalsset--file/dev/null# 重新添加必要命令openclaw approvals allowlistadd--agent*/usr/bin/lsopenclaw approvals allowlistadd--agent*/usr/bin/cat6.2 调试技巧# 启用详细日志exportOPENCLAW_LOG_LEVELdebug openclaw gateway start# 查看日志tail-f~/.openclaw/logs/gateway.log# 测试配置openclaw configtestEnd你好少年未来可期~本文由作者最佳伙伴——阿程赞助推出

更多文章