diff --git a/docs/uk/channels/feishu.md b/docs/uk/channels/feishu.md
index 0dccc2787..ee6800229 100644
--- a/docs/uk/channels/feishu.md
+++ b/docs/uk/channels/feishu.md
@@ -2,29 +2,29 @@
read_when:
- Ви хочете підключити бота Feishu/Lark
- Ви налаштовуєте канал Feishu
-summary: Огляд бота Feishu, функції та налаштування
+summary: Огляд бота Feishu, функції та конфігурація
title: Feishu
x-i18n:
- generated_at: "2026-04-27T10:57:54Z"
+ generated_at: "2026-04-27T20:59:00Z"
model: gpt-5.4
provider: openai
- source_hash: f24fada0adea25fc4f2ea93a1c91af5a0fd86aebe90901aa20031c59a982a970
+ source_hash: b300f98fb3681e84a105de99b9e771b1f0fc6278ee2fda01a703b97fabf5dd63
source_path: channels/feishu.md
workflow: 15
---
# Feishu / Lark
-Feishu/Lark — це універсальна платформа для співпраці, де команди спілкуються в чаті, діляться документами, керують календарями та спільно виконують роботу.
+Feishu/Lark — це універсальна платформа для співпраці, де команди спілкуються в чаті, діляться документами, керують календарями та працюють разом.
-**Статус:** готово до використання в продакшені для особистих повідомлень боту та групових чатів. WebSocket — режим за замовчуванням; режим webhook є необов’язковим.
+**Статус:** готовий до використання у production для особистих повідомлень бота та групових чатів. WebSocket — режим за замовчуванням; режим Webhook — необов’язковий.
---
## Швидкий старт
-Потрібен OpenClaw 2026.4.25 або новіший. Щоб перевірити версію, запустіть `openclaw --version`. Оновіть за допомогою `openclaw update`.
+Потрібен OpenClaw 2026.4.25 або новіший. Виконайте `openclaw --version`, щоб перевірити версію. Оновіть через `openclaw update`.
@@ -48,10 +48,10 @@ Feishu/Lark — це універсальна платформа для спів
### Особисті повідомлення
-Налаштуйте `dmPolicy`, щоб керувати тим, хто може надсилати особисті повідомлення боту:
+Налаштуйте `dmPolicy`, щоб керувати тим, хто може писати боту в особисті повідомлення:
-- `"pairing"` — невідомі користувачі отримують код сполучення; схвалення виконується через CLI
-- `"allowlist"` — лише користувачі, перелічені в `allowFrom`, можуть спілкуватися (типово: лише власник бота)
+- `"pairing"` — невідомі користувачі отримують код сполучення; схвалення через CLI
+- `"allowlist"` — писати можуть лише користувачі, перелічені в `allowFrom` (типово: лише власник бота)
- `"open"` — дозволити всіх користувачів
- `"disabled"` — вимкнути всі особисті повідомлення
@@ -66,11 +66,11 @@ openclaw pairing approve feishu
**Політика груп** (`channels.feishu.groupPolicy`):
-| Value | Поведінка |
-| ------------- | ------------------------------------------ |
-| `"open"` | Відповідати на всі повідомлення в групах |
-| `"allowlist"` | Відповідати лише в групах із `groupAllowFrom` |
-| `"disabled"` | Вимкнути всі групові повідомлення |
+| Value | Поведінка |
+| ------------- | --------------------------------------------------------------------------------------------- |
+| `"open"` | Відповідати на всі повідомлення в групах |
+| `"allowlist"` | Відповідати лише в групах із `groupAllowFrom` або явно налаштованих у `groups.` |
+| `"disabled"` | Вимкнути всі повідомлення в групах |
Типове значення: `allowlist`
@@ -79,11 +79,11 @@ openclaw pairing approve feishu
- `true` — вимагати @згадку (типово)
- `false` — відповідати без @згадки
- Перевизначення для окремої групи: `channels.feishu.groups..requireMention`
-- Згадки лише для широкого сповіщення `@all` і `@_all` не вважаються згадками бота. Повідомлення, яке містить і `@all`, і пряму згадку бота, усе одно вважається згадкою бота.
+- Згадки лише для широкого оповіщення `@all` і `@_all` не вважаються згадкою бота. Повідомлення, яке містить і `@all`, і пряму згадку бота, усе одно вважається згадкою бота.
---
-## Приклади налаштування груп
+## Приклади конфігурації груп
### Дозволити всі групи, без обов’язкової @згадки
@@ -117,13 +117,30 @@ openclaw pairing approve feishu
channels: {
feishu: {
groupPolicy: "allowlist",
- // Ідентифікатори груп мають вигляд: oc_xxx
+ // Ідентифікатори груп мають такий вигляд: oc_xxx
groupAllowFrom: ["oc_xxx", "oc_yyy"],
},
},
}
```
+Ви також можете дозволити групу, додавши явний запис `groups.`. Шаблонні значення за замовчуванням у `groups.*` налаштовують відповідні групи, але самі по собі не надають доступу групам.
+
+```json5
+{
+ channels: {
+ feishu: {
+ groupPolicy: "allowlist",
+ groups: {
+ oc_xxx: {
+ requireMention: false,
+ },
+ },
+ },
+ },
+}
+```
+
### Обмежити відправників у межах групи
```json5
@@ -134,7 +151,7 @@ openclaw pairing approve feishu
groupAllowFrom: ["oc_xxx"],
groups: {
oc_xxx: {
- // open_id користувачів мають вигляд: ou_xxx
+ // open_id користувачів мають такий вигляд: ou_xxx
allowFrom: ["ou_user1", "ou_user2"],
},
},
@@ -151,9 +168,9 @@ openclaw pairing approve feishu
### ID груп (`chat_id`, формат: `oc_xxx`)
-Відкрийте групу у Feishu/Lark, натисніть значок меню у верхньому правому куті та перейдіть до **Settings**. ID групи (`chat_id`) вказано на сторінці налаштувань.
+Відкрийте групу у Feishu/Lark, натисніть значок меню у верхньому правому куті та перейдіть у **Settings**. ID групи (`chat_id`) указано на сторінці налаштувань.
-
+
### ID користувачів (`open_id`, формат: `ou_xxx`)
@@ -163,7 +180,7 @@ openclaw pairing approve feishu
openclaw logs --follow
```
-Знайдіть `open_id` у виводі журналу. Ви також можете перевірити запити на сполучення, що очікують на розгляд:
+Знайдіть `open_id` у виводі журналу. Ви також можете перевірити запити на сполучення, що очікують:
```bash
openclaw pairing list feishu
@@ -175,17 +192,17 @@ openclaw pairing list feishu
| Command | Опис |
| --------- | ---------------------------- |
-| `/status` | Показати стан бота |
+| `/status` | Показати статус бота |
| `/reset` | Скинути поточну сесію |
| `/model` | Показати або змінити AI-модель |
-Feishu/Lark не підтримує вбудовані меню slash-команд, тож надсилайте їх як звичайні текстові повідомлення.
+Feishu/Lark не підтримує нативні меню slash-команд, тому надсилайте їх як звичайні текстові повідомлення.
---
-## Усунення несправностей
+## Усунення неполадок
### Бот не відповідає в групових чатах
@@ -196,22 +213,22 @@ Feishu/Lark не підтримує вбудовані меню slash-коман
### Бот не отримує повідомлення
-1. Переконайтеся, що бота опубліковано та схвалено в Feishu Open Platform / Lark Developer
+1. Переконайтеся, що бота опубліковано та схвалено у Feishu Open Platform / Lark Developer
2. Переконайтеся, що підписка на події містить `im.message.receive_v1`
3. Переконайтеся, що вибрано **persistent connection** (WebSocket)
-4. Переконайтеся, що надано всі необхідні дозволи
+4. Переконайтеся, що надано всі потрібні дозволи
5. Переконайтеся, що Gateway запущено: `openclaw gateway status`
6. Перевірте журнали: `openclaw logs --follow`
-### Витік App Secret
+### App Secret витік
1. Скиньте App Secret у Feishu Open Platform / Lark Developer
-2. Оновіть значення у своїй конфігурації
+2. Оновіть значення у вашій конфігурації
3. Перезапустіть Gateway: `openclaw gateway restart`
---
-## Розширене налаштування
+## Розширена конфігурація
### Кілька облікових записів
@@ -243,26 +260,27 @@ Feishu/Lark не підтримує вбудовані меню slash-коман
}
```
-`defaultAccount` визначає, який обліковий запис використовується, коли вихідні API не вказують `accountId`.
-`accounts..tts` використовує ту саму структуру, що й `messages.tts`, і глибоко об’єднується поверх
-глобальної конфігурації TTS, тож у багатоботних конфігураціях Feishu можна зберігати спільні
-облікові дані провайдерів глобально, перевизначаючи для кожного облікового запису лише голос, модель, персону або автоматичний режим.
+`defaultAccount` керує тим, який обліковий запис використовується, коли вихідні API не вказують `accountId`.
+`accounts..tts` використовує ту саму структуру, що й `messages.tts`, і виконує глибоке злиття поверх
+глобальної конфігурації TTS, тож конфігурації Feishu з кількома ботами можуть
+зберігати спільні облікові дані провайдера глобально, перевизначаючи лише голос, модель, персону або автоматичний режим
+для кожного облікового запису.
-### Ліміти повідомлень
+### Обмеження повідомлень
- `textChunkLimit` — розмір фрагмента вихідного тексту (типово: `2000` символів)
- `mediaMaxMb` — ліміт завантаження/вивантаження медіа (типово: `30` МБ)
-### Потокове передавання
+### Потокова передача
-Feishu/Lark підтримує потокові відповіді через інтерактивні картки. Коли цю функцію ввімкнено, бот оновлює картку в реальному часі під час генерування тексту.
+Feishu/Lark підтримує потокові відповіді через інтерактивні картки. Якщо це ввімкнено, бот оновлює картку в реальному часі під час генерування тексту.
```json5
{
channels: {
feishu: {
- streaming: true, // увімкнути виведення потокових карток (типово: true)
- blockStreaming: true, // увімкнути потокове передавання на рівні блоків (типово: true)
+ streaming: true, // увімкнути виведення потокової картки (типово: true)
+ blockStreaming: true, // увімкнути потокову передачу на рівні блоків (типово: true)
},
},
}
@@ -270,12 +288,12 @@ Feishu/Lark підтримує потокові відповіді через і
Установіть `streaming: false`, щоб надсилати повну відповідь одним повідомленням.
-### Оптимізація квоти
+### Оптимізація квот
Зменште кількість викликів API Feishu/Lark за допомогою двох необов’язкових прапорців:
-- `typingIndicator` (типово `true`): установіть `false`, щоб не виконувати виклики реакції набору тексту
-- `resolveSenderNames` (типово `true`): установіть `false`, щоб не виконувати пошук профілів відправників
+- `typingIndicator` (типово `true`): установіть `false`, щоб пропустити виклики реакції набору тексту
+- `resolveSenderNames` (типово `true`): установіть `false`, щоб пропустити пошук профілю відправника
```json5
{
@@ -290,7 +308,7 @@ Feishu/Lark підтримує потокові відповіді через і
### Сесії ACP
-Feishu/Lark підтримує ACP для особистих повідомлень і повідомлень у гілках груп. ACP у Feishu/Lark керується текстовими командами — вбудованих меню slash-команд немає, тож використовуйте повідомлення `/acp ...` безпосередньо в розмові.
+Feishu/Lark підтримує ACP для особистих повідомлень і повідомлень у гілках груп. ACP у Feishu/Lark керується текстовими командами — нативних меню slash-команд немає, тому використовуйте повідомлення `/acp ...` безпосередньо в розмові.
#### Постійна прив’язка ACP
@@ -338,17 +356,17 @@ Feishu/Lark підтримує ACP для особистих повідомле
#### Запуск ACP із чату
-У особистих повідомленнях або гілці Feishu/Lark:
+У особистому повідомленні або гілці Feishu/Lark:
```text
/acp spawn codex --thread here
```
-`--thread here` працює для особистих повідомлень і повідомлень у гілках Feishu/Lark. Подальші повідомлення в прив’язаній розмові спрямовуються безпосередньо до цієї сесії ACP.
+`--thread here` працює для особистих повідомлень і повідомлень у гілках Feishu/Lark. Подальші повідомлення в прив’язаній розмові надсилаються безпосередньо до цієї сесії ACP.
### Маршрутизація між кількома агентами
-Використовуйте `bindings`, щоб спрямовувати особисті повідомлення або групи Feishu/Lark до різних агентів.
+Використовуйте `bindings`, щоб маршрутизувати особисті повідомлення або групи Feishu/Lark до різних агентів.
```json5
{
@@ -381,45 +399,45 @@ Feishu/Lark підтримує ACP для особистих повідомле
Поля маршрутизації:
- `match.channel`: `"feishu"`
-- `match.peer.kind`: `"direct"` (особисті повідомлення) або `"group"` (груповий чат)
+- `match.peer.kind`: `"direct"` (особисте повідомлення) або `"group"` (груповий чат)
- `match.peer.id`: Open ID користувача (`ou_xxx`) або ID групи (`oc_xxx`)
-Поради щодо пошуку дивіться в розділі [Отримання ID груп/користувачів](#get-groupuser-ids).
+Поради щодо пошуку див. у [Отримання ID груп/користувачів](#get-groupuser-ids).
---
-## Довідник з конфігурації
+## Довідник із конфігурації
Повна конфігурація: [Конфігурація Gateway](/uk/gateway/configuration)
-| Setting | Опис | Default |
-| ------------------------------------------------- | -------------------------------------------- | ---------------- |
-| `channels.feishu.enabled` | Увімкнути/вимкнути канал | `true` |
-| `channels.feishu.domain` | Домен API (`feishu` або `lark`) | `feishu` |
-| `channels.feishu.connectionMode` | Передавання подій (`websocket` або `webhook`) | `websocket` |
-| `channels.feishu.defaultAccount` | Типовий обліковий запис для вихідної маршрутизації | `default` |
-| `channels.feishu.verificationToken` | Потрібний для режиму webhook | — |
-| `channels.feishu.encryptKey` | Потрібний для режиму webhook | — |
-| `channels.feishu.webhookPath` | Шлях маршруту webhook | `/feishu/events` |
-| `channels.feishu.webhookHost` | Хост прив’язки webhook | `127.0.0.1` |
-| `channels.feishu.webhookPort` | Порт прив’язки webhook | `3000` |
-| `channels.feishu.accounts..appId` | ID застосунку | — |
-| `channels.feishu.accounts..appSecret` | App Secret | — |
-| `channels.feishu.accounts..domain` | Перевизначення домену для облікового запису | `feishu` |
-| `channels.feishu.accounts..tts` | Перевизначення TTS для облікового запису | `messages.tts` |
-| `channels.feishu.dmPolicy` | Політика особистих повідомлень | `allowlist` |
-| `channels.feishu.allowFrom` | Список дозволених для особистих повідомлень (список `open_id`) | [BotOwnerId] |
-| `channels.feishu.groupPolicy` | Політика груп | `allowlist` |
-| `channels.feishu.groupAllowFrom` | Список дозволених груп | — |
-| `channels.feishu.requireMention` | Вимагати @згадку в групах | `true` |
-| `channels.feishu.groups..requireMention` | Перевизначення @згадки для окремої групи | inherited |
-| `channels.feishu.groups..enabled` | Увімкнути/вимкнути окрему групу | `true` |
-| `channels.feishu.textChunkLimit` | Розмір фрагмента повідомлення | `2000` |
-| `channels.feishu.mediaMaxMb` | Ліміт розміру медіа | `30` |
-| `channels.feishu.streaming` | Виведення потокових карток | `true` |
-| `channels.feishu.blockStreaming` | Потокове передавання на рівні блоків | `true` |
-| `channels.feishu.typingIndicator` | Надсилати реакції набору тексту | `true` |
-| `channels.feishu.resolveSenderNames` | Визначати відображувані імена відправників | `true` |
+| Setting | Опис | Default |
+| ------------------------------------------------- | -------------------------------------------------------------------------------- | ---------------- |
+| `channels.feishu.enabled` | Увімкнути/вимкнути канал | `true` |
+| `channels.feishu.domain` | Домен API (`feishu` або `lark`) | `feishu` |
+| `channels.feishu.connectionMode` | Транспорт подій (`websocket` або `webhook`) | `websocket` |
+| `channels.feishu.defaultAccount` | Обліковий запис за замовчуванням для вихідної маршрутизації | `default` |
+| `channels.feishu.verificationToken` | Потрібно для режиму webhook | — |
+| `channels.feishu.encryptKey` | Потрібно для режиму webhook | — |
+| `channels.feishu.webhookPath` | Шлях маршруту webhook | `/feishu/events` |
+| `channels.feishu.webhookHost` | Хост прив’язки webhook | `127.0.0.1` |
+| `channels.feishu.webhookPort` | Порт прив’язки webhook | `3000` |
+| `channels.feishu.accounts..appId` | ID застосунку | — |
+| `channels.feishu.accounts..appSecret` | App Secret | — |
+| `channels.feishu.accounts..domain` | Перевизначення домену для окремого облікового запису | `feishu` |
+| `channels.feishu.accounts..tts` | Перевизначення TTS для окремого облікового запису | `messages.tts` |
+| `channels.feishu.dmPolicy` | Політика особистих повідомлень | `allowlist` |
+| `channels.feishu.allowFrom` | Список дозволених для особистих повідомлень (`open_id`) | [BotOwnerId] |
+| `channels.feishu.groupPolicy` | Політика груп | `allowlist` |
+| `channels.feishu.groupAllowFrom` | Список дозволених груп | — |
+| `channels.feishu.requireMention` | Вимагати @згадку в групах | `true` |
+| `channels.feishu.groups..requireMention` | Перевизначення @згадки для окремої групи; явні ID також додають групу в режимі allowlist | inherited |
+| `channels.feishu.groups..enabled` | Увімкнути/вимкнути конкретну групу | `true` |
+| `channels.feishu.textChunkLimit` | Розмір фрагмента повідомлення | `2000` |
+| `channels.feishu.mediaMaxMb` | Ліміт розміру медіа | `30` |
+| `channels.feishu.streaming` | Потокове виведення карток | `true` |
+| `channels.feishu.blockStreaming` | Потокова передача на рівні блоків | `true` |
+| `channels.feishu.typingIndicator` | Надсилати реакції набору тексту | `true` |
+| `channels.feishu.resolveSenderNames` | Визначати відображувані імена відправників | `true` |
---
@@ -435,14 +453,7 @@ Feishu/Lark підтримує ACP для особистих повідомле
- ✅ Відео/медіа
- ✅ Стікери
-Вхідні аудіоповідомлення Feishu/Lark нормалізуються як заповнювачі медіа замість
-необробленого JSON `file_key`. Коли налаштовано `tools.media.audio`, OpenClaw
-завантажує ресурс голосового повідомлення та виконує спільну транскрипцію аудіо перед
-ходом агента, тож агент отримує розшифрований текст мовлення. Якщо Feishu уже містить
-текст транскрипції безпосередньо в аудіокорисному навантаженні, цей текст використовується без додаткового
-виклику ASR. Без провайдера транскрипції аудіо агент усе одно отримує
-заповнювач `` разом зі збереженим вкладенням, а не необроблене корисне навантаження
-ресурсу Feishu.
+Вхідні аудіоповідомлення Feishu/Lark нормалізуються як заповнювачі медіа, а не як необроблений JSON `file_key`. Коли налаштовано `tools.media.audio`, OpenClaw завантажує ресурс голосового повідомлення та запускає спільну транскрипцію аудіо перед ходом агента, тож агент отримує розшифрований мовний текст. Якщо Feishu безпосередньо містить текст транскрипції в аудіонавантаженні, цей текст використовується без додаткового виклику ASR. Без провайдера транскрипції аудіо агент усе одно отримує заповнювач `` разом зі збереженим вкладенням, а не необроблене навантаження ресурсу Feishu.
### Надсилання
@@ -451,16 +462,10 @@ Feishu/Lark підтримує ACP для особистих повідомле
- ✅ Файли
- ✅ Аудіо
- ✅ Відео/медіа
-- ✅ Інтерактивні картки (зокрема з потоковими оновленнями)
-- ⚠️ Форматований текст (форматування у стилі post; не підтримує всі можливості авторингу Feishu/Lark)
+- ✅ Інтерактивні картки (включно з потоковими оновленнями)
+- ⚠️ Форматований текст (стиль post; не підтримує всі можливості створення вмісту Feishu/Lark)
-Власні аудіобульбашки Feishu/Lark використовують тип повідомлення Feishu `audio` і потребують
-завантаження медіа у форматі Ogg/Opus (`file_type: "opus"`). Наявні медіафайли `.opus` і `.ogg`
-надсилаються безпосередньо як вбудоване аудіо. MP3/WAV/M4A та інші ймовірні аудіоформати
-перекодовуються в 48 кГц Ogg/Opus за допомогою `ffmpeg` лише тоді, коли відповідь запитує
-голосову доставку (`audioAsVoice` / інструмент повідомлень `asVoice`, зокрема голосові
-відповіді TTS у форматі голосових нотаток). Звичайні вкладення MP3 залишаються звичайними файлами. Якщо `ffmpeg` відсутній або
-перетворення не вдається, OpenClaw повертається до вкладення файлу та записує причину в журнал.
+Нативні аудіобабли Feishu/Lark використовують тип повідомлення Feishu `audio` і потребують завантаження медіа у форматі Ogg/Opus (`file_type: "opus"`). Наявні медіафайли `.opus` і `.ogg` надсилаються напряму як нативне аудіо. MP3/WAV/M4A та інші ймовірні аудіоформати перекодовуються в 48 кГц Ogg/Opus за допомогою `ffmpeg` лише тоді, коли відповідь запитує голосову доставку (`audioAsVoice` / інструмент повідомлень `asVoice`, включно з голосовими відповідями TTS). Звичайні вкладення MP3 залишаються звичайними файлами. Якщо `ffmpeg` відсутній або конвертація не вдається, OpenClaw повертається до вкладення файлу та записує причину в журнал.
### Гілки та відповіді
@@ -468,18 +473,14 @@ Feishu/Lark підтримує ACP для особистих повідомле
- ✅ Відповіді в гілках
- ✅ Відповіді з медіа зберігають прив’язку до гілки під час відповіді на повідомлення в гілці
-Для `groupSessionScope: "group_topic"` і `"group_topic_sender"` власні
-тематичні групи Feishu/Lark використовують `thread_id` (`omt_*`) події як канонічний ключ
-сесії теми. Звичайні групові відповіді, які OpenClaw перетворює на гілки, і далі
-використовують ID кореневого повідомлення відповіді (`om_*`), щоб перший хід і подальший хід
-залишалися в одній сесії.
+Для `groupSessionScope: "group_topic"` і `"group_topic_sender"` нативні тематичні групи Feishu/Lark використовують `thread_id` події (`omt_*`) як канонічний ключ сесії теми. Звичайні групові відповіді, які OpenClaw перетворює на гілки, продовжують використовувати ID кореневого повідомлення відповіді (`om_*`), щоб перший і наступний ходи залишалися в одній сесії.
---
## Пов’язане
- [Огляд каналів](/uk/channels) — усі підтримувані канали
-- [Сполучення](/uk/channels/pairing) — автентифікація в особистих повідомленнях і процес сполучення
-- [Групи](/uk/channels/groups) — поведінка групового чату та керування згадками
+- [Сполучення](/uk/channels/pairing) — автентифікація особистих повідомлень і процес сполучення
+- [Групи](/uk/channels/groups) — поведінка групових чатів і керування згадками
- [Маршрутизація каналів](/uk/channels/channel-routing) — маршрутизація сесій для повідомлень
-- [Безпека](/uk/gateway/security) — модель доступу та посилення захисту
+- [Безпека](/uk/gateway/security) — модель доступу та захист системи