Configuration
QA-канал
qa-channel — це вбудований синтетичний транспорт повідомлень для автоматизованого QA OpenClaw. Це не production-канал - він існує, щоб перевіряти ту саму межу Plugin каналу, яку використовують реальні транспорти, зберігаючи стан детермінованим і повністю доступним для інспекції.
Що він робить
- Граматика цілей класу Slack:
dm:<user>channel:<room>group:<room>thread:<room>/<thread>
- Спільні розмови
channel:іgroup:передаються агентам як ходи кімнати групи/каналу, тож вони перевіряють ту саму політику видимих відповідей і маршрутизації message-tool, яку використовують Discord, Slack, Telegram та подібні транспорти. - Синтетична шина на базі HTTP для ін’єкції вхідних повідомлень, захоплення вихідного транскрипту, створення тредів, реакцій, редагувань, видалень і дій пошуку/читання.
- Хостовий runner самоперевірки, який записує Markdown-звіт у
.artifacts/qa-e2e/.
Конфігурація
{ "channels": { "qa-channel": { "baseUrl": "http://127.0.0.1:43123", "botUserId": "openclaw", "botDisplayName": "OpenClaw QA", "allowFrom": ["*"], "pollTimeoutMs": 1000 } }}Ключі облікового запису:
enabled- головний перемикач для цього облікового запису.name- необов’язкова мітка відображення.baseUrl- URL синтетичної шини.botUserId- ідентифікатор користувача бота у стилі Matrix, який використовується в граматиці цілей.botDisplayName- ім’я відображення для вихідних повідомлень.pollTimeoutMs- вікно очікування long-poll. Ціле число від 100 до 30000.allowFrom- allowlist відправників (ідентифікатори користувачів або"*"). Прямі повідомлення та allowlisted політика груп обидві використовують ці синтетичні ідентифікатори відправників.groupPolicy- політика спільної кімнати:"open"(типово),"allowlist"або"disabled".groupAllowFrom- необов’язковий allowlist відправників спільної кімнати. Якщо його пропущено під"allowlist", QA Channel повертається доallowFrom.groups.<room>.requireMention- вимагати згадку бота перед відповіддю в конкретній кімнаті групи/каналу.groups."*"задає типове значення.defaultTo- резервна ціль, коли жодну не вказано.actions.messages/actions.reactions/actions.search/actions.threads- gating інструментів для кожної дії.
Ключі кількох облікових записів на верхньому рівні:
accounts- запис іменованих перевизначень для кожного облікового запису, індексований за ідентифікатором облікового запису.defaultAccount- бажаний ідентифікатор облікового запису, коли налаштовано кілька.
Runners
Хостова самоперевірка (записує Markdown-звіт у .artifacts/qa-e2e/):
pnpm qa:e2eЦе маршрутизується через qa-lab, запускає QA-шину всередині репозиторію, завантажує вбудований runtime-зріз qa-channel і виконує детерміновану самоперевірку.
Повний набір сценаріїв на базі репозиторію:
pnpm openclaw qa suiteЗапускає сценарії паралельно проти QA lane Gateway. Див. Огляд QA щодо сценаріїв, профілів і режимів провайдерів.
QA-сайт на базі Docker (Gateway + UI налагоджувача QA Lab в одному стеку):
pnpm qa:lab:upЗбирає QA-сайт, запускає Gateway на базі Docker + стек QA Lab і виводить URL QA Lab. Звідти можна вибирати сценарії, обирати lane моделі, запускати окремі прогони та переглядати результати наживо. Налагоджувач QA Lab окремий від поставленого bundle Control UI.
Пов’язане
- Огляд QA - загальний стек, адаптери транспорту, створення сценаріїв
- Matrix QA - приклад runner для живого транспорту, який керує реальним каналом
- Pairing
- Groups
- Огляд каналів