chore(i18n): refresh uk translations
This commit is contained in:
parent
82c4def9e2
commit
99bc4a49a7
File diff suppressed because it is too large
Load Diff
@ -1,44 +1,44 @@
|
||||
---
|
||||
read_when:
|
||||
- Ви хочете, щоб підвищення пам’яті виконувалося автоматично
|
||||
- Ви хочете, щоб просування пам’яті виконувалося автоматично
|
||||
- Ви хочете зрозуміти, що робить кожна фаза dreaming
|
||||
- Ви хочете налаштувати консолідацію, не засмічуючи MEMORY.md
|
||||
summary: Фонове консолідування пам’яті з фазами light, deep і REM, а також Dream Diary
|
||||
- Ви хочете налаштувати консолідацію, не засмічуючи `MEMORY.md`
|
||||
summary: Фонова консолідація пам’яті з легкими, глибокими та REM-фазами, а також Dream Diary
|
||||
title: Dreaming (експериментально)
|
||||
x-i18n:
|
||||
generated_at: "2026-04-06T04:29:13Z"
|
||||
generated_at: "2026-04-08T06:28:53Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 36c4b1e70801d662090dc8ce20608c2f141c23cd7ce53c54e3dcf332c801fd4e
|
||||
source_hash: 0254f3b0949158264e583c12f36f2b1a83d1b44dc4da01a1b272422d38e8655d
|
||||
source_path: concepts/dreaming.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Dreaming (експериментально)
|
||||
|
||||
Dreaming — це система фонового консолідування пам’яті в `memory-core`.
|
||||
Вона допомагає OpenClaw переносити сильні короткострокові сигнали до сталої пам’яті,
|
||||
зберігаючи процес зрозумілим і придатним для перегляду.
|
||||
Dreaming — це система фонової консолідації пам’яті в `memory-core`.
|
||||
Вона допомагає OpenClaw переносити сильні короткострокові сигнали до тривалої пам’яті, зберігаючи
|
||||
процес зрозумілим і придатним для перевірки.
|
||||
|
||||
Dreaming є **опційною** функцією і за замовчуванням вимкнена.
|
||||
Dreaming є **опціональним** і за замовчуванням вимкнений.
|
||||
|
||||
## Що записує dreaming
|
||||
|
||||
Dreaming зберігає два види виводу:
|
||||
Dreaming зберігає два типи результатів:
|
||||
|
||||
- **Стан машини** у `memory/.dreams/` (сховище recall, сигнали фаз, контрольні точки ingestion, блокування).
|
||||
- **Зрозумілий для людини вивід** у `DREAMS.md` (або наявному `dreams.md`) і необов’язкових файлах звітів фаз у `memory/dreaming/<phase>/YYYY-MM-DD.md`.
|
||||
- **Стан машини** у `memory/.dreams/` (сховище recall, сигнали фаз, контрольні точки поглинання, блокування).
|
||||
- **Людинозрозумілий вивід** у `DREAMS.md` (або наявному `dreams.md`) і необов’язкових файлах звітів фаз у `memory/dreaming/<phase>/YYYY-MM-DD.md`.
|
||||
|
||||
Підвищення до довгострокової пам’яті, як і раніше, записується лише в `MEMORY.md`.
|
||||
Просування до довготривалої пам’яті, як і раніше, записується лише в `MEMORY.md`.
|
||||
|
||||
## Модель фаз
|
||||
|
||||
Dreaming використовує три взаємодоповнювальні фази:
|
||||
|
||||
| Фаза | Призначення | Стійкий запис |
|
||||
| ----- | ----------- | ------------- |
|
||||
| Light | Сортує та готує недавній короткостроковий матеріал | Ні |
|
||||
| Deep | Оцінює та просуває стійких кандидатів | Так (`MEMORY.md`) |
|
||||
| Фаза | Призначення | Постійний запис |
|
||||
| ----- | ----------- | --------------- |
|
||||
| Light | Сортує та готує нещодавній короткостроковий матеріал | Ні |
|
||||
| Deep | Оцінює та просуває стійкі кандидати | Так (`MEMORY.md`) |
|
||||
| REM | Осмислює теми та повторювані ідеї | Ні |
|
||||
|
||||
Ці фази є внутрішніми деталями реалізації, а не окремими
|
||||
@ -46,72 +46,78 @@ Dreaming використовує три взаємодоповнювальні
|
||||
|
||||
### Фаза Light
|
||||
|
||||
Фаза Light поглинає недавні щоденні сигнали пам’яті та сліди recall, усуває дублікати
|
||||
Фаза Light поглинає нещодавні щоденні сигнали пам’яті та сліди recall, усуває дублікати
|
||||
й готує рядки-кандидати.
|
||||
|
||||
- Читає короткостроковий стан recall і недавні щоденні файли пам’яті.
|
||||
- Читає зі стану короткострокового recall, нещодавніх щоденних файлів пам’яті та відредагованих транскриптів сесій, якщо вони доступні.
|
||||
- Записує керований блок `## Light Sleep`, якщо сховище містить вбудований вивід.
|
||||
- Фіксує сигнали підкріплення для подальшого ранжування у deep.
|
||||
- Фіксує сигнали підкріплення для подальшого ранжування у фазі Deep.
|
||||
- Ніколи не записує в `MEMORY.md`.
|
||||
|
||||
### Фаза Deep
|
||||
|
||||
Фаза Deep вирішує, що стане довгостроковою пам’яттю.
|
||||
Фаза Deep визначає, що стане довготривалою пам’яттю.
|
||||
|
||||
- Ранжує кандидатів за допомогою зваженого оцінювання та порогових перевірок.
|
||||
- Ранжує кандидатів за допомогою зваженої оцінки та порогових фільтрів.
|
||||
- Вимагає проходження `minScore`, `minRecallCount` і `minUniqueQueries`.
|
||||
- Перед записом повторно гідратує фрагменти з актуальних щоденних файлів, тому застарілі або видалені фрагменти пропускаються.
|
||||
- Перед записом повторно завантажує фрагменти з актуальних щоденних файлів, тому застарілі або видалені фрагменти пропускаються.
|
||||
- Додає просунуті записи до `MEMORY.md`.
|
||||
- Записує підсумок `## Deep Sleep` у `DREAMS.md` та за бажанням у `memory/dreaming/deep/YYYY-MM-DD.md`.
|
||||
- Записує підсумок `## Deep Sleep` у `DREAMS.md` і за потреби записує `memory/dreaming/deep/YYYY-MM-DD.md`.
|
||||
|
||||
### Фаза REM
|
||||
|
||||
Фаза REM витягує шаблони та рефлексивні сигнали.
|
||||
|
||||
- Будує підсумки тем і рефлексій на основі недавніх короткострокових слідів.
|
||||
- Створює підсумки тем і рефлексій на основі нещодавніх короткострокових слідів.
|
||||
- Записує керований блок `## REM Sleep`, якщо сховище містить вбудований вивід.
|
||||
- Фіксує сигнали підкріплення REM, які використовуються для ранжування у deep.
|
||||
- Фіксує сигнали підкріплення REM, які використовуються під час ранжування у фазі Deep.
|
||||
- Ніколи не записує в `MEMORY.md`.
|
||||
|
||||
## Поглинання транскриптів сесій
|
||||
|
||||
Dreaming може поглинати відредаговані транскрипти сесій до корпусу dreaming. Якщо
|
||||
транскрипти доступні, вони подаються до фази Light разом із щоденними
|
||||
сигналами пам’яті та слідами recall. Особистий і чутливий контент редагується
|
||||
перед поглинанням.
|
||||
|
||||
## Dream Diary
|
||||
|
||||
Dreaming також веде наративний **Dream Diary** у `DREAMS.md`.
|
||||
Після того як кожна фаза накопичує достатньо матеріалу, `memory-core` виконує
|
||||
найкращу можливу фонову сесію subagent (використовуючи типову модель рантайму)
|
||||
і додає короткий запис щоденника.
|
||||
Після того як у кожної фази накопичується достатньо матеріалу, `memory-core` запускає фоновий
|
||||
підлеглий агент у режимі best-effort (з використанням типової моделі середовища виконання) і додає короткий запис щоденника.
|
||||
|
||||
Цей щоденник призначений для читання людиною в інтерфейсі Dreams, а не є джерелом підвищення.
|
||||
Цей щоденник призначений для читання людьми в інтерфейсі Dreams, а не є джерелом для просування.
|
||||
|
||||
## Сигнали ранжування Deep
|
||||
|
||||
Ранжування Deep використовує шість зважених базових сигналів плюс підкріплення фаз:
|
||||
|
||||
| Сигнал | Вага | Опис |
|
||||
| ------------------- | ------ | ------------------------------------------------- |
|
||||
| ------ | ---- | ---- |
|
||||
| Частота | 0.24 | Скільки короткострокових сигналів накопичив запис |
|
||||
| Релевантність | 0.30 | Середня якість отримання для запису |
|
||||
| Різноманітність запитів | 0.15 | Окремі контексти запитів/днів, у яких він з’являвся |
|
||||
| Давність | 0.15 | Оцінка свіжості зі згасанням у часі |
|
||||
| Консолідація | 0.10 | Сила повторення впродовж кількох днів |
|
||||
| Концептуальна насиченість | 0.06 | Щільність тегів понять із фрагмента/шляху |
|
||||
| Різноманітність запитів | 0.15 | Відмінні контексти запитів/днів, у яких він з’являвся |
|
||||
| Актуальність | 0.15 | Оцінка свіжості зі спаданням у часі |
|
||||
| Консолідація | 0.10 | Сила повторення протягом кількох днів |
|
||||
| Концептуальна насиченість | 0.06 | Щільність тегів концепцій із фрагмента/шляху |
|
||||
|
||||
Збіги у фазах Light і REM додають невелике підсилення зі згасанням у часі з
|
||||
Спрацьовування фаз Light і REM додають невелике підсилення зі спаданням за часом із
|
||||
`memory/.dreams/phase-signals.json`.
|
||||
|
||||
## Планування
|
||||
|
||||
Коли dreaming увімкнено, `memory-core` автоматично керує одним cron-завданням для повного
|
||||
циклу dreaming. Кожен цикл запускає фази в такому порядку: light -> REM -> deep.
|
||||
Коли dreaming увімкнений, `memory-core` автоматично керує одним cron-завданням для повного
|
||||
циклу dreaming. Кожен цикл запускає фази по порядку: light -> REM -> deep.
|
||||
|
||||
Типова поведінка розкладу:
|
||||
Поведінка типової періодичності:
|
||||
|
||||
| Налаштування | Типове значення |
|
||||
| -------------------- | ----------- |
|
||||
| ------------ | --------------- |
|
||||
| `dreaming.frequency` | `0 3 * * *` |
|
||||
|
||||
## Швидкий початок
|
||||
|
||||
Увімкніть dreaming:
|
||||
Увімкнути dreaming:
|
||||
|
||||
```json
|
||||
{
|
||||
@ -129,7 +135,7 @@ Dreaming також веде наративний **Dream Diary** у `DREAMS.md`
|
||||
}
|
||||
```
|
||||
|
||||
Увімкніть dreaming із власною частотою циклів:
|
||||
Увімкнути dreaming із власною періодичністю циклу:
|
||||
|
||||
```json
|
||||
{
|
||||
@ -149,7 +155,7 @@ Dreaming також веде наративний **Dream Diary** у `DREAMS.md`
|
||||
}
|
||||
```
|
||||
|
||||
## Slash-команда
|
||||
## Команда зі скісною рискою
|
||||
|
||||
```
|
||||
/dreaming status
|
||||
@ -160,7 +166,7 @@ Dreaming також веде наративний **Dream Diary** у `DREAMS.md`
|
||||
|
||||
## Робочий процес CLI
|
||||
|
||||
Використовуйте підвищення через CLI для попереднього перегляду або ручного застосування:
|
||||
Використовуйте просування через CLI для попереднього перегляду або ручного застосування:
|
||||
|
||||
```bash
|
||||
openclaw memory promote
|
||||
@ -169,17 +175,17 @@ openclaw memory promote --limit 5
|
||||
openclaw memory status --deep
|
||||
```
|
||||
|
||||
Ручний `memory promote` за замовчуванням використовує пороги фази deep, якщо їх не перевизначено
|
||||
Ручна команда `memory promote` за замовчуванням використовує пороги фази Deep, якщо їх не перевизначено
|
||||
прапорцями CLI.
|
||||
|
||||
Поясніть, чому конкретний кандидат буде або не буде просунутий:
|
||||
Пояснити, чому конкретний кандидат буде або не буде просунутий:
|
||||
|
||||
```bash
|
||||
openclaw memory promote-explain "router vlan"
|
||||
openclaw memory promote-explain "router vlan" --json
|
||||
```
|
||||
|
||||
Попередньо перегляньте рефлексії REM, істини кандидатів і вивід просування deep без
|
||||
Попередньо переглянути рефлексії REM, кандидатні істини та результат просування Deep без
|
||||
будь-якого запису:
|
||||
|
||||
```bash
|
||||
@ -192,29 +198,28 @@ openclaw memory rem-harness --json
|
||||
Усі налаштування розміщені в `plugins.entries.memory-core.config.dreaming`.
|
||||
|
||||
| Ключ | Типове значення |
|
||||
| ----------- | ----------- |
|
||||
| `enabled` | `false` |
|
||||
| ---- | --------------- |
|
||||
| `enabled` | `false` |
|
||||
| `frequency` | `0 3 * * *` |
|
||||
|
||||
Політика фаз, порогові значення та поведінка сховища є внутрішніми деталями реалізації
|
||||
Політика фаз, пороги та поведінка сховища є внутрішніми деталями реалізації
|
||||
(не користувацькою конфігурацією).
|
||||
|
||||
Перегляньте [довідник конфігурації Memory](/uk/reference/memory-config#dreaming-experimental),
|
||||
щоб побачити повний список ключів.
|
||||
Повний список ключів див. у [довіднику з конфігурації Memory](/uk/reference/memory-config#dreaming-experimental).
|
||||
|
||||
## Інтерфейс Dreams
|
||||
|
||||
Коли dreaming увімкнено, вкладка **Dreams** у Gateway показує:
|
||||
Коли dreaming увімкнений, вкладка **Dreams** у Gateway показує:
|
||||
|
||||
- поточний стан увімкнення dreaming
|
||||
- статус на рівні фаз і наявність керованого циклу
|
||||
- кількість короткострокових, довгострокових і просунутих сьогодні записів
|
||||
- час наступного запланованого запуску
|
||||
- розгортаний читач Dream Diary на основі `doctor.memory.dreamDiary`
|
||||
- розгортаний читач Dream Diary, що працює через `doctor.memory.dreamDiary`
|
||||
|
||||
## Пов’язане
|
||||
|
||||
- [Memory](/uk/concepts/memory)
|
||||
- [Memory Search](/uk/concepts/memory-search)
|
||||
- [memory CLI](/cli/memory)
|
||||
- [довідник конфігурації Memory](/uk/reference/memory-config)
|
||||
- [Пошук у Memory](/uk/concepts/memory-search)
|
||||
- [CLI memory](/cli/memory)
|
||||
- [довідник з конфігурації Memory](/uk/reference/memory-config)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,33 +1,33 @@
|
||||
---
|
||||
read_when:
|
||||
- Потрібно знати, з якого підшляху SDK імпортувати
|
||||
- Потрібен довідник для всіх методів реєстрації в OpenClawPluginApi
|
||||
- Вам потрібно знати, з якого підшляху SDK імпортувати
|
||||
- Вам потрібен довідник для всіх методів реєстрації в OpenClawPluginApi
|
||||
- Ви шукаєте конкретний експорт SDK
|
||||
sidebarTitle: SDK Overview
|
||||
summary: Карта імпорту, довідник API реєстрації та архітектура SDK
|
||||
title: Огляд Plugin SDK
|
||||
x-i18n:
|
||||
generated_at: "2026-04-07T20:09:50Z"
|
||||
generated_at: "2026-04-08T06:30:42Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: c5a41bd82d165dfbb7fbd6e4528cf322e9133a51efe55fa8518a7a0a626d9d30
|
||||
source_hash: a9141dc0303c91974fe693ce48ad9f7dc4179418ae262a96011ad565aae87d21
|
||||
source_path: plugins/sdk-overview.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Огляд Plugin SDK
|
||||
|
||||
Plugin SDK — це типізований контракт між plugins і core. Ця сторінка є
|
||||
довідником щодо **що імпортувати** і **що можна реєструвати**.
|
||||
Plugin SDK — це типізований контракт між плагінами та ядром. Ця сторінка є
|
||||
довідником про **що імпортувати** і **що можна реєструвати**.
|
||||
|
||||
<Tip>
|
||||
**Шукаєте практичний посібник?**
|
||||
- Перший plugin? Почніть із [Getting Started](/uk/plugins/building-plugins)
|
||||
- Channel plugin? Див. [Channel Plugins](/uk/plugins/sdk-channel-plugins)
|
||||
- Provider plugin? Див. [Provider Plugins](/uk/plugins/sdk-provider-plugins)
|
||||
- Перший плагін? Почніть із [Getting Started](/uk/plugins/building-plugins)
|
||||
- Плагін каналу? Див. [Channel Plugins](/uk/plugins/sdk-channel-plugins)
|
||||
- Плагін провайдера? Див. [Provider Plugins](/uk/plugins/sdk-provider-plugins)
|
||||
</Tip>
|
||||
|
||||
## Угода щодо імпорту
|
||||
## Угода про імпорт
|
||||
|
||||
Завжди імпортуйте з конкретного підшляху:
|
||||
|
||||
@ -36,327 +36,330 @@ import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
|
||||
import { defineChannelPluginEntry } from "openclaw/plugin-sdk/channel-core";
|
||||
```
|
||||
|
||||
Кожен підшлях — це невеликий самодостатній модуль. Це зберігає швидкий запуск і
|
||||
запобігає проблемам із циклічними залежностями. Для специфічних для channel
|
||||
допоміжних засобів entry/build віддавайте перевагу `openclaw/plugin-sdk/channel-core`; `openclaw/plugin-sdk/core`
|
||||
залишайте для ширшої узагальненої поверхні та спільних допоміжних засобів, таких як
|
||||
Кожен підшлях — це невеликий самодостатній модуль. Це забезпечує швидкий
|
||||
запуск і запобігає проблемам із циклічними залежностями. Для специфічних для
|
||||
каналів допоміжних функцій entry/build надавайте перевагу
|
||||
`openclaw/plugin-sdk/channel-core`; `openclaw/plugin-sdk/core` залишайте для
|
||||
ширшої узагальненої поверхні та спільних допоміжних функцій, таких як
|
||||
`buildChannelConfigSchema`.
|
||||
|
||||
Не додавайте і не використовуйте зручні шви з назвами provider, такі як
|
||||
Не додавайте й не використовуйте зручні шари з іменами провайдерів, такі як
|
||||
`openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
|
||||
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або
|
||||
допоміжні шви з брендингом channel. Bundled plugins мають компонувати загальні
|
||||
підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а core
|
||||
має або використовувати ці локальні barrel-файли plugin, або додавати вузький загальний SDK
|
||||
контракт, коли потреба справді є міжchannel-ною.
|
||||
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або допоміжні
|
||||
шари з брендуванням каналів. Вбудовані плагіни мають поєднувати узагальнені
|
||||
підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а ядро
|
||||
має або використовувати ці локальні для плагіна barrel-файли, або додавати
|
||||
вузький узагальнений контракт SDK, коли потреба справді є міжканальною.
|
||||
|
||||
Згенерована карта експортів усе ще містить невеликий набір допоміжних
|
||||
швів bundled-plugin, таких як `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
|
||||
`plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Ці
|
||||
підшляхи існують лише для підтримки та сумісності bundled-plugin; вони
|
||||
навмисно не включені до загальної таблиці нижче і не є рекомендованим
|
||||
шляхом імпорту для нових сторонніх plugins.
|
||||
Згенерована карта експортів усе ще містить невеликий набір допоміжних шарів
|
||||
для вбудованих плагінів, таких як `plugin-sdk/feishu`,
|
||||
`plugin-sdk/feishu-setup`, `plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і
|
||||
`plugin-sdk/matrix*`. Ці підшляхи існують лише для підтримки вбудованих
|
||||
плагінів і сумісності; їх навмисно не включено до загальної таблиці нижче, і
|
||||
вони не є рекомендованим шляхом імпорту для нових сторонніх плагінів.
|
||||
|
||||
## Довідник підшляхів
|
||||
|
||||
Найуживаніші підшляхи, згруповані за призначенням. Згенерований повний список із
|
||||
понад 200 підшляхів міститься в `scripts/lib/plugin-sdk-entrypoints.json`.
|
||||
понад 200 підшляхів міститься у `scripts/lib/plugin-sdk-entrypoints.json`.
|
||||
|
||||
Зарезервовані допоміжні підшляхи bundled-plugin усе ще з’являються в цьому
|
||||
згенерованому списку. Розглядайте їх як поверхні деталей реалізації/сумісності, якщо лише сторінка документації
|
||||
явно не просуває одну з них як публічну.
|
||||
Зарезервовані допоміжні підшляхи для вбудованих плагінів усе ще з’являються в
|
||||
цьому згенерованому списку. Вважайте їх деталями реалізації/поверхнями
|
||||
сумісності, якщо лише якась сторінка документації явно не проголошує одну з
|
||||
них публічною.
|
||||
|
||||
### Plugin entry
|
||||
### Точка входу плагіна
|
||||
|
||||
| Subpath | Ключові експорти |
|
||||
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `plugin-sdk/plugin-entry` | `definePluginEntry` |
|
||||
| Subpath | Ключові експорти |
|
||||
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `plugin-sdk/plugin-entry` | `definePluginEntry` |
|
||||
| `plugin-sdk/core` | `defineChannelPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase`, `defineSetupPluginEntry`, `buildChannelConfigSchema` |
|
||||
| `plugin-sdk/config-schema` | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/config-schema` | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Підшляхи channel">
|
||||
<Accordion title="Підшляхи каналів">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/channel-core` | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
|
||||
| `plugin-sdk/config-schema` | Експорт кореневої Zod-схеми `openclaw.json` (`OpenClawSchema`) |
|
||||
| `plugin-sdk/config-schema` | Експорт кореневої схеми Zod для `openclaw.json` (`OpenClawSchema`) |
|
||||
| `plugin-sdk/channel-setup` | `createOptionalChannelSetupSurface`, `createOptionalChannelSetupAdapter`, `createOptionalChannelSetupWizard`, а також `DEFAULT_ACCOUNT_ID`, `createTopLevelChannelDmPolicy`, `setSetupChannelEnabled`, `splitSetupEntries` |
|
||||
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування, підказки allowlist, побудовники стану налаштування |
|
||||
| `plugin-sdk/setup` | Спільні допоміжні функції майстра налаштування, запити списку дозволених, побудовники статусу налаштування |
|
||||
| `plugin-sdk/setup-runtime` | `createPatchedAccountSetupAdapter`, `createEnvPatchedAccountSetupAdapter`, `createSetupInputPresenceValidator`, `noteChannelLookupFailure`, `noteChannelLookupSummary`, `promptResolvedAllowFrom`, `splitSetupEntries`, `createAllowlistSetupWizardProxy`, `createDelegatedSetupWizardProxy` |
|
||||
| `plugin-sdk/setup-adapter-runtime` | `createEnvPatchedAccountSetupAdapter` |
|
||||
| `plugin-sdk/setup-tools` | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
|
||||
| `plugin-sdk/account-core` | Допоміжні засоби для конфігурації/гейтів дій з кількома акаунтами та резервного використання акаунта за замовчуванням |
|
||||
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні засоби нормалізації account-id |
|
||||
| `plugin-sdk/account-resolution` | Пошук акаунта + допоміжні засоби резервного використання акаунта за замовчуванням |
|
||||
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби для списків акаунтів/дій з акаунтами |
|
||||
| `plugin-sdk/account-core` | Допоміжні функції багатoакаунтної конфігурації/контролю дій, допоміжні функції резервного вибору акаунта за замовчуванням |
|
||||
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні функції нормалізації ID акаунта |
|
||||
| `plugin-sdk/account-resolution` | Пошук акаунта + допоміжні функції резервного вибору за замовчуванням |
|
||||
| `plugin-sdk/account-helpers` | Вузькі допоміжні функції для списку акаунтів/дій з акаунтами |
|
||||
| `plugin-sdk/channel-pairing` | `createChannelPairingController` |
|
||||
| `plugin-sdk/channel-reply-pipeline` | `createChannelReplyPipeline` |
|
||||
| `plugin-sdk/channel-config-helpers` | `createHybridChannelConfigAdapter` |
|
||||
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації channel |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби нормалізації/валідації користувацьких команд Telegram з резервною bundled-contract підтримкою |
|
||||
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації каналу |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні функції нормалізації/валідації кастомних команд Telegram з резервною підтримкою вбудованого контракту |
|
||||
| `plugin-sdk/channel-policy` | `resolveChannelGroupRequireMention` |
|
||||
| `plugin-sdk/channel-lifecycle` | `createAccountStatusSink` |
|
||||
| `plugin-sdk/inbound-envelope` | Спільні допоміжні засоби маршрутизації вхідних повідомлень + побудови envelope |
|
||||
| `plugin-sdk/inbound-reply-dispatch` | Спільні допоміжні засоби запису та диспетчеризації вхідних повідомлень |
|
||||
| `plugin-sdk/messaging-targets` | Допоміжні засоби розбору/зіставлення target |
|
||||
| `plugin-sdk/outbound-media` | Спільні допоміжні засоби завантаження вихідних медіа |
|
||||
| `plugin-sdk/outbound-runtime` | Допоміжні засоби вихідної ідентичності/делегування надсилання |
|
||||
| `plugin-sdk/thread-bindings-runtime` | Життєвий цикл thread-binding і допоміжні засоби adapter |
|
||||
| `plugin-sdk/agent-media-payload` | Legacy побудовник agent media payload |
|
||||
| `plugin-sdk/conversation-runtime` | Допоміжні засоби binding розмов/thread, pairing і configured-binding |
|
||||
| `plugin-sdk/runtime-config-snapshot` | Допоміжний засіб snapshot конфігурації runtime |
|
||||
| `plugin-sdk/runtime-group-policy` | Допоміжні засоби визначення group-policy під час runtime |
|
||||
| `plugin-sdk/channel-status` | Спільні допоміжні засоби snapshot/summary статусу channel |
|
||||
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми конфігурації channel |
|
||||
| `plugin-sdk/channel-config-writes` | Допоміжні засоби авторизації запису конфігурації channel |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільні експорти prelude plugin channel |
|
||||
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби редагування/читання конфігурації allowlist |
|
||||
| `plugin-sdk/group-access` | Спільні допоміжні засоби прийняття рішень щодо group-access |
|
||||
| `plugin-sdk/direct-dm` | Спільні допоміжні засоби auth/guard для прямих DM |
|
||||
| `plugin-sdk/interactive-runtime` | Допоміжні засоби нормалізації/скорочення payload інтерактивних відповідей |
|
||||
| `plugin-sdk/channel-inbound` | Допоміжні засоби debounce вхідних повідомлень, зіставлення mention, політики mention і envelope |
|
||||
| `plugin-sdk/inbound-envelope` | Спільні допоміжні функції побудови вхідних маршрутів та envelope |
|
||||
| `plugin-sdk/inbound-reply-dispatch` | Спільні допоміжні функції запису та диспетчеризації вхідних даних |
|
||||
| `plugin-sdk/messaging-targets` | Допоміжні функції парсингу/зіставлення цілей |
|
||||
| `plugin-sdk/outbound-media` | Спільні допоміжні функції завантаження вихідних медіа |
|
||||
| `plugin-sdk/outbound-runtime` | Допоміжні функції для вихідної ідентичності/делегування надсилання |
|
||||
| `plugin-sdk/thread-bindings-runtime` | Життєвий цикл прив’язок потоків та допоміжні функції адаптерів |
|
||||
| `plugin-sdk/agent-media-payload` | Застарілий побудовник медіапейлоадів агента |
|
||||
| `plugin-sdk/conversation-runtime` | Допоміжні функції прив’язки розмов/потоків, pairing і налаштованих прив’язок |
|
||||
| `plugin-sdk/runtime-config-snapshot` | Допоміжна функція знімка конфігурації runtime |
|
||||
| `plugin-sdk/runtime-group-policy` | Допоміжні функції визначення політики груп у runtime |
|
||||
| `plugin-sdk/channel-status` | Спільні допоміжні функції знімка/зведення статусу каналу |
|
||||
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми конфігурації каналу |
|
||||
| `plugin-sdk/channel-config-writes` | Допоміжні функції авторизації запису конфігурації каналу |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільні prelude-експорти плагінів каналів |
|
||||
| `plugin-sdk/allowlist-config-edit` | Допоміжні функції редагування/читання конфігурації списку дозволених |
|
||||
| `plugin-sdk/group-access` | Спільні допоміжні функції рішень щодо доступу до груп |
|
||||
| `plugin-sdk/direct-dm` | Спільні допоміжні функції авторизації/захисту прямих DM |
|
||||
| `plugin-sdk/interactive-runtime` | Допоміжні функції нормалізації/зведення інтерактивних пейлоадів відповідей |
|
||||
| `plugin-sdk/channel-inbound` | Допоміжні функції debounce для вхідних повідомлень, зіставлення згадок, політики згадок і допоміжні функції envelope |
|
||||
| `plugin-sdk/channel-send-result` | Типи результатів відповіді |
|
||||
| `plugin-sdk/channel-actions` | `createMessageToolButtonsSchema`, `createMessageToolCardSchema` |
|
||||
| `plugin-sdk/channel-targets` | Допоміжні засоби розбору/зіставлення target |
|
||||
| `plugin-sdk/channel-contract` | Типи контракту channel |
|
||||
| `plugin-sdk/channel-feedback` | Підключення feedback/reaction |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби secret-contract, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, і типи secret target |
|
||||
| `plugin-sdk/channel-targets` | Допоміжні функції парсингу/зіставлення цілей |
|
||||
| `plugin-sdk/channel-contract` | Типи контракту каналу |
|
||||
| `plugin-sdk/channel-feedback` | Підключення зворотного зв’язку/реакцій |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні функції secret-контракту, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, і типи secret-цілей |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи provider">
|
||||
<Accordion title="Підшляхи провайдерів">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/provider-setup` | Кураторські допоміжні засоби налаштування локального/self-hosted provider |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted provider, сумісного з OpenAI |
|
||||
| `plugin-sdk/cli-backend` | Стандарти конфігурації backend CLI + константи watchdog |
|
||||
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби визначення API key під час runtime для provider plugins |
|
||||
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби онбордингу/запису профілю API key, такі як `upsertApiKeyProfile` |
|
||||
| `plugin-sdk/provider-auth-result` | Стандартний побудовник результату OAuth auth |
|
||||
| `plugin-sdk/provider-auth-login` | Спільні допоміжні засоби інтерактивного входу для provider plugins |
|
||||
| `plugin-sdk/provider-env-vars` | Допоміжні засоби пошуку env vars для auth provider |
|
||||
| `plugin-sdk/provider-setup` | Кураторські допоміжні функції налаштування локальних/self-hosted провайдерів |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні функції налаштування self-hosted провайдерів, сумісних з OpenAI |
|
||||
| `plugin-sdk/cli-backend` | Значення за замовчуванням для CLI backend + константи watchdog |
|
||||
| `plugin-sdk/provider-auth-runtime` | Допоміжні функції визначення API-ключів у runtime для плагінів провайдерів |
|
||||
| `plugin-sdk/provider-auth-api-key` | Допоміжні функції онбордингу/запису профілю API-ключів, такі як `upsertApiKeyProfile` |
|
||||
| `plugin-sdk/provider-auth-result` | Стандартний побудовник результатів OAuth-автентифікації |
|
||||
| `plugin-sdk/provider-auth-login` | Спільні інтерактивні допоміжні функції входу для плагінів провайдерів |
|
||||
| `plugin-sdk/provider-env-vars` | Допоміжні функції пошуку env var для автентифікації провайдерів |
|
||||
| `plugin-sdk/provider-auth` | `createProviderApiKeyAuthMethod`, `ensureApiKeyFromOptionEnvOrPrompt`, `upsertAuthProfile`, `upsertApiKeyProfile`, `writeOAuthCredentials` |
|
||||
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники replay-policy, допоміжні засоби endpoint provider і допоміжні засоби нормалізації model-id, такі як `normalizeNativeXaiModelId` |
|
||||
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники політик replay, допоміжні функції endpoint провайдера та нормалізації ID моделей, такі як `normalizeNativeXaiModelId` |
|
||||
| `plugin-sdk/provider-catalog-shared` | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
|
||||
| `plugin-sdk/provider-http` | Загальні допоміжні засоби HTTP/endpoint capability для provider |
|
||||
| `plugin-sdk/provider-web-fetch-contract` | Вузькі допоміжні засоби contract для конфігурації/вибору web-fetch, такі як `enablePluginInConfig` і `WebFetchProviderPlugin` |
|
||||
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби реєстрації/кешування web-fetch provider |
|
||||
| `plugin-sdk/provider-web-search-contract` | Вузькі допоміжні засоби contract для конфігурації/облікових даних web-search, такі як `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter для облікових даних |
|
||||
| `plugin-sdk/provider-web-search` | Допоміжні засоби реєстрації/кешування/runtime web-search provider |
|
||||
| `plugin-sdk/provider-tools` | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + діагностика і допоміжні засоби сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-http` | Узагальнені допоміжні функції для HTTP/можливостей endpoint провайдера |
|
||||
| `plugin-sdk/provider-web-fetch-contract` | Вузькі допоміжні функції контракту конфігурації/вибору web-fetch, такі як `enablePluginInConfig` і `WebFetchProviderPlugin` |
|
||||
| `plugin-sdk/provider-web-fetch` | Допоміжні функції реєстрації/кешування провайдерів web-fetch |
|
||||
| `plugin-sdk/provider-web-search-contract` | Вузькі допоміжні функції контракту конфігурації/облікових даних web-search, такі як `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter для облікових даних |
|
||||
| `plugin-sdk/provider-web-search` | Допоміжні функції реєстрації/кешування/runtime для провайдерів web-search |
|
||||
| `plugin-sdk/provider-tools` | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + діагностика, а також допоміжні функції сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-usage` | `fetchClaudeUsage` та подібні |
|
||||
| `plugin-sdk/provider-stream` | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи stream wrapper і спільні допоміжні засоби wrapper для Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
|
||||
| `plugin-sdk/provider-onboard` | Допоміжні засоби patch конфігурації онбордингу |
|
||||
| `plugin-sdk/global-singleton` | Допоміжні засоби process-local singleton/map/cache |
|
||||
| `plugin-sdk/provider-stream` | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи stream wrapper і спільні допоміжні wrapper-функції для Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
|
||||
| `plugin-sdk/provider-onboard` | Допоміжні функції внесення патчів у конфігурацію онбордингу |
|
||||
| `plugin-sdk/global-singleton` | Допоміжні функції process-local singleton/map/cache |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи auth і безпеки">
|
||||
<Accordion title="Підшляхи автентифікації та безпеки">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні засоби реєстру команд, допоміжні засоби авторизації відправника |
|
||||
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби визначення approver і auth дій у тому самому chat |
|
||||
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби профілю/фільтра native exec approval |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Adapter-и можливостей/доставки native approval |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Спільний допоміжний засіб визначення gateway approval |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Легкі допоміжні засоби завантаження adapter native approval для гарячих entrypoint-ів channel |
|
||||
| `plugin-sdk/approval-handler-runtime` | Ширші допоміжні засоби runtime для handler approval; віддавайте перевагу вужчим швам adapter/gateway, коли їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби native approval target + account-binding |
|
||||
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби payload відповідей для exec/plugin approval |
|
||||
| `plugin-sdk/command-auth-native` | Native auth команд + допоміжні засоби native session-target |
|
||||
| `plugin-sdk/command-detection` | Спільні допоміжні засоби виявлення команд |
|
||||
| `plugin-sdk/command-surface` | Нормалізація тіла команд і допоміжні засоби поверхні команд |
|
||||
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні функції реєстру команд, допоміжні функції авторизації відправника |
|
||||
| `plugin-sdk/approval-auth-runtime` | Допоміжні функції визначення approver і авторизації дій у тому самому чаті |
|
||||
| `plugin-sdk/approval-client-runtime` | Допоміжні функції профілів/фільтрів підтвердження native exec |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Адаптери можливостей/доставки native confirmation |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Спільна допоміжна функція визначення approval gateway |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Полегшені допоміжні функції завантаження native approval adapter для гарячих точок входу каналів |
|
||||
| `plugin-sdk/approval-handler-runtime` | Ширші допоміжні функції runtime для approval handler; віддавайте перевагу вужчим adapter/gateway seams, якщо їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Допоміжні функції цілей native approval + прив’язки акаунтів |
|
||||
| `plugin-sdk/approval-reply-runtime` | Допоміжні функції пейлоадів відповідей exec/plugin approval |
|
||||
| `plugin-sdk/command-auth-native` | Допоміжні функції native command auth + native session-target |
|
||||
| `plugin-sdk/command-detection` | Спільні допоміжні функції виявлення команд |
|
||||
| `plugin-sdk/command-surface` | Допоміжні функції нормалізації тіла команди та command-surface |
|
||||
| `plugin-sdk/allow-from` | `formatAllowFromLowercase` |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби збирання secret-contract для поверхонь secret channel/plugin |
|
||||
| `plugin-sdk/secret-ref-runtime` | Вузькі допоміжні засоби `coerceSecretRef` і типізації SecretRef для розбору secret-contract/config |
|
||||
| `plugin-sdk/security-runtime` | Спільні допоміжні засоби довіри, DM gating, зовнішнього контенту та збирання secret |
|
||||
| `plugin-sdk/ssrf-policy` | Допоміжні засоби allowlist хостів і SSRF policy приватних мереж |
|
||||
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби pinned-dispatcher, fetch із SSRF-захистом і SSRF policy |
|
||||
| `plugin-sdk/secret-input` | Допоміжні засоби розбору secret input |
|
||||
| `plugin-sdk/webhook-ingress` | Допоміжні засоби webhook request/target |
|
||||
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби для розміру body request/timeout |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні функції збирання secret-контрактів для secret-surface каналів/плагінів |
|
||||
| `plugin-sdk/secret-ref-runtime` | Вузькі допоміжні функції `coerceSecretRef` і типізації SecretRef для парсингу secret-контрактів/конфігурації |
|
||||
| `plugin-sdk/security-runtime` | Спільні допоміжні функції довіри, DM-gating, зовнішнього вмісту та збирання секретів |
|
||||
| `plugin-sdk/ssrf-policy` | Допоміжні функції політики SSRF для host allowlist і приватних мереж |
|
||||
| `plugin-sdk/ssrf-runtime` | Допоміжні функції pinned-dispatcher, fetch із захистом SSRF і політики SSRF |
|
||||
| `plugin-sdk/secret-input` | Допоміжні функції парсингу secret input |
|
||||
| `plugin-sdk/webhook-ingress` | Допоміжні функції запитів/цілей webhook |
|
||||
| `plugin-sdk/webhook-request-guards` | Допоміжні функції розміру тіла запиту/тайм-ауту |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи runtime і сховища">
|
||||
<Accordion title="Підшляхи runtime та сховища">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime/logging/backup/встановлення plugin |
|
||||
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби env runtime, logger, timeout, retry і backoff |
|
||||
| `plugin-sdk/channel-runtime-context` | Загальні допоміжні засоби реєстрації та пошуку runtime-context channel |
|
||||
| `plugin-sdk/runtime` | Широкі допоміжні функції runtime/логування/резервного копіювання/встановлення плагінів |
|
||||
| `plugin-sdk/runtime-env` | Вузькі допоміжні функції runtime env, logger, timeout, retry і backoff |
|
||||
| `plugin-sdk/channel-runtime-context` | Узагальнені допоміжні функції реєстрації та пошуку channel runtime-context |
|
||||
| `plugin-sdk/runtime-store` | `createPluginRuntimeStore` |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби для команд/hook/http/interactive plugin |
|
||||
| `plugin-sdk/hook-runtime` | Спільні допоміжні засоби pipeline для webhook/internal hook |
|
||||
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy імпорту/binding runtime, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Допоміжні засоби exec процесів |
|
||||
| `plugin-sdk/cli-runtime` | Допоміжні засоби форматування CLI, очікування та версій |
|
||||
| `plugin-sdk/gateway-runtime` | Допоміжні засоби client gateway і patch статусу channel |
|
||||
| `plugin-sdk/config-runtime` | Допоміжні засоби завантаження/запису конфігурації |
|
||||
| `plugin-sdk/telegram-command-config` | Нормалізація name/description команд Telegram і перевірки дублікатів/конфліктів, навіть коли bundled Telegram contract surface недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Допоміжні засоби exec/plugin approval, побудовники approval-capability, допоміжні засоби auth/profile, native routing/runtime |
|
||||
| `plugin-sdk/reply-runtime` | Спільні допоміжні засоби inbound/reply runtime, chunking, dispatch, heartbeat, планувальник reply |
|
||||
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби dispatch/finalize для reply |
|
||||
| `plugin-sdk/reply-history` | Спільні допоміжні засоби short-window reply-history, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні допоміжні функції для команд/хуків/http/interactive плагінів |
|
||||
| `plugin-sdk/hook-runtime` | Спільні допоміжні функції pipeline для webhook/internal hook |
|
||||
| `plugin-sdk/lazy-runtime` | Допоміжні функції lazy-імпорту та прив’язки runtime, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Допоміжні функції виконання процесів |
|
||||
| `plugin-sdk/cli-runtime` | Допоміжні функції форматування, очікування та версій для CLI |
|
||||
| `plugin-sdk/gateway-runtime` | Допоміжні функції клієнта gateway і patch статусу каналу |
|
||||
| `plugin-sdk/config-runtime` | Допоміжні функції завантаження/запису конфігурації |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні функції нормалізації назв/описів команд Telegram і перевірки дублікатів/конфліктів, навіть коли поверхня вбудованого контракту Telegram недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Допоміжні функції exec/plugin approval, побудовники approval-capability, допоміжні функції auth/profile, native routing/runtime |
|
||||
| `plugin-sdk/reply-runtime` | Спільні допоміжні функції runtime для вхідних повідомлень/відповідей, chunking, dispatch, heartbeat, planner відповідей |
|
||||
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні функції dispatch/finalize відповіді |
|
||||
| `plugin-sdk/reply-history` | Спільні допоміжні функції коротковіконної історії відповідей, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
|
||||
| `plugin-sdk/reply-reference` | `createReplyReferencePlanner` |
|
||||
| `plugin-sdk/reply-chunking` | Вузькі допоміжні засоби chunking тексту/markdown |
|
||||
| `plugin-sdk/session-store-runtime` | Допоміжні засоби path сховища сесій + updated-at |
|
||||
| `plugin-sdk/state-paths` | Допоміжні засоби path для state/OAuth директорій |
|
||||
| `plugin-sdk/routing` | Допоміжні засоби для route/session-key/account binding, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
|
||||
| `plugin-sdk/status-helpers` | Спільні допоміжні засоби summary статусу channel/account, стандарти runtime-state і допоміжні засоби метаданих issues |
|
||||
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні засоби resolver target |
|
||||
| `plugin-sdk/string-normalization-runtime` | Допоміжні засоби нормалізації slug/string |
|
||||
| `plugin-sdk/reply-chunking` | Вузькі допоміжні функції chunking для тексту/markdown |
|
||||
| `plugin-sdk/session-store-runtime` | Допоміжні функції шляху сховища сесій + updated-at |
|
||||
| `plugin-sdk/state-paths` | Допоміжні функції шляхів до каталогів state/OAuth |
|
||||
| `plugin-sdk/routing` | Допоміжні функції маршруту/ключа сесії/прив’язки акаунта, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
|
||||
| `plugin-sdk/status-helpers` | Спільні допоміжні функції зведення статусу каналу/акаунта, значення runtime-state за замовчуванням і допоміжні функції метаданих проблем |
|
||||
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні функції визначення цілей |
|
||||
| `plugin-sdk/string-normalization-runtime` | Допоміжні функції нормалізації slug/рядків |
|
||||
| `plugin-sdk/request-url` | Витягування рядкових URL із fetch/request-подібних вхідних даних |
|
||||
| `plugin-sdk/run-command` | Запуск команд із таймером і нормалізованими результатами stdout/stderr |
|
||||
| `plugin-sdk/param-readers` | Загальні рідери параметрів tool/CLI |
|
||||
| `plugin-sdk/tool-send` | Витягування канонічних полів target надсилання з аргументів tool |
|
||||
| `plugin-sdk/temp-path` | Спільні допоміжні засоби path тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Допоміжні засоби logger підсистеми та редагування чутливих даних |
|
||||
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби режиму markdown-таблиць |
|
||||
| `plugin-sdk/json-store` | Невеликі допоміжні засоби читання/запису JSON state |
|
||||
| `plugin-sdk/file-lock` | Допоміжні засоби повторно вхідних file-lock |
|
||||
| `plugin-sdk/persistent-dedupe` | Допоміжні засоби disk-backed dedupe cache |
|
||||
| `plugin-sdk/acp-runtime` | Допоміжні засоби ACP runtime/session і reply-dispatch |
|
||||
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви схеми конфігурації runtime agent |
|
||||
| `plugin-sdk/boolean-param` | Рідер вільних boolean-параметрів |
|
||||
| `plugin-sdk/dangerous-name-runtime` | Допоміжні засоби визначення відповідності небезпечних імен |
|
||||
| `plugin-sdk/device-bootstrap` | Допоміжні засоби bootstrap пристрою та pairing token |
|
||||
| `plugin-sdk/run-command` | Runner команд із таймуванням і нормалізованими результатами stdout/stderr |
|
||||
| `plugin-sdk/param-readers` | Загальні читачі параметрів tool/CLI |
|
||||
| `plugin-sdk/tool-send` | Витягування канонічних полів цілей надсилання з аргументів tool |
|
||||
| `plugin-sdk/temp-path` | Спільні допоміжні функції шляхів до тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Допоміжні функції subsystem logger і redaction |
|
||||
| `plugin-sdk/markdown-table-runtime` | Допоміжні функції режиму таблиць Markdown |
|
||||
| `plugin-sdk/json-store` | Невеликі допоміжні функції читання/запису стану JSON |
|
||||
| `plugin-sdk/file-lock` | Допоміжні функції реентерабельного file-lock |
|
||||
| `plugin-sdk/persistent-dedupe` | Допоміжні функції дискового кешу дедуплікації |
|
||||
| `plugin-sdk/acp-runtime` | Допоміжні функції ACP runtime/session і reply-dispatch |
|
||||
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви схеми конфігурації runtime агента |
|
||||
| `plugin-sdk/boolean-param` | Гнучкий читач булевих параметрів |
|
||||
| `plugin-sdk/dangerous-name-runtime` | Допоміжні функції визначення збігів небезпечних назв |
|
||||
| `plugin-sdk/device-bootstrap` | Допоміжні функції bootstrap пристрою та токенів pairing |
|
||||
| `plugin-sdk/extension-shared` | Спільні примітиви для passive-channel, status і ambient proxy helper |
|
||||
| `plugin-sdk/models-provider-runtime` | Допоміжні засоби відповіді `/models` command/provider |
|
||||
| `plugin-sdk/skill-commands-runtime` | Допоміжні засоби для переліку Skills command |
|
||||
| `plugin-sdk/native-command-registry` | Допоміжні засоби реєстру/build/serialize native команд |
|
||||
| `plugin-sdk/provider-zai-endpoint` | Допоміжні засоби виявлення endpoint Z.AI |
|
||||
| `plugin-sdk/infra-runtime` | Допоміжні засоби системних подій/heartbeat |
|
||||
| `plugin-sdk/collection-runtime` | Невеликі допоміжні засоби bounded cache |
|
||||
| `plugin-sdk/diagnostic-runtime` | Допоміжні засоби діагностичних прапорців і подій |
|
||||
| `plugin-sdk/error-runtime` | Граф помилок, форматування, спільні допоміжні засоби класифікації помилок, `isApprovalNotFoundError` |
|
||||
| `plugin-sdk/fetch-runtime` | Обгорнутий fetch, proxy і допоміжні засоби pinned lookup |
|
||||
| `plugin-sdk/host-runtime` | Допоміжні засоби нормалізації hostname і SCP host |
|
||||
| `plugin-sdk/retry-runtime` | Допоміжні засоби конфігурації retry і виконання retry |
|
||||
| `plugin-sdk/agent-runtime` | Допоміжні засоби директорії/ідентичності/workspace agent |
|
||||
| `plugin-sdk/directory-runtime` | Запит/усунення дублікатів директорій на основі конфігурації |
|
||||
| `plugin-sdk/models-provider-runtime` | Допоміжні функції відповіді провайдера/команди `/models` |
|
||||
| `plugin-sdk/skill-commands-runtime` | Допоміжні функції перелічення команд Skills |
|
||||
| `plugin-sdk/native-command-registry` | Допоміжні функції реєстру/build/serialize native command |
|
||||
| `plugin-sdk/provider-zai-endpoint` | Допоміжні функції виявлення endpoint Z.AI |
|
||||
| `plugin-sdk/infra-runtime` | Допоміжні функції системних подій/heartbeat |
|
||||
| `plugin-sdk/collection-runtime` | Невеликі допоміжні функції обмеженого кешу |
|
||||
| `plugin-sdk/diagnostic-runtime` | Допоміжні функції діагностичних прапорців і подій |
|
||||
| `plugin-sdk/error-runtime` | Допоміжні функції графа помилок, форматування, спільної класифікації помилок, `isApprovalNotFoundError` |
|
||||
| `plugin-sdk/fetch-runtime` | Допоміжні функції обгорнутого fetch, proxy і pinned lookup |
|
||||
| `plugin-sdk/host-runtime` | Допоміжні функції нормалізації hostname і SCP host |
|
||||
| `plugin-sdk/retry-runtime` | Допоміжні функції конфігурації retry і виконання retry |
|
||||
| `plugin-sdk/agent-runtime` | Допоміжні функції каталогу/ідентичності/workspace агента |
|
||||
| `plugin-sdk/directory-runtime` | Запит/дедуплікація каталогів на основі конфігурації |
|
||||
| `plugin-sdk/keyed-async-queue` | `KeyedAsyncQueue` |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи можливостей і тестування">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби fetch/transform/store для медіа, а також побудовники media payload |
|
||||
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні засоби failover для генерації медіа, вибір кандидатів і повідомлення про відсутню модель |
|
||||
| `plugin-sdk/media-understanding` | Типи provider для розуміння медіа, а також provider-oriented експорти допоміжних засобів для зображень/аудіо |
|
||||
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту/markdown/logging, такі як видалення тексту, видимого помічнику, допоміжні засоби render/chunking/table для markdown, редагування чутливих даних, допоміжні засоби тегів директив і утиліти safe-text |
|
||||
| `plugin-sdk/text-chunking` | Допоміжний засіб chunking вихідного тексту |
|
||||
| `plugin-sdk/speech` | Типи speech provider, а також provider-oriented допоміжні засоби для директив, реєстру й валідації |
|
||||
| `plugin-sdk/speech-core` | Спільні типи speech provider, а також допоміжні засоби реєстру, директив і нормалізації |
|
||||
| `plugin-sdk/realtime-transcription` | Типи provider для realtime transcription і допоміжні засоби реєстру |
|
||||
| `plugin-sdk/realtime-voice` | Типи provider для realtime voice і допоміжні засоби реєстру |
|
||||
| `plugin-sdk/image-generation` | Типи provider для генерації зображень |
|
||||
| `plugin-sdk/image-generation-core` | Спільні типи image-generation, а також допоміжні засоби failover, auth і реєстру |
|
||||
| `plugin-sdk/music-generation` | Типи provider/request/result для генерації музики |
|
||||
| `plugin-sdk/music-generation-core` | Спільні типи music-generation, допоміжні засоби failover, пошук provider і розбір model-ref |
|
||||
| `plugin-sdk/video-generation` | Типи provider/request/result для генерації відео |
|
||||
| `plugin-sdk/video-generation-core` | Спільні типи video-generation, допоміжні засоби failover, пошук provider і розбір model-ref |
|
||||
| `plugin-sdk/webhook-targets` | Реєстр webhook target і допоміжні засоби встановлення route |
|
||||
| `plugin-sdk/webhook-path` | Допоміжні засоби нормалізації webhook path |
|
||||
| `plugin-sdk/web-media` | Спільні допоміжні засоби завантаження віддалених/локальних медіа |
|
||||
| `plugin-sdk/media-runtime` | Спільні допоміжні функції fetch/transform/store для медіа, а також побудовники медіапейлоадів |
|
||||
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні функції failover для генерації медіа, вибору кандидатів і повідомлень про відсутні моделі |
|
||||
| `plugin-sdk/media-understanding` | Типи провайдерів media understanding, а також provider-facing експорти допоміжних функцій для зображень/аудіо |
|
||||
| `plugin-sdk/text-runtime` | Спільні допоміжні функції тексту/markdown/логування, такі як видалення видимого для асистента тексту, допоміжні функції render/chunking/table для markdown, redaction helpers, directive-tag helpers і safe-text utilities |
|
||||
| `plugin-sdk/text-chunking` | Допоміжна функція chunking вихідного тексту |
|
||||
| `plugin-sdk/speech` | Типи провайдерів мовлення, а також provider-facing допоміжні функції directive, registry і validation |
|
||||
| `plugin-sdk/speech-core` | Спільні типи провайдерів мовлення, допоміжні функції registry, directive і normalization |
|
||||
| `plugin-sdk/realtime-transcription` | Типи провайдерів realtime transcription і допоміжні функції registry |
|
||||
| `plugin-sdk/realtime-voice` | Типи провайдерів realtime voice і допоміжні функції registry |
|
||||
| `plugin-sdk/image-generation` | Типи провайдерів генерації зображень |
|
||||
| `plugin-sdk/image-generation-core` | Спільні типи генерації зображень, допоміжні функції failover, auth і registry |
|
||||
| `plugin-sdk/music-generation` | Типи провайдерів/запитів/результатів генерації музики |
|
||||
| `plugin-sdk/music-generation-core` | Спільні типи генерації музики, допоміжні функції failover, пошуку провайдера і парсингу model-ref |
|
||||
| `plugin-sdk/video-generation` | Типи провайдерів/запитів/результатів генерації відео |
|
||||
| `plugin-sdk/video-generation-core` | Спільні типи генерації відео, допоміжні функції failover, пошуку провайдера і парсингу model-ref |
|
||||
| `plugin-sdk/webhook-targets` | Допоміжні функції реєстру webhook targets і встановлення маршрутів |
|
||||
| `plugin-sdk/webhook-path` | Допоміжні функції нормалізації шляху webhook |
|
||||
| `plugin-sdk/web-media` | Спільні допоміжні функції завантаження віддалених/локальних медіа |
|
||||
| `plugin-sdk/zod` | Повторний експорт `zod` для споживачів plugin SDK |
|
||||
| `plugin-sdk/testing` | `installCommonResolveTargetErrorCases`, `shouldAckReaction` |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи memory">
|
||||
<Accordion title="Підшляхи пам’яті">
|
||||
| Subpath | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/memory-core` | Поверхня допоміжних засобів bundled memory-core для manager/config/file/CLI helper-ів |
|
||||
| `plugin-sdk/memory-core-engine-runtime` | Runtime facade індексації/пошуку memory |
|
||||
| `plugin-sdk/memory-core-host-engine-foundation` | Експорти foundation engine для host memory |
|
||||
| `plugin-sdk/memory-core-host-engine-embeddings` | Експорти embedding engine для host memory |
|
||||
| `plugin-sdk/memory-core-host-engine-qmd` | Експорти QMD engine для host memory |
|
||||
| `plugin-sdk/memory-core-host-engine-storage` | Експорти storage engine для host memory |
|
||||
| `plugin-sdk/memory-core-host-multimodal` | Мультимодальні допоміжні засоби для host memory |
|
||||
| `plugin-sdk/memory-core-host-query` | Допоміжні засоби запитів для host memory |
|
||||
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби secret для host memory |
|
||||
| `plugin-sdk/memory-core-host-events` | Допоміжні засоби журналу подій для host memory |
|
||||
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби статусу для host memory |
|
||||
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні засоби runtime CLI для host memory |
|
||||
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні засоби core runtime для host memory |
|
||||
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби file/runtime для host memory |
|
||||
| `plugin-sdk/memory-host-core` | Vendor-neutral псевдонім для допоміжних засобів core runtime host memory |
|
||||
| `plugin-sdk/memory-host-events` | Vendor-neutral псевдонім для допоміжних засобів журналу подій host memory |
|
||||
| `plugin-sdk/memory-host-files` | Vendor-neutral псевдонім для допоміжних засобів file/runtime host memory |
|
||||
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні засоби managed-markdown для plugins, суміжних із memory |
|
||||
| `plugin-sdk/memory-host-search` | Active memory runtime facade для доступу до search-manager |
|
||||
| `plugin-sdk/memory-host-status` | Vendor-neutral псевдонім для допоміжних засобів статусу host memory |
|
||||
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних засобів bundled memory-lancedb |
|
||||
| `plugin-sdk/memory-core` | Поверхня допоміжних функцій вбудованого memory-core для manager/config/file/CLI helpers |
|
||||
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime для memory index/search |
|
||||
| `plugin-sdk/memory-core-host-engine-foundation` | Експорти foundation engine для memory host |
|
||||
| `plugin-sdk/memory-core-host-engine-embeddings` | Експорти embedding engine для memory host |
|
||||
| `plugin-sdk/memory-core-host-engine-qmd` | Експорти QMD engine для memory host |
|
||||
| `plugin-sdk/memory-core-host-engine-storage` | Експорти storage engine для memory host |
|
||||
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні функції multimodal для memory host |
|
||||
| `plugin-sdk/memory-core-host-query` | Допоміжні функції query для memory host |
|
||||
| `plugin-sdk/memory-core-host-secret` | Допоміжні функції secret для memory host |
|
||||
| `plugin-sdk/memory-core-host-events` | Допоміжні функції журналу подій для memory host |
|
||||
| `plugin-sdk/memory-core-host-status` | Допоміжні функції статусу для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні функції runtime CLI для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні функції core runtime для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні функції файлів/runtime для memory host |
|
||||
| `plugin-sdk/memory-host-core` | Вендорно-нейтральний псевдонім для допоміжних функцій core runtime memory host |
|
||||
| `plugin-sdk/memory-host-events` | Вендорно-нейтральний псевдонім для допоміжних функцій журналу подій memory host |
|
||||
| `plugin-sdk/memory-host-files` | Вендорно-нейтральний псевдонім для допоміжних функцій файлів/runtime memory host |
|
||||
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні функції managed-markdown для плагінів, суміжних із пам’яттю |
|
||||
| `plugin-sdk/memory-host-search` | Активний фасад runtime пам’яті для доступу до search-manager |
|
||||
| `plugin-sdk/memory-host-status` | Вендорно-нейтральний псевдонім для допоміжних функцій статусу memory host |
|
||||
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних функцій вбудованого memory-lancedb |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Зарезервовані підшляхи bundled-helper">
|
||||
| Family | Current subpaths | Intended use |
|
||||
<Accordion title="Зарезервовані допоміжні підшляхи вбудованих компонентів">
|
||||
| Family | Поточні підшляхи | Призначення |
|
||||
| --- | --- | --- |
|
||||
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support` | Допоміжні засоби підтримки bundled browser plugin (`browser-support` залишається barrel-файлом сумісності) |
|
||||
| Matrix | `plugin-sdk/matrix`, `plugin-sdk/matrix-helper`, `plugin-sdk/matrix-runtime-heavy`, `plugin-sdk/matrix-runtime-shared`, `plugin-sdk/matrix-runtime-surface`, `plugin-sdk/matrix-surface`, `plugin-sdk/matrix-thread-bindings` | Поверхня допоміжних засобів/runtime bundled Matrix |
|
||||
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня допоміжних засобів/runtime bundled LINE |
|
||||
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня допоміжних засобів bundled IRC |
|
||||
| Допоміжні засоби, специфічні для channel | `plugin-sdk/googlechat`, `plugin-sdk/zalouser`, `plugin-sdk/bluebubbles`, `plugin-sdk/bluebubbles-policy`, `plugin-sdk/mattermost`, `plugin-sdk/mattermost-policy`, `plugin-sdk/feishu-conversation`, `plugin-sdk/msteams`, `plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`, `plugin-sdk/twitch` | Шви сумісності/допоміжні засоби bundled channel |
|
||||
| Допоміжні засоби, специфічні для auth/plugin | `plugin-sdk/github-copilot-login`, `plugin-sdk/github-copilot-token`, `plugin-sdk/diagnostics-otel`, `plugin-sdk/diffs`, `plugin-sdk/llm-task`, `plugin-sdk/thread-ownership`, `plugin-sdk/voice-call` | Шви допоміжних засобів bundled feature/plugin; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
|
||||
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support` | Допоміжні функції підтримки вбудованого browser plugin (`browser-support` залишається barrel-файлом сумісності) |
|
||||
| Matrix | `plugin-sdk/matrix`, `plugin-sdk/matrix-helper`, `plugin-sdk/matrix-runtime-heavy`, `plugin-sdk/matrix-runtime-shared`, `plugin-sdk/matrix-runtime-surface`, `plugin-sdk/matrix-surface`, `plugin-sdk/matrix-thread-bindings` | Поверхня допоміжних функцій/runtime для вбудованого Matrix |
|
||||
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня допоміжних функцій/runtime для вбудованого LINE |
|
||||
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня допоміжних функцій для вбудованого IRC |
|
||||
| Допоміжні функції, специфічні для каналів | `plugin-sdk/googlechat`, `plugin-sdk/zalouser`, `plugin-sdk/bluebubbles`, `plugin-sdk/bluebubbles-policy`, `plugin-sdk/mattermost`, `plugin-sdk/mattermost-policy`, `plugin-sdk/feishu-conversation`, `plugin-sdk/msteams`, `plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`, `plugin-sdk/twitch` | Поверхні сумісності/допоміжних функцій для вбудованих каналів |
|
||||
| Допоміжні функції, специфічні для auth/плагінів | `plugin-sdk/github-copilot-login`, `plugin-sdk/github-copilot-token`, `plugin-sdk/diagnostics-otel`, `plugin-sdk/diffs`, `plugin-sdk/llm-task`, `plugin-sdk/thread-ownership`, `plugin-sdk/voice-call` | Допоміжні шари для вбудованих можливостей/плагінів; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## API реєстрації
|
||||
|
||||
Колбек `register(api)` отримує об’єкт `OpenClawPluginApi` із такими
|
||||
Зворотний виклик `register(api)` отримує об’єкт `OpenClawPluginApi` з такими
|
||||
методами:
|
||||
|
||||
### Реєстрація можливостей
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------------ | ------------------------------- |
|
||||
| `api.registerProvider(...)` | Текстовий inference (LLM) |
|
||||
| `api.registerCliBackend(...)` | Локальний CLI backend inference |
|
||||
| `api.registerChannel(...)` | Канал обміну повідомленнями |
|
||||
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
|
||||
| `api.registerRealtimeTranscriptionProvider(...)` | Потокова transcription realtime |
|
||||
| `api.registerRealtimeVoiceProvider(...)` | Дуплексні сеанси voice realtime |
|
||||
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
|
||||
| `api.registerImageGenerationProvider(...)` | Генерація зображень |
|
||||
| `api.registerMusicGenerationProvider(...)` | Генерація музики |
|
||||
| `api.registerVideoGenerationProvider(...)` | Генерація відео |
|
||||
| `api.registerWebFetchProvider(...)` | Provider web fetch / scrape |
|
||||
| `api.registerWebSearchProvider(...)` | Web search |
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------------ | ------------------------------ |
|
||||
| `api.registerProvider(...)` | Текстовий inference (LLM) |
|
||||
| `api.registerCliBackend(...)` | Локальний backend inference CLI |
|
||||
| `api.registerChannel(...)` | Канал обміну повідомленнями |
|
||||
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
|
||||
| `api.registerRealtimeTranscriptionProvider(...)` | Потокова realtime transcription |
|
||||
| `api.registerRealtimeVoiceProvider(...)` | Двосторонні realtime voice sessions |
|
||||
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
|
||||
| `api.registerImageGenerationProvider(...)` | Генерація зображень |
|
||||
| `api.registerMusicGenerationProvider(...)` | Генерація музики |
|
||||
| `api.registerVideoGenerationProvider(...)` | Генерація відео |
|
||||
| `api.registerWebFetchProvider(...)` | Провайдер web fetch / scrape |
|
||||
| `api.registerWebSearchProvider(...)` | Вебпошук |
|
||||
|
||||
### Інструменти та команди
|
||||
### Інструменти й команди
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------- | -------------------------------------------- |
|
||||
| `api.registerTool(tool, opts?)` | Інструмент agent (обов’язковий або `{ optional: true }`) |
|
||||
| `api.registerCommand(def)` | Користувацька команда (обходить LLM) |
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------- | --------------------------------------------- |
|
||||
| `api.registerTool(tool, opts?)` | Інструмент агента (обов’язковий або `{ optional: true }`) |
|
||||
| `api.registerCommand(def)` | Користувацьку команду (оминає LLM) |
|
||||
|
||||
### Інфраструктура
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | ------------------------------------ |
|
||||
| `api.registerHook(events, handler, opts?)` | Event hook |
|
||||
| `api.registerHttpRoute(params)` | Gateway HTTP endpoint |
|
||||
| `api.registerGatewayMethod(name, handler)` | Gateway RPC method |
|
||||
| `api.registerCli(registrar, opts?)` | Підкоманда CLI |
|
||||
| `api.registerService(service)` | Фонова служба |
|
||||
| `api.registerInteractiveHandler(registration)` | Інтерактивний handler |
|
||||
| `api.registerMemoryPromptSupplement(builder)` | Адитивний розділ prompt, суміжний із memory |
|
||||
| `api.registerMemoryCorpusSupplement(adapter)` | Адитивний корпус пошуку/читання memory |
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | -------------------------------------- |
|
||||
| `api.registerHook(events, handler, opts?)` | Хук подій |
|
||||
| `api.registerHttpRoute(params)` | HTTP endpoint gateway |
|
||||
| `api.registerGatewayMethod(name, handler)` | RPC-метод gateway |
|
||||
| `api.registerCli(registrar, opts?)` | Підкоманду CLI |
|
||||
| `api.registerService(service)` | Фоновий сервіс |
|
||||
| `api.registerInteractiveHandler(registration)` | Інтерактивний handler |
|
||||
| `api.registerMemoryPromptSupplement(builder)` | Додатковий розділ prompt, суміжний із пам’яттю |
|
||||
| `api.registerMemoryCorpusSupplement(adapter)` | Додатковий корпус пошуку/читання пам’яті |
|
||||
|
||||
Зарезервовані простори імен core admin (`config.*`, `exec.approvals.*`, `wizard.*`,
|
||||
`update.*`) завжди залишаються `operator.admin`, навіть якщо plugin намагається призначити
|
||||
вужчу область gateway method. Для методів, що належать plugin,
|
||||
віддавайте перевагу префіксам, специфічним для plugin.
|
||||
Зарезервовані простори імен адміністратора ядра (`config.*`, `exec.approvals.*`,
|
||||
`wizard.*`, `update.*`) завжди залишаються `operator.admin`, навіть якщо
|
||||
плагін намагається призначити вужчу область видимості для методу gateway.
|
||||
Для методів, що належать плагіну, надавайте перевагу префіксам, специфічним
|
||||
для цього плагіна.
|
||||
|
||||
### Метадані реєстрації CLI
|
||||
|
||||
`api.registerCli(registrar, opts?)` приймає два типи метаданих верхнього рівня:
|
||||
|
||||
- `commands`: явні корені команд, якими володіє registrar
|
||||
- `descriptors`: дескриптори команд на етапі парсингу, що використовуються для кореневої довідки CLI,
|
||||
маршрутизації та лінивої реєстрації CLI plugin
|
||||
- `descriptors`: дескриптори команд часу парсингу, що використовуються для
|
||||
довідки кореневого CLI, маршрутизації та лінивої реєстрації CLI плагінів
|
||||
|
||||
Якщо ви хочете, щоб команда plugin залишалася ліниво завантажуваною у звичайному кореневому шляху CLI,
|
||||
надайте `descriptors`, які охоплюють кожен корінь команди верхнього рівня, який відкриває цей
|
||||
registrar.
|
||||
Якщо ви хочете, щоб команда плагіна залишалася ліниво завантажуваною у
|
||||
звичайному шляху кореневого CLI, надайте `descriptors`, які охоплюють кожен
|
||||
корінь команди верхнього рівня, що експонується цим registrar.
|
||||
|
||||
```typescript
|
||||
api.registerCli(
|
||||
@ -368,7 +371,7 @@ api.registerCli(
|
||||
descriptors: [
|
||||
{
|
||||
name: "matrix",
|
||||
description: "Керуйте акаунтами Matrix, верифікацією, пристроями та станом профілю",
|
||||
description: "Керування акаунтами Matrix, верифікацією, пристроями та станом профілю",
|
||||
hasSubcommands: true,
|
||||
},
|
||||
],
|
||||
@ -376,128 +379,131 @@ api.registerCli(
|
||||
);
|
||||
```
|
||||
|
||||
Використовуйте лише `commands`, коли вам не потрібна лінива реєстрація кореневого CLI.
|
||||
Цей eager шлях сумісності залишається підтримуваним, але він не встановлює
|
||||
placeholder-и на основі descriptors для лінивого завантаження під час парсингу.
|
||||
Використовуйте лише `commands`, якщо вам не потрібна лінива реєстрація
|
||||
кореневого CLI. Цей eager-шлях сумісності все ще підтримується, але він не
|
||||
встановлює placeholder-елементи з підтримкою descriptor для лінивого
|
||||
завантаження під час парсингу.
|
||||
|
||||
### Реєстрація backend CLI
|
||||
### Реєстрація CLI backend
|
||||
|
||||
`api.registerCliBackend(...)` дає plugin змогу володіти стандартною конфігурацією для локального
|
||||
backend AI CLI, такого як `codex-cli`.
|
||||
`api.registerCliBackend(...)` дає змогу плагіну володіти конфігурацією за
|
||||
замовчуванням для локального AI CLI backend, такого як `codex-cli`.
|
||||
|
||||
- `id` backend стає префіксом provider у model ref, наприклад `codex-cli/gpt-5`.
|
||||
- `id` backend стає префіксом провайдера в model ref, таких як `codex-cli/gpt-5`.
|
||||
- `config` backend використовує ту саму форму, що й `agents.defaults.cliBackends.<id>`.
|
||||
- Конфігурація користувача все одно має пріоритет. OpenClaw об’єднує `agents.defaults.cliBackends.<id>` поверх
|
||||
стандартів plugin перед запуском CLI.
|
||||
- Використовуйте `normalizeConfig`, коли backend потребує переписування для сумісності після злиття
|
||||
(наприклад, нормалізації старих форм прапорців).
|
||||
значення плагіна за замовчуванням перед запуском CLI.
|
||||
- Використовуйте `normalizeConfig`, коли backend потребує перезаписів сумісності після об’єднання
|
||||
(наприклад, для нормалізації старих форм прапорців).
|
||||
|
||||
### Ексклюзивні слоти
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------ | ------------------------------------ |
|
||||
| `api.registerContextEngine(id, factory)` | Context engine (одночасно активний лише один) |
|
||||
| `api.registerMemoryCapability(capability)` | Єдину можливість memory |
|
||||
| `api.registerMemoryPromptSection(builder)` | Побудовник розділу prompt memory |
|
||||
| `api.registerMemoryFlushPlan(resolver)` | Resolver плану flush memory |
|
||||
| `api.registerMemoryRuntime(runtime)` | Adapter runtime memory |
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `api.registerContextEngine(id, factory)` | Механізм контексту (одночасно активний лише один). Зворотний виклик `assemble()` отримує `availableTools` і `citationsMode`, щоб механізм міг адаптувати додавання до prompt. |
|
||||
| `api.registerMemoryCapability(capability)` | Уніфіковану можливість пам’яті |
|
||||
| `api.registerMemoryPromptSection(builder)` | Побудовник розділу prompt для пам’яті |
|
||||
| `api.registerMemoryFlushPlan(resolver)` | Визначник плану очищення пам’яті |
|
||||
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime пам’яті |
|
||||
|
||||
### Адаптери embedding для memory
|
||||
### Адаптери вбудовування пам’яті
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | ----------------------------------------------- |
|
||||
| `api.registerMemoryEmbeddingProvider(adapter)` | Adapter embedding для memory активного plugin |
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | ------------------------------------------------ |
|
||||
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер вбудовування пам’яті для активного плагіна |
|
||||
|
||||
- `registerMemoryCapability` — це рекомендований API ексклюзивного memory-plugin.
|
||||
- `registerMemoryCapability` також може надавати `publicArtifacts.listArtifacts(...)`,
|
||||
щоб companion plugins могли споживати експортовані memory artifacts через
|
||||
`openclaw/plugin-sdk/memory-host-core` замість звернення до приватного
|
||||
layout конкретного memory plugin.
|
||||
- `registerMemoryCapability` — це рекомендований API ексклюзивного плагіна пам’яті.
|
||||
- `registerMemoryCapability` також може експонувати `publicArtifacts.listArtifacts(...)`,
|
||||
щоб допоміжні плагіни могли споживати експортовані артефакти пам’яті через
|
||||
`openclaw/plugin-sdk/memory-host-core` замість доступу до приватного
|
||||
макета конкретного плагіна пам’яті.
|
||||
- `registerMemoryPromptSection`, `registerMemoryFlushPlan` і
|
||||
`registerMemoryRuntime` — це legacy-сумісні API ексклюзивного memory-plugin.
|
||||
- `registerMemoryEmbeddingProvider` дає активному memory plugin змогу зареєструвати один
|
||||
або більше id adapter embedding (наприклад, `openai`, `gemini` або власний id,
|
||||
визначений plugin).
|
||||
`registerMemoryRuntime` — це застарілі, але сумісні API ексклюзивних
|
||||
плагінів пам’яті.
|
||||
- `registerMemoryEmbeddingProvider` дозволяє активному плагіну пам’яті
|
||||
реєструвати один або кілька ID адаптерів вбудовування (наприклад `openai`,
|
||||
`gemini` або власний ID, визначений плагіном).
|
||||
- Конфігурація користувача, така як `agents.defaults.memorySearch.provider` і
|
||||
`agents.defaults.memorySearch.fallback`, визначається відносно зареєстрованих id
|
||||
цих adapter.
|
||||
`agents.defaults.memorySearch.fallback`, визначається відносно цих
|
||||
зареєстрованих ID адаптерів.
|
||||
|
||||
### Події та життєвий цикл
|
||||
|
||||
| Method | Що робить |
|
||||
| -------------------------------------------- | ---------------------------- |
|
||||
| `api.on(hookName, handler, opts?)` | Типізований lifecycle hook |
|
||||
| `api.onConversationBindingResolved(handler)` | Колбек binding розмови |
|
||||
| `api.on(hookName, handler, opts?)` | Типізований хук життєвого циклу |
|
||||
| `api.onConversationBindingResolved(handler)` | Зворотний виклик прив’язки розмови |
|
||||
|
||||
### Семантика рішень hook
|
||||
### Семантика рішень хуків
|
||||
|
||||
- `before_tool_call`: повернення `{ block: true }` є фінальним. Щойно будь-який handler встановлює це значення, handler-и з нижчим пріоритетом пропускаються.
|
||||
- `before_tool_call`: повернення `{ block: false }` трактується як відсутність рішення (так само, як пропуск `block`), а не як перевизначення.
|
||||
- `before_install`: повернення `{ block: true }` є фінальним. Щойно будь-який handler встановлює це значення, handler-и з нижчим пріоритетом пропускаються.
|
||||
- `before_install`: повернення `{ block: false }` трактується як відсутність рішення (так само, як пропуск `block`), а не як перевизначення.
|
||||
- `reply_dispatch`: повернення `{ handled: true, ... }` є фінальним. Щойно будь-який handler заявляє про диспетчеризацію, handler-и з нижчим пріоритетом і стандартний шлях диспетчеризації моделі пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: true }` є фінальним. Щойно будь-який handler встановлює це значення, handler-и з нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: false }` трактується як відсутність рішення (так само, як пропуск `cancel`), а не як перевизначення.
|
||||
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
|
||||
- `before_tool_call`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
|
||||
- `before_install`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
|
||||
- `before_install`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
|
||||
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно будь-який handler заявляє диспетчеризацію, handlers із нижчим пріоритетом і типовий шлях диспетчеризації моделі пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як пропуск `cancel`), а не перевизначенням.
|
||||
|
||||
### Поля об’єкта API
|
||||
|
||||
| Field | Type | Опис |
|
||||
| ------------------------ | ------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `api.id` | `string` | ID plugin |
|
||||
| `api.name` | `string` | Назва для відображення |
|
||||
| `api.version` | `string?` | Версія plugin (необов’язково) |
|
||||
| `api.description` | `string?` | Опис plugin (необов’язково) |
|
||||
| `api.source` | `string` | Шлях до джерела plugin |
|
||||
| `api.rootDir` | `string?` | Коренева директорія plugin (необов’язково) |
|
||||
| `api.config` | `OpenClawConfig` | Поточний snapshot конфігурації (активний snapshot runtime в пам’яті, коли доступний) |
|
||||
| `api.pluginConfig` | `Record<string, unknown>` | Конфігурація plugin із `plugins.entries.<id>.config` |
|
||||
| `api.runtime` | `PluginRuntime` | [Допоміжні засоби runtime](/uk/plugins/sdk-runtime) |
|
||||
| `api.logger` | `PluginLogger` | Logger з областю видимості (`debug`, `info`, `warn`, `error`) |
|
||||
| `api.registrationMode` | `PluginRegistrationMode` | Поточний режим завантаження; `"setup-runtime"` — це легковагове вікно запуску/налаштування до повного entry |
|
||||
| `api.resolvePath(input)` | `(string) => string` | Визначення path відносно кореня plugin |
|
||||
| Field | Type | Description |
|
||||
| ------------------------ | ------------------------- | ------------------------------------------------------------------------------------------- |
|
||||
| `api.id` | `string` | ID плагіна |
|
||||
| `api.name` | `string` | Відображувана назва |
|
||||
| `api.version` | `string?` | Версія плагіна (необов’язково) |
|
||||
| `api.description` | `string?` | Опис плагіна (необов’язково) |
|
||||
| `api.source` | `string` | Шлях до джерела плагіна |
|
||||
| `api.rootDir` | `string?` | Кореневий каталог плагіна (необов’язково) |
|
||||
| `api.config` | `OpenClawConfig` | Поточний знімок конфігурації (активний знімок runtime у пам’яті, якщо доступний) |
|
||||
| `api.pluginConfig` | `Record<string, unknown>` | Специфічна для плагіна конфігурація з `plugins.entries.<id>.config` |
|
||||
| `api.runtime` | `PluginRuntime` | [Допоміжні функції runtime](/uk/plugins/sdk-runtime) |
|
||||
| `api.logger` | `PluginLogger` | Локалізований logger (`debug`, `info`, `warn`, `error`) |
|
||||
| `api.registrationMode` | `PluginRegistrationMode` | Поточний режим завантаження; `"setup-runtime"` — це полегшене вікно запуску/налаштування до повного entry |
|
||||
| `api.resolvePath(input)` | `(string) => string` | Визначити шлях відносно кореня плагіна |
|
||||
|
||||
## Угода щодо внутрішніх модулів
|
||||
## Угода про внутрішні модулі
|
||||
|
||||
Усередині вашого plugin використовуйте локальні barrel-файли для внутрішніх імпортів:
|
||||
Усередині вашого плагіна використовуйте локальні barrel-файли для внутрішніх імпортів:
|
||||
|
||||
```
|
||||
my-plugin/
|
||||
api.ts # Публічні експорти для зовнішніх споживачів
|
||||
runtime-api.ts # Внутрішні експорти лише для runtime
|
||||
index.ts # Entry point plugin
|
||||
setup-entry.ts # Легковаговий entry лише для налаштування (необов’язково)
|
||||
runtime-api.ts # Лише внутрішні runtime-експорти
|
||||
index.ts # Точка входу плагіна
|
||||
setup-entry.ts # Полегшена точка входу лише для налаштування (необов’язково)
|
||||
```
|
||||
|
||||
<Warning>
|
||||
Ніколи не імпортуйте власний plugin через `openclaw/plugin-sdk/<your-plugin>`
|
||||
з production-коду. Спрямовуйте внутрішні імпорти через `./api.ts` або
|
||||
Ніколи не імпортуйте власний плагін через `openclaw/plugin-sdk/<your-plugin>`
|
||||
у production-коді. Спрямовуйте внутрішні імпорти через `./api.ts` або
|
||||
`./runtime-api.ts`. Шлях SDK — це лише зовнішній контракт.
|
||||
</Warning>
|
||||
|
||||
Facade-loaded публічні поверхні bundled plugin (`api.ts`, `runtime-api.ts`,
|
||||
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли) тепер віддають перевагу
|
||||
активному snapshot конфігурації runtime, якщо OpenClaw уже запущено. Якщо snapshot runtime
|
||||
ще не існує, вони повертаються до визначеного файлу конфігурації на диску.
|
||||
Публічні поверхні вбудованих плагінів, що завантажуються через фасад (`api.ts`, `runtime-api.ts`,
|
||||
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли), тепер віддають перевагу
|
||||
активному знімку конфігурації runtime, якщо OpenClaw уже запущено. Якщо
|
||||
знімок runtime ще не існує, вони повертаються до визначеного файлу конфігурації на диску.
|
||||
|
||||
Provider plugins також можуть надавати вузький barrel локального контракту plugin, коли допоміжний засіб
|
||||
навмисно є специфічним для provider і ще не належить до загального
|
||||
підшляху SDK. Поточний bundled приклад: provider Anthropic зберігає свої
|
||||
допоміжні засоби Claude stream у власному публічному шві `api.ts` / `contract-api.ts` замість
|
||||
просування логіки Anthropic beta-header і `service_tier` до загального
|
||||
контракту `plugin-sdk/*`.
|
||||
Плагіни провайдерів також можуть експонувати вузький локальний barrel-контракт
|
||||
плагіна, якщо допоміжна функція навмисно є специфічною для провайдера й поки що
|
||||
не належить до узагальненого підшляху SDK. Поточний вбудований приклад:
|
||||
провайдер Anthropic зберігає свої допоміжні функції потоків Claude у власному
|
||||
публічному шарі `api.ts` / `contract-api.ts`, замість того щоб просувати логіку
|
||||
Anthropic beta-header і `service_tier` в узагальнений контракт `plugin-sdk/*`.
|
||||
|
||||
Інші поточні bundled приклади:
|
||||
Інші поточні вбудовані приклади:
|
||||
|
||||
- `@openclaw/openai-provider`: `api.ts` експортує побудовники provider,
|
||||
допоміжні засоби стандартних моделей і побудовники realtime provider
|
||||
- `@openclaw/openrouter-provider`: `api.ts` експортує побудовник provider, а також
|
||||
допоміжні засоби онбордингу/конфігурації
|
||||
- `@openclaw/openai-provider`: `api.ts` експортує побудовники провайдерів,
|
||||
допоміжні функції моделей за замовчуванням і побудовники realtime-провайдерів
|
||||
- `@openclaw/openrouter-provider`: `api.ts` експортує побудовник провайдера та
|
||||
допоміжні функції онбордингу/конфігурації
|
||||
|
||||
<Warning>
|
||||
Production-код extension також має уникати імпортів `openclaw/plugin-sdk/<other-plugin>`.
|
||||
Якщо допоміжний засіб справді є спільним, перемістіть його до нейтрального підшляху SDK,
|
||||
такого як `openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
|
||||
поверхні, орієнтованої на можливості, замість жорсткого зв’язування двох plugins.
|
||||
Production-код розширень також має уникати імпортів
|
||||
`openclaw/plugin-sdk/<other-plugin>`. Якщо допоміжна функція справді є
|
||||
спільною, перенесіть її до нейтрального підшляху SDK, такого як
|
||||
`openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
|
||||
поверхні, орієнтованої на можливості, замість зв’язування двох плагінів між собою.
|
||||
</Warning>
|
||||
|
||||
## Пов’язане
|
||||
@ -505,6 +511,6 @@ Provider plugins також можуть надавати вузький barrel
|
||||
- [Entry Points](/uk/plugins/sdk-entrypoints) — параметри `definePluginEntry` і `defineChannelPluginEntry`
|
||||
- [Runtime Helpers](/uk/plugins/sdk-runtime) — повний довідник простору імен `api.runtime`
|
||||
- [Setup and Config](/uk/plugins/sdk-setup) — пакування, маніфести, схеми конфігурації
|
||||
- [Testing](/uk/plugins/sdk-testing) — утиліти тестування та правила lint
|
||||
- [Testing](/uk/plugins/sdk-testing) — тестові утиліти та правила lint
|
||||
- [SDK Migration](/uk/plugins/sdk-migration) — міграція із застарілих поверхонь
|
||||
- [Plugin Internals](/uk/plugins/architecture) — детальна архітектура та модель можливостей
|
||||
- [Plugin Internals](/uk/plugins/architecture) — поглиблена архітектура та модель можливостей
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
---
|
||||
read_when:
|
||||
- Ви хочете використовувати моделі Google Gemini з OpenClaw
|
||||
- Вам потрібен API-ключ або потік автентифікації OAuth
|
||||
summary: Налаштування Google Gemini (API-ключ + OAuth, генерація зображень, розуміння медіа, вебпошук)
|
||||
- Вам потрібен потік автентифікації API key або OAuth
|
||||
summary: Налаштування Google Gemini (API key + OAuth, генерація зображень, розуміння медіа, вебпошук)
|
||||
title: Google (Gemini)
|
||||
x-i18n:
|
||||
generated_at: "2026-04-07T09:37:43Z"
|
||||
generated_at: "2026-04-08T06:28:55Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: e9e558f5ce35c853e0240350be9a1890460c5f7f7fd30b05813a656497dee516
|
||||
source_hash: fad2ff68987301bd86145fa6e10de8c7b38d5bd5dbcd13db9c883f7f5b9a4e01
|
||||
source_path: providers/google.md
|
||||
workflow: 15
|
||||
---
|
||||
@ -26,7 +26,7 @@ Gemini Grounding.
|
||||
|
||||
## Швидкий старт
|
||||
|
||||
1. Установіть API-ключ:
|
||||
1. Установіть API key:
|
||||
|
||||
```bash
|
||||
openclaw onboard --auth-choice gemini-api-key
|
||||
@ -55,13 +55,13 @@ openclaw onboard --non-interactive \
|
||||
|
||||
## OAuth (Gemini CLI)
|
||||
|
||||
Альтернативний провайдер `google-gemini-cli` використовує PKCE OAuth замість API-ключа.
|
||||
Це неофіційна інтеграція; деякі користувачі повідомляють про обмеження
|
||||
облікового запису. Використовуйте на власний ризик.
|
||||
Альтернативний провайдер `google-gemini-cli` використовує PKCE OAuth замість API
|
||||
key. Це неофіційна інтеграція; деякі користувачі повідомляють про обмеження
|
||||
облікових записів. Використовуйте на власний ризик.
|
||||
|
||||
- Модель за замовчуванням: `google-gemini-cli/gemini-3-flash-preview`
|
||||
- Аліас: `gemini-cli`
|
||||
- Необхідна умова для встановлення: локальний Gemini CLI доступний як `gemini`
|
||||
- Псевдонім: `gemini-cli`
|
||||
- Обов’язкова умова для встановлення: локальний Gemini CLI, доступний як `gemini`
|
||||
- Homebrew: `brew install gemini-cli`
|
||||
- npm: `npm install -g @google/gemini-cli`
|
||||
- Вхід:
|
||||
@ -77,20 +77,21 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
|
||||
(Або варіанти `GEMINI_CLI_*`.)
|
||||
|
||||
Якщо запити Gemini CLI OAuth не вдаються після входу, установіть
|
||||
`GOOGLE_CLOUD_PROJECT` або `GOOGLE_CLOUD_PROJECT_ID` на хості шлюзу й
|
||||
Якщо OAuth-запити Gemini CLI не вдаються після входу, установіть
|
||||
`GOOGLE_CLOUD_PROJECT` або `GOOGLE_CLOUD_PROJECT_ID` на хості gateway і
|
||||
повторіть спробу.
|
||||
|
||||
Якщо вхід не вдається до запуску потоку в браузері, переконайтеся, що локальна команда `gemini`
|
||||
установлена та доступна в `PATH`. OpenClaw підтримує як установлення через Homebrew,
|
||||
так і глобальні встановлення через npm, включно з поширеними макетами Windows/npm.
|
||||
Якщо вхід не вдається ще до запуску потоку в браузері, переконайтеся, що
|
||||
локальну команду `gemini` встановлено й вона доступна в `PATH`. OpenClaw
|
||||
підтримує як встановлення через Homebrew, так і глобальні встановлення npm,
|
||||
зокрема поширені схеми Windows/npm.
|
||||
|
||||
Нотатки щодо використання JSON у Gemini CLI:
|
||||
|
||||
- Текст відповіді береться з поля CLI JSON `response`.
|
||||
- Використання повертається до `stats`, якщо CLI залишає `usage` порожнім.
|
||||
- `stats.cached` нормалізується в OpenClaw `cacheRead`.
|
||||
- Якщо `stats.input` відсутній, OpenClaw виводить кількість вхідних токенів із
|
||||
- Показники використання беруться з резервного поля `stats`, якщо CLI залишає `usage` порожнім.
|
||||
- `stats.cached` нормалізується в `cacheRead` OpenClaw.
|
||||
- Якщо `stats.input` відсутній, OpenClaw обчислює вхідні токени з
|
||||
`stats.input_tokens - stats.cached`.
|
||||
|
||||
## Можливості
|
||||
@ -104,19 +105,22 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
| Транскрибування аудіо | Так |
|
||||
| Розуміння відео | Так |
|
||||
| Вебпошук (Grounding) | Так |
|
||||
| Thinking/reasoning | Так (Gemini 3.1+) |
|
||||
| Мислення/міркування | Так (Gemini 3.1+) |
|
||||
| Моделі Gemma 4 | Так |
|
||||
|
||||
Моделі Gemma 4 (наприклад, `gemma-4-26b-a4b-it`) підтримують режим thinking. OpenClaw переписує `thinkingBudget` у підтримуваний Google `thinkingLevel` для Gemma 4. Установлення thinking в `off` зберігає його вимкненим замість зіставлення з `MINIMAL`.
|
||||
|
||||
## Пряме повторне використання кешу Gemini
|
||||
|
||||
Для прямих запусків Gemini API (`api: "google-generative-ai"`) OpenClaw тепер
|
||||
передає налаштований дескриптор `cachedContent` у запити Gemini.
|
||||
|
||||
- Налаштовуйте параметри для моделі або глобальні параметри через
|
||||
- Налаштовуйте параметри для моделі або глобально через
|
||||
`cachedContent` або застарілий `cached_content`
|
||||
- Якщо присутні обидва, пріоритет має `cachedContent`
|
||||
- Приклад значення: `cachedContents/prebuilt-context`
|
||||
- Використання при влучанні в кеш Gemini нормалізується в OpenClaw `cacheRead` із
|
||||
висхідного `cachedContentTokenCount`
|
||||
- Використання cache-hit у Gemini нормалізується в `cacheRead` OpenClaw з
|
||||
вихідного `cachedContentTokenCount`
|
||||
|
||||
Приклад:
|
||||
|
||||
@ -146,11 +150,11 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
- Режим редагування: увімкнено, до 5 вхідних зображень
|
||||
- Керування геометрією: `size`, `aspectRatio` і `resolution`
|
||||
|
||||
Провайдер `google-gemini-cli`, що працює лише через OAuth, є окремою поверхнею
|
||||
текстового виведення. Генерація зображень, розуміння медіа та Gemini Grounding залишаються на
|
||||
ідентифікаторі провайдера `google`.
|
||||
Провайдер `google-gemini-cli`, який працює лише через OAuth, є окремою
|
||||
поверхнею для текстового inference. Генерація зображень, розуміння медіа та
|
||||
Gemini Grounding залишаються на ідентифікаторі провайдера `google`.
|
||||
|
||||
Щоб використовувати Google як провайдер зображень за замовчуванням:
|
||||
Щоб використовувати Google як провайдера зображень за замовчуванням:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -164,8 +168,8 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
}
|
||||
```
|
||||
|
||||
Див. [Генерація зображень](/uk/tools/image-generation), щоб дізнатися про спільні
|
||||
параметри інструмента, вибір провайдера та поведінку перемикання при збої.
|
||||
Перегляньте [Генерація зображень](/uk/tools/image-generation), щоб дізнатися про
|
||||
спільні параметри інструмента, вибір провайдера та поведінку failover.
|
||||
|
||||
## Генерація відео
|
||||
|
||||
@ -173,11 +177,11 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
інструмент `video_generate`.
|
||||
|
||||
- Модель відео за замовчуванням: `google/veo-3.1-fast-generate-preview`
|
||||
- Режими: text-to-video, image-to-video та потоки з одним референсним відео
|
||||
- Режими: text-to-video, image-to-video і потоки з посиланням на одне відео
|
||||
- Підтримує `aspectRatio`, `resolution` і `audio`
|
||||
- Поточне обмеження тривалості: **від 4 до 8 секунд**
|
||||
|
||||
Щоб використовувати Google як провайдер відео за замовчуванням:
|
||||
Щоб використовувати Google як провайдера відео за замовчуванням:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -191,8 +195,8 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
}
|
||||
```
|
||||
|
||||
Див. [Генерація відео](/uk/tools/video-generation), щоб дізнатися про спільні
|
||||
параметри інструмента, вибір провайдера та поведінку перемикання при збої.
|
||||
Перегляньте [Генерація відео](/uk/tools/video-generation), щоб дізнатися про
|
||||
спільні параметри інструмента, вибір провайдера та поведінку failover.
|
||||
|
||||
## Генерація музики
|
||||
|
||||
@ -203,10 +207,10 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
- Також підтримує `google/lyria-3-pro-preview`
|
||||
- Керування підказкою: `lyrics` і `instrumental`
|
||||
- Формат виводу: `mp3` за замовчуванням, а також `wav` у `google/lyria-3-pro-preview`
|
||||
- Референсні входи: до 10 зображень
|
||||
- Запуски з підтримкою сесій від'єднуються через спільний потік завдань/статусу, включно з `action: "status"`
|
||||
- Вхідні дані-посилання: до 10 зображень
|
||||
- Запуски з підтримкою сесій від’єднуються через спільний потік завдань/статусу, зокрема `action: "status"`
|
||||
|
||||
Щоб використовувати Google як музичний провайдер за замовчуванням:
|
||||
Щоб використовувати Google як провайдера музики за замовчуванням:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -220,8 +224,8 @@ openclaw models auth login --provider google-gemini-cli --set-default
|
||||
}
|
||||
```
|
||||
|
||||
Див. [Генерація музики](/uk/tools/music-generation), щоб дізнатися про спільні
|
||||
параметри інструмента, вибір провайдера та поведінку перемикання при збої.
|
||||
Перегляньте [Генерація музики](/uk/tools/music-generation), щоб дізнатися про
|
||||
спільні параметри інструмента, вибір провайдера та поведінку failover.
|
||||
|
||||
## Примітка щодо середовища
|
||||
|
||||
|
||||
@ -1,27 +1,27 @@
|
||||
---
|
||||
read_when:
|
||||
- Ви хочете запускати OpenClaw із хмарними або локальними моделями через Ollama
|
||||
- Вам потрібні вказівки щодо налаштування та конфігурації Ollama
|
||||
- Вам потрібні вказівки з налаштування та конфігурації Ollama
|
||||
summary: Запуск OpenClaw з Ollama (хмарні та локальні моделі)
|
||||
title: Ollama
|
||||
x-i18n:
|
||||
generated_at: "2026-04-07T18:55:15Z"
|
||||
generated_at: "2026-04-08T06:29:09Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 222ec68f7d4bb29cc7796559ddef1d5059f5159e7a51e2baa3a271ddb3abb716
|
||||
source_hash: d3295a7c879d3636a2ffdec05aea6e670e54a990ef52bd9b0cae253bc24aa3f7
|
||||
source_path: providers/ollama.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Ollama
|
||||
|
||||
Ollama — це локальне середовище виконання LLM, яке спрощує запуск моделей з відкритим кодом на вашому комп’ютері. OpenClaw інтегрується з нативним API Ollama (`/api/chat`), підтримує потокову передачу та виклик інструментів, а також може автоматично виявляти локальні моделі Ollama, якщо ви ввімкнете це за допомогою `OLLAMA_API_KEY` (або профілю автентифікації) і не визначите явний запис `models.providers.ollama`.
|
||||
Ollama — це локальне середовище виконання LLM, яке полегшує запуск моделей з відкритим кодом на вашому комп’ютері. OpenClaw інтегрується з нативним API Ollama (`/api/chat`), підтримує потокове передавання та виклик інструментів, а також може автоматично виявляти локальні моделі Ollama, якщо ви вкажете `OLLAMA_API_KEY` (або профіль автентифікації) і не визначите явний запис `models.providers.ollama`.
|
||||
|
||||
<Warning>
|
||||
**Користувачі віддаленої Ollama**: не використовуйте OpenAI-сумісну URL-адресу `/v1` (`http://host:11434/v1`) з OpenClaw. Це порушує виклик інструментів, і моделі можуть виводити необроблений JSON інструментів як звичайний текст. Натомість використовуйте нативну URL-адресу API Ollama: `baseUrl: "http://host:11434"` (без `/v1`).
|
||||
**Користувачі віддаленої Ollama**: не використовуйте URL OpenAI-сумісного `/v1` (`http://host:11434/v1`) з OpenClaw. Це ламає виклик інструментів, і моделі можуть виводити сирий JSON інструментів як звичайний текст. Натомість використовуйте URL нативного API Ollama: `baseUrl: "http://host:11434"` (без `/v1`).
|
||||
</Warning>
|
||||
|
||||
## Швидкий старт
|
||||
## Швидкий початок
|
||||
|
||||
### Онбординг (рекомендовано)
|
||||
|
||||
@ -31,13 +31,13 @@ Ollama — це локальне середовище виконання LLM, я
|
||||
openclaw onboard
|
||||
```
|
||||
|
||||
Виберіть **Ollama** зі списку провайдерів. Онбординг:
|
||||
Виберіть **Ollama** зі списку провайдерів. Під час онбордингу буде зроблено таке:
|
||||
|
||||
1. Запитає базову URL-адресу Ollama, за якою доступний ваш інстанс (типово `http://127.0.0.1:11434`).
|
||||
2. Дозволить вибрати **Cloud + Local** (хмарні й локальні моделі) або **Local** (лише локальні моделі).
|
||||
3. Відкриє потік входу через браузер, якщо ви виберете **Cloud + Local** і не ввійшли в ollama.com.
|
||||
4. Виявить доступні моделі та запропонує типові значення.
|
||||
5. Автоматично виконає завантаження вибраної моделі, якщо вона недоступна локально.
|
||||
1. Запитано базовий URL Ollama, за яким можна звернутися до вашого екземпляра (типово `http://127.0.0.1:11434`).
|
||||
2. Запропоновано вибрати **Cloud + Local** (хмарні та локальні моделі) або **Local** (лише локальні моделі).
|
||||
3. Відкрито в браузері потік входу, якщо ви виберете **Cloud + Local** і не ввійшли в ollama.com.
|
||||
4. Виявлено доступні моделі та запропоновано типові варіанти.
|
||||
5. Автоматично завантажено вибрану модель, якщо вона недоступна локально.
|
||||
|
||||
Також підтримується неінтерактивний режим:
|
||||
|
||||
@ -47,7 +47,7 @@ openclaw onboard --non-interactive \
|
||||
--accept-risk
|
||||
```
|
||||
|
||||
За потреби вкажіть власну базову URL-адресу або модель:
|
||||
За потреби можна вказати власний базовий URL або модель:
|
||||
|
||||
```bash
|
||||
openclaw onboard --non-interactive \
|
||||
@ -61,7 +61,7 @@ openclaw onboard --non-interactive \
|
||||
|
||||
1. Установіть Ollama: [https://ollama.com/download](https://ollama.com/download)
|
||||
|
||||
2. Завантажте локальну модель, якщо хочете локальний інференс:
|
||||
2. Завантажте локальну модель, якщо хочете використовувати локальний інференс:
|
||||
|
||||
```bash
|
||||
ollama pull gemma4
|
||||
@ -71,7 +71,7 @@ ollama pull gpt-oss:20b
|
||||
ollama pull llama3.3
|
||||
```
|
||||
|
||||
3. Якщо вам також потрібні хмарні моделі, увійдіть:
|
||||
3. Якщо ви також хочете використовувати хмарні моделі, увійдіть:
|
||||
|
||||
```bash
|
||||
ollama signin
|
||||
@ -84,25 +84,25 @@ openclaw onboard
|
||||
```
|
||||
|
||||
- `Local`: лише локальні моделі
|
||||
- `Cloud + Local`: локальні моделі плюс хмарні моделі
|
||||
- `Cloud + Local`: локальні моделі та хмарні моделі
|
||||
- Хмарні моделі, як-от `kimi-k2.5:cloud`, `minimax-m2.7:cloud` і `glm-5.1:cloud`, **не** потребують локального `ollama pull`
|
||||
|
||||
Наразі OpenClaw пропонує:
|
||||
|
||||
- локальне типове значення: `gemma4`
|
||||
- хмарні типові значення: `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`
|
||||
- типовий локальний варіант: `gemma4`
|
||||
- типові хмарні варіанти: `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`
|
||||
|
||||
5. Якщо ви віддаєте перевагу ручному налаштуванню, увімкніть Ollama для OpenClaw напряму (підійде будь-яке значення; Ollama не потребує справжнього ключа):
|
||||
|
||||
```bash
|
||||
# Set environment variable
|
||||
# Встановіть змінну середовища
|
||||
export OLLAMA_API_KEY="ollama-local"
|
||||
|
||||
# Or configure in your config file
|
||||
# Або налаштуйте у вашому файлі конфігурації
|
||||
openclaw config set models.providers.ollama.apiKey "ollama-local"
|
||||
```
|
||||
|
||||
6. Перегляньте або змініть моделі:
|
||||
6. Перегляньте або перемкніть моделі:
|
||||
|
||||
```bash
|
||||
openclaw models list
|
||||
@ -123,15 +123,16 @@ openclaw models set ollama/gemma4
|
||||
|
||||
## Виявлення моделей (неявний провайдер)
|
||||
|
||||
Коли ви задаєте `OLLAMA_API_KEY` (або профіль автентифікації) і **не** визначаєте `models.providers.ollama`, OpenClaw виявляє моделі з локального інстансу Ollama за адресою `http://127.0.0.1:11434`:
|
||||
Коли ви задаєте `OLLAMA_API_KEY` (або профіль автентифікації) і **не** визначаєте `models.providers.ollama`, OpenClaw виявляє моделі з локального екземпляра Ollama за адресою `http://127.0.0.1:11434`:
|
||||
|
||||
- Виконує запити до `/api/tags`
|
||||
- Використовує best-effort-запити до `/api/show`, щоб читати `contextWindow`, якщо він доступний
|
||||
- Позначає `reasoning` за допомогою евристики назви моделі (`r1`, `reasoning`, `think`)
|
||||
- Установлює `maxTokens` на типове максимальне обмеження токенів Ollama, яке використовує OpenClaw
|
||||
- Установлює всі вартості в `0`
|
||||
- Використовує best-effort запити до `/api/show`, щоб зчитати `contextWindow` і визначити можливості (зокрема vision), коли це доступно
|
||||
- Моделі з можливістю `vision`, про яку повідомляє `/api/show`, позначаються як здатні працювати із зображеннями (`input: ["text", "image"]`), тож OpenClaw автоматично додає зображення до підказки для таких моделей
|
||||
- Позначає `reasoning` за евристикою назви моделі (`r1`, `reasoning`, `think`)
|
||||
- Встановлює `maxTokens` на типове максимальне обмеження токенів Ollama, яке використовує OpenClaw
|
||||
- Встановлює всі вартості в `0`
|
||||
|
||||
Це дозволяє уникнути ручного додавання моделей і водночас зберігати каталог узгодженим із локальним інстансом Ollama.
|
||||
Це дає змогу уникнути ручного додавання моделей, зберігаючи каталог узгодженим із локальним екземпляром Ollama.
|
||||
|
||||
Щоб побачити, які моделі доступні:
|
||||
|
||||
@ -148,7 +149,7 @@ ollama pull mistral
|
||||
|
||||
Нова модель буде автоматично виявлена та стане доступною для використання.
|
||||
|
||||
Якщо ви явно задасте `models.providers.ollama`, автоматичне виявлення буде пропущено, і вам доведеться визначати моделі вручну (див. нижче).
|
||||
Якщо ви явно задаєте `models.providers.ollama`, автоматичне виявлення вимикається, і вам потрібно визначати моделі вручну (див. нижче).
|
||||
|
||||
## Конфігурація
|
||||
|
||||
@ -160,13 +161,13 @@ ollama pull mistral
|
||||
export OLLAMA_API_KEY="ollama-local"
|
||||
```
|
||||
|
||||
### Явне налаштування (ручне визначення моделей)
|
||||
### Явне налаштування (ручні моделі)
|
||||
|
||||
Використовуйте явну конфігурацію, якщо:
|
||||
|
||||
- Ollama працює на іншому хості або порту.
|
||||
- Ви хочете примусово задати конкретні вікна контексту або списки моделей.
|
||||
- Ви хочете повністю вручну визначати моделі.
|
||||
- Ви хочете примусово задати конкретні контекстні вікна або списки моделей.
|
||||
- Ви хочете повністю ручні визначення моделей.
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -195,9 +196,9 @@ export OLLAMA_API_KEY="ollama-local"
|
||||
|
||||
Якщо задано `OLLAMA_API_KEY`, ви можете не вказувати `apiKey` у записі провайдера, і OpenClaw підставить його для перевірок доступності.
|
||||
|
||||
### Власна базова URL-адреса (явна конфігурація)
|
||||
### Власний базовий URL (явна конфігурація)
|
||||
|
||||
Якщо Ollama працює на іншому хості або порту (явна конфігурація вимикає автоматичне виявлення, тому моделі потрібно визначати вручну):
|
||||
Якщо Ollama працює на іншому хості або порту (явна конфігурація вимикає автоматичне виявлення, тож визначте моделі вручну):
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -205,8 +206,8 @@ export OLLAMA_API_KEY="ollama-local"
|
||||
providers: {
|
||||
ollama: {
|
||||
apiKey: "ollama-local",
|
||||
baseUrl: "http://ollama-host:11434", // Без /v1 - використовуйте нативну URL-адресу API Ollama
|
||||
api: "ollama", // Задайте явно, щоб гарантувати нативну поведінку виклику інструментів
|
||||
baseUrl: "http://ollama-host:11434", // Без /v1 - використовуйте URL нативного API Ollama
|
||||
api: "ollama", // Вкажіть явно, щоб гарантувати нативну поведінку виклику інструментів
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -214,7 +215,7 @@ export OLLAMA_API_KEY="ollama-local"
|
||||
```
|
||||
|
||||
<Warning>
|
||||
Не додавайте `/v1` до URL-адреси. Шлях `/v1` використовує OpenAI-сумісний режим, у якому виклик інструментів ненадійний. Використовуйте базову URL-адресу Ollama без суфікса шляху.
|
||||
Не додавайте `/v1` до URL. Шлях `/v1` використовує OpenAI-сумісний режим, у якому виклик інструментів працює ненадійно. Використовуйте базовий URL Ollama без суфікса шляху.
|
||||
</Warning>
|
||||
|
||||
### Вибір моделі
|
||||
@ -236,9 +237,9 @@ export OLLAMA_API_KEY="ollama-local"
|
||||
|
||||
## Хмарні моделі
|
||||
|
||||
Хмарні моделі дають змогу використовувати розміщені в хмарі моделі (наприклад, `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`) разом із вашими локальними моделями.
|
||||
Хмарні моделі дають змогу запускати розміщені в хмарі моделі (наприклад, `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`) разом із вашими локальними моделями.
|
||||
|
||||
Щоб використовувати хмарні моделі, виберіть режим **Cloud + Local** під час налаштування. Майстер перевіряє, чи ви ввійшли в систему, і за потреби відкриває потік входу через браузер. Якщо автентифікацію не вдається перевірити, майстер повертається до типових локальних моделей.
|
||||
Щоб використовувати хмарні моделі, виберіть режим **Cloud + Local** під час налаштування. Майстер перевіряє, чи ви ввійшли, і за потреби відкриває в браузері потік входу. Якщо автентифікацію неможливо перевірити, майстер повертається до типових локальних моделей.
|
||||
|
||||
Ви також можете ввійти безпосередньо на [ollama.com/signin](https://ollama.com/signin).
|
||||
|
||||
@ -247,10 +248,11 @@ export OLLAMA_API_KEY="ollama-local"
|
||||
OpenClaw також підтримує **Ollama Web Search** як вбудований провайдер `web_search`.
|
||||
|
||||
- Він використовує налаштований вами хост Ollama (`models.providers.ollama.baseUrl`, якщо задано, інакше `http://127.0.0.1:11434`).
|
||||
- Він не потребує ключа.
|
||||
- Для нього потрібно, щоб Ollama працювала і ви були авторизовані через `ollama signin`.
|
||||
- Для нього не потрібен ключ.
|
||||
- Потрібно, щоб Ollama була запущена і щоб ви ввійшли через `ollama signin`.
|
||||
|
||||
Виберіть **Ollama Web Search** під час `openclaw onboard` або `openclaw configure --section web`, або задайте:
|
||||
Виберіть **Ollama Web Search** під час `openclaw onboard` або
|
||||
`openclaw configure --section web`, або задайте:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -264,13 +266,13 @@ OpenClaw також підтримує **Ollama Web Search** як вбудова
|
||||
}
|
||||
```
|
||||
|
||||
Повні відомості про налаштування та поведінку див. у [Ollama Web Search](/uk/tools/ollama-search).
|
||||
Повні відомості про налаштування та поведінку дивіться в [Ollama Web Search](/uk/tools/ollama-search).
|
||||
|
||||
## Додатково
|
||||
|
||||
### Моделі міркування
|
||||
### Моделі з reasoning
|
||||
|
||||
OpenClaw типово вважає моделі з назвами на кшталт `deepseek-r1`, `reasoning` або `think` такими, що підтримують міркування:
|
||||
OpenClaw за замовчуванням вважає моделі з назвами на кшталт `deepseek-r1`, `reasoning` або `think` здатними до reasoning:
|
||||
|
||||
```bash
|
||||
ollama pull deepseek-r1:32b
|
||||
@ -278,19 +280,19 @@ ollama pull deepseek-r1:32b
|
||||
|
||||
### Вартість моделей
|
||||
|
||||
Ollama є безкоштовною і працює локально, тому вартість усіх моделей встановлена на рівні $0.
|
||||
Ollama є безкоштовною та працює локально, тому вартість усіх моделей встановлено в $0.
|
||||
|
||||
### Конфігурація потокової передачі
|
||||
### Налаштування потокового передавання
|
||||
|
||||
Інтеграція OpenClaw з Ollama типово використовує **нативний API Ollama** (`/api/chat`), який повністю підтримує одночасно потокову передачу та виклик інструментів. Жодного спеціального налаштування не потрібно.
|
||||
Інтеграція Ollama в OpenClaw типово використовує **нативний API Ollama** (`/api/chat`), який повністю підтримує одночасно потокове передавання та виклик інструментів. Додаткового налаштування не потрібно.
|
||||
|
||||
#### Застарілий OpenAI-сумісний режим
|
||||
|
||||
<Warning>
|
||||
**Виклик інструментів у OpenAI-сумісному режимі ненадійний.** Використовуйте цей режим лише якщо вам потрібен формат OpenAI для проксі й ви не залежите від нативної поведінки виклику інструментів.
|
||||
**Виклик інструментів в OpenAI-сумісному режимі працює ненадійно.** Використовуйте цей режим лише якщо вам потрібен формат OpenAI для проксі й ви не покладаєтеся на нативну поведінку виклику інструментів.
|
||||
</Warning>
|
||||
|
||||
Якщо вам потрібно використовувати натомість OpenAI-сумісну кінцеву точку (наприклад, за проксі, який підтримує лише формат OpenAI), явно задайте `api: "openai-completions"`:
|
||||
Якщо замість цього вам потрібно використовувати OpenAI-сумісну кінцеву точку (наприклад, за проксі, який підтримує лише формат OpenAI), явно задайте `api: "openai-completions"`:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -308,9 +310,9 @@ Ollama є безкоштовною і працює локально, тому в
|
||||
}
|
||||
```
|
||||
|
||||
Цей режим може не підтримувати одночасно потокову передачу й виклик інструментів. Може знадобитися вимкнути потокову передачу за допомогою `params: { streaming: false }` у конфігурації моделі.
|
||||
У цьому режимі може не підтримуватися одночасне потокове передавання та виклик інструментів. Можливо, вам доведеться вимкнути потокове передавання за допомогою `params: { streaming: false }` у конфігурації моделі.
|
||||
|
||||
Коли з Ollama використовується `api: "openai-completions"`, OpenClaw типово додає `options.num_ctx`, щоб Ollama не переходила непомітно на вікно контексту 4096. Якщо ваш проксі або upstream відхиляє невідомі поля `options`, вимкніть цю поведінку:
|
||||
Коли з Ollama використовується `api: "openai-completions"`, OpenClaw типово додає `options.num_ctx`, щоб Ollama не переходила мовчки до контекстного вікна 4096. Якщо ваш проксі або upstream відхиляє невідомі поля `options`, вимкніть цю поведінку:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -328,9 +330,9 @@ Ollama є безкоштовною і працює локально, тому в
|
||||
}
|
||||
```
|
||||
|
||||
### Вікна контексту
|
||||
### Контекстні вікна
|
||||
|
||||
Для автоматично виявлених моделей OpenClaw використовує вікно контексту, яке повідомляє Ollama, якщо воно доступне; інакше використовується типове вікно контексту Ollama, яке застосовує OpenClaw. Ви можете перевизначити `contextWindow` і `maxTokens` у явній конфігурації провайдера.
|
||||
Для автоматично виявлених моделей OpenClaw використовує контекстне вікно, про яке повідомляє Ollama, коли воно доступне; інакше використовується типове контекстне вікно Ollama, яке застосовує OpenClaw. Ви можете перевизначити `contextWindow` і `maxTokens` в явній конфігурації провайдера.
|
||||
|
||||
## Усунення несправностей
|
||||
|
||||
@ -342,7 +344,7 @@ Ollama є безкоштовною і працює локально, тому в
|
||||
ollama serve
|
||||
```
|
||||
|
||||
І що API доступний:
|
||||
А також що API доступне:
|
||||
|
||||
```bash
|
||||
curl http://localhost:11434/api/tags
|
||||
@ -350,7 +352,7 @@ curl http://localhost:11434/api/tags
|
||||
|
||||
### Немає доступних моделей
|
||||
|
||||
Якщо вашої моделі немає у списку, виконайте одну з дій:
|
||||
Якщо вашу модель не показано в списку, зробіть одне з такого:
|
||||
|
||||
- Завантажте модель локально, або
|
||||
- Явно визначте модель у `models.providers.ollama`.
|
||||
@ -358,7 +360,7 @@ curl http://localhost:11434/api/tags
|
||||
Щоб додати моделі:
|
||||
|
||||
```bash
|
||||
ollama list # Переглянути, що встановлено
|
||||
ollama list # Подивіться, що встановлено
|
||||
ollama pull gemma4
|
||||
ollama pull gpt-oss:20b
|
||||
ollama pull llama3.3 # Або іншу модель
|
||||
@ -366,18 +368,18 @@ ollama pull llama3.3 # Або іншу модель
|
||||
|
||||
### У з’єднанні відмовлено
|
||||
|
||||
Переконайтеся, що Ollama працює на правильному порту:
|
||||
Перевірте, що Ollama працює на правильному порту:
|
||||
|
||||
```bash
|
||||
# Перевірити, чи запущена Ollama
|
||||
# Перевірте, чи запущена Ollama
|
||||
ps aux | grep ollama
|
||||
|
||||
# Або перезапустити Ollama
|
||||
# Або перезапустіть Ollama
|
||||
ollama serve
|
||||
```
|
||||
|
||||
## Див. також
|
||||
## Дивіться також
|
||||
|
||||
- [Провайдери моделей](/uk/concepts/model-providers) - Огляд усіх провайдерів
|
||||
- [Вибір моделі](/uk/concepts/models) - Як вибирати моделі
|
||||
- [Конфігурація](/uk/gateway/configuration) - Повний довідник з конфігурації
|
||||
- [Конфігурація](/uk/gateway/configuration) - Повний довідник із конфігурації
|
||||
|
||||
Loading…
Reference in New Issue
Block a user