OpenClaw 启动配置文件参数完整列表
OpenClaw 启动配置文件参数完整列表
这份文档非常详细。让我整理出所有配置参数,按照功能模块分组。
## OpenClaw 启动配置文件参数完整列表
---
### 1. Gateway(网关)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `gateway.mode` | string | `"local"` | 网关模式:`local`(本地运行)或 `remote`(连接远程网关) | 否 |
| `gateway.port` | number | `18789` | WebSocket + HTTP 复用端口 | 否 |
| `gateway.bind` | string | `"loopback"` | 绑定模式:`auto`、`loopback`、`lan`、`tailnet`、`custom` | 否 |
| `gateway.auth.mode` | string | `"token"` | 认证模式:`none`、`token`、`password`、`trusted-proxy` | 否 |
| `gateway.auth.token` | string | - | 共享认证令牌 | 否 |
| `gateway.auth.password` | string | - | 认证密码(或用 `OPENCLAW_GATEWAY_PASSWORD` 环境变量) | 否 |
| `gateway.auth.allowTailscale` | boolean | `true`(当 `tailscale.mode = "serve"` 时) | 是否允许 Tailscale 身份头满足 Control UI 认证 | 否 |
| `gateway.auth.rateLimit.maxAttempts` | number | `10` | 认证失败最大尝试次数 | 否 |
| `gateway.auth.rateLimit.windowMs` | number | `60000` | 限流窗口时间(毫秒) | 否 |
| `gateway.auth.rateLimit.lockoutMs` | number | `300000` | 锁定时间(毫秒) | 否 |
| `gateway.auth.rateLimit.exemptLoopback` | boolean | `true` | 是否豁免本地回环地址的限流 | 否 |
| `gateway.tailscale.mode` | string | `"off"` | Tailscale 模式:`off`、`serve`、`funnel` | 否 |
| `gateway.tailscale.resetOnExit` | boolean | `false` | 退出时是否重置 Tailscale | 否 |
| `gateway.controlUi.enabled` | boolean | `true` | 是否启用 Control UI | 否 |
| `gateway.controlUi.basePath` | string | `"/openclaw"` | Control UI 基础路径 | 否 |
| `gateway.controlUi.root` | string | `"dist/control-ui"` | Control UI 静态文件根目录 | 否 |
| `gateway.controlUi.allowedOrigins` | string[] | - | 允许的浏览器来源列表(非回环绑定时必需) | 否 |
| `gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback` | boolean | `false` | 危险模式:允许 Host 头来源回退 | 否 |
| `gateway.controlUi.allowInsecureAuth` | boolean | `false` | 是否允许不安全认证 | 否 |
| `gateway.controlUi.dangerouslyDisableDeviceAuth` | boolean | `false` | 是否禁用设备认证(危险) | 否 |
| `gateway.remote.url` | string | - | 远程网关 WebSocket URL | 否 |
| `gateway.remote.transport` | string | `"ssh"` | 远程传输方式:`ssh` 或 `direct` | 否 |
| `gateway.remote.token` | string | - | 远程客户端令牌 | 否 |
| `gateway.remote.password` | string | - | 远程客户端密码 | 否 |
| `gateway.trustedProxies` | string[] | - | 受信任的反向代理 IP 列表 | 否 |
| `gateway.allowRealIpFallback` | boolean | `false` | 是否接受 `X-Real-IP` 作为 `X-Forwarded-For` 缺失时的回退 | 否 |
| `gateway.tools.deny` | string[] | - | HTTP `/tools/invoke` 端点额外禁止的工具列表 | 否 |
| `gateway.tools.allow` | string[] | - | 从默认禁止列表中移除的工具 | 否 |
| `gateway.reload.mode` | string | `"hybrid"` | 配置热重载模式:`hybrid`、`hot`、`restart`、`off` | 否 |
| `gateway.reload.debounceMs` | number | `300` | 配置变更防抖时间(毫秒) | 否 |
---
### 2. Agents(智能体)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.workspace` | string | `"~/.openclaw/workspace"` | 智能体工作空间目录 | 否 |
| `agents.defaults.repoRoot` | string | - | 仓库根目录(系统提示中显示) | 否 |
| `agents.defaults.skipBootstrap` | boolean | `false` | 是否禁用引导文件自动创建 | 否 |
| `agents.defaults.bootstrapMaxChars` | number | `20000` | 每个引导文件最大字符数 | 否 |
| `agents.defaults.bootstrapTotalMaxChars` | number | `150000` | 所有引导文件总最大字符数 | 否 |
| `agents.defaults.imageMaxDimensionPx` | number | `1200` | 图像最长边最大像素尺寸 | 否 |
| `agents.defaults.userTimezone` | string | 主机时区 | 用户时区(系统提示上下文) | 否 |
| `agents.defaults.timeFormat` | string | `"auto"` | 时间格式:`auto`、`12`、`24` | 否 |
| `agents.defaults.model` | string/object | - | 主模型(字符串或 `{ primary, fallbacks }` 对象) | 否 |
| `agents.defaults.imageModel` | string/object | - | 图像模型配置 | 否 |
| `agents.defaults.models` | object | - | 模型目录和 `/model` 允许列表 | 否 |
| `agents.defaults.thinkingDefault` | string | `"low"` | 默认思考级别:`high`、`low`、`off` | 否 |
| `agents.defaults.verboseDefault` | string | `"off"` | 默认详细模式:`on`、`off` | 否 |
| `agents.defaults.elevatedDefault` | string | `"on"` | 默认提权模式:`on`、`off`、`ask`、`full` | 否 |
| `agents.defaults.timeoutSeconds` | number | `600` | 智能体运行超时时间(秒) | 否 |
| `agents.defaults.mediaMaxMb` | number | `5` | 媒体文件最大 MB | 否 |
| `agents.defaults.contextTokens` | number | `200000` | 上下文令牌数 | 否 |
| `agents.defaults.maxConcurrent` | number | `1` | 最大并发智能体运行数 | 否 |
#### 心跳配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.heartbeat.every` | string | `"30m"` | 心跳间隔(设为 `"0m"` 禁用) | 否 |
| `agents.defaults.heartbeat.model` | string | - | 心跳使用的模型 | 否 |
| `agents.defaults.heartbeat.includeReasoning` | boolean | `false` | 是否包含推理 | 否 |
| `agents.defaults.heartbeat.session` | string | `"main"` | 心跳会话 | 否 |
| `agents.defaults.heartbeat.to` | string | - | 心跳发送目标 | 否 |
| `agents.defaults.heartbeat.directPolicy` | string | `"allow"` | 直接消息投递策略:`allow`、`block` | 否 |
| `agents.defaults.heartbeat.target` | string | `"none"` | 心跳目标:`none`、`last`、`whatsapp`、`telegram`、`discord` 等 | 否 |
| `agents.defaults.heartbeat.prompt` | string | - | 自定义心跳提示 | 否 |
| `agents.defaults.heartbeat.ackMaxChars` | number | `300` | 确认消息最大字符数 | 否 |
| `agents.defaults.heartbeat.suppressToolErrorWarnings` | boolean | `false` | 是否抑制工具错误警告 | 否 |
#### 沙箱配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.sandbox.mode` | string | `"off"` | 沙箱模式:`off`、`non-main`、`all` | 否 |
| `agents.defaults.sandbox.scope` | string | `"agent"` | 沙箱范围:`session`、`agent`、`shared` | 否 |
| `agents.defaults.sandbox.workspaceAccess` | string | `"none"` | 工作空间访问:`none`、`ro`、`rw` | 否 |
| `agents.defaults.sandbox.workspaceRoot` | string | `"~/.openclaw/sandboxes"` | 沙箱工作空间根目录 | 否 |
| `agents.defaults.sandbox.docker.image` | string | `"openclaw-sandbox:bookworm-slim"` | Docker 镜像 | 否 |
| `agents.defaults.sandbox.docker.containerPrefix` | string | `"openclaw-sbx-"` | 容器名称前缀 | 否 |
| `agents.defaults.sandbox.docker.workdir` | string | `"/workspace"` | 容器工作目录 | 否 |
| `agents.defaults.sandbox.docker.readOnlyRoot` | boolean | `true` | 是否只读根文件系统 | 否 |
| `agents.defaults.sandbox.docker.tmpfs` | string[] | `["/tmp", "/var/tmp", "/run"]` | tmpfs 挂载点 | 否 |
| `agents.defaults.sandbox.docker.network` | string | `"none"` | 网络模式:`none`、`bridge` | 否 |
| `agents.defaults.sandbox.docker.user` | string | `"1000:1000"` | 容器用户 | 否 |
| `agents.defaults.sandbox.docker.capDrop` | string[] | `["ALL"]` | 丢弃的 Linux 能力 | 否 |
| `agents.defaults.sandbox.docker.env` | object | `{ LANG: "C.UTF-8" }` | 容器环境变量 | 否 |
| `agents.defaults.sandbox.docker.setupCommand` | string | - | 容器创建后执行的设置命令 | 否 |
| `agents.defaults.sandbox.docker.pidsLimit` | number | `256` | 进程数限制 | 否 |
| `agents.defaults.sandbox.docker.memory` | string | `"1g"` | 内存限制 | 否 |
| `agents.defaults.sandbox.docker.memorySwap` | string | `"2g"` | 交换内存限制 | 否 |
| `agents.defaults.sandbox.docker.cpus` | number | `1` | CPU 核心数限制 | 否 |
| `agents.defaults.sandbox.docker.ulimits` | object | - | ulimit 配置 | 否 |
| `agents.defaults.sandbox.docker.seccompProfile` | string | - | seccomp 配置文件路径 | 否 |
| `agents.defaults.sandbox.docker.apparmorProfile` | string | - | AppArmor 配置文件名 | 否 |
| `agents.defaults.sandbox.docker.dns` | string[] | - | DNS 服务器列表 | 否 |
| `agents.defaults.sandbox.docker.extraHosts` | string[] | - | 额外 hosts 条目 | 否 |
| `agents.defaults.sandbox.docker.binds` | string[] | - | 额外挂载绑定 | 否 |
| `agents.defaults.sandbox.docker.dangerouslyAllowContainerNamespaceJoin` | boolean | `false` | 是否允许容器命名空间加入(危险) | 否 |
#### 沙箱浏览器配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.sandbox.browser.enabled` | boolean | `false` | 是否启用沙箱浏览器 | 否 |
| `agents.defaults.sandbox.browser.image` | string | `"openclaw-sandbox-browser:bookworm-slim"` | 浏览器 Docker 镜像 | 否 |
| `agents.defaults.sandbox.browser.network` | string | `"openclaw-sandbox-browser"` | 浏览器容器网络 | 否 |
| `agents.defaults.sandbox.browser.cdpPort` | number | `9222` | CDP 端口 | 否 |
| `agents.defaults.sandbox.browser.cdpSourceRange` | string | - | CDP 来源 CIDR 限制 | 否 |
| `agents.defaults.sandbox.browser.vncPort` | number | `5900` | VNC 端口 | 否 |
| `agents.defaults.sandbox.browser.noVncPort` | number | `6080` | noVNC 端口 | 否 |
| `agents.defaults.sandbox.browser.headless` | boolean | `false` | 是否无头模式 | 否 |
| `agents.defaults.sandbox.browser.enableNoVnc` | boolean | `true` | 是否启用 noVNC | 否 |
| `agents.defaults.sandbox.browser.allowHostControl` | boolean | `false` | 是否允许主机控制 | 否 |
| `agents.defaults.sandbox.browser.autoStart` | boolean | `true` | 是否自动启动 | 否 |
| `agents.defaults.sandbox.browser.autoStartTimeoutMs` | number | `12000` | 自动启动超时时间 | 否 |
| `agents.defaults.sandbox.browser.binds` | string[] | - | 浏览器容器额外挂载 | 否 |
#### 沙箱清理配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.sandbox.prune.idleHours` | number | `24` | 空闲清理时间(小时) | 否 |
| `agents.defaults.sandbox.prune.maxAgeDays` | number | `7` | 最大保留天数 | 否 |
#### 压缩配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.compaction.mode` | string | `"safeguard"` | 压缩模式:`default`、`safeguard` | 否 |
| `agents.defaults.compaction.reserveTokensFloor` | number | `24000` | 保留令牌底线 | 否 |
| `agents.defaults.compaction.identifierPolicy` | string | `"strict"` | 标识符保留策略:`strict`、`off`、`custom` | 否 |
| `agents.defaults.compaction.identifierInstructions` | string | - | 自定义标识符保留指令 | 否 |
| `agents.defaults.compaction.memoryFlush.enabled` | boolean | `true` | 是否启用内存刷新 | 否 |
| `agents.defaults.compaction.memoryFlush.softThresholdTokens` | number | `6000` | 软阈值令牌数 | 否 |
| `agents.defaults.compaction.memoryFlush.systemPrompt` | string | - | 系统提示 | 否 |
| `agents.defaults.compaction.memoryFlush.prompt` | string | - | 用户提示 | 否 |
#### 上下文修剪配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.contextPruning.mode` | string | `"off"` | 修剪模式:`off`、`cache-ttl` | 否 |
| `agents.defaults.contextPruning.ttl` | string | `"1h"` | 缓存 TTL | 否 |
| `agents.defaults.contextPruning.keepLastAssistants` | number | `3` | 保留最后 N 条助手消息 | 否 |
| `agents.defaults.contextPruning.softTrimRatio` | number | `0.3` | 软修剪比例 | 否 |
| `agents.defaults.contextPruning.hardClearRatio` | number | `0.5` | 硬清除比例 | 否 |
| `agents.defaults.contextPruning.minPrunableToolChars` | number | `50000` | 最小可修剪工具字符数 | 否 |
| `agents.defaults.contextPruning.softTrim.maxChars` | number | `4000` | 软修剪最大字符数 | 否 |
| `agents.defaults.contextPruning.softTrim.headChars` | number | `1500` | 软修剪头部保留字符数 | 否 |
| `agents.defaults.contextPruning.softTrim.tailChars` | number | `1500` | 软修剪尾部保留字符数 | 否 |
| `agents.defaults.contextPruning.hardClear.enabled` | boolean | `true` | 是否启用硬清除 | 否 |
| `agents.defaults.contextPruning.hardClear.placeholder` | string | `"[Old tool result content cleared]"` | 硬清除占位符 | 否 |
| `agents.defaults.contextPruning.tools.deny` | string[] | `["browser", "canvas"]` | 禁止修剪的工具 | 否 |
#### 块流配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.blockStreamingDefault` | string | `"off"` | 块流默认:`on`、`off` | 否 |
| `agents.defaults.blockStreamingBreak` | string | `"text_end"` | 块流断点:`text_end`、`message_end` | 否 |
| `agents.defaults.blockStreamingChunk.minChars` | number | `800` | 块最小字符数 | 否 |
| `agents.defaults.blockStreamingChunk.maxChars` | number | `1200` | 块最大字符数 | 否 |
| `agents.defaults.blockStreamingCoalesce.idleMs` | number | `1000` | 合并空闲时间(毫秒) | 否 |
| `agents.defaults.humanDelay.mode` | string | `"natural"` | 人工延迟模式:`off`、`natural`、`custom` | 否 |
#### 打字指示器配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.typingMode` | string | `"instant"` | 打字模式:`never`、`instant`、`thinking`、`message` | 否 |
| `agents.defaults.typingIntervalSeconds` | number | `6` | 打字指示间隔(秒) | 否 |
#### CLI 后端配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.defaults.cliBackends.<id>.command` | string | - | CLI 后端命令路径 | 否 |
| `agents.defaults.cliBackends.<id>.args` | string[] | - | CLI 后端参数 | 否 |
| `agents.defaults.cliBackends.<id>.output` | string | - | 输出格式:`json` | 否 |
| `agents.defaults.cliBackends.<id>.modelArg` | string | - | 模型参数名 | 否 |
| `agents.defaults.cliBackends.<id>.sessionArg` | string | - | 会话参数名 | 否 |
| `agents.defaults.cliBackends.<id>.sessionMode` | string | - | 会话模式:`existing` | 否 |
| `agents.defaults.cliBackends.<id>.systemPromptArg` | string | - | 系统提示参数名 | 否 |
| `agents.defaults.cliBackends.<id>.systemPromptWhen` | string | - | 系统提示时机:`first` | 否 |
| `agents.defaults.cliBackends.<id>.imageArg` | string | - | 图像参数名 | 否 |
| `agents.defaults.cliBackends.<id>.imageMode` | string | - | 图像模式:`repeat` | 否 |
#### 智能体列表配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `agents.list[].id` | string | - | 智能体 ID(必需) | 是 |
| `agents.list[].default` | boolean | `false` | 是否为默认智能体 | 否 |
| `agents.list[].name` | string | - | 智能体名称 | 否 |
| `agents.list[].workspace` | string | - | 智能体工作空间 | 否 |
| `agents.list[].agentDir` | string | - | 智能体目录 | 否 |
| `agents.list[].model` | string/object | - | 智能体模型配置 | 否 |
| `agents.list[].params` | object | - | 模型参数覆盖 | 否 |
| `agents.list[].identity.name` | string | - | 身份名称 | 否 |
| `agents.list[].identity.theme` | string | - | 身份主题 | 否 |
| `agents.list[].identity.emoji` | string | - | 身份表情符号 | 否 |
| `agents.list[].identity.avatar` | string | - | 头像路径/URL | 否 |
| `agents.list[].groupChat.mentionPatterns` | string[] | - | 提及模式列表 | 否 |
| `agents.list[].sandbox` | object | - | 智能体级沙箱配置覆盖 | 否 |
| `agents.list[].subagents.allowAgents` | string[] | `["*"]` | 允许的子智能体 ID 列表 | 否 |
| `agents.list[].tools.profile` | string | - | 工具配置文件 | 否 |
| `agents.list[].tools.allow` | string[] | - | 允许的工具列表 | 否 |
| `agents.list[].tools.deny` | string[] | - | 禁止的工具列表 | 否 |
| `agents.list[].tools.elevated` | object | - | 提权工具配置 | 否 |
---
### 3. Channels(频道)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `channels.defaults.groupPolicy` | string | `"allowlist"` | 默认群组策略:`open`、`allowlist`、`disabled` | 否 |
| `channels.defaults.heartbeat.showOk` | boolean | `false` | 是否在心跳输出中显示健康状态 | 否 |
| `channels.defaults.heartbeat.showAlerts` | boolean | `true` | 是否在心跳输出中显示告警状态 | 否 |
| `channels.defaults.heartbeat.useIndicator` | boolean | `true` | 是否使用紧凑指示器样式 | 否 |
| `channels.modelByChannel.<channel>.<chatId>` | string | - | 频道特定模型绑定 | 否 |
#### WhatsApp 配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `channels.whatsapp.dmPolicy` | string | `"pairing"` | DM 策略:`pairing`、`allowlist`、`open`、`disabled` | 否 |
| `channels.whatsapp.allowFrom` | string[] | - | 允许的发件人列表 | 否 |
| `channels.whatsapp.textChunkLimit` | number | `4000` | 文本分块限制 | 否 |
| `channels.whatsapp.chunkMode` | string | `"length"` | 分块模式:`length`、`newline` | 否 |
| `channels.whatsapp.mediaMaxMb` | number | `50` | 媒体最大 MB | 否 |
| `channels.whatsapp.sendReadReceipts` | boolean | `true` | 是否发送已读回执 | 否 |
| `channels.whatsapp.groups` | object | - | 群组配置 | 否 |
| `channels.whatsapp.groupPolicy` | string | `"allowlist"` | 群组策略 | 否 |
| `channels.whatsapp.groupAllowFrom` | string[] | - | 允许的群组列表 | 否 |
| `channels.whatsapp.defaultAccount` | string | - | 默认账户 ID | 否 |
#### Telegram 配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `channels.telegram.enabled` | boolean | `true` | 是否启用 | 否 |
| `channels.telegram.botToken` | string | - | 机器人令牌 | 否 |
| `channels.telegram.tokenFile` | string | - | 令牌文件路径 | 否 |
| `channels.telegram.dmPolicy` | string | `"pairing"` | DM 策略 | 否 |
| `channels.telegram.allowFrom` | string[] | - | 允许的发件人列表 | 否 |
| `channels.telegram.groups` | object | - | 群组配置 | 否 |
| `channels.telegram.customCommands` | array | - | 自定义命令列表 | 否 |
| `channels.telegram.historyLimit` | number | `50` | 历史消息限制 | 否 |
| `channels.telegram.replyToMode` | string | `"first"` | 回复模式:`off`、`first`、`all` | 否 |
| `channels.telegram.linkPreview` | boolean | `true` | 是否启用链接预览 | 否 |
| `channels.telegram.streaming` | string | `"off"` | 流模式:`off`、`partial`、`block`、`progress` | 否 |
| `channels.telegram.actions.reactions` | boolean | `true` | 是否启用反应 | 否 |
| `channels.telegram.actions.sendMessage` | boolean | `true` | 是否启用发送消息 | 否 |
| `channels.telegram.reactionNotifications` | string | `"own"` | 反应通知:`off`、`own`、`all` | 否 |
| `channels.telegram.mediaMaxMb` | number | `5` | 媒体最大 MB | 否 |
| `channels.telegram.configWrites` | boolean | `true` | 是否允许配置写入 | 否 |
| `channels.telegram.retry.attempts` | number | `3` | 重试次数 | 否 |
| `channels.telegram.retry.minDelayMs` | number | `400` | 最小重试延迟(毫秒) | 否 |
| `channels.telegram.retry.maxDelayMs` | number | `30000` | 最大重试延迟(毫秒) | 否 |
| `channels.telegram.retry.jitter` | number | `0.1` | 抖动因子 | 否 |
| `channels.telegram.network.autoSelectFamily` | boolean | `true` | 是否自动选择地址族 | 否 |
| `channels.telegram.network.dnsResultOrder` | string | `"ipv4first"` | DNS 结果顺序 | 否 |
| `channels.telegram.proxy` | string | - | 代理 URL | 否 |
| `channels.telegram.webhookUrl` | string | - | Webhook URL | 否 |
| `channels.telegram.webhookSecret` | string | - | Webhook 密钥 | 否 |
| `channels.telegram.webhookPath` | string | - | Webhook 路径 | 否 |
#### Discord 配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `channels.discord.enabled` | boolean | `true` | 是否启用 | 否 |
| `channels.discord.token` | string | - | 机器人令牌 | 否 |
| `channels.discord.mediaMaxMb` | number | `8` | 媒体最大 MB | 否 |
| `channels.discord.allowBots` | boolean | `false` | 是否允许机器人消息 | 否 |
| `channels.discord.replyToMode` | string | `"off"` | 回复模式 | 否 |
| `channels.discord.dmPolicy` | string | `"pairing"` | DM 策略 | 否 |
| `channels.discord.allowFrom` | string[] | - | 允许的用户列表 | 否 |
| `channels.discord.dm.enabled` | boolean | `true` | 是否启用 DM | 否 |
| `channels.discord.dm.groupEnabled` | boolean | `false` | 是否启用群组 DM | 否 |
| `channels.discord.dm.groupChannels` | string[] | - | 群组 DM 频道列表 | 否 |
| `channels.discord.guilds` | object | - | 服务器配置 | 否 |
| `channels.discord.historyLimit` | number | `20` | 历史消息限制 | 否 |
| `channels.discord.textChunkLimit` | number | `2000` | 文本分块限制 | 否 |
| `channels.discord.chunkMode` | string | `"length"` | 分块模式 | 否 |
| `channels.discord.streaming` | string | `"off"` | 流模式 | 否 |
| `channels.discord.maxLinesPerMessage` | number | `17` | 每条消息最大行数 | 否 |
| `channels.discord.ui.components.accentColor` | string | `"#5865F2"` | 强调色 | 否 |
| `channels.discord.threadBindings.enabled` | boolean | `true` | 是否启用线程绑定 | 否 |
| `channels.discord.threadBindings.idleHours` | number | `24` | 空闲自动解绑小时数 | 否 |
| `channels.discord.threadBindings.maxAgeHours` | number | `0` | 最大保留小时数 | 否 |
| `channels.discord.threadBindings.spawnSubagentSessions` | boolean | `false` | 是否生成子智能体会话 | 否 |
#### Slack 配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `channels.slack.enabled` | boolean | `true` | 是否启用 | 否 |
| `channels.slack.botToken` | string | - | 机器人令牌 | 否 |
| `channels.slack.appToken` | string | - | 应用令牌 | 否 |
| `channels.slack.signingSecret` | string | - | 签名密钥(HTTP 模式) | 否 |
| `channels.slack.dmPolicy` | string | `"pairing"` | DM 策略 | 否 |
| `channels.slack.allowFrom` | string[] | - | 允许的用户列表 | 否 |
| `channels.slack.channels` | object | - | 频道配置 | 否 |
| `channels.slack.historyLimit` | number | `50` | 历史消息限制 | 否 |
| `channels.slack.allowBots` | boolean | `false` | 是否允许机器人 | 否 |
| `channels.slack.reactionNotifications` | string | `"own"` | 反应通知模式 | 否 |
| `channels.slack.reactionAllowlist` | string[] | - | 反应允许列表 | 否 |
| `channels.slack.replyToMode` | string | `"off"` | 回复模式 | 否 |
| `channels.slack.thread.historyScope` | string | `"thread"` | 线程历史范围:`thread`、`channel` | 否 |
| `channels.slack.thread.inheritParent` | boolean | `false` | 是否继承父线程 | 否 |
| `channels.slack.textChunkLimit` | number | `4000` | 文本分块限制 | 否 |
| `channels.slack.chunkMode` | string | `"length"` | 分块模式 | 否 |
| `channels.slack.streaming` | string | `"partial"` | 流模式 | 否 |
| `channels.slack.nativeStreaming` | boolean | `true` | 是否使用原生流 API | 否 |
| `channels.slack.mediaMaxMb` | number | `20` | 媒体最大 MB | 否 |
| `channels.slack.slashCommand.enabled` | boolean | `true` | 是否启用斜杠命令 | 否 |
| `channels.slack.slashCommand.name` | string | `"openclaw"` | 斜杠命令名称 | 否 |
| `channels.slack.slashCommand.sessionPrefix` | string | `"slack:slash"` | 会话前缀 | 否 |
| `channels.slack.slashCommand.ephemeral` | boolean | `true` | 是否仅可见发送者 | 否 |
---
### 4. Session(会话)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `session.scope` | string | `"per-sender"` | 会话范围 | 否 |
| `session.dmScope` | string | `"main"` | DM 范围:`main`、`per-peer`、`per-channel-peer`、`per-account-channel-peer` | 否 |
| `session.identityLinks` | object | - | 身份链接映射 | 否 |
| `session.reset.mode` | string | `"daily"` | 重置模式:`daily`、`idle` | 否 |
| `session.reset.atHour` | number | `4` | 每日重置时间(小时) | 否 |
| `session.reset.idleMinutes` | number | `60` | 空闲重置时间(分钟) | 否 |
| `session.resetByType` | object | - | 按类型重置配置 | 否 |
| `session.resetTriggers` | string[] | `["/new", "/reset"]` | 重置触发词 | 否 |
| `session.store` | string | - | 会话存储文件路径 | 否 |
| `session.parentForkMaxTokens` | number | `100000` | 父会话分叉最大令牌数 | 否 |
| `session.maintenance.mode` | string | `"warn"` | 维护模式:`warn`、`enforce` | 否 |
| `session.maintenance.pruneAfter` | string | `"30d"` | 清理过期时间 | 否 |
| `session.maintenance.maxEntries` | number | `500` | 最大条目数 | 否 |
| `session.maintenance.rotateBytes` | string | `"10mb"` | 轮换大小 | 否 |
| `session.maintenance.resetArchiveRetention` | string | `"30d"` | 重置归档保留时间 | 否 |
| `session.maintenance.maxDiskBytes` | string | `"500mb"` | 最大磁盘字节数 | 否 |
| `session.maintenance.highWaterBytes` | string | `"400mb"` | 高水位字节数 | 否 |
| `session.threadBindings.enabled` | boolean | `true` | 是否启用线程绑定 | 否 |
| `session.threadBindings.idleHours` | number | `24` | 空闲自动解绑小时数 | 否 |
| `session.threadBindings.maxAgeHours` | number | `0` | 最大保留小时数 | 否 |
| `session.mainKey` | string | `"main"` | 主会话键(遗留) | 否 |
| `session.agentToAgent.maxPingPongTurns` | number | `5` | 最大乒乓回合数 | 否 |
| `session.sendPolicy.rules` | array | - | 发送策略规则 | 否 |
| `session.sendPolicy.default` | string | `"allow"` | 默认发送策略 | 否 |
---
### 5. Messages(消息)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `messages.responsePrefix` | string | - | 响应前缀(或 `"auto"`) | 否 |
| `messages.ackReaction` | string | `"👀"` | 确认反应表情 | 否 |
| `messages.ackReactionScope` | string | `"group-mentions"` | 确认反应范围:`group-mentions`、`group-all`、`direct`、`all` | 否 |
| `messages.removeAckAfterReply` | boolean | `false` | 回复后是否移除确认反应 | 否 |
| `messages.queue.mode` | string | `"collect"` | 队列模式:`steer`、`followup`、`collect`、`steer-backlog`、`steer+backlog`、`queue`、`interrupt` | 否 |
| `messages.queue.debounceMs` | number | `1000` | 队列防抖时间(毫秒) | 否 |
| `messages.queue.cap` | number | `20` | 队列容量 | 否 |
| `messages.queue.drop` | string | `"summarize"` | 队列溢出策略:`old`、`new`、`summarize` | 否 |
| `messages.queue.byChannel` | object | - | 按频道的队列模式 | 否 |
| `messages.inbound.debounceMs` | number | `2000` | 入站防抖时间(毫秒) | 否 |
| `messages.inbound.byChannel` | object | - | 按频道的入站防抖 | 否 |
| `messages.groupChat.historyLimit` | number | `50` | 群聊历史限制 | 否 |
#### TTS 配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `messages.tts.auto` | string | `"off"` | 自动 TTS:`off`、`always`、`inbound`、`tagged` | 否 |
| `messages.tts.mode` | string | `"final"` | TTS 模式:`final`、`all` | 否 |
| `messages.tts.provider` | string | - | TTS 提供商:`elevenlabs`、`openai` | 否 |
| `messages.tts.summaryModel` | string | - | 摘要模型 | 否 |
| `messages.tts.modelOverrides.enabled` | boolean | `true` | 是否启用模型覆盖 | 否 |
| `messages.tts.maxTextLength` | number | `4000` | 最大文本长度 | 否 |
| `messages.tts.timeoutMs` | number | `30000` | 超时时间(毫秒) | 否 |
| `messages.tts.prefsPath` | string | `"~/.openclaw/settings/tts.json"` | 偏好设置路径 | 否 |
---
### 6. Tools(工具)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.profile` | string | - | 工具配置文件:`minimal`、`coding`、`messaging`、`full` | 否 |
| `tools.allow` | string[] | - | 允许的工具列表 | 否 |
| `tools.deny` | string[] | - | 禁止的工具列表 | 否 |
| `tools.byProvider` | object | - | 按提供商的工具配置 | 否 |
#### 提权配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.elevated.enabled` | boolean | `false` | 是否启用提权执行 | 否 |
| `tools.elevated.allowFrom` | object | - | 按频道的允许用户列表 | 否 |
#### 执行配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.exec.backgroundMs` | number | `10000` | 后台执行时间(毫秒) | 否 |
| `tools.exec.timeoutSec` | number | `1800` | 执行超时时间(秒) | 否 |
| `tools.exec.cleanupMs` | number | `1800000` | 清理时间(毫秒) | 否 |
| `tools.exec.notifyOnExit` | boolean | `true` | 退出时是否通知 | 否 |
| `tools.exec.notifyOnExitEmptySuccess` | boolean | `false` | 空成功时是否通知 | 否 |
| `tools.exec.applyPatch.enabled` | boolean | `false` | 是否启用补丁应用 | 否 |
| `tools.exec.applyPatch.allowModels` | string[] | - | 允许的模型列表 | 否 |
#### 循环检测配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.loopDetection.enabled` | boolean | `false` | 是否启用循环检测 | 否 |
| `tools.loopDetection.historySize` | number | `30` | 历史大小 | 否 |
| `tools.loopDetection.warningThreshold` | number | `10` | 警告阈值 | 否 |
| `tools.loopDetection.criticalThreshold` | number | `20` | 临界阈值 | 否 |
| `tools.loopDetection.globalCircuitBreakerThreshold` | number | `30` | 全局熔断阈值 | 否 |
| `tools.loopDetection.detectors.genericRepeat` | boolean | `true` | 是否检测通用重复 | 否 |
| `tools.loopDetection.detectors.knownPollNoProgress` | boolean | `true` | 是否检测已知轮询无进展 | 否 |
| `tools.loopDetection.detectors.pingPong` | boolean | `true` | 是否检测乒乓模式 | 否 |
#### Web 工具配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.web.search.enabled` | boolean | `true` | 是否启用搜索 | 否 |
| `tools.web.search.apiKey` | string | - | Brave API 密钥 | 否 |
| `tools.web.search.maxResults` | number | `5` | 最大结果数 | 否 |
| `tools.web.search.timeoutSeconds` | number | `30` | 搜索超时时间(秒) | 否 |
| `tools.web.search.cacheTtlMinutes` | number | `15` | 缓存 TTL(分钟) | 否 |
| `tools.web.fetch.enabled` | boolean | `true` | 是否启用网页抓取 | 否 |
| `tools.web.fetch.maxChars` | number | `50000` | 最大字符数 | 否 |
| `tools.web.fetch.maxCharsCap` | number | `50000` | 最大字符上限 | 否 |
| `tools.web.fetch.timeoutSeconds` | number | `30` | 抓取超时时间(秒) | 否 |
| `tools.web.fetch.cacheTtlMinutes` | number | `15` | 缓存 TTL(分钟) | 否 |
| `tools.web.fetch.userAgent` | string | - | 自定义 User-Agent | 否 |
#### 媒体工具配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.media.concurrency` | number | `2` | 媒体处理并发数 | 否 |
| `tools.media.audio.enabled` | boolean | `true` | 是否启用音频处理 | 否 |
| `tools.media.audio.maxBytes` | number | `20971520` | 音频最大字节数 | 否 |
| `tools.media.audio.scope.default` | string | `"deny"` | 默认音频范围策略 | 否 |
| `tools.media.audio.models[]` | array | - | 音频模型配置 | 否 |
| `tools.media.video.enabled` | boolean | `true` | 是否启用视频处理 | 否 |
| `tools.media.video.maxBytes` | number | `52428800` | 视频最大字节数 | 否 |
| `tools.media.video.models[]` | array | - | 视频模型配置 | 否 |
#### 会话工具配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.sessions.visibility` | string | `"tree"` | 会话可见性:`self`、`tree`、`agent`、`all` | 否 |
#### 子智能体工具配置
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `tools.agentToAgent.enabled` | boolean | `false` | 是否启用智能体间通信 | 否 |
| `tools.agentToAgent.allow` | string[] | - | 允许的智能体 ID 列表 | 否 |
---
### 7. Models(模型)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `models.mode` | string | `"merge"` | 模型目录模式:`merge`、`replace` | 否 |
| `models.providers` | object | - | 自定义提供商配置 | 否 |
| `models.providers.<id>.baseUrl` | string | - | API 基础 URL | 否 |
| `models.providers.<id>.apiKey` | string | - | API 密钥 | 否 |
| `models.providers.<id>.api` | string | - | API 适配器:`openai-completions`、`openai-responses`、`anthropic-messages`、`google-generative-ai` | 否 |
| `models.providers.<id>.auth` | string | - | 认证策略:`api-key`、`token`、`oauth`、`aws-sdk` | 否 |
| `models.providers.<id>.authHeader` | boolean | `false` | 是否在 Authorization 头中传输凭证 | 否 |
| `models.providers.<id>.headers` | object | - | 额外静态请求头 | 否 |
| `models.providers.<id>.models` | array | - | 模型目录条目 | 否 |
| `models.providers.<id>.injectNumCtxForOpenAICompat` | boolean | `true` | 是否为 Ollama 注入 `options.num_ctx` | 否 |
| `models.bedrockDiscovery.enabled` | boolean | `false` | 是否启用 Bedrock 自动发现 | 否 |
| `models.bedrockDiscovery.region` | string | - | AWS 区域 | 否 |
| `models.bedrockDiscovery.providerFilter` | string | - | 提供商 ID 过滤器 | 否 |
| `models.bedrockDiscovery.refreshInterval` | string | - | 发现刷新间隔 | 否 |
| `models.bedrockDiscovery.defaultContextWindow` | number | - | 默认上下文窗口 | 否 |
| `models.bedrockDiscovery.defaultMaxTokens` | number | - | 默认最大输出令牌 | 否 |
---
### 8. Browser(浏览器)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `browser.enabled` | boolean | `false` | 是否启用浏览器 | 否 |
| `browser.evaluateEnabled` | boolean | `true` | 是否启用 `act:evaluate` | 否 |
| `browser.defaultProfile` | string | `"chrome"` | 默认浏览器配置文件 | 否 |
| `browser.ssrfPolicy.dangerouslyAllowPrivateNetwork` | boolean | `true` | 是否允许私有网络访问 | 否 |
| `browser.ssrfPolicy.hostnameAllowlist` | string[] | - | 主机名白名单 | 否 |
| `browser.ssrfPolicy.allowedHostnames` | string[] | - | 允许的主机名列表 | 否 |
| `browser.profiles` | object | - | 浏览器配置文件 | 否 |
| `browser.color` | string | `"#FF4500"` | 浏览器颜色 | 否 |
| `browser.headless` | boolean | `false` | 是否无头模式 | 否 |
| `browser.noSandbox` | boolean | `false` | 是否禁用沙箱 | 否 |
| `browser.executablePath` | string | - | 浏览器可执行文件路径 | 否 |
| `browser.attachOnly` | boolean | `false` | 是否仅附加模式 | 否 |
---
### 9. Skills(技能)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `skills.allowBundled` | string[] | - | 允许的捆绑技能列表 | 否 |
| `skills.load.extraDirs` | string[] | - | 额外技能目录 | 否 |
| `skills.install.preferBrew` | boolean | `false` | 是否优先使用 Brew | 否 |
| `skills.install.nodeManager` | string | `"npm"` | Node 包管理器:`npm`、`pnpm`、`yarn` | 否 |
| `skills.entries.<skillKey>.enabled` | boolean | `true` | 是否启用该技能 | 否 |
| `skills.entries.<skillKey>.apiKey` | string/object | - | 技能 API 密钥 | 否 |
| `skills.entries.<skillKey>.env` | object | - | 技能环境变量 | 否 |
---
### 10. Plugins(插件)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `plugins.enabled` | boolean | `true` | 是否启用插件 | 否 |
| `plugins.allow` | string[] | - | 允许的插件列表 | 否 |
| `plugins.deny` | string[] | - | 禁止的插件列表 | 否 |
| `plugins.load.paths` | string[] | - | 插件加载路径 | 否 |
| `plugins.entries.<id>.enabled` | boolean | `true` | 是否启用该插件 | 否 |
| `plugins.entries.<id>.apiKey` | string | - | 插件 API 密钥 | 否 |
| `plugins.entries.<id>.env` | object | - | 插件环境变量 | 否 |
| `plugins.entries.<id>.config` | object | - | 插件配置对象 | 否 |
| `plugins.slots.memory` | string | - | 活动内存插件 ID 或 `"none"` | 否 |
---
### 11. Hooks(钩子)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `hooks.enabled` | boolean | `false` | 是否启用钩子 | 否 |
| `hooks.token` | string | - | 共享密钥 | 否 |
| `hooks.path` | string | `"/hooks"` | 钩子路径 | 否 |
| `hooks.maxBodyBytes` | number | `262144` | 最大请求体字节数 | 否 |
| `hooks.defaultSessionKey` | string | `"hook:ingress"` | 默认会话键 | 否 |
| `hooks.allowRequestSessionKey` | boolean | `false` | 是否允许请求设置会话键 | 否 |
| `hooks.allowedSessionKeyPrefixes` | string[] | `["hook:"]` | 允许的会话键前缀 | 否 |
| `hooks.allowedAgentIds` | string[] | - | 允许的智能体 ID 列表 | 否 |
| `hooks.presets` | string[] | - | 预设列表 | 否 |
| `hooks.transformsDir` | string | `"~/.openclaw/hooks/transforms"` | 转换脚本目录 | 否 |
| `hooks.mappings` | array | - | 钩子映射配置 | 否 |
---
### 12. Cron(定时任务)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `cron.enabled` | boolean | `true` | 是否启用定时任务 | 否 |
| `cron.maxConcurrentRuns` | number | `2` | 最大并发运行数 | 否 |
| `cron.webhook` | string | - | Webhook URL(已弃用) | 否 |
| `cron.webhookToken` | string | - | Webhook 认证令牌 | 否 |
| `cron.sessionRetention` | string | `"24h"` | 会话保留时间 | 否 |
| `cron.runLog.maxBytes` | string | `"2mb"` | 运行日志最大字节数 | 否 |
| `cron.runLog.keepLines` | number | `2000` | 保留日志行数 | 否 |
---
### 13. Canvas Host(画布主机)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `canvasHost.root` | string | `"~/.openclaw/workspace/canvas"` | 画布根目录 | 否 |
| `canvasHost.liveReload` | boolean | `true` | 是否启用实时重载 | 否 |
| `canvasHost.enabled` | boolean | `true` | 是否启用画布主机 | 否 |
---
### 14. Discovery(发现)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `discovery.mdns.mode` | string | `"minimal"` | mDNS 模式:`minimal`、`full`、`off` | 否 |
| `discovery.wideArea.enabled` | boolean | `false` | 是否启用广域发现 | 否 |
---
### 15. Environment(环境变量)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `env.<VAR_NAME>` | string | - | 内联环境变量 | 否 |
| `env.vars` | object | - | 环境变量映射 | 否 |
| `env.shellEnv.enabled` | boolean | `false` | 是否从 shell 导入环境变量 | 否 |
| `env.shellEnv.timeoutMs` | number | `15000` | Shell 导入超时时间(毫秒) | 否 |
---
### 16. Secrets(密钥)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `secrets.providers.<id>.source` | string | - | 密钥提供商标识:`env`、`file`、`exec` | 否 |
| `secrets.providers.<id>.path` | string | - | 文件提供者路径(file 模式) | 否 |
| `secrets.providers.<id>.mode` | string | `"json"` | 文件模式:`json`、`singleValue` | 否 |
| `secrets.providers.<id>.timeoutMs` | number | `5000` | 超时时间(毫秒) | 否 |
| `secrets.providers.<id>.command` | string | - | 执行提供者命令(exec 模式) | 否 |
| `secrets.providers.<id>.passEnv` | string[] | - | 传递的环境变量列表 | 否 |
| `secrets.providers.<id>.allowSymlinkCommand` | boolean | `false` | 是否允许符号链接命令 | 否 |
| `secrets.providers.<id>.trustedDirs` | string[] | - | 受信任目录列表 | 否 |
| `secrets.defaults.env` | string | `"default"` | 默认 env 提供者 | 否 |
| `secrets.defaults.file` | string | `"filemain"` | 默认 file 提供者 | 否 |
| `secrets.defaults.exec` | string | `"vault"` | 默认 exec 提供者 | 否 |
---
### 17. Auth(认证)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `auth.profiles.<id>.provider` | string | - | 认证提供商 | 否 |
| `auth.profiles.<id>.mode` | string | - | 认证模式:`oauth`、`api_key` | 否 |
| `auth.profiles.<id>.email` | string | - | 关联邮箱 | 否 |
| `auth.order` | object | - | 按提供商的认证顺序 | 否 |
---
### 18. Logging(日志)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `logging.level` | string | `"info"` | 日志级别 | 否 |
| `logging.file` | string | `/tmp/openclaw/openclaw-YYYY-MM-DD.log` | 日志文件路径 | 否 |
| `logging.consoleLevel` | string | `"info"` | 控制台日志级别 | 否 |
| `logging.consoleStyle` | string | `"pretty"` | 控制台样式:`pretty`、`compact`、`json` | 否 |
| `logging.redactSensitive` | string | `"tools"` | 敏感信息编辑:`off`、`tools` | 否 |
| `logging.redactPatterns` | string[] | - | 自定义编辑正则表达式 | 否 |
---
### 19. UI(界面)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `ui.seamColor` | string | `"#FF4500"` | 强调色 | 否 |
| `ui.assistant.name` | string | `"OpenClaw"` | 助手名称 | 否 |
| `ui.assistant.avatar` | string | - | 助手头像(表情、短文本、图像 URL 或 data URI) | 否 |
---
### 20. Commands(命令)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `commands.native` | string | `"auto"` | 原生命令模式:`auto`、`true`、`false` | 否 |
| `commands.text` | boolean | `true` | 是否解析文本命令 | 否 |
| `commands.bash` | boolean | `false` | 是否允许 bash 命令 | 否 |
| `commands.bashForegroundMs` | number | `2000` | Bash 前台时间(毫秒) | 否 |
| `commands.config` | boolean | `false` | 是否允许 `/config` 命令 | 否 |
| `commands.debug` | boolean | `false` | 是否允许 `/debug` 命令 | 否 |
| `commands.restart` | boolean | `false` | 是否允许 `/restart` 命令 | 否 |
| `commands.allowFrom` | object | - | 按频道的命令允许列表 | 否 |
| `commands.useAccessGroups` | boolean | `true` | 是否使用访问组 | 否 |
---
### 21. Talk(语音对话)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `talk.voiceId` | string | - | 语音 ID | 否 |
| `talk.voiceAliases` | object | - | 语音别名映射 | 否 |
| `talk.modelId` | string | `"eleven_v3"` | 模型 ID | 否 |
| `talk.outputFormat` | string | `"mp3_44100_128"` | 输出格式 | 否 |
| `talk.apiKey` | string | - | API 密钥 | 否 |
| `talk.interruptOnSpeech` | boolean | `true` | 是否在语音时中断 | 否 |
---
### 22. Wizard(向导)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `wizard.lastRunAt` | string | - | 上次运行时间(ISO 日期) | 否 |
| `wizard.lastRunVersion` | string | - | 上次运行版本 | 否 |
| `wizard.lastRunCommit` | string | - | 上次运行提交哈希 | 否 |
| `wizard.lastRunCommand` | string | - | 上次运行命令 | 否 |
| `wizard.lastRunMode` | string | - | 上次运行模式 | 否 |
---
### 23. Multi-Agent Bindings(多智能体绑定)模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `bindings[].agentId` | string | - | 目标智能体 ID | 否 |
| `bindings[].match.channel` | string | - | 匹配的频道(必需) | 是 |
| `bindings[].match.accountId` | string | - | 匹配的账户 ID(`"*"` 表示任意) | 否 |
| `bindings[].match.peer` | object | - | 匹配的对等体 `{ kind, id }` | 否 |
| `bindings[].match.guildId` | string | - | 匹配的服务器 ID | 否 |
| `bindings[].match.teamId` | string | - | 匹配的团队 ID | 否 |
---
### 24. Config Includes(配置包含)
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `<模块>.$include` | string/string[] | - | 包含的单个文件或文件数组 | 否 |
---
### 25. 其他模块
#### Web 模块
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `web.enabled` | boolean | `true` | 是否启用 Web 频道 | 否 |
| `web.heartbeatSeconds` | number | `60` | 心跳间隔(秒) | 否 |
| `web.reconnect.initialMs` | number | `2000` | 初始重连延迟(毫秒) | 否 |
| `web.reconnect.maxMs` | number | `120000` | 最大重连延迟(毫秒) | 否 |
| `web.reconnect.factor` | number | `1.4` | 重连退避因子 | 否 |
| `web.reconnect.jitter` | number | `0.2` | 重连抖动因子 | 否 |
| `web.reconnect.maxAttempts` | number | `0` | 最大重连尝试次数(0 = 无限) | 否 |
#### 根级别
| 参数路径 | 类型 | 默认值 | 说明 | 必需 |
|---------|------|--------|------|------|
| `$schema` | string | - | JSON Schema 元数据(唯一允许的根级例外) | 否 |
---
## 总结
以上整理了 OpenClaw 配置文件 `~/.openclaw/openclaw.json` 的所有可用参数,涵盖:
- **核心模块**:Gateway、Agents、Channels、Session、Messages、Tools
- **扩展模块**:Models、Browser、Skills、Plugins、Hooks、Cron
- **系统模块**:Canvas Host、Discovery、Environment、Secrets、Auth、Logging、UI、Commands、Talk
- **高级功能**:Multi-Agent Bindings、Config Includes
所有参数均为**可选**,OpenClaw 使用安全的默认值。配置格式支持 **JSON5**(允许注释和尾随逗号)。
更多推荐


所有评论(0)