25.2 核心命令解析
生成模型:Claude Opus 4.6 (anthropic/claude-opus-4-6) Token 消耗:输入 ~62k tokens,输出 ~7k tokens(本节)
OpenClaw CLI 注册了超过 25 个顶层子命令,涵盖 Gateway 管理、消息收发、模型配置、安全审计等方方面面。本节按照使用频率和功能分类,逐一解析每个核心命令的设计与实现。
25.2.1 gateway — 启动/管理 Gateway 服务器
gateway — 启动/管理 Gateway 服务器gateway 是 OpenClaw 最核心的命令——它负责启动、停止和管理 WebSocket Gateway 服务器。
子命令一览
gateway(默认)
前台运行 Gateway 服务器
gateway run
同上,显式前台运行
gateway status
显示服务状态 + 探测 Gateway
gateway install
安装系统服务(launchd/systemd/schtasks)
gateway uninstall
卸载系统服务
gateway start
启动系统服务
gateway stop
停止系统服务
gateway restart
重启系统服务
gateway call <method>
调用 Gateway RPC 方法
gateway health
获取 Gateway 健康状态
gateway probe
综合探测(可达性 + 发现 + 健康)
gateway discover
通过 Bonjour 发现局域网内的 Gateway
gateway usage-cost
查询使用成本统计
服务生命周期管理
gateway install/uninstall/start/stop/restart 五个命令委托给 daemon-cli.ts 实现,根据操作系统选择不同的服务管理后端:
macOS — launchd(
launchctl)Linux — systemd(
systemctl)Windows — schtasks(计划任务)
Gateway 发现(Bonjour)
gateway discover 使用 mDNS/Bonjour 协议在局域网内搜索运行中的 Gateway 实例:
衍生解释 — Bonjour/mDNS
Bonjour(也称 mDNS/DNS-SD)是 Apple 开发的零配置网络协议,允许设备在局域网内自动发现服务,无需 DNS 服务器。当 Gateway 启动时,它会向局域网广播自己的存在(包括 IP 地址和端口),其他设备可以通过 Bonjour 找到它。这使得多台设备可以在家庭/办公网络中自动发现并连接到 Gateway。
Gateway RPC 调用
gateway call 提供了一个通用的 RPC 调用接口,允许直接调用 Gateway 暴露的方法:
25.2.2 agent — 发送消息给 AI Agent
agent — 发送消息给 AI Agentagent 命令是用户与 AI Agent 直接对话的主要方式,它通过 Gateway WebSocket 连接发送消息并接收回复。
关键选项
--message <text>
必填,消息内容
--to <number>
接收者号码(E.164 格式),用于派生会话 key
--session-id <id>
直接指定会话 ID
--agent <id>
指定 Agent(覆盖路由绑定)
--thinking <level>
思考级别:off / minimal / low / medium / high
--channel <channel>
投递通道:last / whatsapp / telegram / discord / ...
--deliver
将 Agent 回复发送到选定通道
--local
在本地运行嵌入式 Agent(需要 API key)
--json
以 JSON 格式输出结果
--timeout <seconds>
超时时间(默认 600 秒)
agents 管理子命令
除了 agent(单数),还有 agents(复数)命令用于管理多 Agent 配置:
25.2.3 send — 通过通道发送消息
send — 通过通道发送消息send 命令(实际注册为 message send)允许直接通过指定通道发送消息,绕过 Agent 层:
message 命令组还包括丰富的子命令:
message send
发送文本/媒体消息
message broadcast
群发消息
message poll
创建投票
message react / unreact
添加/移除表情反应
message read / edit / delete
读取/编辑/删除消息
message pin / unpin
置顶/取消置顶
message permissions
权限管理
message search
搜索消息
message thread
线程消息操作
message emoji / sticker
Emoji 和贴纸管理
每个子命令的注册被拆分到独立的模块文件中(如 register.send.ts、register.poll.ts),通过 createMessageCliHelpers 共享通道选项和公共逻辑。
25.2.4 channels — 通道管理(登录/配置)
channels — 通道管理(登录/配置)channels 命令管理聊天通道的账户配置和认证:
子命令详解
channels list
列出所有已配置通道及认证 Profile
channels status
显示 Gateway 通道连接状态
channels capabilities
展示通道的权限/功能矩阵
channels resolve
将名称解析为通道 ID
channels logs
查看最近的通道日志
channels add
添加或更新通道账户
channels remove
禁用或删除通道账户
channels login
链接通道账户(如 WhatsApp QR 码扫描)
channels logout
登出通道会话
channels add 命令支持超过 30 个选项,覆盖所有支持的通道类型(WhatsApp、Telegram、Discord、Slack、Signal、iMessage、Matrix、Tlon 等),每种通道有各自特定的认证参数。
25.2.5 models — 模型管理(列表/设置/扫描)
models — 模型管理(列表/设置/扫描)models 命令管理 AI 模型的配置、认证和回退策略:
命令树
models 是 CLI 中命令树最深的命令之一,涉及三级嵌套(models auth order set)。
25.2.6 sessions — 会话管理
sessions — 会话管理sessions 命令是快速路由(Fast-Path)支持的命令之一,可以绕过完整的 Commander.js 管道直接执行。它显示每个会话的接收者、最后活跃时间、Token 使用量等信息。
25.2.7 skills — 技能管理
skills — 技能管理skills 命令的输出格式经过精心设计——使用表格渲染(renderTable),每个技能显示状态图标(✓ ready / ⏸ disabled / 🚫 blocked / ✗ missing)、Emoji 名称、描述和来源。skills info 还会显示详细的需求检查(二进制依赖、环境变量、配置项、操作系统要求),并提供安装建议。
末尾会附带一条 ClawHub 提示:Tip: use npx clawhub to search, install, and sync skills.
25.2.8 browser — 浏览器控制
browser — 浏览器控制browser 命令管理 OpenClaw 的专用浏览器实例(Chrome/Chromium),支持远程操控:
命令按功能分为七个模块:
browser-cli-manage
生命周期管理(status/open/close)
browser-cli-extension
浏览器扩展管理
browser-cli-inspect
页面检查(DOM/screenshot)
browser-cli-actions-input
输入操作(click/type/scroll)
browser-cli-actions-observe
观察操作(wait/query)
browser-cli-debug
调试工具
browser-cli-state
状态管理(cookies/storage)
所有浏览器命令通过 addGatewayClientOptions 共享 Gateway RPC 连接选项。
25.2.9 cron — 定时任务管理
cron — 定时任务管理cron 命令管理基于 cron 表达式的定时任务调度。它是一个延迟加载的子命令,注册在 cron-cli/register.ts 中,通过 Gateway RPC 与运行中的 Gateway 通信来管理定时任务。
25.2.10 nodes — 节点管理
nodes — 节点管理nodes 命令管理分布式部署中的节点。同样是延迟加载的子命令,注册在 nodes-cli/register.ts 中。节点管理涉及节点发现、节点状态查询和节点间通信。
25.2.11 doctor — 健康检查与诊断
doctor — 健康检查与诊断doctor 是 OpenClaw 的"全科医生"——它检测并修复常见问题:
doctor 命令注册在 register.maintenance.ts 中,与 dashboard、reset、uninstall 命令同属维护命令组:
doctor
健康检查 + 快速修复
dashboard
打开 Web 控制台
reset
重置本地配置/状态
uninstall
卸载 Gateway 服务 + 本地数据
doctor 的特殊之处在于——它被列入配置守卫的白名单(ALLOWED_INVALID_COMMANDS),即使配置文件无效也能运行,因为它本身就是用来修复配置问题的。
25.2.12 security — 安全审计
security — 安全审计security audit 的实现分为两步:
修复(可选):
fixSecurityFootguns()收紧默认配置、修正文件权限(chmod)审计:
runSecurityAudit()五层扫描(攻击面 → 配置 → 文件系统 → 通道 → 深度探测)
输出按严重程度分组(CRITICAL → WARN → INFO),每条发现包含 checkId、标题、详情和修复建议。
25.2.13 onboard — 引导向导
onboard — 引导向导onboard 是新用户的入门向导,引导完成 Gateway 设置、工作空间创建和技能安装:
onboard 命令拥有 CLI 中最多的选项(50+),覆盖了所有可能的配置组合:
认证选择:支持 Anthropic、OpenAI、OpenRouter、Gemini、xAI、Moonshot 等 20+ 提供商
Gateway 配置:端口、绑定模式(loopback/tailnet/lan/auto)、认证方式(token/password)
Tailscale 集成:off / serve / funnel 三种模式
服务安装:自动检测并安装为系统服务
通道/技能/健康检查:均可通过
--skip-*跳过
25.2.14 update — 版本更新
update — 版本更新update 命令管理 OpenClaw 的版本升级,支持三种更新通道:
三种更新通道
stable
npm(latest tag)
正式发布版本
beta
npm(beta tag)
预发布版本
dev
Git(main 分支)
源码编译
更新流程
update 命令实现了一套完整的更新编排流程:
检测安装类型:Git 源码 vs npm 全局包
解析目标版本:从 npm registry 获取 tag 对应的版本号
降级确认:如果目标版本低于当前版本,要求用户确认
通道切换:如果指定了新通道,写入配置文件
执行更新:
Git 模式:fetch → rebase → install deps → build → doctor
npm 模式:检测包管理器(npm/pnpm/bun)→ 全局安装
通道切换:
dev→ 克隆 Git 仓库;非dev→ 全局 npm 安装
更新插件:同步内置插件、更新 npm 安装的插件
Shell 补全:更新缓存、提示安装
重启服务:重启 Gateway 守护进程 + 运行 doctor
整个流程附带进度指示器(spinner),每个步骤显示耗时和成功/失败状态。更新完成后还会输出一条随机趣味语录(如 "The lobster has molted. Harder shell, sharper claws.")。
本节小结
gateway是最核心的命令,管理 WebSocket Gateway 的完整生命周期(前台运行/系统服务/探测/发现/RPC 调用),跨平台支持 launchd/systemd/schtasksagent/message分别处理 AI 对话和原始消息收发——agent通过 Gateway 路由到 AI Agent,message直接操作通道channels/models管理两大外部依赖——聊天通道和 AI 模型,其中models命令树深达三级,包含完整的认证、别名和回退链管理doctor/security/onboard构成运维三件套——诊断修复、安全审计、引导安装,doctor被特殊豁免配置校验update实现了三通道(stable/beta/dev)更新编排,自动检测安装类型、管理包管理器、同步插件、重启服务所有命令统一采用
runCommandWithRuntime(defaultRuntime, action)包装,确保错误处理一致;支持--json机器可读输出模式
Last updated