Голос, чат, встречи и задачи для вашей команды
Мессенджер, где голос на первом месте: комнаты всегда открыты, рядом чат как в Telegram, календарь со встречами, доски задач и звонки на телефон. Ставится на ваш сервер одной командой или работает в облаке. Написан нейросетью от первой строки.

Так выглядит Calab: планёрка со стримом слайда и камерами участников
Зашли в комнату — и говорите
Голосовые комнаты всегда открыты: один клик, и вы в разговоре. Кто говорит, видно прямо в списке комнат. Камеры, показ экрана и звонки один на один — там же, без отдельных ссылок и приложений.
- Чистый звук без внешних сервисовЭхоподавление AEC3 и шумоподавление RNNoise работают на устройстве. Push-to-talk на любую клавишу или активация голосом, в том числе в фоне.
- Стрим экрана и камераAV1 или аппаратный H.264 с simulcast: каждый зритель получает качество под свой канал. Указка и рисование поверх стрима, камера с размытием или картинкой вместо фона.
- Запись встреч с транскриптомСервер записывает встречу, после неё в чат комнаты приходит карточка с саммари, аудио и полной расшифровкой через GPTunneL.
- Временные комнаты и модерацияКомната на час или день с готовой гостевой ссылкой — для созвонов с клиентами. Серверный mute, перенос участников перетаскиванием, саундборд на всю комнату.

Голос без компромиссов, а для музыкантов — без обработки
Качество задаёт комната: от 8 кбит/с для плохой связи до 64 кбит/с в полной полосе до 20 кГц. В паузах голос почти не расходует канал.
Четыре уровня комнаты
Низкое 8 кбит/с, нормальное 16, хорошее 32 (по умолчанию) и отличное 64 кбит/с — Opus в полной полосе до 20 кГц.
Режим музыканта
Играть на инструменте и петь вживую: эхо- и шумоподавление выключены, микрофон уходит в музыкальном профиле Opus — 128 кбит/с моно или 192 кбит/с стерео. Нужны наушники. Тарифы Team и выше.
Звук стрима как есть
Музыка и демонстрации звучат без обработки, а голоса собеседников в стрим не попадают (macOS 14.2+, Windows 11).
Личный потолок
Каждый может ограничить качество для себя и экономить трафик, когда связь хуже.
Шумоподавление по желанию
RNNoise включается, когда нужно, и засыпает в паузах; пока он выключен, работает встроенный шумодав Chromium.
Экономно в тишине
Пока микрофон молчит, голос занимает около 0,1 кбит/с. Стрим статичного экрана — 20–300 кбит/с.
Чат как в Telegram
У каждой комнаты свой чат: ответы, реакции, пересылка сразу в несколько чатов, стикеры, голосовые, файлы с превью и встроенным плеером, закрепы и галочки прочтения.
- Поиск с морфологиейПо комнате и по всему пространству, быстрый переход ⌘K по комнатам, участникам и сообщениям, входящие с непрочитанными упоминаниями.
- Личные сообщенияТа же лента, что в комнатах, плюс архив переписок и звонок в один клик.
- Задачи прямо из чатаЗадачу можно создать из любого сообщения, а ссылка на неё разворачивается в чате карточкой.

Встречи там же, где разговор
Календарь встроен в приложение: день со встречами, ответы участников, комната встречи с кнопкой «Перейти», повторяющиеся встречи и напоминания за 15 минут.
- Приглашения .icsПисьмо с invite.ics добавляет встречу в Apple, Google, Outlook или Яндекс Календарь. Внешние участники отвечают по ссылке и входят гостем.
- Подобрать времяКолонки занятости коллег, общие свободные окна и ближайшие слоты в рабочие часы — клик создаёт встречу.
- CalDAVПодключите календарь Яндекса, iCloud, Fastmail или Nextcloud: занятость учитывается, внешние события видны в дне, встречи Calab появляются там сами. Тарифы Team и выше.

Задачи рядом с разговором
Канбан, список и таймлайн с вехами в духе Linear, с его горячими клавишами, — без отдельного сервиса. Комментарии как в чате: реакции, стикеры, голосовые.
- Всё для планированияСтатусы, приоритеты, лейблы, вехи и сроки, несколько исполнителей с ведущим, подзадачи и связи, фильтры и сохранённые виды.
- Согласование задачНазначьте согласующих и сколько нужно одобрений — все или N из M. Пока задача не согласована, дальше по доске она не двигается; отказ — с комментарием.
- Приватные и закрытые доскиДоступ по ролям и людям, как к комнатам; закрытую доску не видят даже администраторы.

Позвоните на любой номер — прямо из комнаты
Подключите своего SIP-провайдера, и из голосовой комнаты можно набрать городской или мобильный номер. Абонент появляется в комнате участником с иконкой трубки, его слышат все.
- Статус виден всем«Набираем… → Звонит… → В разговоре 02:14». Завершить звонок могут звонивший и модераторы.
- Проверка и журнал«Проверить подключение» — пробный звонок на ваш Caller ID; журнал: кто, когда, куда и чем закончилось.
- Под контролем администратораПраво «Звонить на номера» по умолчанию ни у кого, один звонок на комнату, до 20 в час на пространство, направления — по префиксам. Звонки оплачиваются у вашего провайдера.

Ваши сервисы — в одном окне со звонком
Администратор закрепляет в левой панели ярлыки сайтов — Grafana, вики, CRM. Клик — и сайт открывается прямо в Calab на всё окно, а звонок продолжается.
- До 20 приложений на пространствоЯрлык — картинка, название и адрес, порядок меняется перетаскиванием. Видят все, кроме гостей.
- Логины отдельноВходы на сайтах хранятся для каждого приложения отдельно и не смешиваются с Calab; камера и микрофон — только с вашего разрешения.
- Не тормозит в фонеСкрытое приложение, которое ест больше 2 % ядра, выгружается через 15 секунд — логины остаются.

Личные полки для всего важного
До 20 полок со своими названиями и эмодзи — как «Избранное» в Telegram, только несколько. Полку видите только вы.
- Перетащите или перешлитеСообщения из чатов и файлы из Finder или Проводника — прямо на полку.
- Как обычный чатЗакрепы и поиск по заметкам работают так же, как в комнатах.

Гости без регистрации — с вашего разрешения
Гостевая ссылка ведёт прямо в комнату: гость вводит имя и оказывается в разговоре. Нужен контроль — включите подтверждение, и организатор нажмёт «Пустить».
- Гость видит только свою комнатуГости не входят в лимит участников, а администратор может сделать гостя участником.
- Зал ожиданияПодтверждение для комнаты или отдельной ссылки, у организатора — звук и счётчик ожидающих.

Бот — такой же участник, как все
Бот работает через тот же API, что и приложение, и видит ровно то, что разрешено его ролям. Bot API v2 покрывает почти всё, что делает человек.
Чат
Читает и пишет в доступных комнатах и личке, отвечает на /команды, ставит кнопки под сообщениями.
Задачи
Создаёт, меняет, назначает и комментирует задачи на досках, ищет по ним.
Календарь
Назначает и переносит встречи, смотрит «свободно/занято» и подбирает время.
Голос
Заходит в комнату через LiveKit: слышит участников и говорит сам — на Node, Python или Go.
Участники
Профили с открытыми задачами, приглашения по ссылке и почте, бейджи, пропуск гостей.
Запись встреч
Запускает и останавливает запись — транскрипт и саммари придут карточкой в чат.
WebSocket или webhook
События в реальном времени или POST с подписью HMAC-SHA256 и повторами при сбоях.
SDK на TypeScript
@calaba/bot-sdk и примеры: эхо, голосовое эхо, озвучка текста, бот на Python.
Лёгкий — и это измерено
Процессор меряем на реальной машине и публикуем цифры вместе с методикой. Средняя нагрузка без звонка, % одного ядра: Calab и Discord на одном Mac, подряд, в одинаковых условиях.
| Calab | Discord0.0.413 | |
|---|---|---|
| Без звонка, окно видно | 0,05 % | 0,97 % |
| Без звонка, окно скрыто | 0,2 % | 0,85 % |
MacBook Air (Apple M4, 10 ядер, 24 ГБ), macOS 27; сумма по всем процессам приложения, выборка раз в 5 с в течение 3 минут, один прогон на сценарий. Звонки Discord мы не измеряли, поэтому по голосу не сравниваем. Сам Calab в голосе с тихой комнатой — около 7 % (было 15 %), скрытое окно не декодирует видео. На другой машине цифры будут другими. Методика и все замеры
Сделан для команд, у которых есть админ, а не отдел DevOps
Всё нужное — в одном docker compose: Caddy, LiveKit, Go-API, PostgreSQL и Valkey. Никаких внешних сервисов.
Роли по функциям
Несколько ролей на человека, отдельные права на доски, участников, ботов, интеграции, записи и приглашения, переопределения на каждую комнату и доску.
Закрытые разделы
Приватные комнаты и доски видны только списку людей, закрытые — даже не администраторам. Всё, что вам не видно, отвечает «не найдено».
Работает за файрволом
UDP → TCP → TURN через 443 автоматически: для сети это обычный HTTPS. Хватает одного публичного IP.
Шифрование в пути
Медиа — DTLS-SRTP, API — HTTPS/WSS, HSTS и строгая CSP, argon2id, ротация refresh-токенов. Сквозного шифрования пока нет.
Права проверяет сервер
Одна функция прав на сервере и в клиенте с общими тест-векторами; клиент лишь скрывает интерфейс.
Эксплуатация
Сертификаты Let's Encrypt, ежедневные бэкапы с проверенным восстановлением, метрики Prometheus, файлы на диске или в S3, автообновление приложений.
Issue на GitHub закрывает нейросеть. Человек только одобряет
Calab написан моделями от первой строки: архитектура, код, тесты, документация и changelog. Тот же конвейер обслуживает задачи от пользователей: единственная ручная кнопка — одобрение, чтобы никто не заставил нейросеть навредить проекту.
Причина: Caps Lock читается через раскладку, а не как физическая клавиша
Правка: apps/desktop → hotkeys, чтение кода клавиши напрямую
Проверки: typecheck, unit, e2e:visual -g settings на трёх раскладках
Риск: низкий, затрагивает только macOS
✓ typecheck · lint · unit
✓ e2e:visual -g settings — 3 из 3
✓ CI: buf lint, go vet, drift-check генерации
→ Calab 0.3.1 · changelog обновлён, сборки собраны
Нейросеть отвечает в самой issue: причина, план, оценка.
План привязан к документации проекта, а не к догадкам.
Без одобрения агент не трогает код.
Так в первый день вышли пять версий Calab.
Нужна функция для вашей команды: у вендора и в Calab
Письмо в поддержку
Квартал в бэклоге вендора
Если совпало с их планами
Ждёте релиза для всех
Может быть, через год
Issue на GitHub
План от нейросети за минуты
Человек одобрил — агент пишет
Тесты и ревью в CI
PR и релиз — дни, а не кварталы
Доработки под ваши процессы — SSO, интеграции, брендинг, своя инфраструктура — делаем по коммерческой лицензии GPTunneL.
Calab против облачных мессенджеров
| Calab | Discord, Slack, Zoomоблачные | |
|---|---|---|
| Где лежат данные | На вашем сервере или в облаке Calab | В облаке вендора |
| Исходный код | Открыт на GitHub | Закрыт |
| Голос, встречи, задачи | В одном приложении | Обычно разные сервисы |
| Звонки на телефон | Из комнаты, через ваш SIP | Зависит от сервиса |
| Доработки под вас | Issue → нейросеть → PR | Только из планов вендора |
| Закрытый контур | Да, один публичный IP | Нет |
| Гости | По ссылке, с подтверждением входа | Зависит от сервиса |
Некоммерческое использование Calab на своём сервере бесплатно, коммерческое — по лицензии GPTunneL.
Free, Team, Business и Enterprise
Начните бесплатно. Нужно больше — Team или Business в облаке, либо Enterprise: Calab на вашем собственном сервере без ограничений.
| Freeбесплатно | Teamпо запросу | Businessпо запросу | Enterpriseсвой сервер | |
|---|---|---|---|---|
| Человек в голосовой комнате | до 5 | до 15 | до 50 | без ограничений |
| Участники пространства | до 50 | до 100 | до 500 | без ограничений |
| Файлы | 5 ГБ | 300 ГБ | 1 ТБ | без ограничений |
| Стримы / камеры в комнате | 1 / 3 | 2 / 10 | 5 / 25 | без ограничений |
| Качество звука и видео | до «Нормального», 720p 15 к/с | любое | любое | любое |
| Боты / доски задач | 1 / 3 | 5 / 30 | 20 / 50 | без ограничений |
| Режим музыканта и CalDAV | нет | есть | есть | есть |
| Поддержка | нет | есть | приоритетная | есть |
Календарь, согласование задач, веб-приложения и телефония есть на всех тарифах; гости в лимит участников не входят. Цены Team и Business — по запросу на it@gptunnel.ai. Enterprise: некоммерческое использование бесплатно с «Powered by GPTunneL» в интерфейсе, коммерческое — по лицензии GPTunneL. Тарифы на calab.ru
Три команды до рабочего мессенджера
Нужны Linux-хост с публичным IP, Docker с Compose и домен с A-записями app, rtc и turn. Для команды до 30 человек — ориентировочно 4 vCPU и 8 ГБ памяти.
git clone https://github.com/itrcz/calab.git && cd calab
Клонируйте репозиторий
cp infra/docker/.env.example infra/docker/.env
Заполните домен и секреты
Все переменные описаны в комментариях к файлу.
infra/docker/deploy.sh
Поднимите стек
Caddy, LiveKit, API, PostgreSQL и Valkey. Сертификаты Let's Encrypt выпускаются сами.
Порты: 80/443 TCP, 443 UDP, 7881 TCP, 7882 UDP. Первый зарегистрированный пользователь становится владельцем сервера, дальше — по приглашениям. Приложения для macOS, Windows и Linux обновляются сами.
Инструкция по деплоюЧто появится дальше
Этого в Calab пока нет — это ближайшие планы.
Голосовой ИИ-ассистент
Ассистент в голосовых комнатах. Уже тестируется, в общем доступе пока нет.
IVR
Голосовое меню и внутренние номера для звонков по SIP.
Wiki
База знаний команды рядом с чатом и задачами.
Диск
Общее хранилище файлов пространства.
Дорабатываем под ваши процессы
Открытый код плюс конвейер с нейросетью означают, что «под вас» — это не квартал разработки, а согласованный план и несколько дней.
Свой контур
Ставим на ваши серверы или в закрытую сеть, переносим данные, настраиваем бэкапы и мониторинг.
Интеграции
SSO и OIDC, боты и вебхуки, связка с вашими CRM, трекерами и базами знаний.
Брендинг
Имя, логотип, домен и свои сборки приложения под вашей маркой.
Сопровождение
Обновления с вашего сервера, восстановление из бэкапов, договор и закрывающие документы.
Вопросы про Calab
Нужен Calab под вашу команду?
Тарифы Team и Business, коммерческая лицензия, установка в ваш контур, доработки и сопровождение — оставьте контакты, ответим в течение рабочего дня.
Вся команда — в одном окне
Код открыт, сервер ставится одной командой, а доработки делает нейросеть под присмотром человека.
- Голос, видео, чат, встречи и задачи
- Бесплатный тариф Free или свой сервер
- Issue на GitHub вместо тикетов вендору