Канал

OpenClaw 2026.3.31 — QQ Bot, Background Tasks, Matrix стриминг, безопасность

OpenClaw 2026.3.31 (31 марта) — релиз с новым каналом QQ Bot, полноценной системой фоновых задач, стримингом в Matrix и серьёзным усилением безопасности exec-среды и gateway-аутентификации.

Полный changelog: v2026.3.31

Ломающие изменения

nodes.run удалён

Дублирующий shell wrapper nodes.run удалён из CLI и инструмента nodes. Выполнение команд на нодах теперь только через exec host=node. Инструменты nodes invoke и специализированные действия (media, location, notify) продолжают работать.

Plugin SDK: deprecated legacy shims

Legacy compat-подпути и старые bundled provider/channel-runtime shims помечены как deprecated. Актуальные точки входа — openclaw/plugin-sdk/*. При использовании устаревших импортов выводится предупреждение. Полное удаление — в будущем мажорном релизе.

Установка плагинов и скиллов: fail-closed

Встроенные проверки опасного кода (critical findings) и ошибки сканирования при установке теперь блокируют установку по умолчанию. Если ранее такие плагины устанавливались без проблем — теперь потребуется явный флаг:

openclaw plugins install <package> --dangerously-force-unsafe-install

Аналогично для openclaw skills install.

Gateway auth: ужесточение trusted-proxy

  • trusted-proxy отклоняет конфигурации со смешанными shared-token
  • Локальный fallback (same-host callers) теперь требует настроенный токен — неявная аутентификация отключена

Node commands и события

  • Node commands отключены до одобрения pairing (ранее хватало самого факта pairing)
  • Node-originated runs работают с ограниченным trusted surface — потоки, запущенные нодой, больше не получают полный доступ к host/session инструментам

QQ Bot — новый канал

QQ Bot добавлен как bundled channel plugin:

  • Multi-account setup
  • Поддержка SecretRef для credentials
  • Slash commands
  • Напоминания
  • Отправка и приём медиафайлов

Для QQ Bot не нужно устанавливать отдельный плагин — он доступен из коробки.

Background Tasks: control plane

Фоновые задачи из разрозненного ACP-only механизма превратились в полноценный control plane:

  • Единый SQLite-backed ledger для ACP, subagent, cron и CLI-задач
  • Lifecycle-обновления через executor seam
  • Автоочистка и восстановление потерянных задач
  • Видимость статуса во внутренних поверхностях (status, tools)

Task Flows

Новая подсистема оркестрации:

# Управление потоками задач
openclaw flows list
openclaw flows show <flow-id>
openclaw flows cancel <flow-id>
  • Ручные multi-task flows отделены от auto-sync (single-task)
  • openclaw doctor выдаёт подсказки для orphaned/broken flow/task связей
  • Blocked state сохраняется при retry — задача продолжает с того же места

Matrix: стриминг и новые возможности

Draft Streaming

Частичные ответы в Matrix теперь обновляют одно и то же сообщение вместо отправки нового сообщения на каждый чанк. Пользователь видит ответ по мере генерации — как в Telegram или Discord.

Room History Context

Новая настройка channels.matrix.historyLimit — агент получает контекст предыдущих сообщений в комнате при срабатывании триггера:

  • Per-agent watermarks
  • Retry-safe snapshots — повторные триггеры не захватывают более новые сообщения

HTTP Proxy

Настройка channels.matrix.proxy для маршрутизации Matrix-трафика через HTTP(S)-прокси, включая account-level overrides.

Thread Replies

Per-DM threadReplies overrides — изоляция сессий по тредам с учётом политики комнаты или DM.

MCP: remote HTTP/SSE серверы

mcp.servers теперь поддерживает URL-конфигурации для подключения к удалённым MCP-серверам:

  • Транспорт HTTP и SSE
  • Auth headers для авторизации
  • Безопасная редакция credentials в конфиге

Это позволяет подключать MCP-серверы, развёрнутые на других машинах, без локальной установки.

WhatsApp: реакции emoji

Агент теперь может реагировать emoji на входящие сообщения WhatsApp. Вместо текстового ответа — простое ❤️ или 👍 на фото, голосовое или сообщение.

Slack: нативные exec approvals

Запросы на одобрение выполнения команд теперь работают нативно в Slack — не нужно переключаться в Web UI или терминал. Авторизация approver’а проверяется на месте.

LINE: медиа и ACP

  • Outbound media — отправка изображений, видео и аудио через LINE
  • Explicit preview/tracking для видео
  • ACP binding/acp spawn ... --thread here работает в LINE

Android: уведомления

Новые контролы для пересылки уведомлений:

  • Фильтрация по пакетам (приложениям)
  • Тихие часы (quiet hours)
  • Rate limiting
  • Безопасный picker для forwarded notification events

Безопасность

Этот релиз содержит масштабное усиление безопасности, особенно в области exec и gateway.

Exec/env: блокировка переменных

Заблокированы переменные окружения, которые могут перенаправить трафик или подменить зависимости при выполнении команд:

  • Proxy, TLS и Docker endpoint overrides
  • Python package index (PIP_INDEX_URL и др.)
  • Compiler include paths, package resolution, Python env roots

Exec approvals

  • awk и sed убраны из safeBins fast path — теперь требуют одобрения
  • caffeinate, sandbox-exec, arch, xcrun unwrap перед persist allow-always
  • Denied async approvals больше не могут переиспользовать output предыдущих команд
  • Default approval window увеличен до 30 минут
  • Discord/Telegram approvers auto-inferred из owner config

Gateway

  • Webhook device-token: bogus token не подавляет brute-force tracking
  • Browser Origin проверка для trusted-proxy HTTP
  • Device sessions отключаются сразу после ротации токена
  • Plugin-auth HTTP routes ограничены read-only scope
  • Owner-only tools закрыты для HTTP invoke

Nostr

Входящие DM-события проверяются по подписи до pairing и авторизации — поддельные события больше не создают pairing requests.

ACP

dangerous-tool name override заменён на semantic approval classes — только узкие read-only операции проходят автоматически, exec-capable и control-plane инструменты всегда требуют одобрения.

Основные исправления

  • Agents/BTW: /btw принудительно отключает reasoning — исправлен crash No BTW response generated для Anthropic
  • Agents/failover: Anthropic api_error с An unexpected error occurred теперь считается transient — retry/fallback работает
  • Agents/disabled providers: отключённые провайдеры исчезают из model selection и fallback
  • Slack: устранены дублирующие ответы при сбое draft-finalization edits
  • Cron/announce: multi-line отчёты доставляются полностью в Telegram forum topics
  • Config/Telegram: legacy groupMentionsOnly мигрирует в groups["*"].requireMention
  • Discord/voice: voice ingress проверяет guild channel и member allowlist перед транскрипцией
  • Docker/setup: принудительный BuildKit для ./docker-setup.sh — больше нет ошибок на RUN --mount=...
  • iOS: Live Activities совместимы с Xcode 26.4 / Swift 6

Как обновить

npm update -g openclaw
# или
openclaw update

Важно: если у вас в скриптах или конфигах используется nodes.run — замените на exec host=node до обновления.

Полезные ссылки

Следите за OpenClaw на русском

Разбираем обновления, пишем гайды, делимся кейсами

Подписаться на канал Задать вопрос в чате
Присоединяйтесь к сообществу