Встановлення
Twitch постачається як офіційний Plugin і не входить до базового встановлення.- реєстр npm
- Локальна робоча копія
plugins install реєструє та вмикає Plugin. Вибір Twitch під час openclaw onboard або openclaw channels add встановлює його за потреби. Використовуйте назву пакета без версії, щоб отримувати поточний випуск; фіксуйте точну версію лише для відтворюваних установлень. Потрібна версія OpenClaw 2026.4.10 або новіша.
Докладніше: Плагіни
Швидке налаштування
1
Установіть Plugin
Див. розділ Встановлення вище.
2
Створіть обліковий запис бота Twitch
Створіть окремий обліковий запис Twitch для бота (або використайте наявний обліковий запис).
3
Створіть облікові дані
Скористайтеся Twitch Token Generator:
- Виберіть Bot Token
- Переконайтеся, що області доступу
chat:readіchat:writeвибрано - Скопіюйте Client ID та Access Token
4
Знайдіть свій ідентифікатор користувача Twitch
Скористайтеся https://www.streamweasels.com/tools/convert-twitch-username-to-user-id/, щоб перетворити ім’я користувача на ідентифікатор користувача Twitch.
5
Налаштуйте токен
- Змінна середовища:
OPENCLAW_TWITCH_ACCESS_TOKEN=...(лише для типового облікового запису) - Або конфігурація:
channels.twitch.accessToken
6
Запустіть Gateway
Що це таке
- Канал Twitch, яким керує Gateway.
- Детермінізована маршрутизація: відповіді завжди надсилаються назад у канал Twitch, з якого надійшло повідомлення.
- Кожен приєднаний канал зіставляється з ізольованим ключем групового сеансу
agent:<agentId>:twitch:group:<channel>. username— обліковий запис бота (який автентифікується), аchannel— чат-кімната, до якої потрібно приєднатися. Один запис облікового запису приєднується рівно до одного каналу.- Токени працюють із префіксом
oauth:або без нього; OpenClaw нормалізує обидва варіанти (майстер налаштування очікує формат ізoauth:).
Оновлення токена (необов’язково)
Токени з Twitch Token Generator не можуть оновлюватися OpenClaw — створіть їх повторно після завершення строку дії (вони діють кілька годин; реєстрація застосунку не потрібна). Для автоматичного оновлення створіть власний застосунок у Twitch Developer Console і додайте:refreshToken він записує token refresh disabled (no refresh token); без clientSecret він повертається до статичного токена (без оновлення).
Підтримка кількох облікових записів
Використовуйтеchannels.twitch.accounts з окремими обліковими даними для кожного облікового запису. Спільний шаблон описано в розділі Конфігурація.
Приклад (один обліковий запис бота у двох каналах):
Для кожного запису облікового запису потрібен власний
accessToken (змінна середовища стосується лише типового облікового запису). Обліковий запис приєднується рівно до одного каналу, тому для приєднання до двох каналів потрібні два облікові записи. channels.twitch.defaultAccount визначає, який обліковий запис є типовим.Контроль доступу
allowFrom — це суворий список дозволених ідентифікаторів користувачів Twitch. Якщо його задано, allowedRoles ігнорується; не задавайте allowFrom, щоб натомість використовувати доступ на основі ролей.
Доступні ролі: "moderator", "owner", "vip", "subscriber", "all".
- Список дозволених ідентифікаторів користувачів (найбезпечніше)
- На основі ролей
- Вимкнення вимоги @згадки
Чому ідентифікатори користувачів? Імена користувачів можна змінювати, що дає змогу видавати себе за іншу особу. Ідентифікатори користувачів постійні.Знайдіть свій за допомогою перетворювача імені користувача на ідентифікатор.
Усунення несправностей
Спочатку виконайте діагностичні команди:Бот не відповідає на повідомлення
Бот не відповідає на повідомлення
- Перевірте контроль доступу: переконайтеся, що ваш ідентифікатор користувача є в
allowFrom, або для перевірки тимчасово видалітьallowFromі задайтеallowedRoles: ["all"]. - Перевірте обмеження за згадкою: коли
requireMention: true(типове значення), повідомлення мають містити @згадку імені користувача бота. - Перевірте, чи бот перебуває в каналі: бот приєднується лише до каналу, зазначеного в
channel.
Проблеми з токеном
Проблеми з токеном
Помилка «Не вдалося підключитися» або помилки автентифікації:
- Переконайтеся, що
accessTokenмістить значення токена доступу OAuth (префіксoauth:необов’язковий) - Перевірте, чи токен має області доступу
chat:readіchat:write - Якщо використовується оновлення токена, переконайтеся, що задано
clientSecretіrefreshToken
Оновлення токена не працює
Оновлення токена не працює
Перевірте журнал на наявність подій оновлення:Якщо ви бачите
token refresh disabled (no refresh token):- Переконайтеся, що
clientSecretнадано - Переконайтеся, що
refreshTokenнадано
Конфігурація
Конфігурація облікового запису
string
обов'язково
Ім’я користувача бота (обліковий запис, який автентифікується).
string
обов'язково
Токен доступу OAuth з областями доступу
chat:read і chat:write (конфігурація або змінна середовища для типового облікового запису).string
обов'язково
Ідентифікатор клієнта Twitch (із Token Generator або вашого застосунку). Необов’язковий у схемі, але потрібний для підключення.
string
обов'язково
Канал, до якого потрібно приєднатися.
boolean
за замовчуванням:"true"
Увімкнути цей обліковий запис.
string
Необов’язково: для автоматичного оновлення токена.
string
Необов’язково: для автоматичного оновлення токена.
number
Строк дії токена в секундах (відстеження оновлення).
number
Позначка часу отримання токена (відстеження оновлення).
string[]
Список дозволених ідентифікаторів користувачів. Якщо його задано, ролі ігноруються.
Array<"moderator" | "owner" | "vip" | "subscriber" | "all">
Контроль доступу на основі ролей.
boolean
за замовчуванням:"true"
Вимагати @згадку для активації бота.
string
Перевизначення префікса вихідної відповіді для цього облікового запису.
Параметри постачальника
channels.twitch.enabled— увімкнути або вимкнути запуск каналуchannels.twitch.username/accessToken/clientId/channel— спрощена конфігурація одного облікового запису (неявний обліковий записdefault; має пріоритет надaccounts.default)channels.twitch.accounts.<accountName>— конфігурація кількох облікових записів (усі наведені вище поля облікового запису)channels.twitch.defaultAccount— назва облікового запису, який є типовимchannels.twitch.markdown.tables— режим відтворення таблиць Markdown (off|bullets|code|block)
Дії інструмента
Агент може надсилати повідомлення Twitch через діюsend інструмента повідомлень:
to є необов’язковим і за замовчуванням використовує налаштований для облікового запису channel.
Безпека та експлуатація
- Поводьтеся з токенами як із паролями — ніколи не додавайте токени до git.
- Використовуйте автоматичне оновлення токенів для ботів, що працюють тривалий час.
- Використовуйте списки дозволених ідентифікаторів користувачів замість імен користувачів для контролю доступу.
- Відстежуйте журнали щодо подій оновлення токенів і стану підключення.
- Мінімізуйте області доступу токенів — запитуйте лише
chat:readіchat:write. - Якщо виникли труднощі: перезапустіть Gateway, попередньо переконавшись, що жоден інший процес не володіє сеансом.
Обмеження
- 500 символів на повідомлення; довші відповіді розбиваються на частини за межами слів.
- Markdown видаляється перед надсиланням (чат Twitch використовує звичайний текст; переноси рядків перетворюються на пробіли).
- OpenClaw не додає власного обмеження частоти запитів; клієнт чату Twurple обробляє обмеження частоти Twitch.
Пов’язані розділи
- Маршрутизація каналів — маршрутизація сеансів для повідомлень
- Огляд каналів — усі підтримувані канали
- Групи — поведінка групового чату й обмеження за згадкою
- Сполучення — автентифікація в особистих повідомленнях і процес сполучення
- Безпека — модель доступу та посилення захисту