Documentation Index
Fetch the complete documentation index at: https://openclaw.zhcndoc.com/llms.txt
Use this file to discover all available pages before exploring further.
tools.* 配置键以及自定义提供方 / 基础 URL 设置。关于 agents、channels 和其他顶层配置键,请参见 配置参考。
工具
工具配置文件
tools.profile 会在 tools.allow/tools.deny 之前设置一个基础允许列表:
本地入门流程在未设置时,会将新建的本地配置默认设为
tools.profile: "coding"(已显式设置的现有配置会被保留)。| 配置文件 | 包含内容 |
|---|---|
minimal | 仅 session_status |
coding | group:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, video_generate |
messaging | group:messaging, sessions_list, sessions_history, sessions_send, session_status |
full | 无限制(与未设置相同) |
工具组
| 组 | 工具 |
|---|---|
group:runtime | exec, process, code_execution(bash 作为 exec 的别名被接受) |
group:fs | read, write, edit, apply_patch |
group:sessions | sessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status |
group:memory | memory_search, memory_get |
group:web | web_search, x_search, web_fetch |
group:ui | browser, canvas |
group:automation | cron, gateway |
group:messaging | message |
group:nodes | nodes |
group:agents | agents_list |
group:media | image, image_generate, video_generate, tts |
group:openclaw | 所有内置工具(不包括提供方插件) |
tools.allow / tools.deny
全局工具允许/拒绝策略(拒绝优先)。大小写不敏感,支持 * 通配符。即使 Docker sandbox 关闭也会生效。
write 和 apply_patch 是两个独立的工具 id。allow: ["write"] 也会为兼容模型启用 apply_patch,但 deny: ["write"] 不会拒绝 apply_patch。要阻止所有文件修改,请拒绝 group:fs 或显式列出每个会修改文件的工具:
tools.byProvider
进一步限制特定提供方或模型可用的工具。顺序:基础配置文件 → 提供方配置文件 → allow/deny。
tools.elevated
控制 sandbox 之外的提升权限 exec 访问:
- 按 agent 的覆盖配置(
agents.list[].tools.elevated)只能进一步收紧。 /elevated on|off|ask|full会按会话保存状态;行内指令只对单条消息生效。- 提升权限的
exec会绕过 sandbox,并使用已配置的逃逸路径(默认是gateway,如果 exec 目标为node,则使用node)。
tools.exec
tools.loopDetection
工具循环安全检查默认是禁用的。将 enabled: true 以启用检测。设置可以在全局的 tools.loopDetection 中定义,并在 agents.list[].tools.loopDetection 中按 agent 覆盖。
保留用于循环分析的最大工具调用历史记录数。
用于告警的无进展重复模式阈值。
用于阻止严重循环的更高重复阈值。
对任何无进展运行的硬停止阈值。
对重复的相同工具/相同参数调用发出警告。
对已知轮询工具(
process.poll、command_status 等)发出警告/阻止。对交替出现的无进展成对模式发出警告/阻止。
tools.web
tools.media
配置传入媒体的理解能力(图像/音频/视频):
媒体模型条目字段
媒体模型条目字段
提供方条目(
type: "provider" 或省略):provider: API 提供方 id(openai、anthropic、google/gemini、groq等)model: 模型 id 覆盖值profile/preferredProfile:auth-profiles.json配置文件选择
type: "cli"):command: 要运行的可执行文件args: 模板化参数(支持{{MediaPath}}、{{Prompt}}、{{MaxChars}}等;openclaw doctor --fix会将已弃用的{input}占位符迁移为{{MediaPath}})
capabilities: 可选列表(image、audio、video)。默认值:openai/anthropic/minimax→ image,google→ image+audio+video,groq→ audio。prompt、maxChars、maxBytes、timeoutSeconds、language:按条目覆盖。- 当 agent 调用显式的
image工具时,tools.media.image.timeoutSeconds和匹配的 image modeltimeoutSeconds条目也同样适用。 - 失败时会回退到下一个条目。
auth-profiles.json → 环境变量 → models.providers.*.apiKey。异步完成字段:asyncCompletion.directSend:当设为true时,支持直接完成交付的已完成异步媒体任务会优先尝试直接发送到频道。默认值:false(请求者会话唤醒 / 模型交付路径)。目前这适用于异步video_generate;即使启用此项,异步music_generate的完成仍然通过请求者会话中介。
tools.agentToAgent
tools.sessions
控制哪些会话可以作为 session 工具(sessions_list、sessions_history、sessions_send)的目标。
默认值:tree(当前会话 + 由其派生的会话,例如 subagents)。
可见性范围
可见性范围
self:仅当前会话 key。tree:当前会话 + 由当前会话派生的会话(subagents)。agent:属于当前 agent id 的任何会话(如果你在同一 agent id 下按发送者运行会话,可能包括其他用户)。all:任何会话。跨 agent 定位仍需要tools.agentToAgent。- Sandbox clamp:当当前会话处于 sandbox 中且
agents.defaults.sandbox.sessionToolsVisibility="spawned"时,即使tools.sessions.visibility="all",可见性也会被强制为tree。
tools.sessions_spawn
控制 sessions_spawn 的内联附件支持。
附件说明
附件说明
- 仅
runtime: "subagent"支持附件。ACP runtime 会拒绝它们。 - 文件会被物化到子工作区中的
.openclaw/attachments/<uuid>/,并带有.manifest.json。 - 附件内容会在转录持久化时自动脱敏。
- Base64 输入会通过严格的字母表/填充检查以及解码前大小保护进行验证。
- 文件权限为目录
0700、文件0600。 - 清理遵循
cleanup策略:delete总是移除附件;keep仅在retainOnSessionKeep: true时保留它们。
tools.experimental
实验性内置工具标志。默认关闭,除非应用了 strict-agentic 的 GPT-5 自动启用规则。
planTool:为非平凡的多步骤工作跟踪启用结构化的update_plan工具。- 默认值:
false,除非agents.defaults.embeddedPi.executionContract(或按 agent 的覆盖)对 OpenAI 或 OpenAI Codex GPT-5 系列运行设置为"strict-agentic"。将其设为true可在该范围之外强制启用该工具,或设为false以在 strict-agentic GPT-5 运行中也保持关闭。 - 启用后,system prompt 也会添加使用指导,因此模型只在进行实质性工作时使用它,并且最多保留一个
in_progress步骤。
agents.defaults.subagents
model:派生 sub-agents 的默认模型。如果省略,sub-agents 会继承调用者的模型。allowAgents:当请求者 agent 未设置自己的subagents.allowAgents时,sessions_spawn的默认目标 agent id 允许列表(["*"]= 任意;默认:仅同一 agent)。runTimeoutSeconds:当工具调用省略runTimeoutSeconds时,sessions_spawn的默认超时时间(秒)。0表示无超时。- 每个 subagent 的工具策略:
tools.subagents.tools.allow/tools.subagents.tools.deny。
自定义提供商和基础 URL
OpenClaw 使用内置模型目录。可通过配置中的models.providers 或 ~/.openclaw/agents/<agentId>/agent/models.json 添加自定义提供商。
认证和合并优先级
认证和合并优先级
- 对于自定义认证需求,使用
authHeader: true+headers。 - 通过
OPENCLAW_AGENT_DIR(或旧版环境变量别名PI_CODING_AGENT_DIR)覆盖 agent 配置根目录。 - 匹配 provider ID 时的合并优先级:
- 非空的 agent
models.json中的baseUrl优先。 - 仅当该 provider 在当前配置/认证配置文件上下文中不是由 SecretRef 管理时,非空的 agent
apiKey才优先。 - 由 SecretRef 管理的 provider
apiKey会从源标记刷新(环境变量引用使用ENV_VAR_NAME,文件/exec 引用使用secretref-managed),而不是持久化解析后的密钥。 - 由 SecretRef 管理的 provider 头部值会从源标记刷新(环境变量引用使用
secretref-env:ENV_VAR_NAME,文件/exec 引用使用secretref-managed)。 - agent 中空或缺失的
apiKey/baseUrl会回退到配置中的models.providers。 - 匹配的模型
contextWindow/maxTokens使用显式配置与隐式目录值中的较大者。 - 匹配的模型
contextTokens在存在显式运行时上限时会保留该上限;可用它限制有效上下文,而不改变原生模型元数据。 - 当你希望配置完全重写
models.json时,使用models.mode: "replace"。 - 标记持久化遵循源权威:标记会从当前活动的源配置快照(解析前)写入,而不是从已解析的运行时密钥值写入。
- 非空的 agent
提供商字段详情
顶层目录
顶层目录
models.mode:提供商目录行为(merge或replace)。models.providers:按 provider id 键控的自定义 provider 映射。- 安全编辑:对于增量更新,使用
openclaw config set models.providers.<id> '<json>' --strict-json --merge或openclaw config set models.providers.<id>.models '<json-array>' --strict-json --merge。config set会拒绝破坏性替换,除非你传入--replace。
- 安全编辑:对于增量更新,使用
提供商连接和认证
提供商连接和认证
请求传输覆盖
请求传输覆盖
模型目录条目
模型目录条目
models.providers.*.models:显式的 provider 模型目录条目。models.providers.*.models.*.input:模型输入模态。纯文本模型使用["text"],原生图像/视觉模型使用["text", "image"]。仅当所选模型被标记为支持图像时,图像附件才会注入到 agent 回合中。models.providers.*.models.*.contextWindow:原生模型上下文窗口元数据。它会覆盖该模型的 provider 级contextWindow。models.providers.*.models.*.contextTokens:可选的运行时上下文上限。它会覆盖 provider 级contextTokens;当你希望有效上下文预算小于模型原生contextWindow时使用它;当两者不同,openclaw models list会同时显示。models.providers.*.models.*.compat.supportsDeveloperRole:可选兼容性提示。对于api: "openai-completions"且baseUrl非空且非原生(主机不是api.openai.com),OpenClaw 会在运行时强制将其设为false。空的/省略的baseUrl会保持默认 OpenAI 行为。models.providers.*.models.*.compat.requiresStringContent:用于仅字符串 OpenAI 兼容聊天端点的可选兼容性提示。当为true时,OpenClaw 会在发送请求前将纯文本messages[].content数组压平成普通字符串。
Amazon Bedrock 发现
Amazon Bedrock 发现
plugins.entries.amazon-bedrock.config.discovery:Bedrock 自动发现设置根。plugins.entries.amazon-bedrock.config.discovery.enabled:开启/关闭隐式发现。plugins.entries.amazon-bedrock.config.discovery.region:用于发现的 AWS 区域。plugins.entries.amazon-bedrock.config.discovery.providerFilter:用于定向发现的可选 provider-id 过滤器。plugins.entries.amazon-bedrock.config.discovery.refreshInterval:发现刷新的轮询间隔。plugins.entries.amazon-bedrock.config.discovery.defaultContextWindow:已发现模型的回退上下文窗口。plugins.entries.amazon-bedrock.config.discovery.defaultMaxTokens:已发现模型的回退最大输出 token。
--custom-image-input 可强制使用支持图像的元数据,或传入 --custom-text-input 可强制使用纯文本元数据。
提供商示例
Cerebras(GLM 4.7 / GPT OSS)
Cerebras(GLM 4.7 / GPT OSS)
捆绑的 Cerebras 使用
cerebras provider 插件可通过 openclaw onboard --auth-choice cerebras-api-key 进行配置。仅当需要覆盖默认值时才使用显式 provider 配置。cerebras/zai-glm-4.7;Z.AI 直连使用 zai/glm-4.7。Kimi Coding
Kimi Coding
openclaw onboard --auth-choice kimi-code-api-key。本地模型(LM Studio)
本地模型(LM Studio)
参见 本地模型。简而言之:在性能足够的硬件上通过 LM Studio Responses API 运行大型本地模型;保留托管模型的合并作为回退。
MiniMax M2.7(直连)
MiniMax M2.7(直连)
MINIMAX_API_KEY。快捷方式:openclaw onboard --auth-choice minimax-global-api 或 openclaw onboard --auth-choice minimax-cn-api。模型目录默认仅包含 M2.7。在 Anthropic 兼容的流式路径上,OpenClaw 默认会禁用 MiniMax thinking,除非你显式自行设置 thinking。/fast on 或 params.fastMode: true 会把 MiniMax-M2.7 重写为 MiniMax-M2.7-highspeed。Moonshot AI(Kimi)
Moonshot AI(Kimi)
baseUrl: "https://api.moonshot.cn/v1" 或 openclaw onboard --auth-choice moonshot-api-key-cn。原生 Moonshot 端点在共享的 openai-completions 传输上支持流式使用兼容性,OpenClaw 依赖端点能力而不仅仅是内置 provider id。OpenCode
OpenCode
OPENCODE_API_KEY(或 OPENCODE_ZEN_API_KEY)。使用 opencode/... 引用 Zen 目录,或使用 opencode-go/... 引用 Go 目录。快捷方式:openclaw onboard --auth-choice opencode-zen 或 openclaw onboard --auth-choice opencode-go。Synthetic(与 Anthropic 兼容)
Synthetic(与 Anthropic 兼容)
/v1(Anthropic 客户端会自动追加)。快捷方式:openclaw onboard --auth-choice synthetic-api-key。Z.AI(GLM-4.7)
Z.AI(GLM-4.7)
ZAI_API_KEY。z.ai/* 和 z-ai/* 都是可接受的别名。快捷方式:openclaw onboard --auth-choice zai-api-key。- 通用端点:
https://api.z.ai/api/paas/v4 - 编程端点(默认):
https://api.z.ai/api/coding/paas/v4 - 对于通用端点,请定义一个带基础 URL 覆盖的自定义 provider。
相关内容
- 配置 — agents
- 配置 — channels
- 配置参考 — 其他顶层键
- 工具和插件