Help 导读

Testing: live suites:这回它在替你排哪颗雷

Testing: live suites 像排雷图。先认症状,再找该翻哪条命令或日志,最后才决定要不要动配置,不要一上来就把整面墙都拆了。原文最响的一记鼓点,其实是:For quick start, QA runners, unit/integration suites, and Docker flows, see Testing. Th…。

先讲这一页到底在解决什么

Testing: live suites:这回它在替你排哪颗雷

Testing: live suites 像排雷图。先认症状,再找该翻哪条命令或日志,最后才决定要不要动配置,不要一上来就把整面墙都拆了。原文最响的一记鼓点,其实是:For quick start, QA runners, unit/integration suites, and Docker flows, see Testing. Th…。

原文共 25 节,先看 Start Here 路径:/help/testing-live 查看官方原文

第一站

什么时候才需要 live 测试

如果你只是改普通代码,先看 Testing。只有碰到真实外部服务时,才把 live 这盏大灯打开。

1

模型能不能回答

直接问模型一句小问题,确认 provider、model id 和钥匙都还能用。

2

Gateway 链路通不通

让完整 agent 流程跑起来,顺便检查读文件、执行命令、图片输入这些工具链。

3

外部能力是否在线

CLI 后端、ACP 绑定、APNs、图片、音乐、视频等服务,都用小而明确的探针验证。

第二站

先跑小烟雾,不要一上来点全场

live 测试会用真实服务,最好从最窄的命令开始。能证明问题就停在小范围里,别让测试变成又慢又贵的大巡游。

安全的媒体烟雾
pnpm openclaw infer tts convert --local --json \
  --text "OpenClaw live smoke." \
  --output /tmp/openclaw-live-smoke.mp3

像让音箱说一句短话,确认媒体管道不是哑的。

语音呼叫准备检查
pnpm openclaw voicecall setup --json
pnpm openclaw voicecall smoke --to "+15555550123"

voicecall smoke 默认是干跑。只有加 --yes,才表示你真的想发起通知呼叫。

第三站

模型 live 测试分两层,方便找错

同样是“模型不工作”,可能是钥匙坏了,也可能是 Gateway 到 agent 的整条路坏了。分层以后,问题更容易定位。

第一层:Direct model

不启动完整 Gateway,只看某个 provider/model 能不能用当前凭据回答。常用开关是 OPENCLAW_LIVE_MODELS

第二层:Gateway smoke

启动完整 agent 流程,检查会话、历史、工具调用、沙箱策略和图片输入。常用开关是 OPENCLAW_LIVE_GATEWAY_MODELS

窄范围示例
OPENCLAW_LIVE_GATEWAY_MODELS="openai/gpt-5.5" \
  pnpm test:live src/gateway/gateway-models.profiles.live.test.ts

像只检查一扇门,不把整栋楼都跑一遍。

先看本机有什么
openclaw models list
openclaw models list --json

不要硬背模型清单。你机器上发现到的模型和可用凭据,才是本次测试的真实地图。

第四站

CLI、ACP、Codex harness 也有自己的 live 探针

这些测试像检查不同入口的门铃:Claude、Gemini、Codex、ACP harness 都要证明“能接上、能继续对话、能按合同工作”。

CLI

本地命令后端

OPENCLAW_LIVE_CLI_BACKEND=1 检查 Claude、Gemini 等本地 CLI 是否能被 Gateway 正确驱动。

ACP

绑定对话

OPENCLAW_LIVE_ACP_BIND=1 验证 /acp spawn ... --bind here 之后,后续消息还在同一条会话里。

Codex

app-server harness

OPENCLAW_LIVE_CODEX_HARNESS=1 验证 Codex runtime、续聊、状态命令和可选工具探针。

第五站

凭据要像借书证一样保管

live 测试会找真实钥匙,但不应该把钥匙写进代码、日志或提交里。能用 CLI 跑通的凭据,live 测试通常也应该能找到。

常见来源

环境变量、~/.openclaw/openclaw.json、每个 agent 的 auth-profiles.json,以及部分外部 CLI 的认证目录。

更严格的钥匙规则

设置 OPENCLAW_LIVE_REQUIRE_PROFILE_KEYS=1 时,只认 profile store,避免旧环境变量把问题遮住。

不要提交

API key、OAuth token、语音服务号码、临时测试 home 里的认证材料,都只留在本机或安全的 CI secret 里。

最后记住

Live 测试不是每天随手全跑的大扫除

它更像发车前对真实铁轨的试跑:窄一点、明白一点、带好钥匙、看清失败点。普通测试负责守住日常,live 测试负责确认外面的世界还真的接得上。