CLI 自动化
使用 openclaw onboard --non-interactive 来脚本化设置。它要求 --accept-risk:非交互式设置可以在没有确认提示的情况下写入凭据和守护进程配置,因此该标志是明确的风险确认。
每个命令都可以通过 --install-daemon 安装受管理的 Gateway,通过省略守护进程标志来要求使用已在运行的兼容 Gateway,通过 --skip-daemon 显式让 Gateway 保持停止状态,或使用 --skip-health 仅进行配置设置。显式跳过仍会探测现有的 Gateway,并报告其是否可达,但没有监听器存在仅作为提示信息,而不是设置失败。
Note
--json 并不意味着非交互模式。请在脚本中显式传递 --non-interactive --accept-risk。
审查所需插件¶
捆绑插件和来自 OpenClaw 官方目录的已验证插件在设置期间不需要能力同意。这包括为 OpenAI 设置而安装的官方 Codex 运行时。
非交互式引导无法接受新的第三方插件能力。--accept-risk 仅确认引导风险;它并不授予插件同意。在自动化需要第三方提供商、运行时或渠道插件的设置之前,请审查其源代码和声明的能力,然后以显式同意的方式预安装:
如果引导报告需要进行插件能力审查,请审查并安装指定的插件,然后重新运行相同的命令。对于已安装但需要批准才能启用的插件,请使用 openclaw plugins enable <plugin-id> --accept-capabilities。
同意仅适用于已审查的插件操作,而非随后的每次安装。有关制品审查、启用和更新规则,请参阅 能力同意。
基线非交互式示例¶
openclaw onboard --non-interactive --accept-risk \
--mode local \
--auth-choice apiKey \
--anthropic-api-key "$ANTHROPIC_API_KEY" \
--secret-input-mode plaintext \
--gateway-bind loopback \
--install-daemon \
--daemon-runtime node \
--skip-bootstrap \
--skip-skills
添加 --json 以获取机器可读的摘要。
--gateway-port默认为18789。仅在需要覆盖该默认值时传递它。- 本地引导默认在 token 模式下生成 Gateway 密钥,并保留现有的密码模式。使用
--gateway-auth password配合--gateway-password <value>显式提供密码;密码标志本身也会选择密码模式。Tailscale Funnel 需要密码模式。 --skip-bootstrap跳过创建默认工作区文件,适用于预置自己工作区的自动化。--secret-input-mode ref将新凭据存储为基于环境变量的引用,格式为{ source: "env", provider: "default", id: "<ENV_VAR>" }。在添加凭据或传递内联密钥标志时,设置提供商环境变量。现有可解析的命名配置及其env、file、exec或store引用会原样重用,而无需写入新凭据或额外提供提供商环境变量。现有明文不会被迁移。先运行openclaw secrets configure --apply,再运行openclaw secrets audit --check。参见 密钥管理。- Gateway 令牌遵循相同的模式。设置过程会自行生成该值,因此除非你提供一个环境变量,否则引用模式没有可指向的环境变量。如果导出了
OPENCLAW_GATEWAY_TOKEN,gateway.auth.token就会成为指向它的env引用。否则,该令牌会作为OPENCLAW_GATEWAY_TOKEN存入 SQLite 机密存储,并且配置会保留一个store引用。无论哪种方式,openclaw.json都不会包含明文的 Gateway 令牌。使用openclaw secrets store list检查该条目。 - 在引用模式下,显式传递的
--gateway-password和--remote-password必须与OPENCLAW_GATEWAY_PASSWORD匹配。--remote-token必须与OPENCLAW_GATEWAY_TOKEN匹配。缺失或不匹配的环境变量值会在设置改变状态之前导致失败。匹配的凭据会以 env SecretRefs 的形式存储。
openclaw onboard --non-interactive --accept-risk --skip-health \
--mode local \
--auth-choice openai-api-key \
--secret-input-mode ref
特定提供商的示例¶
Anthropic API 密钥示例
Cloudflare AI Gateway 示例
openclaw onboard --non-interactive --accept-risk --skip-health \
--mode local \
--auth-choice cloudflare-ai-gateway-api-key \
--cloudflare-ai-gateway-account-id "your-account-id" \
--cloudflare-ai-gateway-gateway-id "your-gateway-id" \
--cloudflare-ai-gateway-api-key "$CLOUDFLARE_AI_GATEWAY_API_KEY" \
--gateway-bind loopback
Gemini 示例
Mistral 示例
Moonshot 示例
Ollama 示例
OpenCode 示例
openclaw onboard --non-interactive --accept-risk --skip-health \
--mode local \
--auth-choice opencode-zen \
--opencode-zen-api-key "$OPENCODE_API_KEY" \
--gateway-bind loopback
--auth-choice opencode-go --opencode-go-api-key "$OPENCODE_API_KEY"。
合成示例
Vercel AI Gateway 示例
Z.AI 示例
自定义提供商示例
openclaw onboard --non-interactive --accept-risk --skip-health \
--mode local \
--auth-choice custom-api-key \
--custom-base-url "https://llm.example.com/v1" \
--custom-model-id "foo-large" \
--custom-api-key "$CUSTOM_API_KEY" \
--custom-provider-id "my-custom" \
--custom-compatibility anthropic \
--custom-image-input \
--gateway-bind loopback
--custom-api-key 是可选的;某些端点不需要身份验证。如果省略,引导流程会检查环境变量中的 CUSTOM_API_KEY。--custom-provider-id 是可选的,省略时会从基础 URL 自动派生。--custom-compatibility 默认为 openai(其他值:openai-responses、anthropic)。
OpenClaw 会根据已知的视觉模型 ID 模式(gpt-4o、claude-3/4、gemini、-vl/vision 后缀以及类似模式)推断图像输入支持。对于无法识别的视觉模型,添加 --custom-image-input 可强制启用图像输入,或使用 --custom-text-input 强制为仅文本。
引用模式变体,将 apiKey 存储为 { source: "env", provider: "default", id: "CUSTOM_API_KEY" }:
export CUSTOM_API_KEY="your-key"
openclaw onboard --non-interactive --accept-risk --skip-health \
--mode local \
--auth-choice custom-api-key \
--custom-base-url "https://llm.example.com/v1" \
--custom-model-id "foo-large" \
--secret-input-mode ref \
--custom-provider-id "my-custom" \
--custom-compatibility anthropic \
--custom-image-input \
--gateway-bind loopback
Anthropic setup-token 身份验证仍受支持,但当本地存在 Claude CLI 登录时,OpenClaw 会优先复用 Claude CLI。生产环境中,建议使用 Anthropic API 密钥。
添加另一个智能体¶
openclaw agents add <name> 会创建一个独立的智能体,拥有自己的工作区、会话和身份验证配置。在不带 --workspace(且不带其他标志)的情况下运行它会启动交互式向导;传入 --workspace、--model、--agent-dir、--bind 或 --non-interactive 中的任意一个,则会以非交互方式运行,并且随后要求提供 --workspace。
openclaw agents add work \
--workspace ~/.openclaw/workspace-work \
--model openai/gpt-6-astra \
--bind whatsapp:biz \
--non-interactive \
--json
它写入的配置键(新智能体 ID 对应的 agents.entries.* 条目):
nameworkspaceagentDirmodel(仅在传入--model时)
说明:
- 默认工作区(在交互式向导中省略
--workspace时):~/.openclaw/workspace-<agentId>。 --bind <channel[:accountId]>可重复使用;添加绑定以将入站消息路由到新智能体(向导也可以交互式完成此操作)。- 智能体名称会被规范化为有效的智能体 ID。允许使用
main,但已有的命名安装可能需要先运行openclaw doctor --fix完成 legacy-session 和 shared-auth 所有权迁移,然后才能创建它。
相关文档¶
- 引导流程中心:引导流程(CLI)
- 完整参考:CLI 设置参考
- 命令参考:
openclaw onboard
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw