---
doc-schema-version: 1
summary: "`pnpm openclaw qa` 子命令表和配置文件支持的 `qa run` 选择器。"
read_when:
- "您需要选择正确的 qa 子命令"
- "您正在为 `qa run` 选择 QA 配置文件"
title: "命令面"
---
## 命令界面
每个 QA 流程都在 `pnpm openclaw qa ` 下运行。许多流程都有 `pnpm qa:*` 脚本别名;两种形式都可用。
QA 命令失败将其诊断消息打印到 stderr 并以代码 1 退出。在运行开始之前,参数解析器会报告无效的选项值。
| 命令 | 用途 |
| --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `qa run` | 不带 `--qa-profile` 时运行捆绑的 QA 自检;使用 `--qa-profile smoke-ci`、`--qa-profile release` 或 `--qa-profile all` 时,运行由分类体系支持的成熟度配置。 |
| `qa suite` | 针对 QA 网关通道运行存储库支持的场景。 `--runner multipass`使用一次性Linux VM代替主机。 |
| `qa coverage` | 输出 YAML 场景覆盖清单(机器输出使用 `--json`;使用 `--match ` 查找与已修改行为相关的场景;使用 `--tools` 查看运行时工具夹具覆盖)。 |
| `qa parity-report` | 比较两个 `qa-suite-summary.json` 文件的模型轴奇偶校验门,或使用 `--runtime-axis --token-efficiency` 编写 Codex-vs-OpenClaw 运行时奇偶校验和令牌效率报告。 |
| `qa confidence-report` | 根据清单对 QA 证明工件进行分类,生成不含 unknown 项的置信度报告。 |
| `qa confidence-self-test` | 写入预置的负控制 canary,证明置信度门禁能检测漂移。 |
| `qa jsonl-replay` | 通过运行时一致性重放测试工具重放精选的 JSONL transcript。 |
| `qa character-eval` | 在多个实时模型上运行角色 QA 场景并生成判断报告。请参阅 [ 报告 ](/concepts/qa-e2e-automation/qa-reporting#reporting)。 |
| `qa manual` | 针对选定的 provider/model 通道运行一次性提示。 |
| `qa ui` | 启动 QA 调试器 UI 和本地 QA 总线(别名:`pnpm qa:lab:ui`)。 |
| `qa docker-build-image` | 构建预制的 QA Docker 镜像。 |
| `qa docker-scaffold` | 为 QA 仪表板 + 网关通道编写 docker-compose 启动文件。 |
| `qa up` | 构建 QA 站点,启动 Docker-backed 堆栈,打印 URL(别名:`pnpm qa:lab:up`;`:fast` 变体添加 `--use-prebuilt-image --bind-ui-dist --skip-ui-build`)。 |
| `qa aimock` | 仅启动 AIMock provider server。 |
| `qa mock-openai` | 仅启动面向场景的 `mock-openai` provider server。 |
| `qa credentials doctor` / `add` / `list` / `remove` | 管理共享的 Convex credential pool。 |
| `qa buzz` | 针对真实 Buzz relay room 的实时传输通道,使用专用的 driver 和 SUT 身份。 |
| `qa discord` | 针对真实私有 Discord guild channel 的实时传输通道。 |
| `qa matrix` | QA 实验室 Matrix 针对一次性 Tuwunel 家庭服务器的目录场景。参见[Matrix实时通道](/concepts/qa-e2e-automation/operator-flow#matrix-live-lane)。 |
| `qa slack` | 针对真实私有 Slack channel 的实时传输通道。 |
| `qa telegram` | 针对真实私有 Telegram group 的实时传输通道。 |
| `qa whatsapp` | 针对真实 WhatsApp Web 账户的实时传输通道。 |
| `qa mantis` | 用于实时传输错误的 Before/after 验证运行程序,具有 Discord 状态反应证据、Crabbox desktop/browser 烟雾和 Slack-in-VNC 烟雾。请参阅 [Mantis](/concepts/mantis) 和 [Mantis Slack 桌面 Runbook](/concepts/mantis-slack-desktop-runbook)。 |
### 基于配置的 `qa run`
配置文件支持的 `qa run` 从 `taxonomy.yaml` 读取成员资格,然后通过 `qa suite` 分派已解决的场景。 `--surface` 和 `--category` 过滤选定的配置文件,而不是定义单独的泳道。生成的 `qa-evidence.json` 包括配置文件记分卡摘要,其中包含所选类别计数和缺失的覆盖范围 ID;各个证据条目仍然是测试、覆盖角色和结果的事实来源。分类功能覆盖 ID 是精确的证明目标,而不是别名:主要场景覆盖满足匹配 ID,而次要覆盖保持建议性。每个覆盖范围 ID 恰好是 `taxonomy-surface.feature`,使用 `taxonomy.yaml` 的短表面 ID。场景的单独 `surface` 字段是 execution/reporting 标签(例如,`channel` 或 `runtime-tool`);它没有定义分类所有权。显式配置文件覆盖范围 ID 选择该 ID 的每个合格主要所有者,并按场景进行重复数据删除。场景文件和分类顺序不影响成员资格或执行顺序。
`scenario.execution.channels` 是一个 OR eligibility 列表:特定 channel 的 runner 可以在所列 channel 中任选一个执行该场景。基于配置的执行会将同一列表扩展到所选 driver 支持的每个 channel,并且只有在每个扩展后的 channel 执行都通过时,配置执行才会通过。这一规则统一适用于每个 taxonomy profile。
精简 evidence 会省略每个条目的 `execution`,并设置 `evidenceMode: "slim"`; `smoke-ci` 默认使用 slim,而 `--evidence-mode full` 会恢复完整条目:
```bash
pnpm openclaw qa run \
--qa-profile smoke-ci \
--category channels.conversation-routing-and-delivery \
--provider-mode mock-openai \
--output-dir .artifacts/qa-e2e/smoke-ci-profile-dispatch
```
使用 `smoke-ci` 通过模拟模型提供商和 Crabline 本地提供商服务器进行可重复的配置文件证明。使用 `release` 进行 Stable/LTS 对抗实时频道的验证。仅将 `all` 用于显式的全分类证据运行;它选择每个活动成熟度类别,并可以通过 `QA Profile Evidence` GitHub Actions 工作流程与 `qa_profile=all` 进行调度。当命令还需要 OpenClaw 根配置文件时,请将根配置文件放在 QA 命令之前:
```bash
pnpm openclaw --profile work qa run --qa-profile smoke-ci
```