纯 Java 库(无 Spring):使用 Kong Unirest 调用 OpenClaw Gateway POST /hooks/agent(推荐 OpenClawClient#agent,兼容旧方法 OpenClawClient#invokeViaGateway):
- 任意顶层命令:
OpenClawClient#cli()返回OpenClawCli,每个方法与官方 CLI 文档页一一对应;第二个参数为cli.opts包中与该命令对应的*Options(实现CliSubArgs),例如SetupOptions、AgentOptions。Gateway 另可用GatewayCommandOptions与GatewayRpcOptions。
HTTP 与 CLI 互不降级。入口类 OpenClawClient。
Spring Boot 应用请使用 openclaw-spring-boot-starter。
全局参数(--dev、--profile、--container、--no-color)请使用 OpenClawCliRequest 并通过 OpenClawCli#execute 调用。
表格怎么读:第一列是官方 CLI 的顶层命令(openclaw <cmd> 里的 <cmd>),在 OpenClawCli 里都已经有同名方法;第二参数类型为 cli.opts 中 *Options(如 SetupOptions、DaemonOptions;文档未逐 flag 建模的命令提供 *Options.builder().add(...) 作为扩展)。Gateway 的 RPC 场景优先用 GatewayRpcOptions + gatewayHealth / gatewayStatus / gatewayProbe 或 GatewayCommandOptions.builder().health(...),见下文「Gateway RPC」。
OpenClawCli 方法 |
官方文档 |
|---|---|
version() / help() |
CLI Reference(全局) |
gateway |
gateway |
daemon |
daemon |
health |
health |
status |
status |
doctor |
doctor |
logs |
logs |
config |
config |
configure |
configure |
setup |
setup |
onboard |
onboard |
docs |
docs |
agent |
agent |
agents |
agents |
sessions |
sessions |
skills |
skills |
memory |
memory |
approvals |
approvals |
channels |
channels |
message |
message |
pairing |
pairing |
qr |
qr |
node |
node |
nodes |
nodes |
devices |
devices |
browser |
browser |
mcp |
mcp |
plugins |
plugins |
cron |
cron |
hooks |
hooks |
webhooks |
webhooks |
flows |
flows |
models |
models |
security |
security |
secrets |
secrets |
sandbox |
sandbox |
backup |
backup |
update |
update |
uninstall |
uninstall |
reset |
reset |
completion |
completion |
tui |
tui |
dashboard |
dashboard |
directory |
directory |
dns |
dns |
system |
system |
voicecall |
voicecall |
clawbot |
clawbot |
acp |
acp |
与 gateway CLI 中「Query a running Gateway」共享的 --url、--token、--password、--timeout、--expect-final、--json 等,可用 GatewayRpcOptions 构建;GatewayCliArgv 生成 gateway health|status|probe 的参数列表(不含可执行文件名)。
OpenClawCli 提供便捷方法:
gatewayHealth(GatewayRpcOptions)→openclaw gateway health ...gatewayStatus(GatewayRpcOptions, GatewayCliArgv.GatewayStatusOptions)→openclaw gateway status ...gatewayProbe(GatewayRpcOptions, GatewayCliArgv.GatewayProbeOptions)→openclaw gateway probe ...
也可自行调用 GatewayCliArgv.health(...) 等得到 List<String>,组装为 GatewayCommandOptions.builder().add(...),或传入 OpenClawCliRequest.arguments("gateway", ...)。