个人游戏笔记本免费“养龙虾”(七)OpenClaw的openclaw.json文件的基本配置

张开发
2026/4/6 19:03:19 15 分钟阅读

分享文章

个人游戏笔记本免费“养龙虾”(七)OpenClaw的openclaw.json文件的基本配置
个人游戏笔记本免费“养龙虾”七OpenClaw的openclaw.json文件的基本配置问题背景可能的原因分析一、env二、models三、agents一elevated提升权限二heartbeat三list补充session会话的修剪四、tools五、commands approvals session cron等补充session会话的配置和重置六、gateway七、plugins八、channels渠道的配置一WebChat的配置二gateway中**channel**的配置1、设置一个渠道2、选择并配置模型九、验证系列文章1. 个人游戏笔记本免费“养龙虾”Win10WSL2OpenClaw 部署与配置指南2.个人游戏笔记本免费“养龙虾”二用显卡GPU运行OpenClawCUDA的安装与配置3.个人游戏笔记本免费“养龙虾”三OpenClaw的安全配置指南4.个人游戏笔记本免费“养龙虾”四OpenClaw(exec tools)的文件权限配置5.个人游戏笔记本免费“养龙虾”五OpenClaw浏览器工具browser的使用6.个人游戏笔记本免费“养龙虾”番外篇VSCode远程SSH登录Ubuntu配置OpenClaw7.个人游戏笔记本免费“养龙虾”六给OpenClaw一个灵魂配置七大Markdown文件问题背景经过前期的实践目前2026.4.4 OpenClaw可以正常运行webchatUI聊天可以进行2-3轮对话也能够分析自然语言指令命令行也能正常执行agent-browser命令。但是 很棘手的问题是在webchat中不能正常调用skills。例如通过对话不能正常执行agent-browser命令。纳米AI的回答是这个问题主要原因是安全设计对话模式默认处于严格的安全限制下而命令行模式拥有更高的权限。这是官方为了防止AI在对话中被诱导执行恶意操作而故意设置的安全机制。可能的原因分析权限问题对话模式默认仅允许纯对话禁止自动执行任何操作如文件读写、浏览器操作、命令执行等配置问题可能没有正确配置对话模式的权限、环境变量PATH、env等环境问题可能缺少某些依赖库或工具因此本文根据官方文档尽可能多的配置选项而不仅仅是最小配置。需要配置的总体内容如下openclaw.json (JSON5 格式支持注释)├── agents # Agent 运行时配置├── env # 环境变量配置├── auth # 认证配置OAuth/API Key├── identity # AI 身份设定├── logging # 日志配置├── messages # 消息格式化├── routing # 路由和队列├── tools # 工具配置├── session # 会话管理├── channels # 渠道配置WhatsApp/Telegram/Discord 等├── models # 模型提供商配置├── cron # 定时任务├── hooks # Webhooks├── gateway # 网关配置├── skills # 技能配置└── plugins # 插件配置用ollama pull、openclaw onboard等命令完成了模型的安装、拉取、配置在openclaw.json文件中会自动生成配置内容。包括“models” “auth” “agents” gateway等选项的基本配置。同样在OpenClaw control UI界面中的配置内容也会自动写入openclaw.json文件中。这些都没有问题。不再赘述。但是这些配置内容还不够需要增加权限相关的配置。一、envtools和skills会调用外部命令因此需要配置环境变量。官方文档环境变量 - OpenClaw{env:{shellEnv:{enabled:true,timeoutMs:15000}},}二、modelsmodels基本不需要修改。这里强调2个参数“contextWindow和maxTokens”。这2个参数过大会导致内存超限系统崩溃太小推理性能会下降。我的GPU是6G选择的模型是qwen3.5:2b-q4_K_M。2个参数设置如下。验证结果表明可以进行3-5轮对话。contextWindow: 104858, maxTokens: 8192三、agents在自动配置的基础上增加了一些配置项。具体含义可以参考官方文档这里仅仅列出来供大家参考。一elevated提升权限elevated权限升级选项必须打开才能够在主机上执行外部shell命令例如/命令、bash命令。官方文档沙箱 vs 工具策略 vs 提升执行-OpenClawelevatedDefault:on,二heartbeat这个似乎也是必不可少的。三list该选项也是自动生成的但是要增加一些选项。特别是涉及到权限的一些选项例如“skills” “sandbox” “tools” “elevated”。{agents:{defaults:{model:{primary:ollama/qwen3.5:2b-q4_K_M},models:{ollama/glm-4.7-flash:{},ollama/qwen3.5:2b:{},ollama/qwen3.5:2b-q4_K_M:{}},workspace:/home/hello/.openclaw/workspace,skipBootstrap:false,bootstrapMaxChars:20000,bootstrapTotalMaxChars:150000,bootstrapPromptTruncationWarning:once,userTimezone:China/Shanghai,timeFormat:24,contextPruning:{mode:cache-ttl,ttl:1h,keepLastAssistants:3,softTrimRatio:0.3,hardClearRatio:0.5,minPrunableToolChars:50000,softTrim:{maxChars:4000,headChars:1500,tailChars:1500},hardClear:{enabled:true,placeholder:[Old tool result content cleared]}},elevatedDefault:on,blockStreamingDefault:on,blockStreamingBreak:text_end,blockStreamingChunk:{breakPreference:sentence},heartbeat:{every:30m,model:ollama/qwen3.5:2b-q4_K_M,session:main,includeReasoning:false,target:none,directPolicy:allow,to:15555550123,prompt:Read HEARTBEAT.md if it exists...,ackMaxChars:300,suppressToolErrorWarnings:false,lightContext:false}},list:[{id:main,default:true,name:Main,workspace:~/.openclaw/workspace,agentDir:~/.openclaw/agents/main/agent,model:ollama/qwen3.5:2b-q4_K_M,skills:[agent-browser,clawhub,healthcheck,node-connect,skill-creator,tmux,weather,hello_world],identity:{name:Claw,theme:helpful sloth,emoji:,avatar:avatars/samantha.png},groupChat:{mentionPatterns:[openclaw]},subagents:{allowAgents:[*]},sandbox:{mode:off},params:{cacheRetention:none},tools:{allow:[llm-task],elevated:{enabled:true,allowFrom:{webchat:[*]}}}}]},}补充session会话的修剪会话剪枝Session pruning在每次 LLM 调用之前从内存上下文中修剪旧的工具结果。官方文档:Session pruning - OpenClaw限制剪枝到特定工具{contextPruning:{mode:cache-ttl,tools:{allow:[exec,read],deny:[*image*]}},}四、tools该选项可以通过“OpenClaw control UI”来配置文件内容也是自动生成的但是要增加一些选项。特别要注意权限、环境等相关的选项例如“elevated” “exec” “ask” “pathPrepend”。tools:{profile:full,byProvider:{webchat:{allow:[exec,read],profile:full}},web:{fetch:{enabled:true,readability:true}},links:{enabled:true},sessions:{visibility:all},message:{allowCrossContextSend:true},elevated:{enabled:true,allowFrom:{webchat:[*]}},exec:{host:gateway,security:full,ask:off,pathPrepend:[/usr/local/bin,/lib/node_modules],safeBinTrustedDirs:[/usr/local/bin,/lib/node_modules],backgroundMs:2000,timeoutSec:2000,cleanupMs:2000,notifyOnExit:true,notifyOnExitEmptySuccess:true},sessions_spawn:{attachments:{enabled:true}}},五、“commands” “approvals” “session” cron等commands:{native:true,nativeSkills:true,text:true,bash:true,bashForegroundMs:2000,restart:true,useAccessGroups:true,ownerDisplay:raw,allowFrom:{*:[*]}},approvals:{exec:{enabled:true,mode:session}},session:{dmScope:per-peer},cron:{enabled:false},web:{enabled:true},补充session会话的配置和重置1会话控制对话的连续性和隔离性dmScope是OpenClaw中的会话隔离范围配置用于控制直接聊天DM会话的边界防止不同用户的对话串起来。main共享模式所有用户的直接聊天都会进入同一个会话上下文。适合单人自用场景所有对话上下文保持连续体验自然per-peer每个发送者peer的对话会进入独立的会话上下文per-channel-peer每个渠道发送者的组合会进入独立的会话上下文。多用户多渠道的复杂场景per-account-channel-peer每个账户渠道发送者的组合会进入独立的会话上下文。六、gateway自动生成的基本就够用了。gateway:{port:18789,mode:local,bind:loopback,controlUi:{enabled:true},auth:{mode:token,token:322da958350196cdd5c6f1a42797942f729121771a17423b},tailscale:{mode:off,resetOnExit:false},nodes:{denyCommands:[camera.snap,camera.clip,screen.record,contacts.add,calendar.add,reminders.add,sms.send]}},七、plugins这个应该也很重要plugins与skills是类似的甚至是相关的。注意权限设置的相关部分。plugins:{allow:[],entries:{llm-task:{enabled:true}}}}八、channels渠道的配置一WebChat的配置WebChat也属于channel通信渠道的一种因此也要配置渠道。但是webchat没有专用的Json字段它使用gateway的端点认证配置。我使用的是比较简单的全局选项如下gateway.portWebSocket 主机/端口。gateway.auth.tokenWebSocket 认证。gateway.remote.token远程 Gateway 网关目标。session.*会话存储和主键默认值。二gateway中channel的配置1、设置一个渠道每个渠道例如iMessage在channels.provider 下都有各自的配置部分。webchat似乎没有channels.provider 这个选项。2、选择并配置模型用ollama pull、openclaw onboard等命令完成了模型的安装、拉取、配置在openclaw.json文件中会自动生成配置内容。这里没有问题。不再赘述。九、验证可以执行外部shell命令。例如输入!echo hello可以返回执行结果。可以执行skills的CLI命令。例如agent-browser的命令结果如下

更多文章