---
read_when:
    - Вы подключаете синтетический QA-транспорт к локальному или CI-запуску тестов
    - Вам нужна встроенная поверхность конфигурации qa-channel
    - Вы дорабатываете сквозную автоматизацию QA
summary: Синтетический плагин канала класса Slack для детерминированных сценариев QA OpenClaw
title: Канал QA
x-i18n:
    generated_at: "2026-06-28T22:36:31Z"
    model: gpt-5.5
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: 8f28962032bc5f6b228de731ae6bd9a22831604b506b7073aeffba19ac22e0e8
    source_path: channels/qa-channel.md
    workflow: 16
---

`qa-channel` — это встроенный синтетический транспорт сообщений для автоматизированного QA OpenClaw. Это не production-канал - он существует, чтобы проверять ту же границу channel plugin, которую используют реальные транспорты, сохраняя состояние детерминированным и полностью доступным для проверки.

## Что он делает

- Грамматика целей класса Slack:
  - `dm:<user>`
  - `channel:<room>`
  - `group:<room>`
  - `thread:<room>/<thread>`
- Общие беседы `channel:` и `group:` показываются агентам как обращения в группах/каналах, поэтому они проверяют ту же политику маршрутизации видимых ответов и инструментов сообщений, которая используется Discord, Slack, Telegram и похожими транспортами.
- Синтетическая шина на базе HTTP для внедрения входящих сообщений, захвата исходящих транскриптов, создания веток, реакций, правок, удалений и действий поиска/чтения.
- Запускаемый на стороне хоста раннер самопроверки, который записывает Markdown-отчет в `.artifacts/qa-e2e/`.

## Конфигурация

```json
{
  "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` - список разрешенных отправителей (идентификаторы пользователей или `"*"`). Личные сообщения и
  политика разрешенных групп используют эти синтетические идентификаторы отправителей.
- `groupPolicy` - политика общих комнат: `"open"` (по умолчанию), `"allowlist"` или
  `"disabled"`.
- `groupAllowFrom` - необязательный список разрешенных отправителей для общих комнат. Если он не указан при
  `"allowlist"`, QA Channel использует запасной вариант `allowFrom`.
- `groups.<room>.requireMention` - требовать упоминание бота перед ответом в
  конкретной группе/комнате канала. `groups."*"` задает значение по умолчанию.
- `defaultTo` - запасная цель, если ни одна не указана.
- `actions.messages` / `actions.reactions` / `actions.search` / `actions.threads` - управление доступом к инструментам по действиям.

Ключи для нескольких учетных записей на верхнем уровне:

- `accounts` - запись именованных переопределений для отдельных учетных записей, сгруппированных по идентификатору учетной записи.
- `defaultAccount` - предпочитаемый идентификатор учетной записи, когда настроено несколько.

## Раннеры

Самопроверка на стороне хоста (записывает Markdown-отчет в `.artifacts/qa-e2e/`):

```bash
pnpm qa:e2e
```

Она проходит через `qa-lab`, запускает QA-шину из репозитория, загружает встроенный срез runtime `qa-channel` и выполняет детерминированную самопроверку.

Полный набор сценариев на базе репозитория:

```bash
pnpm openclaw qa suite
```

Запускает сценарии параллельно в lane QA gateway. См. [обзор QA](/ru/concepts/qa-e2e-automation) для сценариев, профилей и режимов провайдеров.

QA-сайт на базе Docker (gateway + UI отладчика QA Lab в одном стеке):

```bash
pnpm qa:lab:up
```

Собирает QA-сайт, запускает стек gateway + QA Lab на базе Docker и выводит URL QA Lab. После этого можно выбирать сценарии, выбирать lane модели, запускать отдельные прогоны и наблюдать результаты в реальном времени. Отладчик QA Lab отделен от поставляемого бандла Control UI.

## Связанное

- [Обзор QA](/ru/concepts/qa-e2e-automation) - общий стек, транспортные адаптеры, создание сценариев
- [Matrix QA](/ru/concepts/qa-matrix) - пример раннера для живого транспорта, который управляет реальным каналом
- [Связывание](/ru/channels/pairing)
- [Группы](/ru/channels/groups)
- [Обзор каналов](/ru/channels)
