chore(i18n): refresh uk translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-05 21:47:20 +00:00
parent 5cf96fe3e4
commit 9732a84d8c
2 changed files with 466 additions and 482 deletions

View File

@ -5,104 +5,105 @@ read_when:
- Ви оновлюєте плагін до сучасної архітектури плагінів
- Ви підтримуєте зовнішній плагін OpenClaw
sidebarTitle: Migrate to SDK
summary: Перейдіть із застарілого шару зворотної сумісності на сучасний plugin SDK
title: Міграція Plugin SDK
summary: Перейдіть із застарілого шару зворотної сумісності на сучасний SDK плагінів
title: Міграція SDK плагінів
x-i18n:
generated_at: "2026-04-05T21:36:53Z"
generated_at: "2026-04-05T21:47:20Z"
model: gpt-5.4
provider: openai
source_hash: f4a5aba3ff99f9cc75518a914e7a9faf92b9021f26031f7ace74d0b58a3416da
source_hash: d2a0f2501484b224a1f5b87dc66e9bef1dcb9d3225aaeefe711ed94bf70b6a16
source_path: plugins/sdk-migration.md
workflow: 15
---
# Міграція Plugin SDK
# Міграція SDK плагінів
OpenClaw перейшов від широкого шару зворотної сумісності до сучасної
архітектури плагінів із цільовими документованими імпортами. Якщо ваш плагін
було створено до появи нової архітектури, цей посібник допоможе вам виконати
міграцію.
архітектури плагінів зі сфокусованими, задокументованими імпортами. Якщо ваш
плагін було створено до появи нової архітектури, цей посібник допоможе вам
виконати міграцію.
## Що змінюється
Стара система плагінів надавала дві дуже широкі поверхні, які дозволяли
плагінам імпортувати будь-що потрібне з однієї точки входу:
Стара система плагінів надавала дві надто широкі поверхні, які дозволяли
плагінам імпортувати все, що їм потрібно, з єдиної точки входу:
- **`openclaw/plugin-sdk/compat`** — єдиний імпорт, який повторно експортував
десятки допоміжних функцій. Його було запроваджено, щоб старіші плагіни на
основі хуків продовжували працювати, поки створювалася нова архітектура
десятки допоміжних засобів. Його було запроваджено, щоб старі плагіни на
основі хуків продовжували працювати, поки будувалася нова архітектура
плагінів.
- **`openclaw/extension-api`** — міст, який надавав плагінам прямий доступ до
допоміжних функцій на стороні хоста, таких як вбудований запускник агента.
допоміжних засобів на стороні хоста, як-от вбудований запускальник агента.
Обидві поверхні тепер **застарілі**. Вони досі працюють під час виконання, але
нові плагіни не повинні їх використовувати, а наявні плагіни слід перенести до
того, як у наступному мажорному випуску їх буде видалено.
нові плагіни не повинні їх використовувати, а наявним плагінам слід
перейти на нові механізми до того, як у наступному великому випуску їх буде
видалено.
<Warning>
Шар зворотної сумісності буде видалено в одному з майбутніх мажорних
випусків. Плагіни, які досі імпортують із цих поверхонь, перестануть
працювати, коли це станеться.
Шар зворотної сумісності буде видалено в одному з майбутніх великих випусків.
Плагіни, які все ще імпортують із цих поверхонь, перестануть працювати,
коли це станеться.
</Warning>
## Чому це змінилося
Старий підхід спричиняв проблеми:
- **Повільний запуск** — імпорт однієї допоміжної функції завантажував десятки
не пов’язаних модулів
- **Повільний запуск** — імпорт одного допоміжного засобу завантажував десятки
не пов’язаних між собою модулів
- **Циклічні залежності** — широкі повторні експорти спрощували створення
циклів імпорту
- **Неочевидна поверхня API** — не було способу визначити, які експорти є
- **Неясна поверхня API** — не було способу зрозуміти, які експорти є
стабільними, а які внутрішніми
Сучасний plugin SDK виправляє це: кожен шлях імпорту (`openclaw/plugin-sdk/\<subpath\>`)
є невеликим автономним модулем із чітким призначенням і документованим
Сучасний SDK плагінів вирішує це: кожен шлях імпорту (`openclaw/plugin-sdk/\<subpath\>`)
є невеликим, самодостатнім модулем із чітким призначенням і задокументованим
контрактом.
Застарілі зручні seam-інтерфейси провайдерів для вбудованих каналів також
прибрано. Імпорти на кшталт `openclaw/plugin-sdk/slack`,
`openclaw/plugin-sdk/discord`, `openclaw/plugin-sdk/signal`,
`openclaw/plugin-sdk/whatsapp`, брендовані допоміжні seam-інтерфейси каналів і
`openclaw/plugin-sdk/telegram-core` були приватними скороченнями
mono-repo, а не стабільними контрактами плагінів. Натомість використовуйте
вузькі універсальні підшляхи SDK. Усередині робочого простору вбудованих
плагінів зберігайте допоміжні функції, що належать провайдеру, у власних
`api.ts` або `runtime-api.ts` цього плагіна.
Застарілі зручні шви провайдера для вбудованих каналів також зникли. Імпорти
на кшталт `openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`,
допоміжні шви з брендингом каналів і
`openclaw/plugin-sdk/telegram-core` були приватними скороченнями для
монорепозиторію, а не стабільними контрактами плагінів. Натомість
використовуйте вузькі загальні підшляхи SDK. Усередині вбудованого робочого
простору плагінів зберігайте допоміжні засоби, що належать провайдеру, у
власному `api.ts` або `runtime-api.ts` цього плагіна.
Поточні приклади вбудованих провайдерів:
- Anthropic зберігає допоміжні функції потоку, специфічні для Claude, у
власному seam-інтерфейсі `api.ts` / `contract-api.ts`
- OpenAI зберігає побудовники провайдерів, допоміжні функції моделей за
замовчуванням і побудовники realtime-провайдерів у власному `api.ts`
- OpenRouter зберігає побудовник провайдера та допоміжні функції онбордингу /
конфігурації у власному `api.ts`
- Anthropic зберігає допоміжні засоби потокової передачі, специфічні для
Claude, у власному шві `api.ts` / `contract-api.ts`
- OpenAI зберігає конструктори провайдерів, допоміжні засоби для моделей за
замовчуванням і конструктори провайдерів реального часу у власному `api.ts`
- OpenRouter зберігає конструктор провайдера та допоміжні засоби для
онбордингу/конфігурації у власному `api.ts`
## Як виконати міграцію
<Steps>
<Step title="Перевірте резервну поведінку обгортки Windows">
Якщо ваш плагін використовує `openclaw/plugin-sdk/windows-spawn`, нерозв’язані
обгортки Windows `.cmd`/`.bat` тепер завершуються без резервного шляху, якщо
ви явно не передасте `allowShellFallback: true`.
Якщо ваш плагін використовує `openclaw/plugin-sdk/windows-spawn`, невизначені
обгортки Windows `.cmd`/`.bat` тепер завершуються без резервного варіанта,
якщо ви явно не передасте `allowShellFallback: true`.
```typescript
// До
// Before
const program = applyWindowsSpawnProgramPolicy({ candidate });
// Після
// After
const program = applyWindowsSpawnProgramPolicy({
candidate,
// Установлюйте це лише для довірених сумісних викликів, які навмисно
// допускають резервний шлях через оболонку.
// Only set this for trusted compatibility callers that intentionally
// accept shell-mediated fallback.
allowShellFallback: true,
});
```
Якщо ваш виклик не покладається навмисно на резервний шлях через оболонку,
не встановлюйте `allowShellFallback` і натомість обробляйте викинуту
помилку.
Якщо ваш викликаючий код не покладається навмисно на резервний варіант
через оболонку, не встановлюйте `allowShellFallback` і натомість обробіть
викинуту помилку.
</Step>
@ -116,38 +117,37 @@ mono-repo, а не стабільними контрактами плагіні
</Step>
<Step title="Замініть їх цільовими імпортами">
Кожен експорт зі старої поверхні відповідає конкретному сучасному шляху
імпорту:
<Step title="Замініть їх на сфокусовані імпорти">
Кожен експорт зі старої поверхні відповідає певному сучасному шляху імпорту:
```typescript
// До (застарілий шар зворотної сумісності)
// Before (deprecated backwards-compatibility layer)
import {
createChannelReplyPipeline,
createPluginRuntimeStore,
resolveControlCommandGate,
} from "openclaw/plugin-sdk/compat";
// Після (сучасні цільові імпорти)
// After (modern focused imports)
import { createChannelReplyPipeline } from "openclaw/plugin-sdk/channel-reply-pipeline";
import { createPluginRuntimeStore } from "openclaw/plugin-sdk/runtime-store";
import { resolveControlCommandGate } from "openclaw/plugin-sdk/command-auth";
```
Для допоміжних функцій на стороні хоста використовуйте впроваджене
Для допоміжних засобів на стороні хоста використовуйте впроваджене
середовище виконання плагіна замість прямого імпорту:
```typescript
// До (застарілий міст extension-api)
// Before (deprecated extension-api bridge)
import { runEmbeddedPiAgent } from "openclaw/extension-api";
const result = await runEmbeddedPiAgent({ sessionId, prompt });
// Після (впроваджене середовище виконання)
// After (injected runtime)
const result = await api.runtime.agent.runEmbeddedPiAgent({ sessionId, prompt });
```
Такий самий шаблон застосовується й до інших застарілих допоміжних функцій
моста:
Такий самий шаблон застосовується до інших застарілих допоміжних засобів
мосту:
| Старий імпорт | Сучасний еквівалент |
| --- | --- |
@ -157,7 +157,7 @@ mono-repo, а не стабільними контрактами плагіні
| `resolveThinkingDefault` | `api.runtime.agent.resolveThinkingDefault` |
| `resolveAgentTimeoutMs` | `api.runtime.agent.resolveAgentTimeoutMs` |
| `ensureAgentWorkspace` | `api.runtime.agent.ensureAgentWorkspace` |
| допоміжні функції сховища сесій | `api.runtime.agent.session.*` |
| допоміжні засоби сховища сесій | `api.runtime.agent.session.*` |
</Step>
@ -174,171 +174,164 @@ mono-repo, а не стабільними контрактами плагіні
<Accordion title="Таблиця поширених шляхів імпорту">
| Шлях імпорту | Призначення | Ключові експорти |
| --- | --- | --- |
| `plugin-sdk/plugin-entry` | Канонічна допоміжна функція точки входу плагіна | `definePluginEntry` |
| `plugin-sdk/core` | Застарілий узагальнений повторний експорт для визначень / побудовників точок входу каналів | `defineChannelPluginEntry`, `createChatChannelPlugin` |
| `plugin-sdk/plugin-entry` | Канонічний допоміжний засіб точки входу плагіна | `definePluginEntry` |
| `plugin-sdk/core` | Застарілий узагальнений повторний експорт для визначень/конструкторів точок входу каналів | `defineChannelPluginEntry`, `createChatChannelPlugin` |
| `plugin-sdk/config-schema` | Експорт кореневої схеми конфігурації | `OpenClawSchema` |
| `plugin-sdk/provider-entry` | Допоміжна функція точки входу для одного провайдера | `defineSingleProviderPluginEntry` |
| `plugin-sdk/channel-core` | Цільові визначення та побудовники точок входу каналів | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
| `plugin-sdk/setup` | Спільні допоміжні функції майстра налаштування | Запити allowlist, побудовники статусу налаштування |
| `plugin-sdk/setup-runtime` | Допоміжні функції середовища виконання під час налаштування | Безпечні для імпорту адаптери патчів налаштування, допоміжні функції для приміток пошуку, `promptResolvedAllowFrom`, `splitSetupEntries`, делеговані проксі налаштування |
| `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` | Допоміжні функції ID облікового запису | `DEFAULT_ACCOUNT_ID`, нормалізація ID облікового запису |
| `plugin-sdk/account-resolution` | Допоміжні функції пошуку облікових записів | Допоміжні функції пошуку облікового запису + резервного використання значення за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні функції облікових записів | Допоміжні функції списку облікових записів / дій з обліковими записами |
| `plugin-sdk/provider-entry` | Допоміжний засіб точки входу для одного провайдера | `defineSingleProviderPluginEntry` |
| `plugin-sdk/channel-core` | Сфокусовані визначення та конструктори точок входу каналів | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування | Запити списку дозволених, конструктори стану налаштування |
| `plugin-sdk/setup-runtime` | Допоміжні засоби середовища виконання для етапу налаштування | Безпечні для імпорту адаптери патчів налаштування, допоміжні засоби приміток пошуку, `promptResolvedAllowFrom`, `splitSetupEntries`, делеговані проксі налаштування |
| `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`, нормалізація ідентифікатора облікового запису |
| `plugin-sdk/account-resolution` | Допоміжні засоби пошуку облікового запису | Допоміжні засоби пошуку облікового запису + резервного значення за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби для облікових записів | Допоміжні засоби списку облікових записів/дій з обліковими записами |
| `plugin-sdk/channel-setup` | Адаптери майстра налаштування | `createOptionalChannelSetupSurface`, `createOptionalChannelSetupAdapter`, `createOptionalChannelSetupWizard`, а також `DEFAULT_ACCOUNT_ID`, `createTopLevelChannelDmPolicy`, `setSetupChannelEnabled`, `splitSetupEntries` |
| `plugin-sdk/channel-pairing` | Примітиви парування DM | `createChannelPairingController` |
| `plugin-sdk/channel-reply-pipeline` | Префікс відповіді + підключення індикатора друку | `createChannelReplyPipeline` |
| `plugin-sdk/channel-pairing` | Примітиви прив’язування DM | `createChannelPairingController` |
| `plugin-sdk/channel-reply-pipeline` | Налаштування префікса відповіді та індикатора набору | `createChannelReplyPipeline` |
| `plugin-sdk/channel-config-helpers` | Фабрики адаптерів конфігурації | `createHybridChannelConfigAdapter` |
| `plugin-sdk/channel-config-schema` | Побудовники схем конфігурації | Типи схем конфігурації каналу |
| `plugin-sdk/telegram-command-config` | Допоміжні функції конфігурації команд Telegram | Нормалізація назв команд, обрізання описів, валідація дублікатів / конфліктів |
| `plugin-sdk/channel-policy` | Визначення політики груп / DM | `resolveChannelGroupRequireMention` |
| `plugin-sdk/channel-lifecycle` | Відстеження статусу облікового запису | `createAccountStatusSink` |
| `plugin-sdk/inbound-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/channel-config-schema` | Конструктори схем конфігурації | Типи схем конфігурації каналу |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби конфігурації команд Telegram | Нормалізація назв команд, обрізання описів, перевірка дублікатів/конфліктів |
| `plugin-sdk/channel-policy` | Визначення політики груп/DM | `resolveChannelGroupRequireMention` |
| `plugin-sdk/channel-lifecycle` | Відстеження стану облікового запису | `createAccountStatusSink` |
| `plugin-sdk/inbound-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/channel-runtime` | Застарілий shim сумісності | Лише застарілі утиліти середовища виконання каналу |
| `plugin-sdk/channel-send-result` | Типи результатів надсилання | Типи результатів відповіді |
| `plugin-sdk/runtime-store` | Постійне сховище плагіна | `createPluginRuntimeStore` |
| `plugin-sdk/runtime` | Широкі допоміжні функції середовища виконання | Допоміжні функції runtime / logging / backup / встановлення плагінів |
| `plugin-sdk/runtime-env` | Вузькі допоміжні функції середовища runtime | Logger / runtime env, timeout, retry і backoff helpers |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні функції runtime плагінів | Допоміжні функції команд / hooks / http / interactive плагінів |
| `plugin-sdk/hook-runtime` | Допоміжні функції конвеєра hooks | Спільні допоміжні функції конвеєра webhook / internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні функції лінивого runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні функції процесів | Спільні допоміжні функції exec |
| `plugin-sdk/cli-runtime` | Допоміжні функції CLI runtime | Форматування команд, очікування, допоміжні функції версій |
| `plugin-sdk/gateway-runtime` | Допоміжні функції gateway | Клієнт gateway і допоміжні функції патчів статусу каналу |
| `plugin-sdk/config-runtime` | Допоміжні функції конфігурації | Допоміжні функції завантаження / запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні функції команд Telegram | Допоміжні функції валідації команд Telegram зі стабільним резервним шляхом, коли поверхня контракту вбудованого Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні функції запитів на схвалення | Exec / plugin approval payload, approval capability / profile helpers, native approval routing / runtime helpers |
| `plugin-sdk/approval-auth-runtime` | Допоміжні функції авторизації схвалення | Визначення затверджувача, авторизація дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні функції клієнта схвалення | Допоміжні функції профілю / фільтра native exec approval |
| `plugin-sdk/approval-delivery-runtime` | Допоміжні функції доставки схвалення | Адаптери native approval capability / delivery |
| `plugin-sdk/approval-native-runtime` | Допоміжні функції цілей схвалення | Допоміжні функції native approval target / account binding |
| `plugin-sdk/approval-reply-runtime` | Допоміжні функції відповіді на схвалення | Допоміжні функції exec / plugin approval reply payload |
| `plugin-sdk/security-runtime` | Допоміжні функції безпеки | Спільні допоміжні функції trust, DM gating, external-content і збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні функції політики SSRF | Допоміжні функції allowlist хостів і політики приватної мережі |
| `plugin-sdk/ssrf-runtime` | Допоміжні функції SSRF runtime | Допоміжні функції pinned-dispatcher, guarded fetch, SSRF policy |
| `plugin-sdk/collection-runtime` | Допоміжні функції обмеженого кешу | `pruneMapToMaxSize` |
| `plugin-sdk/diagnostic-runtime` | Допоміжні функції діагностичного шлюзу | `isDiagnosticFlagEnabled`, `isDiagnosticsEnabled` |
| `plugin-sdk/error-runtime` | Допоміжні функції форматування помилок | `formatUncaughtError`, `isApprovalNotFoundError`, допоміжні функції графа помилок |
| `plugin-sdk/fetch-runtime` | Допоміжні функції обгорнутого fetch / proxy | `resolveFetch`, допоміжні функції proxy |
| `plugin-sdk/host-runtime` | Допоміжні функції нормалізації хоста | `normalizeHostname`, `normalizeScpRemoteHost` |
| `plugin-sdk/retry-runtime` | Допоміжні функції retry | `RetryConfig`, `retryAsync`, виконавці політик |
| `plugin-sdk/allow-from` | Форматування allowlist | `formatAllowFromLowercase` |
| `plugin-sdk/allowlist-resolution` | Мапінг вхідних даних allowlist | `mapAllowlistResolutionInputs` |
| `plugin-sdk/command-auth` | Шлюз команд і допоміжні функції поверхні команд | `resolveControlCommandGate`, допоміжні функції авторизації відправника, допоміжні функції реєстру команд |
| `plugin-sdk/secret-input` | Розбір введення секретів | Допоміжні функції введення секретів |
| `plugin-sdk/webhook-ingress` | Допоміжні функції запитів webhook | Утиліти цілей webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні функції захисту тіла запиту webhook | Допоміжні функції читання / обмеження тіла запиту |
| `plugin-sdk/reply-runtime` | Спільний runtime відповідей | Вхідна диспетчеризація, heartbeat, планувальник відповідей, chunking |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні функції диспетчеризації відповідей | Допоміжні функції finalize + provider dispatch |
| `plugin-sdk/reply-history` | Допоміжні функції історії відповідей | `buildHistoryContext`, `buildPendingHistoryContextFromMap`, `recordPendingHistoryEntry`, `clearHistoryEntriesIfEnabled` |
| `plugin-sdk/reply-reference` | Планування посилань відповіді | `createReplyReferencePlanner` |
| `plugin-sdk/reply-chunking` | Допоміжні функції chunk відповідей | Допоміжні функції 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 / string |
| `plugin-sdk/request-url` | Допоміжні функції URL запиту | Витягування URL-рядків із request-подібних входів |
| `plugin-sdk/run-command` | Допоміжні функції команд із таймером | Виконавець команд із нормалізованими stdout / stderr |
| `plugin-sdk/param-readers` | Зчитувачі параметрів | Загальні зчитувачі параметрів інструментів / CLI |
| `plugin-sdk/tool-send` | Витягування tool send | Витягування канонічних полів цілі надсилання з аргументів інструмента |
| `plugin-sdk/temp-path` | Допоміжні функції тимчасових шляхів | Спільні допоміжні функції тимчасових шляхів для завантажень |
| `plugin-sdk/logging-core` | Допоміжні функції логування | Логер підсистеми та допоміжні функції редагування чутливих даних |
| `plugin-sdk/markdown-table-runtime` | Допоміжні функції таблиць Markdown | Допоміжні режими таблиць Markdown |
| `plugin-sdk/reply-payload` | Типи payload відповідей повідомлень | Типи payload відповідей |
| `plugin-sdk/provider-setup` | Добірні допоміжні функції налаштування локальних / self-hosted провайдерів | Допоміжні функції виявлення / конфігурації self-hosted провайдерів |
| `plugin-sdk/self-hosted-provider-setup` | Цільові допоміжні функції налаштування OpenAI-compatible self-hosted провайдерів | Ті самі допоміжні функції виявлення / конфігурації self-hosted провайдерів |
| `plugin-sdk/provider-auth-runtime` | Допоміжні функції runtime авторизації провайдера | Допоміжні функції визначення API-ключів у runtime |
| `plugin-sdk/provider-auth-api-key` | Допоміжні функції налаштування API-ключів провайдера | Допоміжні функції онбордингу / запису профілю для API-ключів |
| `plugin-sdk/provider-auth-result` | Допоміжні функції результату авторизації провайдера | Стандартний побудовник OAuth auth-result |
| `plugin-sdk/provider-auth-login` | Допоміжні функції інтерактивного входу провайдера | Спільні допоміжні функції інтерактивного входу |
| `plugin-sdk/provider-env-vars` | Допоміжні функції env vars провайдера | Допоміжні функції пошуку env vars для авторизації провайдера |
| `plugin-sdk/provider-model-shared` | Спільні допоміжні функції моделей / replay провайдера | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники політик replay, допоміжні функції endpoint провайдера та нормалізації ID моделей |
| `plugin-sdk/provider-catalog-shared` | Спільні допоміжні функції каталогу провайдера | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
| `plugin-sdk/provider-onboard` | Патчі онбордингу провайдера | Допоміжні функції конфігурації онбордингу |
| `plugin-sdk/provider-http` | Допоміжні функції HTTP провайдера | Загальні допоміжні функції HTTP / можливостей endpoint провайдера |
| `plugin-sdk/provider-web-fetch` | Допоміжні функції web-fetch провайдера | Допоміжні функції реєстрації / кешування провайдера web-fetch |
| `plugin-sdk/provider-web-search` | Допоміжні функції web-search провайдера | Допоміжні функції реєстрації / кешування / конфігурації провайдера web-search |
| `plugin-sdk/provider-tools` | Допоміжні функції сумісності інструментів / схем провайдера | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схем Gemini + діагностика, а також допоміжні функції сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
| `plugin-sdk/provider-usage` | Допоміжні функції використання провайдера | `fetchClaudeUsage`, `fetchGeminiUsage`, `fetchGithubCopilotUsage` та інші допоміжні функції використання провайдера |
| `plugin-sdk/provider-stream` | Допоміжні функції обгортки потоку провайдера | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи обгорток потоку та спільні допоміжні функції обгорток Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
| `plugin-sdk/keyed-async-queue` | Впорядкована асинхронна черга | `KeyedAsyncQueue` |
| `plugin-sdk/media-runtime` | Спільні допоміжні функції медіа | Допоміжні функції отримання / перетворення / збереження медіа, а також побудовники медіапейлоадів |
| `plugin-sdk/media-understanding` | Допоміжні функції media-understanding | Типи провайдерів media understanding, а також експорти допоміжних функцій зображень / аудіо для провайдерів |
| `plugin-sdk/text-runtime` | Спільні допоміжні функції тексту | Прибирання видимого для асистента тексту, допоміжні функції render / chunking / table для markdown, редагування чутливих даних, допоміжні функції тегів директив, безпечного тексту та інші пов’язані текстові / logging helpers |
| `plugin-sdk/text-chunking` | Допоміжні функції chunking тексту | Допоміжна функція chunking вихідного тексту |
| `plugin-sdk/speech` | Допоміжні функції speech | Типи провайдерів speech, а також експорти директив, реєстру та валідації для провайдерів |
| `plugin-sdk/speech-core` | Спільне ядро speech | Типи провайдерів speech, реєстр, директиви, нормалізація |
| `plugin-sdk/realtime-transcription` | Допоміжні функції realtime transcription | Типи провайдерів і допоміжні функції реєстру |
| `plugin-sdk/realtime-voice` | Допоміжні функції realtime voice | Типи провайдерів і допоміжні функції реєстру |
| `plugin-sdk/image-generation-core` | Спільне ядро image generation | Допоміжні функції типів, failover, auth і реєстру image generation |
| `plugin-sdk/video-generation` | Допоміжні функції video generation | Типи провайдерів / запитів / результатів video generation |
| `plugin-sdk/video-generation-core` | Спільне ядро video generation | Типи video generation, допоміжні функції failover, пошуку провайдера та розбору model-ref |
| `plugin-sdk/interactive-runtime` | Допоміжні функції інтерактивних відповідей | Нормалізація / зменшення payload інтерактивних відповідей |
| `plugin-sdk/channel-config-primitives` | Примітиви конфігурації каналу | Вузькі примітиви channel config-schema |
| `plugin-sdk/channel-config-writes` | Допоміжні функції запису конфігурації каналу | Допоміжні функції авторизації запису конфігурації каналу |
| `plugin-sdk/channel-plugin-common` | Спільна прелюдія каналу | Експорти спільної прелюдії channel plugin |
| `plugin-sdk/channel-status` | Допоміжні функції статусу каналу | Спільні допоміжні функції знімка / підсумку статусу каналу |
| `plugin-sdk/allowlist-config-edit` | Допоміжні функції конфігурації allowlist | Допоміжні функції редагування / читання конфігурації allowlist |
| `plugin-sdk/group-access` | Допоміжні функції доступу до груп | Спільні допоміжні функції визначення доступу до груп |
| `plugin-sdk/direct-dm` | Допоміжні функції direct-DM | Спільні допоміжні функції auth / guard для direct-DM |
| `plugin-sdk/extension-shared` | Спільні допоміжні функції розширень | Примітиви допоміжних функцій passive-channel / status |
| `plugin-sdk/webhook-targets` | Допоміжні функції цілей webhook | Реєстр цілей webhook і допоміжні функції встановлення маршрутів |
| `plugin-sdk/webhook-path` | Допоміжні функції шляхів webhook | Допоміжні функції нормалізації шляхів webhook |
| `plugin-sdk/web-media` | Спільні допоміжні функції web media | Допоміжні функції завантаження віддалених / локальних медіа |
| `plugin-sdk/zod` | Повторний експорт Zod | Повторно експортований `zod` для споживачів plugin SDK |
| `plugin-sdk/memory-core` | Вбудовані допоміжні функції memory-core | Поверхня допоміжних функцій менеджера пам’яті / конфігурації / файлів / CLI |
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime рушія пам’яті | Фасад runtime індексації / пошуку пам’яті |
| `plugin-sdk/memory-core-host-engine-foundation` | Базовий рушій memory host | Експорти базового рушія memory host |
| `plugin-sdk/memory-core-host-engine-embeddings` | Рушій embedding memory host | Експорти рушія embedding memory host |
| `plugin-sdk/memory-core-host-engine-qmd` | Рушій QMD memory host | Експорти рушія QMD memory host |
| `plugin-sdk/memory-core-host-engine-storage` | Рушій сховища memory host | Експорти рушія сховища memory host |
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні функції multimodal memory host | Допоміжні функції multimodal memory host |
| `plugin-sdk/memory-core-host-query` | Допоміжні функції query memory host | Допоміжні функції query memory host |
| `plugin-sdk/memory-core-host-secret` | Допоміжні функції secret memory host | Допоміжні функції secret memory host |
| `plugin-sdk/memory-core-host-events` | Допоміжні функції журналу подій memory host | Допоміжні функції журналу подій memory host |
| `plugin-sdk/memory-core-host-status` | Допоміжні функції статусу memory host | Допоміжні функції статусу memory host |
| `plugin-sdk/memory-core-host-runtime-cli` | CLI runtime memory host | Допоміжні функції CLI runtime memory host |
| `plugin-sdk/memory-core-host-runtime-core` | Core runtime memory host | Допоміжні функції core runtime memory host |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні функції файлів / runtime memory host | Допоміжні функції файлів / runtime memory host |
| `plugin-sdk/memory-host-core` | Псевдонім core runtime memory host | Нейтральний щодо постачальника псевдонім допоміжних функцій core runtime memory host |
| `plugin-sdk/memory-host-events` | Псевдонім журналу подій memory host | Нейтральний щодо постачальника псевдонім допоміжних функцій журналу подій memory host |
| `plugin-sdk/memory-host-files` | Псевдонім файлів / runtime memory host | Нейтральний щодо постачальника псевдонім допоміжних функцій файлів / runtime memory host |
| `plugin-sdk/memory-host-markdown` | Допоміжні функції керованого markdown | Спільні допоміжні функції керованого markdown для плагінів, суміжних із пам’яттю |
| `plugin-sdk/memory-host-search` | Фасад пошуку активної пам’яті | Лінивий фасад runtime менеджера пошуку активної пам’яті |
| `plugin-sdk/memory-host-status` | Псевдонім статусу memory host | Нейтральний щодо постачальника псевдонім допоміжних функцій статусу memory host |
| `plugin-sdk/memory-lancedb` | Вбудовані допоміжні функції memory-lancedb | Поверхня допоміжних функцій memory-lancedb |
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні функції тестування та mocks |
| `plugin-sdk/runtime` | Широкі допоміжні засоби середовища виконання | Допоміжні засоби runtime/логування/резервного копіювання/встановлення плагіна |
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби оточення runtime | Допоміжні засоби логера/оточення runtime, таймаутів, повторів і backoff |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби runtime плагіна | Допоміжні засоби команд/хуків/http/інтерактивної взаємодії плагіна |
| `plugin-sdk/hook-runtime` | Допоміжні засоби конвеєра хуків | Спільні допоміжні засоби конвеєра webhook/внутрішніх хуків |
| `plugin-sdk/lazy-runtime` | Допоміжні засоби відкладеного runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні засоби процесів | Спільні допоміжні засоби exec |
| `plugin-sdk/cli-runtime` | Допоміжні засоби CLI runtime | Форматування команд, очікування, допоміжні засоби версій |
| `plugin-sdk/gateway-runtime` | Допоміжні засоби gateway | Клієнт gateway і допоміжні засоби патчів стану каналу |
| `plugin-sdk/config-runtime` | Допоміжні засоби конфігурації | Допоміжні засоби завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби команд Telegram | Допоміжні засоби перевірки команд Telegram зі стабільним резервним варіантом, коли поверхня контракту вбудованого Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні засоби запитів на погодження | Навантаження погодження exec/плагіна, допоміжні засоби можливостей/профілю погодження, нативна маршрутизація/середовище виконання погодження |
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби автентифікації погодження | Визначення затверджувача, автентифікація дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби клієнта погодження | Допоміжні засоби профілю/фільтра нативного погодження exec |
| `plugin-sdk/approval-delivery-runtime` | Допоміжні засоби доставки погодження | Адаптери можливостей/доставки нативного погодження |
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби цілей погодження | Допоміжні засоби прив’язування цілей/облікових записів нативного погодження |
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби відповідей на погодження | Допоміжні засоби навантаження відповіді погодження exec/плагіна |
| `plugin-sdk/security-runtime` | Допоміжні засоби безпеки | Спільні допоміжні засоби довіри, шлюзування DM, зовнішнього вмісту та збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні засоби політики SSRF | Допоміжні засоби списку дозволених хостів і політики приватної мережі |
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби SSRF runtime | Закріплений dispatcher, guarded fetch, допоміжні засоби політики SSRF |
| `plugin-sdk/collection-runtime` | Допоміжні засоби обмеженого кешу | `pruneMapToMaxSize` |
| `plugin-sdk/diagnostic-runtime` | Допоміжні засоби шлюзування діагностики | `isDiagnosticFlagEnabled`, `isDiagnosticsEnabled` |
| `plugin-sdk/error-runtime` | Допоміжні засоби форматування помилок | `formatUncaughtError`, `isApprovalNotFoundError`, допоміжні засоби графа помилок |
| `plugin-sdk/fetch-runtime` | Допоміжні засоби обгорнутого fetch/proxy | `resolveFetch`, допоміжні засоби proxy |
| `plugin-sdk/host-runtime` | Допоміжні засоби нормалізації хоста | `normalizeHostname`, `normalizeScpRemoteHost` |
| `plugin-sdk/retry-runtime` | Допоміжні засоби повтору | `RetryConfig`, `retryAsync`, виконавці політик |
| `plugin-sdk/allow-from` | Форматування списку дозволених | `formatAllowFromLowercase` |
| `plugin-sdk/allowlist-resolution` | Мапування вхідних даних списку дозволених | `mapAllowlistResolutionInputs` |
| `plugin-sdk/command-auth` | Допоміжні засоби шлюзування команд і поверхні команд | `resolveControlCommandGate`, допоміжні засоби авторизації відправника, допоміжні засоби реєстру команд |
| `plugin-sdk/secret-input` | Розбір секретного вводу | Допоміжні засоби секретного вводу |
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запитів webhook | Утиліти цілей webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби захисту запитів webhook | Допоміжні засоби читання/обмеження тіла запиту |
| `plugin-sdk/reply-runtime` | Спільне середовище виконання відповіді | Вхідна диспетчеризація, heartbeat, планувальник відповіді, розбиття на частини |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби диспетчеризації відповіді | Допоміжні засоби фіналізації + диспетчеризації провайдера |
| `plugin-sdk/reply-history` | Допоміжні засоби історії відповідей | `buildHistoryContext`, `buildPendingHistoryContextFromMap`, `recordPendingHistoryEntry`, `clearHistoryEntriesIfEnabled` |
| `plugin-sdk/reply-reference` | Планування посилань на відповіді | `createReplyReferencePlanner` |
| `plugin-sdk/reply-chunking` | Допоміжні засоби розбиття відповіді | Допоміжні засоби розбиття тексту/markdown |
| `plugin-sdk/session-store-runtime` | Допоміжні засоби сховища сесій | Допоміжні засоби шляху сховища + updated-at |
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів стану | Допоміжні засоби каталогів стану та 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 запитів | Витяг рядкових URL із request-подібних вхідних даних |
| `plugin-sdk/run-command` | Допоміжні засоби команд із таймаутом | Виконавець команд із таймаутом і нормалізованими stdout/stderr |
| `plugin-sdk/param-readers` | Зчитувачі параметрів | Поширені зчитувачі параметрів інструментів/CLI |
| `plugin-sdk/tool-send` | Витягування надсилання інструмента | Витяг канонічних полів цілі надсилання з аргументів інструмента |
| `plugin-sdk/temp-path` | Допоміжні засоби тимчасових шляхів | Спільні допоміжні засоби шляху тимчасового завантаження |
| `plugin-sdk/logging-core` | Допоміжні засоби логування | Логер підсистеми й допоміжні засоби редагування |
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби markdown-таблиць | Допоміжні засоби режиму markdown-таблиць |
| `plugin-sdk/reply-payload` | Типи відповідей повідомлень | Типи навантаження відповіді |
| `plugin-sdk/provider-setup` | Кураторські допоміжні засоби налаштування локальних/self-hosted провайдерів | Допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted провайдерів, сумісних з OpenAI | Ті самі допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби runtime-автентифікації провайдера | Допоміжні засоби визначення API-ключа під час виконання |
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби налаштування API-ключа провайдера | Допоміжні засоби онбордингу/запису профілю API-ключа |
| `plugin-sdk/provider-auth-result` | Допоміжні засоби результату автентифікації провайдера | Стандартний конструктор результату OAuth-автентифікації |
| `plugin-sdk/provider-auth-login` | Допоміжні засоби інтерактивного входу провайдера | Спільні допоміжні засоби інтерактивного входу |
| `plugin-sdk/provider-env-vars` | Допоміжні засоби змінних середовища провайдера | Допоміжні засоби пошуку auth env vars провайдера |
| `plugin-sdk/provider-model-shared` | Спільні допоміжні засоби моделі/повторного відтворення провайдера | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори політики повторного відтворення, допоміжні засоби endpoint провайдера та нормалізації ідентифікатора моделі |
| `plugin-sdk/provider-catalog-shared` | Спільні допоміжні засоби каталогу провайдера | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
| `plugin-sdk/provider-onboard` | Патчі онбордингу провайдера | Допоміжні засоби конфігурації онбордингу |
| `plugin-sdk/provider-http` | Допоміжні засоби HTTP провайдера | Загальні допоміжні засоби можливостей HTTP/endpoint провайдера |
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби web-fetch провайдера | Допоміжні засоби реєстрації/кешу провайдера web-fetch |
| `plugin-sdk/provider-web-search` | Допоміжні засоби web-search провайдера | Допоміжні засоби реєстрації/кешу/конфігурації провайдера web-search |
| `plugin-sdk/provider-tools` | Допоміжні засоби сумісності інструментів/схем провайдера | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + діагностика та допоміжні засоби сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
| `plugin-sdk/provider-usage` | Допоміжні засоби використання провайдера | `fetchClaudeUsage`, `fetchGeminiUsage`, `fetchGithubCopilotUsage` та інші допоміжні засоби використання провайдера |
| `plugin-sdk/provider-stream` | Допоміжні засоби обгортки потоку провайдера | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи обгорток потоку та спільні допоміжні засоби обгорток Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
| `plugin-sdk/keyed-async-queue` | Упорядкована асинхронна черга | `KeyedAsyncQueue` |
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби медіа | Допоміжні засоби отримання/перетворення/зберігання медіа плюс конструктори медіанавантаження |
| `plugin-sdk/media-understanding` | Допоміжні засоби media-understanding | Типи провайдера media understanding плюс орієнтовані на провайдера експорти допоміжних засобів зображень/аудіо |
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту | Видалення видимого для асистента тексту, рендеринг/розбиття/таблиці markdown, редагування, допоміжні засоби тегів директив, утиліти безпечного тексту та пов’язані допоміжні засоби тексту/логування |
| `plugin-sdk/text-chunking` | Допоміжні засоби розбиття тексту | Допоміжний засіб розбиття вихідного тексту |
| `plugin-sdk/speech` | Допоміжні засоби speech | Типи speech-провайдера плюс орієнтовані на провайдера допоміжні засоби директив, реєстру та перевірки |
| `plugin-sdk/speech-core` | Спільне ядро speech | Типи speech-провайдера, реєстр, директиви, нормалізація |
| `plugin-sdk/realtime-transcription` | Допоміжні засоби транскрипції в реальному часі | Типи провайдера та допоміжні засоби реєстру |
| `plugin-sdk/realtime-voice` | Допоміжні засоби голосу в реальному часі | Типи провайдера та допоміжні засоби реєстру |
| `plugin-sdk/image-generation-core` | Спільне ядро генерації зображень | Допоміжні засоби типів, failover, auth і реєстру для генерації зображень |
| `plugin-sdk/video-generation` | Допоміжні засоби генерації відео | Типи провайдера/запиту/результату генерації відео |
| `plugin-sdk/video-generation-core` | Спільне ядро генерації відео | Допоміжні засоби типів генерації відео, failover, пошуку провайдера та розбору model-ref |
| `plugin-sdk/interactive-runtime` | Допоміжні засоби інтерактивних відповідей | Нормалізація/скорочення навантаження інтерактивних відповідей |
| `plugin-sdk/channel-config-primitives` | Примітиви конфігурації каналу | Вузькі примітиви schema конфігурації каналу |
| `plugin-sdk/channel-config-writes` | Допоміжні засоби запису конфігурації каналу | Допоміжні засоби авторизації запису конфігурації каналу |
| `plugin-sdk/channel-plugin-common` | Спільна преамбула каналу | Експорти спільної преамбули плагіна каналу |
| `plugin-sdk/channel-status` | Допоміжні засоби стану каналу | Спільні допоміжні засоби знімка/зведення стану каналу |
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби конфігурації списку дозволених | Допоміжні засоби редагування/читання конфігурації списку дозволених |
| `plugin-sdk/group-access` | Допоміжні засоби доступу до груп | Спільні допоміжні засоби рішень щодо доступу до груп |
| `plugin-sdk/direct-dm` | Допоміжні засоби прямих DM | Спільні допоміжні засоби auth/guard для прямих DM |
| `plugin-sdk/extension-shared` | Спільні допоміжні засоби розширення | Примітиви допоміжних засобів пасивного каналу/стану |
| `plugin-sdk/webhook-targets` | Допоміжні засоби цілей webhook | Реєстр цілей webhook і допоміжні засоби встановлення маршрутів |
| `plugin-sdk/webhook-path` | Допоміжні засоби шляху webhook | Допоміжні засоби нормалізації шляху webhook |
| `plugin-sdk/web-media` | Спільні допоміжні засоби web media | Допоміжні засоби завантаження віддалених/локальних медіа |
| `plugin-sdk/zod` | Повторний експорт Zod | Повторно експортований `zod` для споживачів SDK плагінів |
| `plugin-sdk/memory-core` | Вбудовані допоміжні засоби memory-core | Поверхня допоміжних засобів memory manager/config/file/CLI |
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime рушія memory | Фасад runtime індексування/пошуку memory |
| `plugin-sdk/memory-core-host-engine-foundation` | Базовий рушій memory для хоста | Експорти базового рушія memory для хоста |
| `plugin-sdk/memory-core-host-engine-embeddings` | Рушій embeddings memory для хоста | Експорти рушія embeddings memory для хоста |
| `plugin-sdk/memory-core-host-engine-qmd` | Рушій QMD memory для хоста | Експорти рушія QMD memory для хоста |
| `plugin-sdk/memory-core-host-engine-storage` | Рушій зберігання memory для хоста | Експорти рушія зберігання memory для хоста |
| `plugin-sdk/memory-core-host-multimodal` | Багатомодальні допоміжні засоби memory для хоста | Багатомодальні допоміжні засоби memory для хоста |
| `plugin-sdk/memory-core-host-query` | Допоміжні засоби запитів memory для хоста | Допоміжні засоби запитів memory для хоста |
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби секретів memory для хоста | Допоміжні засоби секретів memory для хоста |
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби стану memory для хоста | Допоміжні засоби стану memory для хоста |
| `plugin-sdk/memory-core-host-runtime-cli` | CLI runtime memory для хоста | Допоміжні засоби CLI runtime memory для хоста |
| `plugin-sdk/memory-core-host-runtime-core` | Базовий runtime memory для хоста | Допоміжні засоби базового runtime memory для хоста |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби файлів/runtime memory для хоста | Допоміжні засоби файлів/runtime memory для хоста |
| `plugin-sdk/memory-lancedb` | Вбудовані допоміжні засоби memory-lancedb | Поверхня допоміжних засобів memory-lancedb |
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні засоби тестування та mock-об’єкти |
</Accordion>
Ця таблиця навмисно містить поширену підмножину для міграції, а не повну
поверхню SDK. Повний список із понад 200 точок входу міститься у
`scripts/lib/plugin-sdk-entrypoints.json`.
Цей список досі містить деякі seam-інтерфейси допоміжних функцій вбудованих
плагінів, наприклад `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
`plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Вони
й надалі експортуються для підтримки та сумісності вбудованих плагінів, але їх
навмисно пропущено в таблиці поширених шляхів міграції, і вони не є
рекомендованою ціллю для нового коду плагінів.
Цей список усе ще містить деякі допоміжні шви вбудованих плагінів, як-от
`plugin-sdk/feishu`, `plugin-sdk/feishu-setup`, `plugin-sdk/zalo`,
`plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Вони й далі експортуються для
підтримки вбудованих плагінів і сумісності, але навмисно не включені до
таблиці поширеної міграції й не є рекомендованою ціллю для нового коду
плагінів.
Те саме правило застосовується до інших сімейств вбудованих допоміжних
функцій, таких як:
Те саме правило застосовується до інших сімейств вбудованих допоміжних засобів,
таких як:
- допоміжні функції підтримки браузера: `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-support`
- допоміжні засоби підтримки браузера: `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-support`
- Matrix: `plugin-sdk/matrix*`
- LINE: `plugin-sdk/line*`
- IRC: `plugin-sdk/irc*`
- поверхні вбудованих допоміжних функцій / плагінів, такі як `plugin-sdk/googlechat`,
- поверхні вбудованих допоміжних засобів/плагінів, як-от `plugin-sdk/googlechat`,
`plugin-sdk/zalouser`, `plugin-sdk/bluebubbles*`,
`plugin-sdk/mattermost*`, `plugin-sdk/msteams`,
`plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`,
@ -348,38 +341,38 @@ mono-repo, а не стабільними контрактами плагіні
`plugin-sdk/thread-ownership` і `plugin-sdk/voice-call`
`plugin-sdk/github-copilot-token` наразі надає вузьку поверхню допоміжних
функцій токена: `DEFAULT_COPILOT_API_BASE_URL`,
засобів токена: `DEFAULT_COPILOT_API_BASE_URL`,
`deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken`.
Використовуйте найвужчий імпорт, який відповідає завданню. Якщо ви не можете
знайти експорт, перевірте вихідний код у `src/plugin-sdk/` або запитайте в Discord.
Використовуйте найвужчий імпорт, який відповідає задачі. Якщо ви не можете
знайти експорт, перегляньте джерело в `src/plugin-sdk/` або запитайте в Discord.
## Часова шкала видалення
## Хронологія видалення
| Коли | Що відбувається |
| ---------------------- | ----------------------------------------------------------------------- |
| **Зараз** | Застарілі поверхні виводять попередження під час виконання |
| **Наступний мажорний випуск** | Застарілі поверхні буде видалено; плагіни, які їх досі використовують, перестануть працювати |
| **Зараз** | Застарілі поверхні видають попередження під час виконання |
| **Наступний великий випуск** | Застарілі поверхні буде видалено; плагіни, які все ще їх використовують, перестануть працювати |
Усі основні плагіни вже перенесено. Зовнішні плагіни слід перенести до
наступного мажорного випуску.
Усі основні плагіни вже мігрували. Зовнішнім плагінам слід виконати міграцію
до наступного великого випуску.
## Тимчасове приглушення попереджень
Установіть ці змінні середовища, поки працюєте над міграцією:
Установіть ці змінні середовища, поки ви працюєте над міграцією:
```bash
OPENCLAW_SUPPRESS_PLUGIN_SDK_COMPAT_WARNING=1 openclaw gateway run
OPENCLAW_SUPPRESS_EXTENSION_API_WARNING=1 openclaw gateway run
```
Це тимчасовий обхідний механізм, а не постійне рішення.
Це тимчасовий обхідний шлях, а не постійне рішення.
## Пов’язане
- [Початок роботи](/uk/plugins/building-plugins) — створіть свій перший плагін
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник підшляхів імпорту
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник імпортів за підшляхами
- [Плагіни каналів](/uk/plugins/sdk-channel-plugins) — створення плагінів каналів
- [Плагіни провайдерів](/uk/plugins/sdk-provider-plugins) — створення плагінів провайдерів
- [Внутрішня будова плагінів](/uk/plugins/architecture) — глибоке занурення в архітектуру
- [Внутрішня будова плагінів](/uk/plugins/architecture) — детальний розбір архітектури
- [Маніфест плагіна](/uk/plugins/manifest) — довідник схеми маніфесту

View File

@ -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-05T21:37:00Z"
generated_at: "2026-04-05T21:47:19Z"
model: gpt-5.4
provider: openai
source_hash: 16f570adb0f98c70862fe1adbe875d217a350f1945159e6f1de66081a0e5a09a
source_hash: d70ea8cc1343b2dc1b4243b0562d19bebb1fdf7eb5065220b17e87cfd8aecc3e
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,312 +36,303 @@ 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`.
Не додавайте й не використовуйте зручні seams з іменами provider, такі як
Не додавайте й не використовуйте зручні шари з назвами провайдерів, як-от
`openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або
допоміжні seams із брендуванням channel. Bundled plugins мають компонувати узагальнені
підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а core
має або використовувати ці локальні для plugin barrel-файли, або додавати вузький узагальнений SDK
контракт, коли потреба справді є міжканальною.
допоміжні шари з брендуванням каналу. Вбудовані плагіни мають компонувати
загальні підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а ядро
має або використовувати ці локальні barrel-файли плагіна, або додавати вузький загальний
контракт SDK, якщо потреба справді є міжканальною.
Згенерована карта експортів усе ще містить невеликий набір допоміжних
seams для bundled plugins, таких як `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
шарів для вбудованих плагінів, таких як `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
`plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Ці
підшляхи існують лише для супроводу bundled plugins і сумісності; їх
навмисно не включено до поширеної таблиці нижче, і вони не є рекомендованим
шляхом імпорту для нових сторонніх plugins.
підшляхи існують лише для підтримки вбудованих плагінів і сумісності; їх
навмисно пропущено в основній таблиці нижче, і вони не є рекомендованим
шляхом імпорту для нових сторонніх плагінів.
## Довідник підшляхів
Найуживаніші підшляхи, згруповані за призначенням. Згенерований повний список із
понад 200 підшляхів міститься в `scripts/lib/plugin-sdk-entrypoints.json`.
Зарезервовані допоміжні підшляхи bundled plugins усе ще з’являються в цьому згенерованому списку.
Розглядайте їх як деталі реалізації / поверхні сумісності, якщо лише якась сторінка документації
явно не позначає один із них як публічний.
Зарезервовані допоміжні підшляхи вбудованих плагінів усе ще з’являються в цьому
згенерованому списку. Розглядайте їх як поверхні деталей реалізації/сумісності, якщо сторінка документації
явно не просуває якийсь із них як публічний.
### Plugin entry
### Вхідна точка плагіна
| Subpath | Key exports |
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| Підшлях | Ключові експорти |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `plugin-sdk/plugin-entry` | `definePluginEntry` |
| `plugin-sdk/core` | `defineChannelPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase`, `defineSetupPluginEntry`, `buildChannelConfigSchema` |
| `plugin-sdk/config-schema` | `OpenClawSchema` |
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
<AccordionGroup>
<Accordion title="Підшляхи channel">
| Subpath | Key exports |
<Accordion title="Підшляхи каналу">
| Підшлях | Ключові експорти |
| --- | --- |
| `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` | Спільні допоміжні засоби майстра налаштування, підказки allowlist, конструктори статусу налаштування |
| `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`, допоміжні засоби нормалізації id облікового запису |
| `plugin-sdk/account-resolution` | Допоміжні засоби пошуку облікового запису + резервного використання значення за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби для списків облікових записів / дій з обліковими записами |
| `plugin-sdk/account-core` | Допоміжні засоби багатооблікової конфігурації/action-gate, допоміжні засоби fallback для облікового запису за замовчуванням |
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні засоби нормалізації ID облікового запису |
| `plugin-sdk/account-resolution` | Допоміжні засоби пошуку облікового запису + fallback за замовчуванням |
| `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-контракту |
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації каналу |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби нормалізації/валідації користувацьких команд Telegram із fallback на вбудований контракт |
| `plugin-sdk/channel-policy` | `resolveChannelGroupRequireMention` |
| `plugin-sdk/channel-lifecycle` | `createAccountStatusSink` |
| `plugin-sdk/inbound-envelope` | Спільні допоміжні засоби маршрутизації вхідних повідомлень + побудови envelope |
| `plugin-sdk/inbound-envelope` | Спільні допоміжні засоби для route вхідних повідомлень + побудови envelope |
| `plugin-sdk/inbound-reply-dispatch` | Спільні допоміжні засоби запису та диспетчеризації вхідних повідомлень |
| `plugin-sdk/messaging-targets` | Допоміжні засоби розбору/зіставлення цілей |
| `plugin-sdk/outbound-media` | Спільні допоміжні засоби завантаження вихідних медіа |
| `plugin-sdk/outbound-runtime` | Допоміжні засоби для ідентичності вихідних повідомлень / делегування надсилання |
| `plugin-sdk/thread-bindings-runtime` | Допоміжні засоби життєвого циклу thread-binding і адаптерів |
| `plugin-sdk/agent-media-payload` | Застарілий конструктор медіа payload агента |
| `plugin-sdk/conversation-runtime` | Допоміжні засоби прив’язки conversation/thread, pairing і configured-binding |
| `plugin-sdk/runtime-config-snapshot` | Допоміжний засіб знімка runtime-конфігурації |
| `plugin-sdk/runtime-group-policy` | Допоміжні засоби визначення runtime-політики груп |
| `plugin-sdk/channel-status` | Спільні допоміжні засоби знімка/підсумку стану channel |
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви schema конфігурації channel |
| `plugin-sdk/channel-config-writes` | Допоміжні засоби авторизації запису конфігурації channel |
| `plugin-sdk/channel-plugin-common` | Спільні prelude-експорти plugin channel |
| `plugin-sdk/outbound-runtime` | Допоміжні засоби для вихідної ідентичності/send delegate |
| `plugin-sdk/thread-bindings-runtime` | Допоміжні засоби життєвого циклу прив’язок потоків і адаптерів |
| `plugin-sdk/agent-media-payload` | Застарілий конструктор медіапейлоаду агента |
| `plugin-sdk/conversation-runtime` | Допоміжні засоби для прив’язки розмови/потоку, pairing і configured-binding |
| `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` | Спільні прелюд-експорти плагіна каналу |
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби редагування/читання конфігурації allowlist |
| `plugin-sdk/group-access` | Спільні допоміжні засоби прийняття рішень щодо доступу груп |
| `plugin-sdk/group-access` | Спільні допоміжні засоби прийняття рішень щодо групового доступу |
| `plugin-sdk/direct-dm` | Спільні допоміжні засоби автентифікації/захисту direct-DM |
| `plugin-sdk/interactive-runtime` | Допоміжні засоби нормалізації/скорочення payload інтерактивних відповідей |
| `plugin-sdk/channel-inbound` | Допоміжні засоби debounce, зіставлення згадок і envelope |
| `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` | Допоміжні засоби розбору/зіставлення цілей |
| `plugin-sdk/channel-contract` | Типи контракту channel |
| `plugin-sdk/channel-contract` | Типи контракту каналу |
| `plugin-sdk/channel-feedback` | Підключення feedback/reaction |
</Accordion>
<Accordion title="Підшляхи provider">
| Subpath | Key exports |
<Accordion title="Підшляхи провайдера">
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
| `plugin-sdk/provider-setup` | Відібрані допоміжні засоби налаштування локальних/self-hosted provider |
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted provider, сумісних з OpenAI |
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби визначення API-ключа під час виконання для provider plugins |
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби онбордингу API-ключа / запису профілю |
| `plugin-sdk/provider-setup` | Добірні допоміжні засоби налаштування локального/self-hosted провайдера |
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted провайдера, сумісного з OpenAI |
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби визначення API-ключа в runtime для плагінів провайдерів |
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби онбордингу/запису профілю API-ключа |
| `plugin-sdk/provider-auth-result` | Стандартний конструктор результату OAuth-автентифікації |
| `plugin-sdk/provider-auth-login` | Спільні допоміжні засоби інтерактивного входу для provider plugins |
| `plugin-sdk/provider-env-vars` | Допоміжні засоби пошуку env vars автентифікації provider |
| `plugin-sdk/provider-auth-login` | Спільні допоміжні засоби інтерактивного входу для плагінів провайдерів |
| `plugin-sdk/provider-env-vars` | Допоміжні засоби пошуку env vars для автентифікації провайдера |
| `plugin-sdk/provider-auth` | `createProviderApiKeyAuthMethod`, `ensureApiKeyFromOptionEnvOrPrompt`, `upsertAuthProfile` |
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори політик replay, допоміжні засоби endpoint provider і допоміжні засоби нормалізації id моделей, такі як `normalizeNativeXaiModelId` |
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори replay-policy, допоміжні засоби endpoint провайдера та нормалізації ID моделей, як-от `normalizeNativeXaiModelId` |
| `plugin-sdk/provider-catalog-shared` | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
| `plugin-sdk/provider-http` | Узагальнені допоміжні засоби HTTP/можливостей endpoint provider |
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби реєстрації/кешування provider web-fetch |
| `plugin-sdk/provider-web-search` | Допоміжні засоби реєстрації/кешування/конфігурації provider 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` | Допоміжні засоби виправлення конфігурації онбордингу |
| `plugin-sdk/global-singleton` | Допоміжні засоби локального для процесу singleton/map/cache |
| `plugin-sdk/provider-http` | Загальні допоміжні засоби HTTP/можливостей endpoint провайдера |
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби реєстрації/кешу провайдера web-fetch |
| `plugin-sdk/provider-web-search` | Допоміжні засоби реєстрації/кешу/конфігурації провайдера 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` | Допоміжні засоби патчів конфігурації онбордингу |
| `plugin-sdk/global-singleton` | Допоміжні засоби process-local singleton/map/cache |
</Accordion>
<Accordion title="Підшляхи автентифікації та безпеки">
| Subpath | Key exports |
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні засоби реєстру команд, допоміжні засоби авторизації відправника |
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби визначення погоджувача та автентифікації дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби профілю/фільтра native exec approval |
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби визначення approver і action-auth у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби профілю/фільтрів native exec approval |
| `plugin-sdk/approval-delivery-runtime` | Адаптери native approval capability/delivery |
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби цілі native approval + прив’язки облікового запису |
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби payload відповіді для exec/plugin approval |
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби target і прив’язки облікового запису для 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` | Допоміжні засоби нормалізації тіла команди та поверхні команди |
| `plugin-sdk/command-surface` | Допоміжні засоби нормалізації тіла команди та command-surface |
| `plugin-sdk/allow-from` | `formatAllowFromLowercase` |
| `plugin-sdk/security-runtime` | Спільні допоміжні засоби довіри, DM gating, external-content і збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні засоби allowlist хостів і політики SSRF для приватної мережі |
| `plugin-sdk/security-runtime` | Спільні допоміжні засоби для довіри, DM gating, external-content і збору секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні засоби політики host allowlist і SSRF для приватних мереж |
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби pinned-dispatcher, fetch із захистом SSRF і політики SSRF |
| `plugin-sdk/secret-input` | Допоміжні засоби розбору секретного вводу |
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запитів/цілей webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби обмеження розміру тіла запиту / таймауту |
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запиту/цілі webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби для розміру body/timeout запиту |
</Accordion>
<Accordion title="Підшляхи runtime та сховища">
| Subpath | Key exports |
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/runtime` | Широка поверхня допоміжних засобів runtime/логування/резервного копіювання/встановлення plugin |
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби runtime env, logger, timeout, retry і backoff |
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime/logging/backup/plugin-install |
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби env runtime, logger, timeout, retry і backoff |
| `plugin-sdk/runtime-store` | `createPluginRuntimeStore` |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби команд/hook/http/interactive для plugin |
| `plugin-sdk/hook-runtime` | Спільні допоміжні засоби пайплайна webhook/internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy runtime import/binding, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби для команд/hook/http/interactive плагіна |
| `plugin-sdk/hook-runtime` | Спільні допоміжні засоби для конвеєра webhook/internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy import/binding у runtime, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні засоби виконання процесів |
| `plugin-sdk/cli-runtime` | Допоміжні засоби форматування CLI, очікування та визначення версії |
| `plugin-sdk/gateway-runtime` | Допоміжні засоби клієнта gateway і patch стану channel |
| `plugin-sdk/cli-runtime` | Допоміжні засоби форматування CLI, очікування та версій |
| `plugin-sdk/gateway-runtime` | Допоміжні засоби клієнта Gateway і патчів статусу каналу |
| `plugin-sdk/config-runtime` | Допоміжні засоби завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби нормалізації назв/описів команд Telegram і перевірки дублікатів/конфліктів, навіть коли поверхня bundled контракту Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні засоби exec/plugin approval, конструктори approval capability, допоміжні засоби auth/profile, native routing/runtime |
| `plugin-sdk/reply-runtime` | Спільні допоміжні засоби inbound/reply runtime, chunking, dispatch, heartbeat, планувальник відповідей |
| `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-history` | Спільні допоміжні засоби short-window reply-history, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
| `plugin-sdk/reply-reference` | `createReplyReferencePlanner` |
| `plugin-sdk/reply-chunking` | Вузькі допоміжні засоби chunking тексту/markdown |
| `plugin-sdk/reply-chunking` | Вузькі допоміжні засоби chunking для text/markdown |
| `plugin-sdk/session-store-runtime` | Допоміжні засоби шляху сховища сесій + updated-at |
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів до каталогів state/OAuth |
| `plugin-sdk/routing` | Допоміжні засоби маршрутизації/ключа сесії/прив’язки облікового запису, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
| `plugin-sdk/status-helpers` | Спільні допоміжні засоби підсумку стану channel/облікового запису, значення за замовчуванням стану runtime і допоміжні засоби метаданих проблем |
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні засоби визначення цілей |
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів каталогу state/OAuth |
| `plugin-sdk/routing` | Допоміжні засоби прив’язки route/session-key/account, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
| `plugin-sdk/status-helpers` | Спільні допоміжні засоби підсумку статусу каналу/облікового запису, значення runtime-state за замовчуванням і допоміжні засоби метаданих проблем |
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні засоби target resolver |
| `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` | Витягування канонічних полів цілі надсилання з аргументів tool |
| `plugin-sdk/temp-path` | Спільні допоміжні засоби шляхів для тимчасових завантажень |
| `plugin-sdk/logging-core` | Допоміжні засоби subsystem logger і редагування конфіденційних даних |
| `plugin-sdk/param-readers` | Загальні засоби читання параметрів tool/CLI |
| `plugin-sdk/tool-send` | Витягування канонічних полів цілі send з аргументів інструмента |
| `plugin-sdk/temp-path` | Спільні допоміжні засоби шляху тимчасового завантаження |
| `plugin-sdk/logging-core` | Допоміжні засоби журналювання підсистеми та редагування конфіденційних даних |
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби режиму таблиць Markdown |
| `plugin-sdk/json-store` | Невеликі допоміжні засоби читання/запису стану JSON |
| `plugin-sdk/file-lock` | Допоміжні засоби повторно вхідного file-lock |
| `plugin-sdk/persistent-dedupe` | Допоміжні засоби дискового кешу dedupe |
| `plugin-sdk/acp-runtime` | Допоміжні засоби ACP runtime/session і dispatch відповіді |
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви schema конфігурації runtime агента |
| `plugin-sdk/boolean-param` | Читач нестрогих булевих параметрів |
| `plugin-sdk/dangerous-name-runtime` | Допоміжні засоби визначення небезпечних імен |
| `plugin-sdk/device-bootstrap` | Допоміжні засоби початкової ініціалізації пристрою та токенів pairing |
| `plugin-sdk/extension-shared` | Спільні примітиви пасивного channel і допоміжних засобів стану |
| `plugin-sdk/models-provider-runtime` | Допоміжні засоби відповіді `/models` command/provider |
| `plugin-sdk/file-lock` | Допоміжні засоби re-entrant file-lock |
| `plugin-sdk/persistent-dedupe` | Допоміжні засоби дискового dedupe-кешу |
| `plugin-sdk/acp-runtime` | Допоміжні засоби runtime/session ACP і 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 |
| `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/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/error-runtime` | Допоміжні засоби графа помилок, форматування, спільної класифікації помилок, `isApprovalNotFoundError` |
| `plugin-sdk/fetch-runtime` | Допоміжні засоби wrapped fetch, proxy і pinned lookup |
| `plugin-sdk/host-runtime` | Допоміжні засоби нормалізації hostname і хостів SCP |
| `plugin-sdk/retry-runtime` | Допоміжні засоби конфігурації retry та запуску retry |
| `plugin-sdk/agent-runtime` | Допоміжні засоби каталогу/ідентичності/workspace агента |
| `plugin-sdk/directory-runtime` | Запит каталогу на основі конфігурації / dedup |
| `plugin-sdk/directory-runtime` | Query/dedup каталогів на основі конфігурації |
| `plugin-sdk/keyed-async-queue` | `KeyedAsyncQueue` |
</Accordion>
<Accordion title="Підшляхи можливостей і тестування">
| Subpath | Key exports |
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби fetch/transform/store медіа, а також конструктори media payload |
| `plugin-sdk/media-understanding` | Типи provider для media understanding, а також допоміжні експорти для роботи з image/audio на стороні provider |
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту/markdown/логування, такі як видалення видимого для асистента тексту, render/chunking/table helpers для markdown, допоміжні засоби редагування конфіденційних даних, directive-tag helpers і утиліти безпечного тексту |
| `plugin-sdk/text-chunking` | Допоміжний засіб chunking вихідного тексту |
| `plugin-sdk/speech` | Типи speech provider, а також допоміжні засоби директив, реєстру й валідації на стороні provider |
| `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/video-generation` | Типи provider/request/result для генерації відео |
| `plugin-sdk/video-generation-core` | Спільні типи video-generation, допоміжні засоби failover, lookup provider і розбору model-ref |
| `plugin-sdk/webhook-targets` | Допоміжні засоби реєстру цілей webhook і встановлення маршрутів |
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби fetch/transform/store для медіа, а також конструктори медіапейлоадів |
| `plugin-sdk/media-understanding` | Типи провайдера media understanding і орієнтовані на провайдера експорти допоміжних засобів для зображень/аудіо |
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби для text/markdown/logging, такі як видалення тексту, видимого асистенту, допоміжні засоби render/chunking/table для markdown, редагування конфіденційних даних, допоміжні засоби directive-tag і безпечного тексту |
| `plugin-sdk/text-chunking` | Допоміжний засіб chunking для вихідного тексту |
| `plugin-sdk/speech` | Типи провайдера мовлення, а також орієнтовані на провайдера допоміжні засоби directive, registry і validation |
| `plugin-sdk/speech-core` | Спільні типи провайдера мовлення, допоміжні засоби registry, directive і normalizaton |
| `plugin-sdk/realtime-transcription` | Типи провайдера транскрипції в реальному часі та допоміжні засоби реєстру |
| `plugin-sdk/realtime-voice` | Типи провайдера голосу в реальному часі та допоміжні засоби реєстру |
| `plugin-sdk/image-generation` | Типи провайдера генерації зображень |
| `plugin-sdk/image-generation-core` | Спільні типи генерації зображень, допоміжні засоби failover, auth і registry |
| `plugin-sdk/video-generation` | Типи провайдера/запиту/результату генерації відео |
| `plugin-sdk/video-generation-core` | Спільні типи генерації відео, допоміжні засоби failover, пошуку провайдера та розбору model-ref |
| `plugin-sdk/webhook-targets` | Реєстр цілей webhook і допоміжні засоби встановлення route |
| `plugin-sdk/webhook-path` | Допоміжні засоби нормалізації шляху webhook |
| `plugin-sdk/web-media` | Спільні допоміжні засоби завантаження віддалених/локальних медіа |
| `plugin-sdk/zod` | Повторно експортований `zod` для користувачів Plugin SDK |
| `plugin-sdk/zod` | Повторно експортований `zod` для споживачів Plugin SDK |
| `plugin-sdk/testing` | `installCommonResolveTargetErrorCases`, `shouldAckReaction` |
</Accordion>
<Accordion title="Підшляхи memory">
| Subpath | Key exports |
<Accordion title="Підшляхи пам’яті">
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/memory-core` | Поверхня допоміжних засобів bundled memory-core для manager/config/file/CLI |
| `plugin-sdk/memory-core-engine-runtime` | Runtime facade для індексації/пошуку memory |
| `plugin-sdk/memory-core-host-engine-foundation` | Експорти foundation engine хоста memory |
| `plugin-sdk/memory-core-host-engine-embeddings` | Експорти embedding engine хоста memory |
| `plugin-sdk/memory-core-host-engine-qmd` | Експорти QMD engine хоста memory |
| `plugin-sdk/memory-core-host-engine-storage` | Експорти storage engine хоста memory |
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні засоби multimodal хоста memory |
| `plugin-sdk/memory-core-host-query` | Допоміжні засоби query хоста memory |
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби secret хоста memory |
| `plugin-sdk/memory-core-host-events` | Допоміжні засоби журналу подій хоста memory |
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби стану хоста memory |
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні засоби runtime CLI хоста memory |
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні засоби core runtime хоста memory |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби file/runtime хоста memory |
| `plugin-sdk/memory-host-core` | Нейтральний до вендора псевдонім для допоміжних засобів core runtime хоста memory |
| `plugin-sdk/memory-host-events` | Нейтральний до вендора псевдонім для допоміжних засобів журналу подій хоста memory |
| `plugin-sdk/memory-host-files` | Нейтральний до вендора псевдонім для допоміжних засобів file/runtime хоста memory |
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні засоби керованого markdown для plugins, суміжних із memory |
| `plugin-sdk/memory-host-search` | Активна runtime facade memory для доступу до search-manager |
| `plugin-sdk/memory-host-status` | Нейтральний до вендора псевдонім для допоміжних засобів стану хоста memory |
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime індексу/пошуку пам’яті |
| `plugin-sdk/memory-core-host-engine-foundation` | Експорти foundation engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-embeddings` | Експорти embedding engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-qmd` | Експорти QMD engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-storage` | Експорти storage engine хоста пам’яті |
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні засоби multimodal хоста пам’яті |
| `plugin-sdk/memory-core-host-query` | Допоміжні засоби query хоста пам’яті |
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби secret хоста пам’яті |
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби status хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні засоби runtime CLI хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні засоби core runtime хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних засобів bundled memory-lancedb |
</Accordion>
<Accordion title="Зарезервовані підшляхи bundled-helper">
| Family | Current subpaths | Intended use |
<Accordion title="Зарезервовані підшляхи допоміжних засобів вбудованих плагінів">
| Сімейство | Поточні підшляхи | Призначення |
| --- | --- | --- |
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-support` | Допоміжні засоби підтримки bundled browser plugin |
| 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-specific helpers | `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 seams сумісності/допоміжних засобів для channel |
| Auth/plugin-specific helpers | `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 seams допоміжних засобів feature/plugin; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-support` | Допоміжні засоби підтримки вбудованого плагіна браузера |
| 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 | What it registers |
| ------------------------------------------------ | -------------------------------- |
| `api.registerProvider(...)` | Текстовий inference (LLM) |
| `api.registerChannel(...)` | Канал обміну повідомленнями |
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
| `api.registerRealtimeTranscriptionProvider(...)` | Потокова realtime transcription |
| `api.registerRealtimeVoiceProvider(...)` | Дуплексні сесії realtime voice |
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
| `api.registerImageGenerationProvider(...)` | Генерація зображень |
| `api.registerVideoGenerationProvider(...)` | Генерація відео |
| `api.registerWebFetchProvider(...)` | Provider для web fetch / scrape |
| `api.registerWebSearchProvider(...)` | Вебпошук |
| Метод | Що реєструє |
| ------------------------------------------------ | ------------------------------ |
| `api.registerProvider(...)` | Текстову інференцію (LLM) |
| `api.registerChannel(...)` | Канал повідомлень |
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
| `api.registerRealtimeTranscriptionProvider(...)` | Потокову транскрипцію в реальному часі |
| `api.registerRealtimeVoiceProvider(...)` | Двобічні голосові сесії в реальному часі |
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
| `api.registerImageGenerationProvider(...)` | Генерацію зображень |
| `api.registerVideoGenerationProvider(...)` | Генерацію відео |
| `api.registerWebFetchProvider(...)` | Провайдера web fetch / scrape |
| `api.registerWebSearchProvider(...)` | Вебпошук |
### Tools і команди
### Інструменти та команди
| Method | What it registers |
| ------------------------------- | --------------------------------------------- |
| `api.registerTool(tool, opts?)` | Tool агента (обов’язковий або `{ optional: true }`) |
| `api.registerCommand(def)` | Користувацька команда (обходить LLM) |
| Метод | Що реєструє |
| ------------------------------- | ------------------------------------------- |
| `api.registerTool(tool, opts?)` | Інструмент агента (обов’язковий або `{ optional: true }`) |
| `api.registerCommand(def)` | Користувацьку команду (оминає LLM) |
### Інфраструктура
| Method | What it registers |
| ---------------------------------------------- | --------------------------------------- |
| `api.registerHook(events, handler, opts?)` | Hook подій |
| `api.registerHttpRoute(params)` | HTTP endpoint gateway |
| `api.registerGatewayMethod(name, handler)` | RPC-метод gateway |
| `api.registerCli(registrar, opts?)` | Підкоманда CLI |
| `api.registerService(service)` | Фонова служба |
| `api.registerInteractiveHandler(registration)` | Інтерактивний обробник |
| `api.registerMemoryPromptSupplement(builder)` | Додатковий суміжний із memory розділ prompt |
| `api.registerMemoryCorpusSupplement(adapter)` | Додатковий корпус для пошуку/читання memory |
| Метод | Що реєструє |
| ---------------------------------------------- | -------------------- |
| `api.registerHook(events, handler, opts?)` | Хук події |
| `api.registerHttpRoute(params)` | HTTP-ендпоінт Gateway |
| `api.registerGatewayMethod(name, handler)` | RPC-метод Gateway |
| `api.registerCli(registrar, opts?)` | Підкоманду CLI |
| `api.registerService(service)` | Фоновий сервіс |
| `api.registerInteractiveHandler(registration)` | Інтерактивний обробник |
Зарезервовані простори назв адміністрування core (`config.*`, `exec.approvals.*`, `wizard.*`,
`update.*`) завжди залишаються `operator.admin`, навіть якщо plugin намагається призначити
вужчу область видимості методу gateway. Для
методів, що належать plugin, віддавайте перевагу префіксам, специфічним для plugin.
Зарезервовані простори імен core admin (`config.*`, `exec.approvals.*`, `wizard.*`,
`update.*`) завжди залишаються `operator.admin`, навіть якщо плагін намагається призначити
вужчу область дії методу gateway. Для методів, що належать
плагіну, віддавайте перевагу специфічним для плагіна префіксам.
### Метадані реєстрації CLI
`api.registerCli(registrar, opts?)` приймає два види метаданих верхнього рівня:
`api.registerCli(registrar, opts?)` приймає два типи метаданих верхнього рівня:
- `commands`: явні корені команд, якими володіє реєстратор
- `descriptors`: дескриптори команд на етапі розбору, що використовуються для довідки кореневого CLI,
маршрутизації та лінивої реєстрації CLI plugin
- `commands`: явні корені команд, якими володіє registrar
- `descriptors`: дескриптори команд на етапі парсингу, які використовуються для кореневої довідки CLI,
маршрутизації та лінивої реєстрації CLI плагіна
Якщо ви хочете, щоб команда plugin залишалася ліниво завантажуваною у звичайному шляху кореневого CLI,
надайте `descriptors`, які охоплюють кожен корінь команди верхнього рівня, що надається цим
реєстратором.
Якщо ви хочете, щоб команда плагіна залишалася ліниво завантажуваною у
звичайному кореневому шляху CLI, надайте `descriptors`, які охоплюють кожен
корінь команди верхнього рівня, що експонує цей registrar.
```typescript
api.registerCli(
@ -361,117 +352,117 @@ api.registerCli(
);
```
Використовуйте `commands` окремо лише тоді, коли вам не потрібна лінива реєстрація кореневого CLI.
Цей шлях eager сумісності залишається підтримуваним, але він не встановлює
плейсхолдери на основі descriptor для лінивого завантаження на етапі розбору.
Використовуйте лише `commands`, коли вам не потрібна лінива реєстрація кореневого CLI.
Цей сумісний eager-шлях і далі підтримується, але він не встановлює
placeholders із підтримкою descriptors для лінивого завантаження на етапі парсингу.
### Ексклюзивні слоти
| Method | What it registers |
| Метод | Що реєструє |
| ------------------------------------------ | ------------------------------------- |
| `api.registerContextEngine(id, factory)` | Context engine (одночасно активний лише один) |
| `api.registerMemoryPromptSection(builder)` | Конструктор розділу prompt для memory |
| `api.registerMemoryFlushPlan(resolver)` | Resolver плану flush для memory |
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime для memory |
| `api.registerContextEngine(id, factory)` | Контекстний рушій (одночасно активний лише один) |
| `api.registerMemoryPromptSection(builder)` | Конструктор секції prompt для пам’яті |
| `api.registerMemoryFlushPlan(resolver)` | Резолвер плану flush для пам’яті |
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime для пам’яті |
### Адаптери вбудовування memory
### Адаптери embedding для пам’яті
| Method | What it registers |
| ---------------------------------------------- | ---------------------------------------------- |
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер вбудовування memory для активного plugin |
| Метод | Що реєструє |
| ---------------------------------------------- | --------------------------------------------------- |
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер embedding для пам’яті для активного плагіна |
- `registerMemoryPromptSection`, `registerMemoryFlushPlan` і
`registerMemoryRuntime` є ексклюзивними для memory plugins.
- `registerMemoryEmbeddingProvider` дозволяє активному memory plugin реєструвати один
або більше id адаптерів вбудовування (наприклад `openai`, `gemini` або користувацький
id, визначений plugin).
`registerMemoryRuntime` є ексклюзивними для плагінів пам’яті.
- `registerMemoryEmbeddingProvider` дозволяє активному плагіну пам’яті реєструвати один
або кілька ID адаптерів embedding (наприклад `openai`, `gemini` або
спеціальний ID, визначений плагіном).
- Конфігурація користувача, така як `agents.defaults.memorySearch.provider` і
`agents.defaults.memorySearch.fallback`, визначається відносно цих зареєстрованих
id адаптерів.
ID адаптерів.
### Події та життєвий цикл
| Method | What it does |
| -------------------------------------------- | ----------------------------- |
| `api.on(hookName, handler, opts?)` | Типізований lifecycle hook |
| `api.onConversationBindingResolved(handler)` | Колбек прив’язки conversation |
| Метод | Що робить |
| -------------------------------------------- | ------------------------- |
| `api.on(hookName, handler, opts?)` | Типізований хук життєвого циклу |
| `api.onConversationBindingResolved(handler)` | Колбек визначення прив’язки розмови |
### Семантика рішень hook
### Семантика рішень хуків
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно будь-який обробник встановлює це значення, обробники з нижчим пріоритетом пропускаються.
- `before_tool_call`: повернення `{ block: false }` вважається відсутністю рішення (так само, як і пропуск `block`), а не перевизначенням.
- `before_install`: повернення `{ block: true }` є термінальним. Щойно будь-який обробник встановлює це значення, обробники з нижчим пріоритетом пропускаються.
- `before_install`: повернення `{ block: false }` вважається відсутністю рішення (так само, як і пропуск `block`), а не перевизначенням.
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно будь-який обробник заявляє про dispatch, обробники з нижчим пріоритетом і стандартний шлях dispatch моделі пропускаються.
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який обробник встановлює це значення, обробники з нижчим пріоритетом пропускаються.
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як і пропуск `cancel`), а не перевизначенням.
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно будь-який обробник задає це значення, обробники з нижчим пріоритетом пропускаються.
- `before_tool_call`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
- `before_install`: повернення `{ block: true }` є термінальним. Щойно будь-який обробник задає це значення, обробники з нижчим пріоритетом пропускаються.
- `before_install`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно будь-який обробник бере dispatch на себе, обробники з нижчим пріоритетом і типовий шлях dispatch моделі пропускаються.
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який обробник задає це значення, обробники з нижчим пріоритетом пропускаються.
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як пропуск `cancel`), а не перевизначенням.
### Поля об’єкта API
| Field | Type | Description |
| Поле | Тип | Опис |
| ------------------------ | ------------------------- | ------------------------------------------------------------------------------------------- |
| `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` | Поточний знімок конфігурації (активний знімок runtime в пам’яті, коли доступний) |
| `api.pluginConfig` | `Record<string, unknown>` | Конфігурація, специфічна для plugin, із `plugins.entries.<id>.config` |
| `api.id` | `string` | ID плагіна |
| `api.name` | `string` | Назва для відображення |
| `api.version` | `string?` | Версія плагіна (необов’язково) |
| `api.description` | `string?` | Опис плагіна (необов’язково) |
| `api.source` | `string` | Шлях до джерела плагіна |
| `api.rootDir` | `string?` | Кореневий каталог плагіна (необов’язково) |
| `api.config` | `OpenClawConfig` | Поточний знімок конфігурації (активний знімок in-memory 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 |
| `api.resolvePath(input)` | `(string) => string` | Визначення шляху відносно кореня плагіна |
## Угода щодо внутрішніх модулів
## Внутрішня домовленість про модулі
У межах вашого plugin використовуйте локальні barrel-файли для внутрішніх імпортів:
Усередині вашого плагіна використовуйте локальні barrel-файли для внутрішніх імпортів:
```
my-plugin/
api.ts # Публічні експорти для зовнішніх споживачів
runtime-api.ts # Експорти runtime лише для внутрішнього використання
index.ts # Точка входу plugin
setup-entry.ts # Полегшена точка входу лише для налаштування (необов’язково)
runtime-api.ts # Лише внутрішні експорти runtime
index.ts # Точка входу плагіна
setup-entry.ts # Полегшений entry лише для налаштування (необов’язково)
```
<Warning>
Ніколи не імпортуйте власний plugin через `openclaw/plugin-sdk/<your-plugin>`
Ніколи не імпортуйте власний плагін через `openclaw/plugin-sdk/<your-plugin>`
у production-коді. Для внутрішніх імпортів використовуйте `./api.ts` або
`./runtime-api.ts`. Шлях SDK — це лише зовнішній контракт.
</Warning>
Публічні поверхні bundled plugins, що завантажуються через facade (`api.ts`, `runtime-api.ts`,
Публічні поверхні вбудованих плагінів, завантажувані через facade (`api.ts`, `runtime-api.ts`,
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли), тепер віддають перевагу
активному знімку конфігурації runtime, коли OpenClaw уже запущено. Якщо знімок runtime
ще не існує, вони повертаються до визначеного конфігураційного файлу на диску.
активному знімку конфігурації runtime, коли OpenClaw уже запущено. Якщо знімка runtime
ще не існує, вони використовують fallback до визначеного файла конфігурації на диску.
Provider plugins також можуть надавати вузький локальний для plugin barrel контракту, коли
допоміжний засіб навмисно є специфічним для provider і ще не належить до узагальненого SDK
підшляху. Поточний bundled-приклад: provider Anthropic зберігає свої допоміжні засоби
Claude stream у власному публічному seam `api.ts` / `contract-api.ts` замість
перенесення логіки Anthropic beta-header і `service_tier` до узагальненого
Плагіни провайдерів також можуть експортувати вузький локальний контрактний barrel плагіна, коли
певний допоміжний засіб навмисно є специфічним для провайдера й поки що не належить до
загального підшляху SDK. Поточний вбудований приклад: провайдер Anthropic тримає свої
допоміжні засоби потоків Claude у власному публічному шарі `api.ts` / `contract-api.ts`, замість
того щоб просувати логіку бета-заголовків Anthropic і `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,
Production-код розширень також має уникати імпортів `openclaw/plugin-sdk/<other-plugin>`.
Якщо допоміжний засіб справді спільний, перемістіть його до нейтрального підшляху SDK,
такого як `openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
поверхні, орієнтованої на можливості, замість того щоб зв’язувати два plugins між собою.
поверхні, орієнтованої на можливості, замість жорсткого зв’язування двох плагінів.
</Warning>
## Пов’язане
- [Entry Points](/uk/plugins/sdk-entrypoints) — параметри `definePluginEntry` і `defineChannelPluginEntry`
- [Runtime Helpers](/uk/plugins/sdk-runtime) — повний довідник простору назв `api.runtime`
- [Runtime Helpers](/uk/plugins/sdk-runtime) — повний довідник простору імен `api.runtime`
- [Setup and Config](/uk/plugins/sdk-setup) — пакування, маніфести, схеми конфігурації
- [Testing](/uk/plugins/sdk-testing) — утиліти тестування та правила lint
- [SDK Migration](/uk/plugins/sdk-migration) — міграція із застарілих поверхонь
- [Plugin Internals](/uk/plugins/architecture) — поглиблена архітектура та модель можливостей
- [Plugin Internals](/uk/plugins/architecture) — детальна архітектура та модель можливостей