OpenCode Chat Bridge CLI

Бот-мост: OpenCode и другие ACP-агенты отвечают в Matrix, Slack, WhatsApp, Mattermost, Discord, Telegram и веб-виджете.

  • 113 ★ репозитория
  • Последний коммит
CLI

Широкий доступ

Почему такой уровень

  • Участники чата получают доступ к агенту, который читает и меняет файлы на сервере, если права в `opencode.json` не урезаны.
  • Веб-виджет работает без встроенной аутентификации, а токены ботов и вход WhatsApp хранятся на сервере.
Все причины и проверки

ominiverdi/opencode-chat-bridge

Установка

Работает в

Ручная установка

git clone https://github.com/ominiverdi/opencode-chat-bridge

Первая команда раздела Quick Start. Затем `bun install`, заполнение `.env` и `chat-bridge.json` и запуск коннектора.

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Участники чата получают доступ к агенту, который читает и меняет файлы на сервере, если права в `opencode.json` не урезаны.
  • Веб-виджет работает без встроенной аутентификации, а токены ботов и вход WhatsApp хранятся на сервере.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

OpenCode Chat Bridge запускает агента OpenCode или другого ACP-совместимого агента, например Ferrum, как бота в чатах. Для каждой платформы есть свой коннектор: Matrix с шифрованными комнатами, Slack через Socket Mode, WhatsApp через Baileys, Mattermost, Discord, Telegram и встраиваемый веб-виджет. Бот отвечает на префикс `!oc` или упоминание. Каждый тред получает изолированную сессию, она переживает перезапуск моста. Список `allowedUsers` ограничивает круг людей, а права инструментов задает `opencode.json`. Коннекторы стартуют командами вроде `bun connectors/telegram.ts`; есть образ Docker `lbecchi/opencode-chat-bridge`.

Для кого. Администраторам команд, которые хотят дать коллегам агента для кода прямо в рабочем чате и держать его на своем сервере.

Подходит, если

  • Коллеги задают агенту вопросы по коду из Slack, не открывая терминал.
  • Команда сидит в Matrix с шифрованием, и бот должен работать в таких комнатах.
  • Сайту нужен чат-виджет, за которым стоит агент с ограниченными правами.
  • Одна сессия агента должна жить в треке обсуждения и переживать перезапуск.

Не подходит, если

  • Агент нужен одному человеку на его машине, и чат только усложнит схему.
  • Нельзя публиковать веб-виджет без прокси с авторизацией: встроенной проверки пользователей в нем нет.
  • Сообщения чата не должны уходить к модели и инструментам агента.

Пример запроса к агенту

Подними коннектор Telegram для OpenCode, разреши только двух пользователей и запрети агенту `bash` и правку файлов.

Ограничения

Мост работает как сервис: оператор ставит зависимости командой `bun install`, заполняет `.env` и `chat-bridge.json` и держит процесс запущенным. У веб-виджета нет встроенной аутентификации, его оставляют в частной сети или за прокси с авторизацией. Любой допущенный участник чата управляет агентом с правами из `opencode.json`, поэтому для общих комнат стоит запретить `bash`, `write` и `edit`. В одном из релизов поле WhatsApp `allowedNumbers` стало `allowedUsers`, что ломает старые настройки.

Как отключить. Остановите процесс коннектора или контейнер, отзовите токены ботов на каждой платформе и удалите каталог `state/` с сохраненными сессиями.

Частые вопросы

Как обратиться к боту в чате?

Напишите префикс `!oc` и вопрос, например `!oc /status`, либо упомяните бота. В тредах Slack отвечать можно без повторного упоминания.

Можно ли подключить агента кроме OpenCode?

Да, любой ACP v1 через stdio. В `chat-bridge.json` задают команду и аргументы, например `ferrum acp` для агента Ferrum.

Как ограничить действия агента?

Права задает `opencode.json`, и OpenCode применяет их при выполнении, а не по тексту подсказки. Круг людей ограничивает `allowedUsers`.

Нужны ли Bun и Node?

Для запуска из исходников нужен Bun. Образ Docker `lbecchi/opencode-chat-bridge` работает без установки Bun и Node.

Сохраняются ли сессии после перезапуска?

Да. Сессия ACP привязана к платформе и треку, ее идентификатор записывается в `sessionStorePath`, а после старта моста сессия продолжается.

Обсуждение

Вопросов и отзывов пока нет.

Подключает Claude Code, Cursor, Codex или OpenCode к Telegram, Slack и Discord: коллеги пишут боту, отвечает кодовый агент

CLIШирокий доступ322Звезды репозитория

Плагин дает Claude Code доступ к API OpenBSP и позволяет отвечать в WhatsApp, пропуская в канал только выбранные контакты.

ПлагинШирокий доступ639Звезды репозитория

Мост между LoRa-сетями Meshtastic и MeshCore и ИИ: MCP-сервер дает агенту слать сообщения, читать узлы и вызывать расширения

MCP-серверШирокий доступ185Звезды репозитория
Российский стек

MCP-сервер и скилл для сборки и публикации воронок ботов Telegram, MAX и Instagram в сервисе zaytsv /bots из текстового описания сценария

ПлагинШирокий доступ1Звезды репозитория

CLI для умного дома SwitchBot: устройства и сцены из терминала, MCP-сервер для Claude Code, Codex и Gemini CLI.

CLIШирокий доступ136Звезды репозитория
Российский стек

Канал-плагин, который подключает AI-ассистента OpenClaw к мессенджеру MAX через официальный Bot API: текст, медиа, кнопки, стриминг, мультиаккаунт

ПлагинРасширенный доступ

Коротко о README

Коннекторы для семи каналов, изоляция сессий по тредам, списки допущенных пользователей, настройка ACP-бэкенда и режимы показа вызовов инструментов `off`, `events`, `status` и `trace`.

Бейдж для README

Сообщить о проблеме

Foxx AIOpenCode Chat Bridge
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.