Channels 导读

QA 消息通道:消息从哪扇门跑进来

QA 消息通道 像一扇接消息的门。你要看清门铃装在哪、钥匙交给谁、什么人能进来,以及门口最容易被绊一跤的是哪块砖。原文最响的一记鼓点,其实是:qa-消息通道 is a bundled synthetic 小纸条消息 transport for automated OpenClaw QA. It is not a p…。

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

QA 消息通道:消息从哪扇门跑进来

QA 消息通道 像一扇接消息的门。你要看清门铃装在哪、钥匙交给谁、什么人能进来,以及门口最容易被绊一跤的是哪块砖。原文最响的一记鼓点,其实是:qa-消息通道 is a bundled synthetic 小纸条消息 transport for automated OpenClaw QA. It is not a p…。

原文共 5 节,先看 Start Here 路径:/channels/qa-channel 查看官方原文

第一站

把它想成一间可以反复布置的测试教室

真实聊天软件会有网络、真人和平台规则的变化;QA channel 则把这些变量变得可检查、可重放。

dm

dm:<user>

模拟一个用户和机器人私聊。

room

channel:<room> / group:<room>

模拟共享房间,测试机器人在群里该不该可见回复。

thread

thread:<room>/<thread>

模拟线程里的对话,看看消息路由会不会跑偏。

report

.artifacts/qa-e2e/

自检跑完会把 Markdown 报告写到这里,方便回头查。

第二站

配置里的字段,就是给这间教室摆桌椅和点名册

最小配置会告诉 OpenClaw:测试 bus 在哪儿,机器人叫什么,谁可以发消息。

baseUrl: "http://127.0.0.1:43123"

这是合成消息 bus 的门牌号,测试消息从这里进进出出。

botUserId: "openclaw"

像给测试机器人发一个固定学生证,方便所有脚本都认得它。

allowFrom: ["*"]

测试时可以先允许所有合成发送者,方便覆盖更多场景。

pollTimeoutMs

这是长轮询等多久,范围从 100 到 30000 毫秒,像老师等学生交纸条的时间。

第三站

它能测的不只是“发一句话”,还包括很多聊天动作

QA channel 之所以有用,是因为它能穿过和真实通道相同的插件边界。

入站注入

测试脚本可以往 bus 里塞一条消息,像假装有人刚刚发来问题。

出站记录

机器人回了什么,会被记录下来,方便检查文字、目标房间和线程是否正确。

反应、编辑、删除、搜索

这些都能按动作开关管控,像给每种课堂活动单独发许可。

groupPolicy / groupAllowFrom

共享房间也可以设置开放、名单或关闭,模拟真实群聊的守门规则。

第四站

跑测试时,有三条常见路线

不同命令对应不同大小的检查:从本机自检,到完整场景套件,再到带调试 UI 的 QA Lab。

pnpm qa:e2e

像做一次本机小测验。它会启动 QA bus,跑确定性自检,并写出 Markdown 报告。

pnpm openclaw qa suite

像跑完整考试卷,多个场景会并行通过 QA gateway lane 执行。

pnpm qa:lab:up

像打开一间带观察窗的实验室,可以在 QA Lab 里挑场景、选模型通道、看运行结果。

别当生产通道

它是练习教室,不是正式门店。真实用户聊天还是要走 Slack、Discord、Telegram 等通道。

最后总结

把 QA channel 这页压成一句话

QA channel 是给测试用的假聊天世界:它让 OpenClaw 像接真实通道一样收发消息,但所有动作都能被脚本安排、记录和检查。