Упоминание агента в группе Feishu означает, что участник пишет сообщение в Feishu (за пределами Китая — Lark), оно доставляется агенту Claude Code или Codex на чьей-то машине, выполнение и результат возвращаются в тот же тред, а любое опасное действие сначала отправляется владельцу машины в виде карточки на подтверждение. Агент не переносится в облако, учетные данные не покидают компьютер, и никому в группе не нужно ничего устанавливать.
В этом посте описывается архитектура коннектора muti для Feishu: привязка, маршрутизация, согласования и троттлинг, а также то, что можно настроить до релиза. Коннектор находится в разработке; ниже приведена спецификация его поведения, а не функция, которую можно включить прямо сейчас. Оригинал на китайском языке: /zh-CN/blog/feishu-lark-claude-code.
Зачем чат вместо отдельного клиента
Человек, с которым вы делитесь доступом, меньше всего хочет регистрировать аккаунт и ставить клиент ради разового обращения к агенту. Для команд в Китае всё рабочее общение уже идет в Feishu. Проще привести агента туда, чем заставлять людей переходить к агенту.
К тому же Feishu отлично подходит для этой задачи: подписка на события через постоянное соединение (long-connection) не требует публичного callback URL, интерактивные карточки сообщений обновляются на месте, ответы в треде изолируют трафик конкретной задачи, а изображения можно сразу передавать агенту на вход.
Две привязки
Группа ↔ комната. Комната в muti определяет границы доступа: кто и что видит, кому разрешено использовать того или иного агента. Привязка группы Feishu к комнате распространяет участников и права комнаты на эту группу. В настройках комнаты выберите «connect a Feishu group», получите шестизначный код и отправьте в группу @muti bind 123456.
Человек ↔ аккаунт. При первом упоминании бота участник получает одноразовый код в личном сообщении; после ввода кода в muti учетные записи связываются. Пользователи без привязки по умолчанию игнорируются; в комнате можно включить гостевой режим, где им разрешено задавать вопросы, но не запускать выполнение.
Смысл привязки: права на выполнение определяются разрешениями комнаты и одобрениями владельца, а не тем, кто и что написал в группе. Сообщения из чата считаются ненадежным вводом.
Одна задача, один тред: принятие, карточка согласования, прогресс и результат в одном месте.
Одна задача, один тред
Участник пишет @muti @api rerun the failing tests and open a PR. Бот создает тред под этим сообщением и последовательно отвечает:
- Accepted с идентификатором запроса вроде
R20260906-03и его статусом. - Статус согласования. Если у пользователя нет постоянного доступа к этому агенту, владелец получает карточку подтверждения, видимую только ему.
- Карточка прогресса, которая обновляется на месте на каждом этапе или раз в 30 секунд: измененные файлы, пройденные тесты, последние строки вывода команд. Без нового сообщения на каждый шаг.
- Результат: ответ плюс любые файлы, изображения или ссылки, созданные агентом.
Основной канал не засоряется: кому нужны подробности, открывает тред.
Карточка подтверждения
Когда выполнение доходит до опасного действия, владелец получает карточку: кто запросил, какой агент, что собирается сделать и какое правило сработало. Три кнопки: approve / reject / run read-only с возможностью добавить комментарий, имеющий тот же вес, что и сам запрос.
Четыре типа действий всегда приостанавливают работу независимо от шаблона: отправка изменений (push) в общую ветку, удаление, финансовые траты и доступ к учетным данным. Защищенные входные данные, такие как логины и коды двухфакторной аутентификации, всегда запрашиваются у владельца, а не у автора запроса. Согласования по умолчанию истекают через 24 часа. Решение, принятое в Feishu, в веб-интерфейсе или на телефоне, синхронизируется везде.
Что видит группа и что никогда не покидает машину
Что можно настроить прямо сейчас
- Поместите агента в комнату. Подключите машину, создайте по одному агенту на каждую директорию, к которой хотите открыть доступ, и назовите его по назначению (
api,site,notes), а не по названию модели. - Сначала создайте комнату, затем подключайте группу. Пригласите людей, которые войдут в привязанную группу, и настройте права: кто только читает, а кто может вносить правки. Коннектор связывает группу с этой комнатой и использует эти же правила.
- Установите daemon как службу с помощью
muti service install, чтобы задачи из Feishu ждали доступности машины, а не завершались ошибкой, когда крышка ноутбука закрыта. - Зафиксируйте правила проекта. STYLE.md, шаблон презентации, SQL-запрос для прошлого отчета — всё, что должен учитывать агент, разместите в его рабочей директории.
Часто задаваемые вопросы
Понадобится ли одобрение администратора Feishu? Облако muti использует одно приложение Feishu для всех пользователей; для его установки в тенант обычно требуется однократное согласие администратора. В self-hosted режиме владелец может использовать учетные данные собственного приложения.
Поддерживается ли международный Lark? У Feishu и Lark общая открытая платформа, поэтому коннектор работает с обеими версиями.
А что насчет Slack и DingTalk? Коннектор для Slack уже готов: по боту на агента, личные сообщения или упоминания, согласования в личке владельца. Feishu/Lark на очереди, затем DingTalk (в режиме Stream mode). Все три используют единую систему комнат и разрешений. Читайте также: Slack-бот для Claude Code, который спрашивает перед пушем.
Что, если кто-то в группе не зарегистрирован в muti? Такие пользователи по умолчанию игнорируются. Для комнаты можно включить гостевой режим: гости могут задавать вопросы, но никогда не запускают задачи.
Сначала создайте комнату для агента — группа подключится к ней позже. Начать.
Опубликовано · Обновлено