Интеграция Lark Bot
Привяжите agent Multica к Lark (飞书) Bot — общайтесь в DM или группе, @-mention, обычный чат или `/issue` для создания issue без выхода из Lark.
Привяжите любой agent к Lark (飞书) Bot — команда работает с ним из Lark: DM Bot, @-mention в группе или /issue для создания issue Multica без открытия приложения. Ответы agent стримятся в чат как live card, обновляющаяся по ходу работы.
Каждый Bot связан один к одному с одним agent Multica. Второй agent — второй Bot; у одного agent не бывает двух Bot.
Что делает интеграция
| Поверхность | Поведение |
|---|---|
| Agent → Integrations | На странице agent есть вкладка Integrations (и секция в левом sidebar). Owner и admin видят Bind to Lark; после привязки — badge Connected to Lark и ссылку Manage in Lark. |
| DM Bot | Member workspace пишет Bot в личку Lark. Каждый разговор — сессия Multica chat с agent; agent отвечает в thread. |
| @-mention в группе | Добавьте Bot в группу Lark и @-mention. Читается только сообщение с mention — Bot не слушает весь чат. |
Команда /issue | /issue <title> (опционально с body) создаёт новый issue в workspace от вашего имени. |
| Live reply card | Bot постит интерактивную card и патчит её, пока agent работает — progress, финальный ответ или ошибка. |
Привязка agent (owner / admin)
Привязка через scan-to-install — без копирования app secrets и шагов в developer console.
- Откройте agent в Agents → your agent.
- Перейдите на вкладку Integrations (или секцию Integrations в левом sidebar) и нажмите Bind to Lark.
- Появится QR-код. На телефоне: Lark → Scan, затем авторизуйте новый PersonalAgent Bot.
- После scan dialog закроется, agent покажет Connected to Lark. Ваша Lark identity автоматически привяжется к аккаунту Multica — можно сразу писать Bot.
QR одноразовый и истекает через короткое окно. Если не успели авторизовать, нажмите Scan again для нового кода.
После подключения Bind to Lark заменяется ссылкой Manage in Lark — открывает app page Bot в Lark для scopes, rename и дополнительных permissions. Повторный scan намеренно отключён, чтобы не «оборвать» существующий Bot.
Использование Bot (members)
Первое сообщение: привязка Lark identity
При первом сообщении Bot отвечает card с просьбой bind your Lark identity. Перейдите по ссылке, войдите в Multica — Lark account свяжется с membership. Так agent действует от вашего имени — например /issue создаёт issue под вашим именем.
Bot могут использовать только members workspace. Если вы не member или пропустили identity bind, Bot не ответит — сообщение отбрасывается (и фиксируется для audit без содержимого).
Чат и /issue
- Спросите agent о чём угодно — DM Bot или @-mention в группе. Разговор — обычная agent chat session; ответ в card.
- Создайте issue — отправьте
/issue Fix the login redirect, Multica создаст issue в workspace с обычным assignee для нового issue. Строки после title — description. - Следите за работой — reply card обновляется, пока agent выполняет task.
Если agent offline (runtime не подключён) или archived, Bot ответит коротким status notice вместо молчаливого drop.
Управление и disconnect
Workspace-wide управление в Settings → Integrations:
- Connected bots — все Bot workspace и agent, к которому каждый привязан. Список виден всем members.
- Disconnect — только owner / admin. Disconnect останавливает приём сообщений Lark и разрывает connection; запись installation сохраняется для audit, тот же agent можно привязать снова.
Права
- Bind / disconnect требуют owner или admin workspace. Members видят список connected bots, но не bind/disconnect.
- Общение с Bot — member workspace с привязанной Lark identity. Остальных отбрасывают.
- Тела отброшенных сообщений не хранятся — только drop reason для audit.
Настройка self-host
На Multica Cloud интеграция уже доступна — пропустите этот раздел.
Для self-host Lark выключен, пока не задан at-rest encryption key. Ключ шифрует app secret каждого Bot до записи в базу.
-
Сгенерируйте 32-byte key на API server:
MULTICA_LARK_SECRET_KEY=<base64-encoded 32-byte key> -
Перезапустите API. Пока key не задан, Settings → Integrations показывает «Lark integration not enabled», точки входа Bind to Lark скрыты.
Feishu и Lark international рядом. Cloud каждого Bot — mainland Feishu (open.feishu.cn) или Lark international (open.larksuite.com) — определяется при scan QR, хранится на installation и используется для всех вызовов этого Bot. Один deployment обслуживает оба без extra config.
MULTICA_LARK_HTTP_BASE_URL / MULTICA_LARK_CALLBACK_BASE_URL остаются опциональным deployment-wide override (proxy или mock); для обычной работы не задавайте — каждая installation ходит в свой cloud.
Upgrade с single-cloud? Если international-Lark deployment задавал эти vars как https://open.larksuite.com, server при первом boot после upgrade переподпишет существующие installations в Lark region — override можно снять. Mainland deployments — без действий.
Далее
- Agents — каждый Bot привязан ровно к одному agent
- Chat — во что превращается разговор с Bot внутри Multica
- Issues — что создаёт
/issue - Environment variables — полный self-host config reference