dm:<user>
模拟一个用户和机器人私聊。
Channels 导读
QA 消息通道 像一扇接消息的门。你要看清门铃装在哪、钥匙交给谁、什么人能进来,以及门口最容易被绊一跤的是哪块砖。原文最响的一记鼓点,其实是:qa-消息通道 is a bundled synthetic 小纸条消息 transport for automated OpenClaw QA. It is not a p…。
先讲这一页到底在解决什么
QA 消息通道 像一扇接消息的门。你要看清门铃装在哪、钥匙交给谁、什么人能进来,以及门口最容易被绊一跤的是哪块砖。原文最响的一记鼓点,其实是:qa-消息通道 is a bundled synthetic 小纸条消息 transport for automated OpenClaw QA. It is not a p…。
第一站
真实聊天软件会有网络、真人和平台规则的变化;QA channel 则把这些变量变得可检查、可重放。
dm:<user>模拟一个用户和机器人私聊。
channel:<room> / group:<room>模拟共享房间,测试机器人在群里该不该可见回复。
thread:<room>/<thread>模拟线程里的对话,看看消息路由会不会跑偏。
.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 是给测试用的假聊天世界:它让 OpenClaw 像接真实通道一样收发消息,但所有动作都能被脚本安排、记录和检查。