chore(i18n): refresh uk translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-08 08:06:48 +00:00
parent 6adbb7f908
commit 9613063395
2 changed files with 559 additions and 571 deletions

View File

@ -5,140 +5,135 @@ read_when:
- Ви оновлюєте плагін до сучасної архітектури плагінів
- Ви підтримуєте зовнішній плагін OpenClaw
sidebarTitle: Migrate to SDK
summary: Перехід із застарілого шару зворотної сумісності до сучасного SDK плагінів
title: Міграція SDK плагінів
summary: Перехід із застарілого шару зворотної сумісності на сучасний Plugin SDK
title: Міграція Plugin SDK
x-i18n:
generated_at: "2026-04-07T20:09:40Z"
generated_at: "2026-04-08T08:06:37Z"
model: gpt-5.4
provider: openai
source_hash: 155a8b14bc345319c8516ebdb8a0ccdea2c5f7fa07dad343442996daee21ecad
source_hash: 7d86c9b03e01ddee25aa1c065ebf7fda2785242f8ee63d567b67521f35c8b2e3
source_path: plugins/sdk-migration.md
workflow: 15
---
# Міграція SDK плагінів
# Міграція Plugin SDK
OpenClaw перейшов від широкого шару зворотної сумісності до сучасної
архітектури плагінів зі сфокусованими, задокументованими імпортами. Якщо ваш
плагін був створений до появи нової архітектури, цей посібник допоможе вам
архітектури плагінів із цілеспрямованими, документованими імпортами. Якщо ваш
плагін було створено до появи нової архітектури, цей посібник допоможе вам
виконати міграцію.
## Що змінюється
Стара система плагінів надавала дві широко відкриті поверхні, які дозволяли
плагінам імпортувати все, що їм потрібно, з єдиної точки входу:
Стара система плагінів надавала дві дуже широкі поверхні, які дозволяли
плагінам імпортувати все потрібне з єдиної точки входу:
- **`openclaw/plugin-sdk/compat`** — єдиний імпорт, який повторно експортував
десятки допоміжних функцій. Його було введено, щоб старіші плагіни на базі
хуків продовжували працювати, поки створювалася нова архітектура плагінів.
десятки допоміжних засобів. Його було запроваджено, щоб старіші плагіни на
основі хуків продовжували працювати, поки будувалася нова архітектура
плагінів.
- **`openclaw/extension-api`** — міст, який надавав плагінам прямий доступ до
допоміжних функцій на боці хоста, таких як вбудований запускник агента.
допоміжних засобів на стороні хоста, як-от вбудований засіб запуску агента.
Обидві поверхні тепер **застарілі**. Вони все ще працюють під час виконання,
але нові плагіни не повинні їх використовувати, а наявні плагіни мають
мігрувати до того, як наступний мажорний реліз їх видалить.
мігрувати до того, як наступний мажорний реліз їх прибере.
<Warning>
Шар зворотної сумісності буде видалено в одному з майбутніх мажорних
релізів. Плагіни, які все ще імпортують із цих поверхонь, перестануть
працювати, коли це станеться.
Шар зворотної сумісності буде вилучено в одному з майбутніх мажорних релізів.
Плагіни, які все ще імпортують із цих поверхонь, перестануть працювати, коли
це станеться.
</Warning>
## Чому це змінилося
Старий підхід створював проблеми:
Старий підхід спричиняв проблеми:
- **Повільний запуск** — імпорт однієї допоміжної функції завантажував десятки
- **Повільний запуск** — імпорт одного допоміжного засобу завантажував десятки
не пов’язаних між собою модулів
- **Циклічні залежності** — широкі повторні експорти полегшували створення
циклів імпорту
- **Нечітка поверхня API** — не було способу зрозуміти, які експорти є
- **Нечітка API-поверхня** — не було способу зрозуміти, які експорти є
стабільними, а які внутрішніми
Сучасний SDK плагінів це виправляє: кожен шлях імпорту
(`openclaw/plugin-sdk/\<subpath\>`) — це невеликий, самодостатній модуль із
чітким призначенням і задокументованим контрактом.
Сучасний Plugin SDK це виправляє: кожен шлях імпорту (`openclaw/plugin-sdk/\<subpath\>`)
є невеликим, самодостатнім модулем із чітким призначенням і документованим
контрактом.
Застарілі зручні шви провайдерів для вбудованих каналів також прибрано.
Імпорти на кшталт `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` цього плагіна.
Імпорти на кшталт `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 допоміжні функції потоків у
власному шві `api.ts` / `contract-api.ts`
- OpenAI зберігає конструктори провайдерів, допоміжні функції моделей за
замовчуванням і конструктори realtime-провайдерів у власному `api.ts`
- OpenRouter зберігає конструктор провайдера та допоміжні функції
- Anthropic зберігає допоміжні засоби потоку, специфічні для Claude, у власному
шві `api.ts` / `contract-api.ts`
- OpenAI зберігає засоби побудови провайдерів, допоміжні засоби для моделей за
замовчуванням і засоби побудови realtime-провайдерів у власному `api.ts`
- OpenRouter зберігає засіб побудови провайдера та допоміжні засоби
онбордингу/конфігурації у власному `api.ts`
## Як виконати міграцію
<Steps>
<Step title="Перенесіть approval-native обробники на capability facts">
Плагіни каналів із підтримкою погодження тепер надають нативну поведінку
погодження через `approvalCapability.nativeRuntime` разом зі спільним
реєстром runtime-контексту.
<Step title="Перенесіть обробники з native approval на факти можливостей">
Плагіни каналів із підтримкою погодження тепер розкривають власну native-логіку погодження через
`approvalCapability.nativeRuntime` разом зі спільним реєстром контексту виконання.
Основні зміни:
- Замініть `approvalCapability.handler.loadRuntime(...)` на
`approvalCapability.nativeRuntime`
- Перенесіть автентифікацію/доставку, специфічну для погоджень, зі
застарілої зв’язки `plugin.auth` / `plugin.approvals` на
`approvalCapability`
- `ChannelPlugin.approvals` було видалено з публічного контракту
channel-plugin; перенесіть поля delivery/native/render до
`approvalCapability`
- `plugin.auth` залишається лише для потоків входу/виходу каналів; хуки
автентифікації погоджень там більше не читаються ядром
- Реєструйте об’єкти runtime, що належать каналу, як-от клієнти, токени
або застосунки Bolt, через
`openclaw/plugin-sdk/channel-runtime-context`
- Не надсилайте повідомлення reroute, що належать плагіну, з native
approval-обробників; тепер ядро саме відповідає за повідомлення
routed-elsewhere на основі фактичних результатів доставки
- Перенесіть auth і доставку, специфічні для погоджень, із застарілої
прив’язки `plugin.auth` / `plugin.approvals` до `approvalCapability`
- `ChannelPlugin.approvals` було вилучено з публічного контракту
channel-plugin; перенесіть поля delivery/native/render до `approvalCapability`
- `plugin.auth` залишається лише для потоків входу/виходу каналу; хук auth
для погоджень там більше не зчитується ядром
- Реєструйте об’єкти часу виконання, що належать каналу, як-от клієнти,
токени або Bolt apps, через `openclaw/plugin-sdk/channel-runtime-context`
- Не надсилайте сповіщення про перенаправлення, що належать плагіну, з native-обробників погодження;
тепер ядро відповідає за сповіщення про доставку в інше місце на основі фактичних результатів доставки
- Під час передавання `channelRuntime` у `createChannelManager(...)`
надавайте реальну поверхню `createPluginRuntime().channel`. Часткові
заглушки відхиляються.
надавайте реальну поверхню `createPluginRuntime().channel`. Часткові стаби відхиляються.
Актуальну структуру approval capability див. у
`/plugins/sdk-channel-plugins`.
Див. `/plugins/sdk-channel-plugins`, щоб ознайомитися з поточною
структурою можливостей погодження.
</Step>
<Step title="Перевірте резервну поведінку Windows wrapper">
Якщо ваш плагін використовує `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>
<Step title="Знайдіть застарілі імпорти">
Знайдіть у своєму плагіні імпорти з будь-якої застарілої поверхні:
Знайдіть у своєму плагіні імпорти з будь-якої із застарілих поверхонь:
```bash
grep -r "plugin-sdk/compat" my-plugin/
@ -147,38 +142,36 @@ OpenClaw перейшов від широкого шару зворотної с
</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";
```
Для допоміжних функцій на боці хоста використовуйте інжектований runtime
плагіна замість прямого імпорту:
Для допоміжних засобів на стороні хоста використовуйте інжектований runtime плагіна
замість прямого імпорту:
```typescript
// Before (deprecated extension-api bridge)
// До (застарілий міст extension-api)
import { runEmbeddedPiAgent } from "openclaw/extension-api";
const result = await runEmbeddedPiAgent({ sessionId, prompt });
// After (injected runtime)
// Після (інжектований runtime)
const result = await api.runtime.agent.runEmbeddedPiAgent({ sessionId, prompt });
```
Той самий шаблон застосовується і до інших застарілих допоміжних функцій
bridge:
Такий самий шаблон застосовується й до інших допоміжних засобів застарілого моста:
| Старий імпорт | Сучасний еквівалент |
| --- | --- |
@ -188,7 +181,7 @@ OpenClaw перейшов від широкого шару зворотної с
| `resolveThinkingDefault` | `api.runtime.agent.resolveThinkingDefault` |
| `resolveAgentTimeoutMs` | `api.runtime.agent.resolveAgentTimeoutMs` |
| `ensureAgentWorkspace` | `api.runtime.agent.ensureAgentWorkspace` |
| допоміжні функції сховища сесій | `api.runtime.agent.session.*` |
| helpers сховища сесій | `api.runtime.agent.session.*` |
</Step>
@ -203,177 +196,177 @@ OpenClaw перейшов від широкого шару зворотної с
## Довідник шляхів імпорту
<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` | Допоміжні функції runtime для етапу налаштування | Безпечні для імпорту адаптери patch для налаштування, допоміжні функції note для lookup, `promptResolvedAllowFrom`, `splitSetupEntries`, делеговані проксі налаштування |
| `plugin-sdk/setup-adapter-runtime` | Допоміжні функції адаптера налаштування | `createEnvPatchedAccountSetupAdapter` |
| `plugin-sdk/setup-tools` | Допоміжні функції інструментів налаштування | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
| `plugin-sdk/account-core` | Допоміжні функції для кількох облікових записів | Допоміжні функції списку облікових записів/конфігурації/action-gate |
| `plugin-sdk/account-id` | Допоміжні функції account-id | `DEFAULT_ACCOUNT_ID`, нормалізація account-id |
| `plugin-sdk/account-resolution` | Допоміжні функції пошуку облікового запису | Допоміжні функції пошуку облікового запису + резервний вибір за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні функції для облікових записів | Допоміжні функції списку облікових записів/account-action |
| `plugin-sdk/provider-entry` | Допоміжний засіб точки входу одного провайдера | `defineSingleProviderPluginEntry` |
| `plugin-sdk/channel-core` | Цілеспрямовані визначення та конструктори входу каналів | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування | Запити allowlist, конструктори статусу налаштування |
| `plugin-sdk/setup-runtime` | Допоміжні засоби часу виконання для налаштування | Адаптери патчів налаштування, безпечні для імпорту, допоміжні засоби lookup-note, `promptResolvedAllowFrom`, `splitSetupEntries`, делеговані проксі налаштування |
| `plugin-sdk/setup-adapter-runtime` | Допоміжні засоби адаптера налаштування | `createEnvPatchedAccountSetupAdapter` |
| `plugin-sdk/setup-tools` | Допоміжні засоби інструментарію налаштування | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
| `plugin-sdk/account-core` | Допоміжні засоби для кількох облікових записів | Допоміжні засоби списку облікових записів/конфігурації/action-gate |
| `plugin-sdk/account-id` | Допоміжні засоби account-id | `DEFAULT_ACCOUNT_ID`, нормалізація account-id |
| `plugin-sdk/account-resolution` | Допоміжні засоби пошуку облікових записів | Допоміжні засоби пошуку облікових записів + fallback до значення за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби облікових записів | Допоміжні засоби списку облікових записів/account-action |
| `plugin-sdk/channel-setup` | Адаптери майстра налаштування | `createOptionalChannelSetupSurface`, `createOptionalChannelSetupAdapter`, `createOptionalChannelSetupWizard`, а також `DEFAULT_ACCOUNT_ID`, `createTopLevelChannelDmPolicy`, `setSetupChannelEnabled`, `splitSetupEntries` |
| `plugin-sdk/channel-pairing` | Примітиви DM pairing | `createChannelPairingController` |
| `plugin-sdk/channel-reply-pipeline` | Префікс відповіді + зв’язування typing | `createChannelReplyPipeline` |
| `plugin-sdk/channel-reply-pipeline` | Префікс відповіді + логіка typing | `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` | Допоміжні функції inbound envelope | Спільні допоміжні функції route + конструкторів envelope |
| `plugin-sdk/inbound-reply-dispatch` | Допоміжні функції inbound reply | Спільні допоміжні функції record-and-dispatch |
| `plugin-sdk/messaging-targets` | Розбір цілей повідомлень | Допоміжні функції розбору/зіставлення цілей |
| `plugin-sdk/outbound-media` | Допоміжні функції outbound media | Спільне завантаження outbound media |
| `plugin-sdk/outbound-runtime` | Допоміжні функції outbound runtime | Допоміжні функції outbound identity/send delegate |
| `plugin-sdk/thread-bindings-runtime` | Допоміжні функції thread-binding | Життєвий цикл thread-binding і допоміжні функції адаптера |
| `plugin-sdk/agent-media-payload` | Застарілі допоміжні функції media payload | Конструктор agent media payload для застарілих макетів полів |
| `plugin-sdk/channel-runtime` | Застарілий shim сумісності | Лише застарілі утиліти channel runtime |
| `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` | Допоміжні засоби вихідного runtime | Допоміжні засоби ідентичності/делегування надсилання |
| `plugin-sdk/thread-bindings-runtime` | Допоміжні засоби thread-binding | Життєвий цикл thread-binding і допоміжні засоби адаптера |
| `plugin-sdk/agent-media-payload` | Застарілі допоміжні засоби media payload | Конструктор media payload агента для застарілих макетів полів |
| `plugin-sdk/channel-runtime` | Застарілий shim сумісності | Лише застарілі утиліти runtime каналу |
| `plugin-sdk/channel-send-result` | Типи результатів надсилання | Типи результатів відповіді |
| `plugin-sdk/runtime-store` | Постійне сховище плагіна | `createPluginRuntimeStore` |
| `plugin-sdk/runtime` | Широкі допоміжні функції runtime | Допоміжні функції runtime/logging/backup/plugin-install |
| `plugin-sdk/runtime-env` | Вузькі допоміжні функції середовища runtime | Logger/runtime env, допоміжні функції timeout, retry і backoff |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні функції runtime плагіна | Допоміжні функції commands/hooks/http/interactive для плагіна |
| `plugin-sdk/hook-runtime` | Допоміжні функції конвеєра hook | Спільні допоміжні функції конвеєра webhook/internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні функції lazy runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні функції процесів | Спільні допоміжні функції exec |
| `plugin-sdk/cli-runtime` | Допоміжні функції CLI runtime | Форматування команд, очікування, допоміжні функції версій |
| `plugin-sdk/gateway-runtime` | Допоміжні функції gateway | Допоміжні функції клієнта gateway і patch статусу каналу |
| `plugin-sdk/config-runtime` | Допоміжні функції конфігурації | Допоміжні функції завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні функції команд Telegram | Допоміжні функції перевірки команд Telegram зі стабільним резервним варіантом, коли поверхня контракту вбудованого Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні функції prompt для погоджень | Payload погодження exec/plugin, допоміжні функції approval capability/profile, допоміжні функції маршрутизації/runtime native approval |
| `plugin-sdk/approval-auth-runtime` | Допоміжні функції auth для погоджень | Визначення approver, auth для дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні функції клієнта погоджень | Допоміжні функції profile/filter для native exec approval |
| `plugin-sdk/approval-delivery-runtime` | Допоміжні функції доставки погоджень | Адаптери native approval capability/delivery |
| `plugin-sdk/approval-gateway-runtime` | Допоміжні функції gateway для погоджень | Спільна допоміжна функція gateway-resolution для погоджень |
| `plugin-sdk/approval-handler-adapter-runtime` | Допоміжні функції адаптера погоджень | Полегшені допоміжні функції завантаження native approval adapter для гарячих точок входу каналу |
| `plugin-sdk/approval-handler-runtime` | Допоміжні функції approval handler | Ширші допоміжні функції runtime для approval handler; віддавайте перевагу вужчим швам adapter/gateway, коли їх достатньо |
| `plugin-sdk/approval-native-runtime` | Допоміжні функції target для погоджень | Допоміжні функції зв’язування native approval target/account |
| `plugin-sdk/approval-reply-runtime` | Допоміжні функції reply для погоджень | Допоміжні функції payload відповіді для exec/plugin approval |
| `plugin-sdk/channel-runtime-context` | Допоміжні функції runtime-context каналу | Узагальнені допоміжні функції register/get/watch для channel runtime-context |
| `plugin-sdk/security-runtime` | Допоміжні функції безпеки | Спільні допоміжні функції довіри, DM gating, external-content і збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні функції політики SSRF | Допоміжні функції allowlist хостів і політики приватної мережі |
| `plugin-sdk/ssrf-runtime` | Допоміжні функції SSRF runtime | Pinned-dispatcher, guarded fetch, допоміжні функції політики SSRF |
| `plugin-sdk/collection-runtime` | Допоміжні функції обмеженого кешу | `pruneMapToMaxSize` |
| `plugin-sdk/diagnostic-runtime` | Допоміжні функції діагностичного gating | `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`, runners політик |
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime | Допоміжні засоби runtime/логування/резервного копіювання/встановлення плагінів |
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби runtime env | Logger/runtime env, тайм-аут, retry і допоміжні засоби backoff |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби runtime плагіна | Допоміжні засоби команд/хуків/http/interactive плагіна |
| `plugin-sdk/hook-runtime` | Допоміжні засоби конвеєра хуків | Спільні допоміжні засоби конвеєра webhook/internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні засоби процесів | Спільні допоміжні засоби exec |
| `plugin-sdk/cli-runtime` | Допоміжні засоби runtime CLI | Форматування команд, очікування, допоміжні засоби версії |
| `plugin-sdk/gateway-runtime` | Допоміжні засоби gateway | Клієнт gateway і допоміжні засоби патчів статусу каналу |
| `plugin-sdk/config-runtime` | Допоміжні засоби конфігурації | Допоміжні засоби завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби команд Telegram | Допоміжні засоби валідації команд Telegram зі стабільним fallback, коли поверхня контракту вбудованого Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні засоби запитів на погодження | Payload exec/plugin approval, допоміжні засоби capability/profile погодження, native-маршрутизація погодження/допоміжні засоби runtime |
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби auth для погодження | Визначення approver, auth дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби клієнта погодження | Допоміжні засоби profile/filter для native exec approval |
| `plugin-sdk/approval-delivery-runtime` | Допоміжні засоби доставки погодження | Адаптери native approval capability/delivery |
| `plugin-sdk/approval-gateway-runtime` | Допоміжні засоби gateway погодження | Спільний допоміжний засіб визначення approval gateway |
| `plugin-sdk/approval-handler-adapter-runtime` | Допоміжні засоби адаптера погодження | Полегшені допоміжні засоби завантаження native-адаптера погодження для гарячих точок входу каналів |
| `plugin-sdk/approval-handler-runtime` | Допоміжні засоби обробника погодження | Ширші допоміжні засоби runtime для обробника погодження; надавайте перевагу вужчим швам adapter/gateway, якщо їх достатньо |
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби цілей погодження | Допоміжні засоби прив’язки цілі/облікового запису для native approval |
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби відповіді на погодження | Допоміжні засоби payload відповіді exec/plugin approval |
| `plugin-sdk/channel-runtime-context` | Допоміжні засоби контексту runtime каналу | Узагальнені допоміжні засоби register/get/watch для контексту runtime каналу |
| `plugin-sdk/security-runtime` | Допоміжні засоби безпеки | Спільні допоміжні засоби trust, DM gating, external-content і збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні засоби політики SSRF | Допоміжні засоби allowlist хостів і політики приватної мережі |
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби runtime SSRF | Pinned-dispatcher, guarded fetch, допоміжні засоби політики SSRF |
| `plugin-sdk/collection-runtime` | Допоміжні засоби обмеженого кешу | `pruneMapToMaxSize` |
| `plugin-sdk/diagnostic-runtime` | Допоміжні засоби діагностичного gate | `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` | Gating команд і допоміжні функції поверхні команд | `resolveControlCommandGate`, допоміжні функції авторизації відправника, допоміжні функції реєстру команд |
| `plugin-sdk/secret-input` | Розбір секретних входів | Допоміжні функції secret input |
| `plugin-sdk/webhook-ingress` | Допоміжні функції запитів webhook | Утиліти target для webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні функції guard для тіла webhook | Допоміжні функції читання/обмеження тіла запиту |
| `plugin-sdk/reply-runtime` | Спільний runtime відповіді | Inbound dispatch, heartbeat, planner відповіді, chunking |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні функції dispatch відповіді | Допоміжні функції finalize + 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` | Допоміжні функції routing/session-key | `resolveAgentRoute`, `buildAgentSessionKey`, `resolveDefaultAgentBoundAccountId`, допоміжні функції нормалізації session-key |
| `plugin-sdk/status-helpers` | Допоміжні функції статусу каналу | Конструктори зведень статусу каналу/облікового запису, значення runtime-state за замовчуванням, допоміжні функції метаданих issue |
| `plugin-sdk/target-resolver-runtime` | Допоміжні функції target resolver | Спільні допоміжні функції target resolver |
| `plugin-sdk/string-normalization-runtime` | Допоміжні функції нормалізації рядків | Допоміжні функції нормалізації slug/рядків |
| `plugin-sdk/request-url` | Допоміжні функції URL запиту | Витягування рядкових URL із request-подібних вхідних даних |
| `plugin-sdk/run-command` | Допоміжні функції команд із таймером | Runner команд із таймером і нормалізованими stdout/stderr |
| `plugin-sdk/param-readers` | Читачі параметрів | Поширені читачі параметрів tool/CLI |
| `plugin-sdk/tool-send` | Витягування надсилання tool | Витягування канонічних полів цілі надсилання з аргументів tool |
| `plugin-sdk/temp-path` | Допоміжні функції тимчасових шляхів | Спільні допоміжні функції шляхів для тимчасового завантаження |
| `plugin-sdk/logging-core` | Допоміжні функції логування | Допоміжні функції логера підсистеми та редагування чутливих даних |
| `plugin-sdk/markdown-table-runtime` | Допоміжні функції Markdown-таблиць | Допоміжні функції режимів Markdown-таблиць |
| `plugin-sdk/reply-payload` | Типи 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 auth провайдера | Допоміжні функції визначення API-ключа в runtime |
| `plugin-sdk/provider-auth-api-key` | Допоміжні функції налаштування API-ключа провайдера | Допоміжні функції онбордингу/profile-write для API-ключів |
| `plugin-sdk/provider-auth-result` | Допоміжні функції auth-result провайдера | Стандартний конструктор OAuth auth-result |
| `plugin-sdk/provider-auth-login` | Допоміжні функції інтерактивного входу провайдера | Спільні допоміжні функції інтерактивного входу |
| `plugin-sdk/provider-env-vars` | Допоміжні функції env vars провайдера | Допоміжні функції пошуку auth env-var провайдера |
| `plugin-sdk/provider-model-shared` | Спільні допоміжні функції моделей/replay провайдера | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори replay-policy, допоміжні функції endpoint провайдера та нормалізації model-id |
| `plugin-sdk/provider-catalog-shared` | Спільні допоміжні функції каталогу провайдера | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
| `plugin-sdk/provider-onboard` | Patches онбордингу провайдера | Допоміжні функції конфігурації онбордингу |
| `plugin-sdk/provider-http` | Допоміжні функції HTTP провайдера | Узагальнені допоміжні функції HTTP/можливостей endpoint для провайдера |
| `plugin-sdk/provider-web-fetch` | Допоміжні функції web-fetch провайдера | Допоміжні функції реєстрації/кешу web-fetch провайдера |
| `plugin-sdk/provider-web-search-contract` | Допоміжні функції контракту web-search провайдера | Вузькі допоміжні функції контракту конфігурації/облікових даних web-search, такі як `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped credential setters/getters |
| `plugin-sdk/provider-web-search` | Допоміжні функції web-search провайдера | Допоміжні функції реєстрації/кешу/runtime для web-search провайдера |
| `plugin-sdk/provider-tools` | Допоміжні функції сумісності tool/schema провайдера | `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` | Спільні допоміжні функції media | Допоміжні функції fetch/transform/store для media, а також конструктори media payload |
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні функції media-generation | Спільні допоміжні функції failover, вибір кандидатів і повідомлення про відсутні моделі для генерації зображень/відео/музики |
| `plugin-sdk/media-understanding` | Допоміжні функції media-understanding | Типи провайдерів media-understanding, а також орієнтовані на провайдера допоміжні функції для зображень/аудіо |
| `plugin-sdk/text-runtime` | Спільні допоміжні функції тексту | Видалення видимого для асистента тексту, render/chunking/table для markdown, допоміжні функції редагування чутливих даних, directive-tag, безпечний текст та пов’язані допоміжні функції тексту/логування |
| `plugin-sdk/text-chunking` | Допоміжні функції chunking тексту | Допоміжна функція chunking вихідного тексту |
| `plugin-sdk/speech` | Допоміжні функції speech | Типи провайдерів speech, а також орієнтовані на провайдера допоміжні функції directive, registry і validation |
| `plugin-sdk/speech-core` | Спільне ядро speech | Типи провайдерів speech, registry, directives, нормалізація |
| `plugin-sdk/realtime-transcription` | Допоміжні функції realtime transcription | Типи провайдерів і допоміжні функції registry |
| `plugin-sdk/realtime-voice` | Допоміжні функції realtime voice | Типи провайдерів і допоміжні функції registry |
| `plugin-sdk/image-generation-core` | Спільне ядро image-generation | Типи image-generation, failover, auth і допоміжні функції registry |
| `plugin-sdk/music-generation` | Допоміжні функції music-generation | Типи провайдера/запиту/результату для генерації музики |
| `plugin-sdk/music-generation-core` | Спільне ядро music-generation | Типи music-generation, допоміжні функції failover, пошук провайдера та розбір model-ref |
| `plugin-sdk/video-generation` | Допоміжні функції video-generation | Типи провайдера/запиту/результату для генерації відео |
| `plugin-sdk/video-generation-core` | Спільне ядро video-generation | Типи video-generation, допоміжні функції failover, пошук провайдера та розбір model-ref |
| `plugin-sdk/interactive-runtime` | Допоміжні функції інтерактивної відповіді | Нормалізація/скорочення payload інтерактивної відповіді |
| `plugin-sdk/allowlist-resolution` | Відображення вводу allowlist | `mapAllowlistResolutionInputs` |
| `plugin-sdk/command-auth` | Command gating і допоміжні засоби поверхні команд | `resolveControlCommandGate`, допоміжні засоби авторизації відправника, допоміжні засоби реєстру команд |
| `plugin-sdk/secret-input` | Парсинг вводу секретів | Допоміжні засоби вводу секретів |
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запитів webhook | Утиліти цілей webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби захисту тіла запиту webhook | Допоміжні засоби читання/обмеження тіла запиту |
| `plugin-sdk/reply-runtime` | Спільний runtime відповіді | Вхідна диспетчеризація, heartbeat, планувальник відповідей, чанкування |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби диспетчеризації відповідей | Finalize + допоміжні засоби диспетчеризації провайдера |
| `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` | Допоміжні засоби маршрутизації/session-key | `resolveAgentRoute`, `buildAgentSessionKey`, `resolveDefaultAgentBoundAccountId`, допоміжні засоби нормалізації session-key |
| `plugin-sdk/status-helpers` | Допоміжні засоби статусу каналу | Конструктори зведень статусу каналу/облікового запису, значення runtime-state за замовчуванням, допоміжні засоби метаданих проблем |
| `plugin-sdk/target-resolver-runtime` | Допоміжні засоби визначення цілей | Спільні допоміжні засоби визначення цілей |
| `plugin-sdk/string-normalization-runtime` | Допоміжні засоби нормалізації рядків | Допоміжні засоби нормалізації slug/рядків |
| `plugin-sdk/request-url` | Допоміжні засоби URL запитів | Витягання рядкових URL з input, подібних до запиту |
| `plugin-sdk/run-command` | Допоміжні засоби команд із тайм-аутом | Запуск команд із тайм-аутом і нормалізованими stdout/stderr |
| `plugin-sdk/param-readers` | Зчитувачі параметрів | Поширені зчитувачі параметрів tool/CLI |
| `plugin-sdk/tool-send` | Витягання tool send | Витягання канонічних полів цілі надсилання з аргументів tool |
| `plugin-sdk/temp-path` | Допоміжні засоби тимчасових шляхів | Спільні допоміжні засоби тимчасових шляхів завантаження |
| `plugin-sdk/logging-core` | Допоміжні засоби логування | Logger підсистеми та допоміжні засоби редагування |
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби markdown-table | Допоміжні засоби режимів markdown table |
| `plugin-sdk/reply-payload` | Типи відповідей повідомлень | Типи 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 auth провайдера | Допоміжні засоби визначення API-ключа під час виконання |
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби налаштування API-ключа провайдера | Допоміжні засоби онбордингу/запису профілю API-ключа |
| `plugin-sdk/provider-auth-result` | Допоміжні засоби auth-result провайдера | Стандартний конструктор OAuth auth-result |
| `plugin-sdk/provider-auth-login` | Допоміжні засоби інтерактивного входу провайдера | Спільні допоміжні засоби інтерактивного входу |
| `plugin-sdk/provider-env-vars` | Допоміжні засоби env var провайдера | Допоміжні засоби пошуку env var auth провайдера |
| `plugin-sdk/provider-model-shared` | Спільні допоміжні засоби моделі/повтору провайдера | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори replay-policy, допоміжні засоби endpoint провайдера та нормалізації model-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-config-contract` | Допоміжні засоби конфігурації web-search провайдера | Вузькі допоміжні засоби конфігурації/облікових даних web-search для провайдерів, яким не потрібна прив’язка ввімкнення плагіна |
| `plugin-sdk/provider-web-search-contract` | Допоміжні засоби контракту web-search провайдера | Вузькі допоміжні засоби контракту конфігурації/облікових даних web-search, як-от `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter облікових даних |
| `plugin-sdk/provider-web-search` | Допоміжні засоби web-search провайдера | Допоміжні засоби реєстрації/кешування/runtime web-search провайдера |
| `plugin-sdk/provider-tools` | Допоміжні засоби сумісності tool/schema провайдера | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, cleanup і діагностика схеми Gemini, а також допоміжні засоби сумісності xAI, як-от `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
| `plugin-sdk/provider-usage` | Допоміжні засоби usage провайдера | `fetchClaudeUsage`, `fetchGeminiUsage`, `fetchGithubCopilotUsage` та інші допоміжні засоби usage провайдера |
| `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` | Спільні допоміжні засоби медіа | Допоміжні засоби fetch/transform/store медіа плюс конструктори media payload |
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні засоби генерації медіа | Спільні допоміжні засоби failover, вибору кандидатів і повідомлень про відсутню модель для генерації зображень/відео/музики |
| `plugin-sdk/media-understanding` | Допоміжні засоби media-understanding | Типи провайдерів media understanding плюс експорти допоміжних засобів для зображень/аудіо, орієнтовані на провайдера |
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту | Видалення видимого для асистента тексту, допоміжні засоби рендерингу/чанкування/table для markdown, засоби редагування, допоміжні засоби тегів директив, утиліти безпечного тексту та пов’язані допоміжні засоби тексту/логування |
| `plugin-sdk/text-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` | Спільне ядро генерації зображень | Типи генерації зображень, failover, auth і допоміжні засоби реєстру |
| `plugin-sdk/music-generation` | Допоміжні засоби генерації музики | Типи провайдера/запиту/результату генерації музики |
| `plugin-sdk/music-generation-core` | Спільне ядро генерації музики | Типи генерації музики, допоміжні засоби failover, пошуку провайдера та парсингу model-ref |
| `plugin-sdk/video-generation` | Допоміжні засоби генерації відео | Типи провайдера/запиту/результату генерації відео |
| `plugin-sdk/video-generation-core` | Спільне ядро генерації відео | Типи генерації відео, допоміжні засоби failover, пошуку провайдера та парсингу model-ref |
| `plugin-sdk/interactive-runtime` | Допоміжні засоби interactive reply | Нормалізація/скорочення payload інтерактивної відповіді |
| `plugin-sdk/channel-config-primitives` | Примітиви конфігурації каналу | Вузькі примітиви channel config-schema |
| `plugin-sdk/channel-config-writes` | Допоміжні функції запису конфігурації каналу | Допоміжні функції авторизації запису конфігурації каналу |
| `plugin-sdk/channel-config-writes` | Допоміжні засоби запису конфігурації каналу | Допоміжні засоби авторизації запису конфігурації каналу |
| `plugin-sdk/channel-plugin-common` | Спільна преамбула каналу | Експорти спільної преамбули channel plugin |
| `plugin-sdk/channel-status` | Допоміжні функції статусу каналу | Спільні допоміжні функції snapshot/summary статусу каналу |
| `plugin-sdk/allowlist-config-edit` | Допоміжні функції конфігурації allowlist | Допоміжні функції редагування/читання конфігурації allowlist |
| `plugin-sdk/group-access` | Допоміжні функції доступу до груп | Спільні допоміжні функції ухвалення рішень group-access |
| `plugin-sdk/direct-dm` | Допоміжні функції direct-DM | Спільні допоміжні функції auth/guard для direct-DM |
| `plugin-sdk/extension-shared` | Спільні допоміжні функції extension | Примітиви пасивного каналу/статусу та ambient proxy helper |
| `plugin-sdk/webhook-targets` | Допоміжні функції target для webhook | Допоміжні функції реєстру webhook target і встановлення route |
| `plugin-sdk/webhook-path` | Допоміжні функції шляхів webhook | Допоміжні функції нормалізації шляхів webhook |
| `plugin-sdk/web-media` | Спільні допоміжні функції web media | Допоміжні функції завантаження віддалених/локальних 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 engine | Runtime-фасад індексації/пошуку пам’яті |
| `plugin-sdk/channel-status` | Допоміжні засоби статусу каналу | Спільні допоміжні засоби snapshot/summary статусу каналу |
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби конфігурації allowlist | Допоміжні засоби редагування/читання конфігурації allowlist |
| `plugin-sdk/group-access` | Допоміжні засоби доступу до груп | Спільні допоміжні засоби прийняття рішень щодо group-access |
| `plugin-sdk/direct-dm` | Допоміжні засоби direct-DM | Спільні допоміжні засоби auth/guard для direct-DM |
| `plugin-sdk/extension-shared` | Спільні допоміжні засоби розширень | Примітиви passive-channel/status і ambient proxy helper |
| `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` | Foundation engine хоста пам’яті | Експорти foundation engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-embeddings` | Embedding engine хоста пам’яті | Експорти embedding engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-qmd` | QMD engine хоста пам’яті | Експорти QMD engine хоста пам’яті |
| `plugin-sdk/memory-core-host-engine-storage` | Storage engine хоста пам’яті | Експорти storage engine хоста пам’яті |
| `plugin-sdk/memory-core-host-multimodal` | Мультимодальні допоміжні функції хоста пам’яті | Мультимодальні допоміжні функції хоста пам’яті |
| `plugin-sdk/memory-core-host-query` | Допоміжні функції query хоста пам’яті | Допоміжні функції query хоста пам’яті |
| `plugin-sdk/memory-core-host-secret` | Допоміжні функції secret хоста пам’яті | Допоміжні функції secret хоста пам’яті |
| `plugin-sdk/memory-core-host-events` | Допоміжні функції журналу подій хоста пам’яті | Допоміжні функції журналу подій хоста пам’яті |
| `plugin-sdk/memory-core-host-status` | Допоміжні функції статусу хоста пам’яті | Допоміжні функції статусу хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-cli` | CLI runtime хоста пам’яті | Допоміжні функції CLI runtime хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-core` | Core runtime хоста пам’яті | Допоміжні функції core runtime хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні функції файлів/runtime хоста пам’яті | Допоміжні функції файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-host-core` | Псевдонім core runtime хоста пам’яті | Нейтральний щодо постачальника псевдонім для допоміжних функцій core runtime хоста пам’яті |
| `plugin-sdk/memory-host-events` | Псевдонім журналу подій хоста пам’яті | Нейтральний щодо постачальника псевдонім для допоміжних функцій журналу подій хоста пам’яті |
| `plugin-sdk/memory-host-files` | Псевдонім файлів/runtime хоста пам’яті | Нейтральний щодо постачальника псевдонім для допоміжних функцій файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-host-markdown` | Допоміжні функції керованого markdown | Спільні допоміжні функції керованого markdown для суміжних із пам’яттю плагінів |
| `plugin-sdk/memory-host-search` | Фасад пошуку активної пам’яті | Лінивий runtime-фасад search-manager активної пам’яті |
| `plugin-sdk/memory-host-status` | Псевдонім статусу хоста пам’яті | Нейтральний щодо постачальника псевдонім для допоміжних функцій статусу хоста пам’яті |
| `plugin-sdk/memory-lancedb` | Допоміжні функції вбудованого memory-lancedb | Поверхня допоміжних функцій memory-lancedb |
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні функції та mock-об’єкти для тестування |
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні засоби multimodal хоста пам’яті | Допоміжні засоби multimodal хоста пам’яті |
| `plugin-sdk/memory-core-host-query` | Допоміжні засоби запитів хоста пам’яті | Допоміжні засоби запитів хоста пам’яті |
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби секретів хоста пам’яті | Допоміжні засоби секретів хоста пам’яті |
| `plugin-sdk/memory-core-host-events` | Допоміжні засоби журналу подій хоста пам’яті | Допоміжні засоби журналу подій хоста пам’яті |
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби статусу хоста пам’яті | Допоміжні засоби статусу хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-cli` | CLI runtime хоста пам’яті | Допоміжні засоби CLI runtime хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-core` | Core runtime хоста пам’яті | Допоміжні засоби core runtime хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби файлів/runtime хоста пам’яті | Допоміжні засоби файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-host-core` | Псевдонім core runtime хоста пам’яті | Нейтральний до постачальника псевдонім допоміжних засобів core runtime хоста пам’яті |
| `plugin-sdk/memory-host-events` | Псевдонім журналу подій хоста пам’яті | Нейтральний до постачальника псевдонім допоміжних засобів журналу подій хоста пам’яті |
| `plugin-sdk/memory-host-files` | Псевдонім файлів/runtime хоста пам’яті | Нейтральний до постачальника псевдонім допоміжних засобів файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-host-markdown` | Допоміжні засоби керованого markdown | Спільні допоміжні засоби керованого markdown для memory-adjacent плагінів |
| `plugin-sdk/memory-host-search` | Фасад активного пошуку в пам’яті | Лінивий фасад runtime менеджера активного пошуку в пам’яті |
| `plugin-sdk/memory-host-status` | Псевдонім статусу хоста пам’яті | Нейтральний до постачальника псевдонім допоміжних засобів статусу хоста пам’яті |
| `plugin-sdk/memory-lancedb` | Вбудовані допоміжні засоби memory-lancedb | Поверхня допоміжних засобів memory-lancedb |
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні засоби тестування та mocks |
</Accordion>
Ця таблиця навмисно охоплює лише поширену підмножину для міграції, а не
повну поверхню SDK. Повний список із понад 200 точок входу знаходиться в
Ця таблиця навмисно охоплює поширену підмножину для міграції, а не всю
поверхню SDK. Повний список із понад 200 точок входу міститься у
`scripts/lib/plugin-sdk-entrypoints.json`.
Цей список усе ще містить деякі шви допоміжних функцій вбудованих плагінів,
такі як `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-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support`
- допоміжні засоби підтримки браузера: `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support`
- Matrix: `plugin-sdk/matrix*`
- LINE: `plugin-sdk/line*`
- IRC: `plugin-sdk/irc*`
@ -387,26 +380,26 @@ OpenClaw перейшов від широкого шару зворотної с
`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/` або
Використовуйте якнайвужчий імпорт, що відповідає потрібному завданню. Якщо ви
не можете знайти експорт, перевірте вихідний код у `src/plugin-sdk/` або
запитайте в Discord.
## Графік видалення
| Коли | Що відбувається |
| ---------------------- | ----------------------------------------------------------------------- |
| **Зараз** | Застарілі поверхні виводять попередження під час виконання |
| **Наступний мажорний реліз** | Застарілі поверхні буде видалено; плагіни, які все ще їх використовують, перестануть працювати |
| **Зараз** | Застарілі поверхні видають попередження під час виконання |
| **Наступний мажорний реліз** | Застарілі поверхні буде вилучено; плагіни, які все ще їх використовують, перестануть працювати |
Усі core-плагіни вже мігровано. Зовнішнім плагінам слід виконати міграцію
до наступного мажорного релізу.
Усі основні плагіни вже було мігровано. Зовнішнім плагінам слід виконати
міграцію до наступного мажорного релізу.
## Тимчасове приглушення попереджень
## Тимчасове приховування попереджень
Установіть ці змінні середовища, поки працюєте над міграцією:
Під час роботи над міграцією встановіть ці змінні середовища:
```bash
OPENCLAW_SUPPRESS_PLUGIN_SDK_COMPAT_WARNING=1 openclaw gateway run
@ -418,8 +411,8 @@ OPENCLAW_SUPPRESS_EXTENSION_API_WARNING=1 openclaw gateway run
## Пов’язане
- [Початок роботи](/uk/plugins/building-plugins) — створіть свій перший плагін
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник імпортів за subpath
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник імпортів підшляхів
- [Плагіни каналів](/uk/plugins/sdk-channel-plugins) — створення плагінів каналів
- [Плагіни провайдерів](/uk/plugins/sdk-provider-plugins) — створення плагінів провайдерів
- [Внутрішня будова плагінів](/uk/plugins/architecture) — глибоке занурення в архітектуру
- [Маніфест плагіна](/uk/plugins/manifest) — довідник зі схеми маніфесту
- [Маніфест плагіна](/uk/plugins/manifest) — довідник схеми маніфесту

View File

@ -7,27 +7,27 @@ sidebarTitle: SDK Overview
summary: Карта імпорту, довідник API реєстрації та архітектура SDK
title: Огляд Plugin SDK
x-i18n:
generated_at: "2026-04-08T06:30:42Z"
generated_at: "2026-04-08T08:06:48Z"
model: gpt-5.4
provider: openai
source_hash: a9141dc0303c91974fe693ce48ad9f7dc4179418ae262a96011ad565aae87d21
source_hash: b5dd7a49caa262dd48d18b52782f1c2be3bdf25ec04494ccba38d4ed5b7956ea
source_path: plugins/sdk-overview.md
workflow: 15
---
# Огляд Plugin SDK
Plugin SDK — це типізований контракт між плагінами та ядром. Ця сторінка є
довідником про **що імпортувати** і **що можна реєструвати**.
Plugin SDK — це типізований контракт між plugin і ядром. Ця сторінка є
довідником щодо **що імпортувати** і **що можна реєструвати**.
<Tip>
**Шукаєте практичний посібник?**
- Перший плагін? Почніть із [Getting Started](/uk/plugins/building-plugins)
- Плагін каналу? Див. [Channel Plugins](/uk/plugins/sdk-channel-plugins)
- Плагін провайдера? Див. [Provider Plugins](/uk/plugins/sdk-provider-plugins)
**Шукаєте покроковий посібник?**
- Перший 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)
</Tip>
## Угода про імпорт
## Угода щодо імпорту
Завжди імпортуйте з конкретного підшляху:
@ -37,267 +37,266 @@ import { defineChannelPluginEntry } from "openclaw/plugin-sdk/channel-core";
```
Кожен підшлях — це невеликий самодостатній модуль. Це забезпечує швидкий
запуск і запобігає проблемам із циклічними залежностями. Для специфічних для
каналів допоміжних функцій entry/build надавайте перевагу
`openclaw/plugin-sdk/channel-core`; `openclaw/plugin-sdk/core` залишайте для
ширшої узагальненої поверхні та спільних допоміжних функцій, таких як
запуск і запобігає проблемам із циклічними залежностями. Для специфічних для channel
допоміжних засобів entry/build надавайте перевагу `openclaw/plugin-sdk/channel-core`; `openclaw/plugin-sdk/core`
залишайте для ширшої поверхні-парасольки та спільних допоміжних засобів, таких як
`buildChannelConfigSchema`.
Не додавайте й не використовуйте зручні шари з іменами провайдерів, такі як
Не додавайте і не покладайтеся на зручні шви, названі на честь provider, такі як
`openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або допоміжні
шари з брендуванням каналів. Вбудовані плагіни мають поєднувати узагальнені
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або
допоміжні шви з брендингом channel. Вбудовані plugins мають компонувати узагальнені
підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а ядро
має або використовувати ці локальні для плагіна barrel-файли, або додавати
вузький узагальнений контракт SDK, коли потреба справді є міжканальною.
має або використовувати ці локальні barrel-файли plugin, або додавати вузький узагальнений контракт SDK,
коли потреба справді є між channel.
Згенерована карта експортів усе ще містить невеликий набір допоміжних шарів
для вбудованих плагінів, таких як `plugin-sdk/feishu`,
`plugin-sdk/feishu-setup`, `plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і
`plugin-sdk/matrix*`. Ці підшляхи існують лише для підтримки вбудованих
плагінів і сумісності; їх навмисно не включено до загальної таблиці нижче, і
вони не є рекомендованим шляхом імпорту для нових сторонніх плагінів.
Згенерована карта експорту все ще містить невеликий набір допоміжних
швів для вбудованих plugins, таких як `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
`plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Ці
підшляхи існують лише для супроводу вбудованих plugins і сумісності; їх
навмисно пропущено в загальній таблиці нижче, і вони не є рекомендованим
шляхом імпорту для нових сторонніх plugins.
## Довідник підшляхів
Найуживаніші підшляхи, згруповані за призначенням. Згенерований повний список із
понад 200 підшляхів міститься у `scripts/lib/plugin-sdk-entrypoints.json`.
Найуживаніші підшляхи, згруповані за призначенням. Повний згенерований список
із понад 200 підшляхів міститься в `scripts/lib/plugin-sdk-entrypoints.json`.
Зарезервовані допоміжні підшляхи для вбудованих плагінів усе ще з’являються в
цьому згенерованому списку. Вважайте їх деталями реалізації/поверхнями
сумісності, якщо лише якась сторінка документації явно не проголошує одну з
них публічною.
Зарезервовані допоміжні підшляхи для вбудованих plugins усе ще з’являються в цьому
згенерованому списку. Розглядайте їх як поверхні деталей реалізації/сумісності, якщо лише сторінка документації
явно не просуває одну з них як публічну.
### Точка входу плагіна
### Plugin entry
| Subpath | Ключові експорти |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Підшлях | Ключові експорти |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `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="Підшляхи каналів">
| Subpath | Ключові експорти |
<Accordion title="Підшляхи channel">
| Підшлях | Ключові експорти |
| --- | --- |
| `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` | Спільні допоміжні функції майстра налаштування, запити списку дозволених, побудовники статусу налаштування |
| `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` | Допоміжні функції багатoакаунтної конфігурації/контролю дій, допоміжні функції резервного вибору акаунта за замовчуванням |
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні функції нормалізації ID акаунта |
| `plugin-sdk/account-resolution` | Пошук акаунта + допоміжні функції резервного вибору за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні функції для списку акаунтів/дій з акаунтами |
| `plugin-sdk/account-core` | Допоміжні засоби для багатoакаунтної конфігурації/контролю дій, допоміжні засоби резервного акаунта за замовчуванням |
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні засоби нормалізації ID акаунта |
| `plugin-sdk/account-resolution` | Допоміжні засоби пошуку акаунта + резервного використання значення за замовчуванням |
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби для списку акаунтів/дій з акаунтом |
| `plugin-sdk/channel-pairing` | `createChannelPairingController` |
| `plugin-sdk/channel-reply-pipeline` | `createChannelReplyPipeline` |
| `plugin-sdk/channel-config-helpers` | `createHybridChannelConfigAdapter` |
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації каналу |
| `plugin-sdk/telegram-command-config` | Допоміжні функції нормалізації/валідації кастомних команд Telegram з резервною підтримкою вбудованого контракту |
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації channel |
| `plugin-sdk/telegram-command-config` | Допоміжні засоби нормалізації/валідації користувацьких команд Telegram із резервною підтримкою контракту вбудованого plugin |
| `plugin-sdk/channel-policy` | `resolveChannelGroupRequireMention` |
| `plugin-sdk/channel-lifecycle` | `createAccountStatusSink` |
| `plugin-sdk/inbound-envelope` | Спільні допоміжні функції побудови вхідних маршрутів та envelope |
| `plugin-sdk/inbound-reply-dispatch` | Спільні допоміжні функції запису та диспетчеризації вхідних даних |
| `plugin-sdk/messaging-targets` | Допоміжні функції парсингу/зіставлення цілей |
| `plugin-sdk/outbound-media` | Спільні допоміжні функції завантаження вихідних медіа |
| `plugin-sdk/outbound-runtime` | Допоміжні функції для вихідної ідентичності/делегування надсилання |
| `plugin-sdk/thread-bindings-runtime` | Життєвий цикл прив’язок потоків та допоміжні функції адаптерів |
| `plugin-sdk/agent-media-payload` | Застарілий побудовник медіапейлоадів агента |
| `plugin-sdk/conversation-runtime` | Допоміжні функції прив’язки розмов/потоків, pairing і налаштованих прив’язок |
| `plugin-sdk/runtime-config-snapshot` | Допоміжна функція знімка конфігурації runtime |
| `plugin-sdk/runtime-group-policy` | Допоміжні функції визначення політики груп у runtime |
| `plugin-sdk/channel-status` | Спільні допоміжні функції знімка/зведення статусу каналу |
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми конфігурації каналу |
| `plugin-sdk/channel-config-writes` | Допоміжні функції авторизації запису конфігурації каналу |
| `plugin-sdk/channel-plugin-common` | Спільні prelude-експорти плагінів каналів |
| `plugin-sdk/allowlist-config-edit` | Допоміжні функції редагування/читання конфігурації списку дозволених |
| `plugin-sdk/group-access` | Спільні допоміжні функції рішень щодо доступу до груп |
| `plugin-sdk/direct-dm` | Спільні допоміжні функції авторизації/захисту прямих DM |
| `plugin-sdk/interactive-runtime` | Допоміжні функції нормалізації/зведення інтерактивних пейлоадів відповідей |
| `plugin-sdk/channel-inbound` | Допоміжні функції debounce для вхідних повідомлень, зіставлення згадок, політики згадок і допоміжні функції envelope |
| `plugin-sdk/channel-send-result` | Типи результатів відповіді |
| `plugin-sdk/inbound-envelope` | Спільні допоміжні засоби побудови вхідного route + envelope |
| `plugin-sdk/inbound-reply-dispatch` | Спільні допоміжні засоби запису та диспетчеризації inbound |
| `plugin-sdk/messaging-targets` | Допоміжні засоби розбору/зіставлення цілей |
| `plugin-sdk/outbound-media` | Спільні допоміжні засоби завантаження вихідних медіа |
| `plugin-sdk/outbound-runtime` | Допоміжні засоби для outbound identity/send delegate |
| `plugin-sdk/thread-bindings-runtime` | Допоміжні засоби життєвого циклу thread-binding і адаптерів |
| `plugin-sdk/agent-media-payload` | Застарілий побудовник медіапейлоаду агента |
| `plugin-sdk/conversation-runtime` | Допоміжні засоби прив’язки conversation/thread, pairing і налаштованих binding |
| `plugin-sdk/runtime-config-snapshot` | Допоміжний засіб знімка конфігурації runtime |
| `plugin-sdk/runtime-group-policy` | Допоміжні засоби визначення group-policy у runtime |
| `plugin-sdk/channel-status` | Спільні допоміжні засоби знімка/зведення статусу channel |
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми конфігурації channel |
| `plugin-sdk/channel-config-writes` | Допоміжні засоби авторизації запису конфігурації channel |
| `plugin-sdk/channel-plugin-common` | Спільні prelude-експорти channel plugin |
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби редагування/читання конфігурації allowlist |
| `plugin-sdk/group-access` | Спільні допоміжні засоби рішень щодо group-access |
| `plugin-sdk/direct-dm` | Спільні допоміжні засоби auth/guard для direct-DM |
| `plugin-sdk/interactive-runtime` | Допоміжні засоби нормалізації/скорочення payload інтерактивних відповідей |
| `plugin-sdk/channel-inbound` | Допоміжні засоби debounce для inbound, зіставлення mention, mention-policy та envelope |
| `plugin-sdk/channel-send-result` | Типи результатів reply |
| `plugin-sdk/channel-actions` | `createMessageToolButtonsSchema`, `createMessageToolCardSchema` |
| `plugin-sdk/channel-targets` | Допоміжні функції парсингу/зіставлення цілей |
| `plugin-sdk/channel-contract` | Типи контракту каналу |
| `plugin-sdk/channel-feedback` | Підключення зворотного зв’язку/реакцій |
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні функції secret-контракту, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, і типи secret-цілей |
| `plugin-sdk/channel-targets` | Допоміжні засоби розбору/зіставлення цілей |
| `plugin-sdk/channel-contract` | Типи контракту channel |
| `plugin-sdk/channel-feedback` | Інтеграція feedback/reaction |
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби secret-contract, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, і типи secret target |
</Accordion>
<Accordion title="Підшляхи провайдерів">
| Subpath | Ключові експорти |
<Accordion title="Підшляхи provider">
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
| `plugin-sdk/provider-setup` | Кураторські допоміжні функції налаштування локальних/self-hosted провайдерів |
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні функції налаштування self-hosted провайдерів, сумісних з OpenAI |
| `plugin-sdk/cli-backend` | Значення за замовчуванням для CLI backend + константи watchdog |
| `plugin-sdk/provider-auth-runtime` | Допоміжні функції визначення API-ключів у runtime для плагінів провайдерів |
| `plugin-sdk/provider-auth-api-key` | Допоміжні функції онбордингу/запису профілю API-ключів, такі як `upsertApiKeyProfile` |
| `plugin-sdk/provider-auth-result` | Стандартний побудовник результатів OAuth-автентифікації |
| `plugin-sdk/provider-auth-login` | Спільні інтерактивні допоміжні функції входу для плагінів провайдерів |
| `plugin-sdk/provider-env-vars` | Допоміжні функції пошуку env var для автентифікації провайдерів |
| `plugin-sdk/provider-setup` | Кураторські допоміжні засоби налаштування local/self-hosted provider |
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted provider, сумісного з OpenAI |
| `plugin-sdk/cli-backend` | Значення за замовчуванням для бекенда CLI + константи watchdog |
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби визначення API-ключа у runtime для provider plugins |
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби онбордингу/запису профілю API-ключа, такі як `upsertApiKeyProfile` |
| `plugin-sdk/provider-auth-result` | Стандартний побудовник результату OAuth auth |
| `plugin-sdk/provider-auth-login` | Спільні інтерактивні допоміжні засоби входу для provider plugins |
| `plugin-sdk/provider-env-vars` | Допоміжні засоби пошуку env vars для auth provider |
| `plugin-sdk/provider-auth` | `createProviderApiKeyAuthMethod`, `ensureApiKeyFromOptionEnvOrPrompt`, `upsertAuthProfile`, `upsertApiKeyProfile`, `writeOAuthCredentials` |
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники політик replay, допоміжні функції endpoint провайдера та нормалізації ID моделей, такі як `normalizeNativeXaiModelId` |
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники replay-policy, допоміжні засоби endpoint provider та допоміжні засоби нормалізації model-id, такі як `normalizeNativeXaiModelId` |
| `plugin-sdk/provider-catalog-shared` | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
| `plugin-sdk/provider-http` | Узагальнені допоміжні функції для HTTP/можливостей endpoint провайдера |
| `plugin-sdk/provider-web-fetch-contract` | Вузькі допоміжні функції контракту конфігурації/вибору web-fetch, такі як `enablePluginInConfig` і `WebFetchProviderPlugin` |
| `plugin-sdk/provider-web-fetch` | Допоміжні функції реєстрації/кешування провайдерів web-fetch |
| `plugin-sdk/provider-web-search-contract` | Вузькі допоміжні функції контракту конфігурації/облікових даних web-search, такі як `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter для облікових даних |
| `plugin-sdk/provider-web-search` | Допоміжні функції реєстрації/кешування/runtime для провайдерів web-search |
| `plugin-sdk/provider-tools` | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + діагностика, а також допоміжні функції сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
| `plugin-sdk/provider-http` | Узагальнені допоміжні засоби HTTP/можливостей endpoint для provider |
| `plugin-sdk/provider-web-fetch-contract` | Вузькі допоміжні засоби контракту конфігурації/вибору web-fetch, такі як `enablePluginInConfig` і `WebFetchProviderPlugin` |
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби реєстрації/кешування provider web-fetch |
| `plugin-sdk/provider-web-search-config-contract` | Вузькі допоміжні засоби конфігурації/облікових даних web-search для provider, яким не потрібна інтеграція ввімкнення plugin |
| `plugin-sdk/provider-web-search-contract` | Вузькі допоміжні засоби контракту конфігурації/облікових даних web-search, такі як `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setters/getters облікових даних |
| `plugin-sdk/provider-web-search` | Допоміжні засоби реєстрації/кешування/runtime 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` | Допоміжні функції process-local singleton/map/cache |
| `plugin-sdk/provider-stream` | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи stream wrapper і спільні допоміжні засоби wrapper для Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
| `plugin-sdk/provider-onboard` | Допоміжні засоби патчів конфігурації онбордингу |
| `plugin-sdk/global-singleton` | Допоміжні засоби process-local singleton/map/cache |
</Accordion>
<Accordion title="Підшляхи автентифікації та безпеки">
| Subpath | Ключові експорти |
<Accordion title="Підшляхи auth і безпеки">
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні функції реєстру команд, допоміжні функції авторизації відправника |
| `plugin-sdk/approval-auth-runtime` | Допоміжні функції визначення approver і авторизації дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні функції профілів/фільтрів підтвердження native exec |
| `plugin-sdk/approval-delivery-runtime` | Адаптери можливостей/доставки native confirmation |
| `plugin-sdk/approval-gateway-runtime` | Спільна допоміжна функція визначення approval gateway |
| `plugin-sdk/approval-handler-adapter-runtime` | Полегшені допоміжні функції завантаження native approval adapter для гарячих точок входу каналів |
| `plugin-sdk/approval-handler-runtime` | Ширші допоміжні функції runtime для approval handler; віддавайте перевагу вужчим adapter/gateway seams, якщо їх достатньо |
| `plugin-sdk/approval-native-runtime` | Допоміжні функції цілей native approval + прив’язки акаунтів |
| `plugin-sdk/approval-reply-runtime` | Допоміжні функції пейлоадів відповідей exec/plugin approval |
| `plugin-sdk/command-auth-native` | Допоміжні функції native command auth + native session-target |
| `plugin-sdk/command-detection` | Спільні допоміжні функції виявлення команд |
| `plugin-sdk/command-surface` | Допоміжні функції нормалізації тіла команди та command-surface |
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні засоби реєстру команд, допоміжні засоби авторизації відправника |
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби визначення approver і auth дій у тому самому чаті |
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби профілю/фільтра native exec approval |
| `plugin-sdk/approval-delivery-runtime` | Native approval capability/delivery adapters |
| `plugin-sdk/approval-gateway-runtime` | Спільний допоміжний засіб визначення approval gateway |
| `plugin-sdk/approval-handler-adapter-runtime` | Полегшені допоміжні засоби завантаження native approval adapter для гарячих channel entrypoint |
| `plugin-sdk/approval-handler-runtime` | Ширші допоміжні засоби runtime approval handler; надавайте перевагу вужчим adapter/gateway seams, коли їх достатньо |
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби native approval target + прив’язки акаунта |
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби payload відповіді на exec/plugin approval |
| `plugin-sdk/command-auth-native` | Допоміжні засоби native command auth + native session-target |
| `plugin-sdk/command-detection` | Спільні допоміжні засоби виявлення команд |
| `plugin-sdk/command-surface` | Нормалізація command-body і допоміжні засоби command-surface |
| `plugin-sdk/allow-from` | `formatAllowFromLowercase` |
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні функції збирання secret-контрактів для secret-surface каналів/плагінів |
| `plugin-sdk/secret-ref-runtime` | Вузькі допоміжні функції `coerceSecretRef` і типізації SecretRef для парсингу secret-контрактів/конфігурації |
| `plugin-sdk/security-runtime` | Спільні допоміжні функції довіри, DM-gating, зовнішнього вмісту та збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні функції політики SSRF для host allowlist і приватних мереж |
| `plugin-sdk/ssrf-runtime` | Допоміжні функції pinned-dispatcher, fetch із захистом SSRF і політики SSRF |
| `plugin-sdk/secret-input` | Допоміжні функції парсингу secret input |
| `plugin-sdk/webhook-ingress` | Допоміжні функції запитів/цілей webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні функції розміру тіла запиту/тайм-ауту |
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби збирання secret-contract для поверхонь секретів channel/plugin |
| `plugin-sdk/secret-ref-runtime` | Вузькі допоміжні засоби `coerceSecretRef` і типізації SecretRef для парсингу secret-contract/config |
| `plugin-sdk/security-runtime` | Спільні допоміжні засоби довіри, DM gating, зовнішнього вмісту та збирання секретів |
| `plugin-sdk/ssrf-policy` | Допоміжні засоби allowlist хостів і політики SSRF для приватних мереж |
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби pinned-dispatcher, fetch із захистом SSRF і політики SSRF |
| `plugin-sdk/secret-input` | Допоміжні засоби парсингу secret input |
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запиту/цілі webhook |
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби для розміру body/timeout запиту |
</Accordion>
<Accordion title="Підшляхи runtime та сховища">
| Subpath | Ключові експорти |
<Accordion title="Підшляхи runtime і зберігання">
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/runtime` | Широкі допоміжні функції runtime/логування/резервного копіювання/встановлення плагінів |
| `plugin-sdk/runtime-env` | Вузькі допоміжні функції runtime env, logger, timeout, retry і backoff |
| `plugin-sdk/channel-runtime-context` | Узагальнені допоміжні функції реєстрації та пошуку channel runtime-context |
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime/logging/backup/plugin-install |
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби env runtime, logger, timeout, retry і backoff |
| `plugin-sdk/channel-runtime-context` | Узагальнені допоміжні засоби реєстрації та пошуку channel runtime-context |
| `plugin-sdk/runtime-store` | `createPluginRuntimeStore` |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні функції для команд/хуків/http/interactive плагінів |
| `plugin-sdk/hook-runtime` | Спільні допоміжні функції pipeline для webhook/internal hook |
| `plugin-sdk/lazy-runtime` | Допоміжні функції lazy-імпорту та прив’язки runtime, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні функції виконання процесів |
| `plugin-sdk/cli-runtime` | Допоміжні функції форматування, очікування та версій для CLI |
| `plugin-sdk/gateway-runtime` | Допоміжні функції клієнта gateway і patch статусу каналу |
| `plugin-sdk/config-runtime` | Допоміжні функції завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Допоміжні функції нормалізації назв/описів команд Telegram і перевірки дублікатів/конфліктів, навіть коли поверхня вбудованого контракту Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні функції exec/plugin approval, побудовники approval-capability, допоміжні функції auth/profile, native routing/runtime |
| `plugin-sdk/reply-runtime` | Спільні допоміжні функції runtime для вхідних повідомлень/відповідей, chunking, dispatch, heartbeat, planner відповідей |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні функції dispatch/finalize відповіді |
| `plugin-sdk/reply-history` | Спільні допоміжні функції коротковіконної історії відповідей, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби для команд/hook/http/interactive plugin |
| `plugin-sdk/hook-runtime` | Спільні допоміжні засоби pipeline внутрішніх hook/webhook |
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy runtime import/binding, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
| `plugin-sdk/process-runtime` | Допоміжні засоби exec процесів |
| `plugin-sdk/cli-runtime` | Допоміжні засоби форматування CLI, wait і version |
| `plugin-sdk/gateway-runtime` | Допоміжні засоби клієнта gateway і патчів статусу channel |
| `plugin-sdk/config-runtime` | Допоміжні засоби завантаження/запису конфігурації |
| `plugin-sdk/telegram-command-config` | Нормалізація назви/опису команд Telegram і перевірки дублікатів/конфліктів, навіть коли поверхня контракту вбудованого Telegram недоступна |
| `plugin-sdk/approval-runtime` | Допоміжні засоби exec/plugin approval, побудовники approval-capability, допоміжні засоби auth/profile, native routing/runtime |
| `plugin-sdk/reply-runtime` | Спільні допоміжні засоби inbound/reply runtime, chunking, dispatch, heartbeat, планувальник reply |
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби dispatch/finalize reply |
| `plugin-sdk/reply-history` | Спільні допоміжні засоби коротковіконної історії reply, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
| `plugin-sdk/reply-reference` | `createReplyReferencePlanner` |
| `plugin-sdk/reply-chunking` | Вузькі допоміжні функції chunking для тексту/markdown |
| `plugin-sdk/session-store-runtime` | Допоміжні функції шляху сховища сесій + updated-at |
| `plugin-sdk/state-paths` | Допоміжні функції шляхів до каталогів state/OAuth |
| `plugin-sdk/routing` | Допоміжні функції маршруту/ключа сесії/прив’язки акаунта, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
| `plugin-sdk/status-helpers` | Спільні допоміжні функції зведення статусу каналу/акаунта, значення runtime-state за замовчуванням і допоміжні функції метаданих проблем |
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні функції визначення цілей |
| `plugin-sdk/string-normalization-runtime` | Допоміжні функції нормалізації slug/рядків |
| `plugin-sdk/request-url` | Витягування рядкових URL із fetch/request-подібних вхідних даних |
| `plugin-sdk/run-command` | Runner команд із таймуванням і нормалізованими результатами stdout/stderr |
| `plugin-sdk/param-readers` | Загальні читачі параметрів tool/CLI |
| `plugin-sdk/tool-send` | Витягування канонічних полів цілей надсилання з аргументів tool |
| `plugin-sdk/temp-path` | Спільні допоміжні функції шляхів до тимчасових завантажень |
| `plugin-sdk/logging-core` | Допоміжні функції subsystem logger і redaction |
| `plugin-sdk/markdown-table-runtime` | Допоміжні функції режиму таблиць Markdown |
| `plugin-sdk/json-store` | Невеликі допоміжні функції читання/запису стану JSON |
| `plugin-sdk/file-lock` | Допоміжні функції реентерабельного file-lock |
| `plugin-sdk/persistent-dedupe` | Допоміжні функції дискового кешу дедуплікації |
| `plugin-sdk/acp-runtime` | Допоміжні функції ACP runtime/session і reply-dispatch |
| `plugin-sdk/reply-chunking` | Вузькі допоміжні засоби chunking тексту/markdown |
| `plugin-sdk/session-store-runtime` | Допоміжні засоби шляху до session store + updated-at |
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів до каталогу state/OAuth |
| `plugin-sdk/routing` | Допоміжні засоби прив’язки route/session-key/акаунта, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
| `plugin-sdk/status-helpers` | Спільні допоміжні засоби зведення статусу channel/акаунта, значення за замовчуванням для runtime-state і допоміжні засоби метаданих проблем |
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні засоби 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` | Допоміжні засоби logger підсистеми та редагування чутливих даних |
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби режиму таблиць Markdown |
| `plugin-sdk/json-store` | Невеликі допоміжні засоби читання/запису JSON state |
| `plugin-sdk/file-lock` | Реентерабельні допоміжні засоби file-lock |
| `plugin-sdk/persistent-dedupe` | Допоміжні засоби дискового кешу dedupe |
| `plugin-sdk/acp-runtime` | Допоміжні засоби ACP runtime/session і reply-dispatch |
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви схеми конфігурації runtime агента |
| `plugin-sdk/boolean-param` | Гнучкий читач булевих параметрів |
| `plugin-sdk/dangerous-name-runtime` | Допоміжні функції визначення збігів небезпечних назв |
| `plugin-sdk/device-bootstrap` | Допоміжні функції bootstrap пристрою та токенів pairing |
| `plugin-sdk/extension-shared` | Спільні примітиви для passive-channel, status і ambient proxy helper |
| `plugin-sdk/models-provider-runtime` | Допоміжні функції відповіді провайдера/команди `/models` |
| `plugin-sdk/skill-commands-runtime` | Допоміжні функції перелічення команд Skills |
| `plugin-sdk/native-command-registry` | Допоміжні функції реєстру/build/serialize native command |
| `plugin-sdk/provider-zai-endpoint` | Допоміжні функції виявлення endpoint Z.AI |
| `plugin-sdk/infra-runtime` | Допоміжні функції системних подій/heartbeat |
| `plugin-sdk/collection-runtime` | Невеликі допоміжні функції обмеженого кешу |
| `plugin-sdk/diagnostic-runtime` | Допоміжні функції діагностичних прапорців і подій |
| `plugin-sdk/error-runtime` | Допоміжні функції графа помилок, форматування, спільної класифікації помилок, `isApprovalNotFoundError` |
| `plugin-sdk/fetch-runtime` | Допоміжні функції обгорнутого fetch, proxy і pinned lookup |
| `plugin-sdk/host-runtime` | Допоміжні функції нормалізації hostname і SCP host |
| `plugin-sdk/retry-runtime` | Допоміжні функції конфігурації retry і виконання retry |
| `plugin-sdk/agent-runtime` | Допоміжні функції каталогу/ідентичності/workspace агента |
| `plugin-sdk/directory-runtime` | Запит/дедуплікація каталогів на основі конфігурації |
| `plugin-sdk/boolean-param` | Читач нечітких boolean-параметрів |
| `plugin-sdk/dangerous-name-runtime` | Допоміжні засоби визначення збігів небезпечних імен |
| `plugin-sdk/device-bootstrap` | Допоміжні засоби bootstrap пристрою та токенів pairing |
| `plugin-sdk/extension-shared` | Спільні примітиви допоміжних засобів passive-channel, status і ambient proxy |
| `plugin-sdk/models-provider-runtime` | Допоміжні засоби відповіді provider/команди `/models` |
| `plugin-sdk/skill-commands-runtime` | Допоміжні засоби переліку команд Skills |
| `plugin-sdk/native-command-registry` | Допоміжні засоби реєстру/build/serialize native команд |
| `plugin-sdk/provider-zai-endpoint` | Допоміжні засоби виявлення endpoint Z.AI |
| `plugin-sdk/infra-runtime` | Допоміжні засоби системних подій/heartbeat |
| `plugin-sdk/collection-runtime` | Невеликі допоміжні засоби обмеженого кешу |
| `plugin-sdk/diagnostic-runtime` | Допоміжні засоби діагностичних прапорців і подій |
| `plugin-sdk/error-runtime` | Граф помилок, форматування, спільні допоміжні засоби класифікації помилок, `isApprovalNotFoundError` |
| `plugin-sdk/fetch-runtime` | Допоміжні засоби обгорнутого fetch, proxy і pinned lookup |
| `plugin-sdk/host-runtime` | Допоміжні засоби нормалізації hostname і SCP host |
| `plugin-sdk/retry-runtime` | Допоміжні засоби конфігурації retry та запуску retry |
| `plugin-sdk/agent-runtime` | Допоміжні засоби каталогу/ідентичності/workspace агента |
| `plugin-sdk/directory-runtime` | Запит/усунення дублікатів каталогу на основі конфігурації |
| `plugin-sdk/keyed-async-queue` | `KeyedAsyncQueue` |
</Accordion>
<Accordion title="Підшляхи можливостей і тестування">
| Subpath | Ключові експорти |
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/media-runtime` | Спільні допоміжні функції fetch/transform/store для медіа, а також побудовники медіапейлоадів |
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні функції failover для генерації медіа, вибору кандидатів і повідомлень про відсутні моделі |
| `plugin-sdk/media-understanding` | Типи провайдерів media understanding, а також provider-facing експорти допоміжних функцій для зображень/аудіо |
| `plugin-sdk/text-runtime` | Спільні допоміжні функції тексту/markdown/логування, такі як видалення видимого для асистента тексту, допоміжні функції render/chunking/table для markdown, redaction helpers, directive-tag helpers і safe-text utilities |
| `plugin-sdk/text-chunking` | Допоміжна функція chunking вихідного тексту |
| `plugin-sdk/speech` | Типи провайдерів мовлення, а також provider-facing допоміжні функції directive, registry і validation |
| `plugin-sdk/speech-core` | Спільні типи провайдерів мовлення, допоміжні функції registry, directive і normalization |
| `plugin-sdk/realtime-transcription` | Типи провайдерів realtime transcription і допоміжні функції registry |
| `plugin-sdk/realtime-voice` | Типи провайдерів realtime voice і допоміжні функції registry |
| `plugin-sdk/image-generation` | Типи провайдерів генерації зображень |
| `plugin-sdk/image-generation-core` | Спільні типи генерації зображень, допоміжні функції failover, auth і registry |
| `plugin-sdk/music-generation` | Типи провайдерів/запитів/результатів генерації музики |
| `plugin-sdk/music-generation-core` | Спільні типи генерації музики, допоміжні функції failover, пошуку провайдера і парсингу model-ref |
| `plugin-sdk/video-generation` | Типи провайдерів/запитів/результатів генерації відео |
| `plugin-sdk/video-generation-core` | Спільні типи генерації відео, допоміжні функції failover, пошуку провайдера і парсингу model-ref |
| `plugin-sdk/webhook-targets` | Допоміжні функції реєстру webhook targets і встановлення маршрутів |
| `plugin-sdk/webhook-path` | Допоміжні функції нормалізації шляху webhook |
| `plugin-sdk/web-media` | Спільні допоміжні функції завантаження віддалених/локальних медіа |
| `plugin-sdk/zod` | Повторний експорт `zod` для споживачів plugin SDK |
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби fetch/transform/store медіа, а також побудовники медіапейлоадів |
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні засоби failover для генерації медіа, вибір кандидатів і повідомлення про відсутню модель |
| `plugin-sdk/media-understanding` | Типи provider для розуміння медіа, а також експорти допоміжних засобів для зображень/аудіо з боку provider |
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби для тексту/markdown/logging, такі як видалення видимого для асистента тексту, допоміжні засоби render/chunking/table для markdown, редагування чутливих даних, допоміжні засоби тегів директив і утиліти безпечного тексту |
| `plugin-sdk/text-chunking` | Допоміжний засіб chunking вихідного тексту |
| `plugin-sdk/speech` | Типи provider мовлення, а також допоміжні засоби директив, реєстру і валідації з боку provider |
| `plugin-sdk/speech-core` | Спільні допоміжні засоби типів, реєстру, директив і нормалізації для provider мовлення |
| `plugin-sdk/realtime-transcription` | Типи provider транскрипції в реальному часі та допоміжні засоби реєстру |
| `plugin-sdk/realtime-voice` | Типи provider голосу в реальному часі та допоміжні засоби реєстру |
| `plugin-sdk/image-generation` | Типи provider генерації зображень |
| `plugin-sdk/image-generation-core` | Спільні допоміжні засоби типів, failover, auth і реєстру для генерації зображень |
| `plugin-sdk/music-generation` | Типи provider/request/result для генерації музики |
| `plugin-sdk/music-generation-core` | Спільні допоміжні засоби типів, failover, пошуку provider і парсингу model-ref для генерації музики |
| `plugin-sdk/video-generation` | Типи provider/request/result для генерації відео |
| `plugin-sdk/video-generation-core` | Спільні допоміжні засоби типів, failover, пошуку provider і парсингу 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/testing` | `installCommonResolveTargetErrorCases`, `shouldAckReaction` |
</Accordion>
<Accordion title="Підшляхи пам’яті">
| Subpath | Ключові експорти |
| Підшлях | Ключові експорти |
| --- | --- |
| `plugin-sdk/memory-core` | Поверхня допоміжних функцій вбудованого memory-core для manager/config/file/CLI helpers |
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime для memory index/search |
| `plugin-sdk/memory-core-host-engine-foundation` | Експорти foundation engine для memory host |
| `plugin-sdk/memory-core-host-engine-embeddings` | Експорти embedding engine для memory host |
| `plugin-sdk/memory-core-host-engine-qmd` | Експорти QMD engine для memory host |
| `plugin-sdk/memory-core-host-engine-storage` | Експорти storage engine для memory host |
| `plugin-sdk/memory-core-host-multimodal` | Допоміжні функції multimodal для memory host |
| `plugin-sdk/memory-core-host-query` | Допоміжні функції query для memory host |
| `plugin-sdk/memory-core-host-secret` | Допоміжні функції secret для memory host |
| `plugin-sdk/memory-core-host-events` | Допоміжні функції журналу подій для memory host |
| `plugin-sdk/memory-core-host-status` | Допоміжні функції статусу для memory host |
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні функції runtime CLI для memory host |
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні функції core runtime для memory host |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні функції файлів/runtime для memory host |
| `plugin-sdk/memory-host-core` | Вендорно-нейтральний псевдонім для допоміжних функцій core runtime memory host |
| `plugin-sdk/memory-host-events` | Вендорно-нейтральний псевдонім для допоміжних функцій журналу подій memory host |
| `plugin-sdk/memory-host-files` | Вендорно-нейтральний псевдонім для допоміжних функцій файлів/runtime memory host |
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні функції managed-markdown для плагінів, суміжних із пам’яттю |
| `plugin-sdk/memory-core` | Поверхня допоміжних засобів вбудованого memory-core для менеджера/конфігурації/файлів/CLI |
| `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` | Допоміжні засоби запитів для хоста пам’яті |
| `plugin-sdk/memory-core-host-secret` | Допоміжні засоби секретів для хоста пам’яті |
| `plugin-sdk/memory-core-host-events` | Допоміжні засоби журналу подій для хоста пам’яті |
| `plugin-sdk/memory-core-host-status` | Допоміжні засоби статусу для хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-cli` | Допоміжні засоби CLI runtime для хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-core` | Допоміжні засоби core runtime для хоста пам’яті |
| `plugin-sdk/memory-core-host-runtime-files` | Допоміжні засоби файлів/runtime для хоста пам’яті |
| `plugin-sdk/memory-host-core` | Vendor-neutral псевдонім для допоміжних засобів core runtime хоста пам’яті |
| `plugin-sdk/memory-host-events` | Vendor-neutral псевдонім для допоміжних засобів журналу подій хоста пам’яті |
| `plugin-sdk/memory-host-files` | Vendor-neutral псевдонім для допоміжних засобів файлів/runtime хоста пам’яті |
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні засоби керованого markdown для plugins, суміжних із пам’яттю |
| `plugin-sdk/memory-host-search` | Активний фасад runtime пам’яті для доступу до search-manager |
| `plugin-sdk/memory-host-status` | Вендорно-нейтральний псевдонім для допоміжних функцій статусу memory host |
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних функцій вбудованого memory-lancedb |
| `plugin-sdk/memory-host-status` | Vendor-neutral псевдонім для допоміжних засобів статусу хоста пам’яті |
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних засобів вбудованого memory-lancedb |
</Accordion>
<Accordion title="Зарезервовані допоміжні підшляхи вбудованих компонентів">
| Family | Поточні підшляхи | Призначення |
<Accordion title="Зарезервовані підшляхи вбудованих helper">
| Сімейство | Поточні підшляхи | Призначення |
| --- | --- | --- |
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support` | Допоміжні функції підтримки вбудованого browser plugin (`browser-support` залишається barrel-файлом сумісності) |
| Matrix | `plugin-sdk/matrix`, `plugin-sdk/matrix-helper`, `plugin-sdk/matrix-runtime-heavy`, `plugin-sdk/matrix-runtime-shared`, `plugin-sdk/matrix-runtime-surface`, `plugin-sdk/matrix-surface`, `plugin-sdk/matrix-thread-bindings` | Поверхня допоміжних функцій/runtime для вбудованого Matrix |
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня допоміжних функцій/runtime для вбудованого LINE |
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня допоміжних функцій для вбудованого IRC |
| Допоміжні функції, специфічні для каналів | `plugin-sdk/googlechat`, `plugin-sdk/zalouser`, `plugin-sdk/bluebubbles`, `plugin-sdk/bluebubbles-policy`, `plugin-sdk/mattermost`, `plugin-sdk/mattermost-policy`, `plugin-sdk/feishu-conversation`, `plugin-sdk/msteams`, `plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`, `plugin-sdk/twitch` | Поверхні сумісності/допоміжних функцій для вбудованих каналів |
| Допоміжні функції, специфічні для auth/плагінів | `plugin-sdk/github-copilot-login`, `plugin-sdk/github-copilot-token`, `plugin-sdk/diagnostics-otel`, `plugin-sdk/diffs`, `plugin-sdk/llm-task`, `plugin-sdk/thread-ownership`, `plugin-sdk/voice-call` | Допоміжні шари для вбудованих можливостей/плагінів; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support` | Допоміжні засоби підтримки вбудованого browser plugin (`browser-support` залишається barrel-файлом сумісності) |
| Matrix | `plugin-sdk/matrix`, `plugin-sdk/matrix-helper`, `plugin-sdk/matrix-runtime-heavy`, `plugin-sdk/matrix-runtime-shared`, `plugin-sdk/matrix-runtime-surface`, `plugin-sdk/matrix-surface`, `plugin-sdk/matrix-thread-bindings` | Поверхня helper/runtime для вбудованого Matrix |
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня helper/runtime для вбудованого LINE |
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня helper для вбудованого IRC |
| Допоміжні засоби, специфічні для channel | `plugin-sdk/googlechat`, `plugin-sdk/zalouser`, `plugin-sdk/bluebubbles`, `plugin-sdk/bluebubbles-policy`, `plugin-sdk/mattermost`, `plugin-sdk/mattermost-policy`, `plugin-sdk/feishu-conversation`, `plugin-sdk/msteams`, `plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`, `plugin-sdk/twitch` | Шви сумісності/допоміжні засоби для вбудованих channel |
| Допоміжні засоби, специфічні для auth/plugin | `plugin-sdk/github-copilot-login`, `plugin-sdk/github-copilot-token`, `plugin-sdk/diagnostics-otel`, `plugin-sdk/diffs`, `plugin-sdk/llm-task`, `plugin-sdk/thread-ownership`, `plugin-sdk/voice-call` | Шви допоміжних засобів для вбудованих функцій/plugins; `plugin-sdk/github-copilot-token` зараз експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
</Accordion>
</AccordionGroup>
@ -308,58 +307,57 @@ import { defineChannelPluginEntry } from "openclaw/plugin-sdk/channel-core";
### Реєстрація можливостей
| Method | Що реєструє |
| ------------------------------------------------ | ------------------------------ |
| `api.registerProvider(...)` | Текстовий inference (LLM) |
| `api.registerCliBackend(...)` | Локальний backend inference CLI |
| `api.registerChannel(...)` | Канал обміну повідомленнями |
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
| `api.registerRealtimeTranscriptionProvider(...)` | Потокова realtime transcription |
| `api.registerRealtimeVoiceProvider(...)` | Двосторонні realtime voice sessions |
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
| `api.registerImageGenerationProvider(...)` | Генерація зображень |
| `api.registerMusicGenerationProvider(...)` | Генерація музики |
| `api.registerVideoGenerationProvider(...)` | Генерація відео |
| `api.registerWebFetchProvider(...)` | Провайдер web fetch / scrape |
| `api.registerWebSearchProvider(...)` | Вебпошук |
| Метод | Що реєструє |
| ------------------------------------------------ | -------------------------------- |
| `api.registerProvider(...)` | Текстовий inference (LLM) |
| `api.registerCliBackend(...)` | Локальний inference-бекенд CLI |
| `api.registerChannel(...)` | Канал обміну повідомленнями |
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
| `api.registerRealtimeTranscriptionProvider(...)` | Потокову транскрипцію в реальному часі |
| `api.registerRealtimeVoiceProvider(...)` | Дуплексні голосові сеанси в реальному часі |
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
| `api.registerImageGenerationProvider(...)` | Генерацію зображень |
| `api.registerMusicGenerationProvider(...)` | Генерацію музики |
| `api.registerVideoGenerationProvider(...)` | Генерацію відео |
| `api.registerWebFetchProvider(...)` | Provider web fetch / scrape |
| `api.registerWebSearchProvider(...)` | Вебпошук |
### Інструменти й команди
### Tools і команди
| Method | Що реєструє |
| ------------------------------- | --------------------------------------------- |
| `api.registerTool(tool, opts?)` | Інструмент агента (обов’язковий або `{ optional: true }`) |
| `api.registerCommand(def)` | Користувацьку команду (оминає LLM) |
| Метод | Що реєструє |
| ------------------------------- | -------------------------------------------- |
| `api.registerTool(tool, opts?)` | Tool агента (обов’язковий або `{ optional: true }`) |
| `api.registerCommand(def)` | Користувацьку команду (обходить LLM) |
### Інфраструктура
| Method | Що реєструє |
| Метод | Що реєструє |
| ---------------------------------------------- | -------------------------------------- |
| `api.registerHook(events, handler, opts?)` | Хук подій |
| `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)` | Інтерактивний handler |
| `api.registerMemoryPromptSupplement(builder)` | Додатковий розділ prompt, суміжний із пам’яттю |
| `api.registerMemoryCorpusSupplement(adapter)` | Додатковий корпус пошуку/читання пам’яті |
| `api.registerMemoryPromptSupplement(builder)` | Додаткову секцію prompt, суміжну з пам’яттю |
| `api.registerMemoryCorpusSupplement(adapter)` | Додатковий корпус для пошуку/читання пам’яті |
Зарезервовані простори імен адміністратора ядра (`config.*`, `exec.approvals.*`,
`wizard.*`, `update.*`) завжди залишаються `operator.admin`, навіть якщо
плагін намагається призначити вужчу область видимості для методу gateway.
Для методів, що належать плагіну, надавайте перевагу префіксам, специфічним
для цього плагіна.
Зарезервовані простори імен адміністратора ядра (`config.*`, `exec.approvals.*`, `wizard.*`,
`update.*`) завжди залишаються `operator.admin`, навіть якщо plugin намагається призначити
вужчу область gateway method. Для методів, що належать plugin,
надавайте перевагу префіксам, специфічним для plugin.
### Метадані реєстрації CLI
`api.registerCli(registrar, opts?)` приймає два типи метаданих верхнього рівня:
`api.registerCli(registrar, opts?)` приймає два види метаданих верхнього рівня:
- `commands`: явні корені команд, якими володіє registrar
- `descriptors`: дескриптори команд часу парсингу, що використовуються для
довідки кореневого CLI, маршрутизації та лінивої реєстрації CLI плагінів
- `descriptors`: дескриптори команд на етапі парсингу, які використовуються для довідки кореневого CLI,
маршрутизації та лінивої реєстрації CLI plugin
Якщо ви хочете, щоб команда плагіна залишалася ліниво завантажуваною у
звичайному шляху кореневого CLI, надайте `descriptors`, які охоплюють кожен
корінь команди верхнього рівня, що експонується цим registrar.
Якщо ви хочете, щоб команда plugin залишалася ледачо завантажуваною у звичайному шляху кореневого CLI,
надайте `descriptors`, які охоплюють кожен корінь команди верхнього рівня, доступний через цей
registrar.
```typescript
api.registerCli(
@ -379,138 +377,135 @@ api.registerCli(
);
```
Використовуйте лише `commands`, якщо вам не потрібна лінива реєстрація
кореневого CLI. Цей eager-шлях сумісності все ще підтримується, але він не
встановлює placeholder-елементи з підтримкою descriptor для лінивого
завантаження під час парсингу.
Використовуйте лише `commands`, якщо вам не потрібна лінива реєстрація кореневого CLI.
Цей eager-шлях сумісності залишається підтримуваним, але він не встановлює
placeholders, підкріплені descriptor, для ледачого завантаження під час парсингу.
### Реєстрація CLI backend
### Реєстрація бекенда CLI
`api.registerCliBackend(...)` дає змогу плагіну володіти конфігурацією за
замовчуванням для локального AI CLI backend, такого як `codex-cli`.
`api.registerCliBackend(...)` дозволяє plugin володіти конфігурацією за замовчуванням для локального
бекенда CLI AI, такого як `codex-cli`.
- `id` backend стає префіксом провайдера в model ref, таких як `codex-cli/gpt-5`.
- `config` backend використовує ту саму форму, що й `agents.defaults.cliBackends.<id>`.
- Конфігурація користувача все одно має пріоритет. OpenClaw об’єднує `agents.defaults.cliBackends.<id>` поверх
значення плагіна за замовчуванням перед запуском CLI.
- Використовуйте `normalizeConfig`, коли backend потребує перезаписів сумісності після об’єднання
(наприклад, для нормалізації старих форм прапорців).
- `id` бекенда стає префіксом provider у model ref, таких як `codex-cli/gpt-5`.
- `config` бекенда використовує ту саму форму, що й `agents.defaults.cliBackends.<id>`.
- Конфігурація користувача все одно має пріоритет. OpenClaw зливає `agents.defaults.cliBackends.<id>` поверх
значення за замовчуванням plugin перед запуском CLI.
- Використовуйте `normalizeConfig`, коли бекенду потрібні переписування сумісності після злиття
(наприклад, нормалізація старих форм прапорців).
### Ексклюзивні слоти
| Method | Що реєструє |
| ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `api.registerContextEngine(id, factory)` | Механізм контексту (одночасно активний лише один). Зворотний виклик `assemble()` отримує `availableTools` і `citationsMode`, щоб механізм міг адаптувати додавання до prompt. |
| `api.registerMemoryCapability(capability)` | Уніфіковану можливість пам’яті |
| `api.registerMemoryPromptSection(builder)` | Побудовник розділу prompt для пам’яті |
| `api.registerMemoryFlushPlan(resolver)` | Визначник плану очищення пам’яті |
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime пам’яті |
| Метод | Що реєструє |
| ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `api.registerContextEngine(id, factory)` | Контекстний рушій (одночасно активний лише один). Зворотний виклик `assemble()` отримує `availableTools` і `citationsMode`, щоб рушій міг адаптувати додавання до prompt. |
| `api.registerMemoryCapability(capability)` | Уніфіковану можливість пам’яті |
| `api.registerMemoryPromptSection(builder)` | Побудовник секції prompt для пам’яті |
| `api.registerMemoryFlushPlan(resolver)` | Resolver плану flush для пам’яті |
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime пам’яті |
### Адаптери вбудовування пам’яті
### Адаптери embedding для пам’яті
| Method | Що реєструє |
| ---------------------------------------------- | ------------------------------------------------ |
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер вбудовування пам’яті для активного плагіна |
| Метод | Що реєструє |
| ---------------------------------------------- | --------------------------------------------- |
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер embedding пам’яті для активного plugin |
- `registerMemoryCapability` — це рекомендований API ексклюзивного плагіна пам’яті.
- `registerMemoryCapability` також може експонувати `publicArtifacts.listArtifacts(...)`,
щоб допоміжні плагіни могли споживати експортовані артефакти пам’яті через
`openclaw/plugin-sdk/memory-host-core` замість доступу до приватного
макета конкретного плагіна пам’яті.
- `registerMemoryCapability` — це рекомендований API ексклюзивного plugin пам’яті.
- `registerMemoryCapability` також може надавати `publicArtifacts.listArtifacts(...)`,
щоб супровідні plugins могли використовувати експортовані артефакти пам’яті через
`openclaw/plugin-sdk/memory-host-core` замість звернення до приватної
структури конкретного plugin пам’яті.
- `registerMemoryPromptSection`, `registerMemoryFlushPlan` і
`registerMemoryRuntime` — це застарілі, але сумісні API ексклюзивних
плагінів пам’яті.
- `registerMemoryEmbeddingProvider` дозволяє активному плагіну пам’яті
реєструвати один або кілька ID адаптерів вбудовування (наприклад `openai`,
`gemini` або власний ID, визначений плагіном).
`registerMemoryRuntime` — це застарілі, але сумісні API ексклюзивного plugin пам’яті.
- `registerMemoryEmbeddingProvider` дозволяє активному plugin пам’яті реєструвати один
або більше ID адаптерів embedding (наприклад, `openai`, `gemini` або власний ID,
визначений plugin).
- Конфігурація користувача, така як `agents.defaults.memorySearch.provider` і
`agents.defaults.memorySearch.fallback`, визначається відносно цих
зареєстрованих ID адаптерів.
`agents.defaults.memorySearch.fallback`, визначається відносно зареєстрованих
ID цих адаптерів.
### Події та життєвий цикл
| Method | Що робить |
| Метод | Що робить |
| -------------------------------------------- | ---------------------------- |
| `api.on(hookName, handler, opts?)` | Типізований хук життєвого циклу |
| `api.onConversationBindingResolved(handler)` | Зворотний виклик прив’язки розмови |
| `api.on(hookName, handler, opts?)` | Типізований hook життєвого циклу |
| `api.onConversationBindingResolved(handler)` | Зворотний виклик прив’язки conversation |
### Семантика рішень хуків
### Семантика рішень hook
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
- `before_tool_call`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
- `before_install`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
- `before_install`: повернення `{ block: false }` вважається відсутністю рішення (так само, як пропуск `block`), а не перевизначенням.
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно будь-який handler заявляє диспетчеризацію, handlers із нижчим пріоритетом і типовий шлях диспетчеризації моделі пропускаються.
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який handler встановлює його, handlers із нижчим пріоритетом пропускаються.
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як пропуск `cancel`), а не перевизначенням.
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlerз нижчим пріоритетом пропускаються.
- `before_tool_call`: повернення `{ block: false }` вважається відсутністю рішення (так само, як і пропуск `block`), а не перевизначенням.
- `before_install`: повернення `{ block: true }` є термінальним. Щойно будь-який handler встановлює його, handlerз нижчим пріоритетом пропускаються.
- `before_install`: повернення `{ block: false }` вважається відсутністю рішення (так само, як і пропуск `block`), а не перевизначенням.
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно будь-який handler заявляє про диспетчеризацію, handler-и з нижчим пріоритетом і типовий шлях диспетчеризації моделі пропускаються.
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який handler встановлює його, handlerз нижчим пріоритетом пропускаються.
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як і пропуск `cancel`), а не перевизначенням.
### Поля об’єкта API
| Field | Type | Description |
| ------------------------ | ------------------------- | ------------------------------------------------------------------------------------------- |
| `api.id` | `string` | ID плагіна |
| `api.name` | `string` | Відображувана назва |
| `api.version` | `string?` | Версія плагіна (необов’язково) |
| `api.description` | `string?` | Опис плагіна (необов’язково) |
| `api.source` | `string` | Шлях до джерела плагіна |
| `api.rootDir` | `string?` | Кореневий каталог плагіна (необов’язково) |
| `api.config` | `OpenClawConfig` | Поточний знімок конфігурації (активний знімок runtime у пам’яті, якщо доступний) |
| `api.pluginConfig` | `Record<string, unknown>` | Специфічна для плагіна конфігурація з `plugins.entries.<id>.config` |
| `api.runtime` | `PluginRuntime` | [Допоміжні функції runtime](/uk/plugins/sdk-runtime) |
| `api.logger` | `PluginLogger` | Локалізований logger (`debug`, `info`, `warn`, `error`) |
| Поле | Тип | Опис |
| ------------------------ | ------------------------- | ---------------------------------------------------------------------------------------------- |
| `api.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.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` | Визначити шлях відносно кореня плагіна |
| `api.resolvePath(input)` | `(string) => string` | Визначення шляху відносно кореня plugin |
## Угода про внутрішні модулі
## Угода щодо внутрішніх модулів
Усередині вашого плагіна використовуйте локальні barrel-файли для внутрішніх імпортів:
У межах вашого plugin використовуйте локальні barrel-файли для внутрішніх імпортів:
```
my-plugin/
api.ts # Публічні експорти для зовнішніх споживачів
runtime-api.ts # Лише внутрішні runtime-експорти
index.ts # Точка входу плагіна
runtime-api.ts # Внутрішні експорти лише для runtime
index.ts # Точка входу plugin
setup-entry.ts # Полегшена точка входу лише для налаштування (необов’язково)
```
<Warning>
Ніколи не імпортуйте власний плагін через `openclaw/plugin-sdk/<your-plugin>`
Ніколи не імпортуйте власний plugin через `openclaw/plugin-sdk/<your-plugin>`
у production-коді. Спрямовуйте внутрішні імпорти через `./api.ts` або
`./runtime-api.ts`. Шлях SDK — це лише зовнішній контракт.
</Warning>
Публічні поверхні вбудованих плагінів, що завантажуються через фасад (`api.ts`, `runtime-api.ts`,
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли), тепер віддають перевагу
активному знімку конфігурації runtime, якщо OpenClaw уже запущено. Якщо
знімок runtime ще не існує, вони повертаються до визначеного файлу конфігурації на диску.
Публічні поверхні вбудованих plugins, завантажувані через фасад (`api.ts`, `runtime-api.ts`,
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли), тепер надають перевагу
активному знімку конфігурації runtime, якщо OpenClaw уже запущено. Якщо знімок runtime
ще не існує, вони повертаються до визначеного файла конфігурації на диску.
Плагіни провайдерів також можуть експонувати вузький локальний barrel-контракт
плагіна, якщо допоміжна функція навмисно є специфічною для провайдера й поки що
не належить до узагальненого підшляху SDK. Поточний вбудований приклад:
провайдер Anthropic зберігає свої допоміжні функції потоків Claude у власному
публічному шарі `api.ts` / `contract-api.ts`, замість того щоб просувати логіку
Anthropic beta-header і `service_tier` в узагальнений контракт `plugin-sdk/*`.
Provider plugins також можуть надавати вузький локальний barrel контракту plugin, коли
допоміжний засіб навмисно є специфічним для provider і ще не належить до узагальненого підшляху SDK.
Поточний вбудований приклад: provider Anthropic зберігає свої допоміжні засоби потоку Claude
у власному публічному шві `api.ts` / `contract-api.ts` замість
просування логіки Anthropic beta-header і `service_tier` до узагальненого
контракту `plugin-sdk/*`.
Інші поточні вбудовані приклади:
- `@openclaw/openai-provider`: `api.ts` експортує побудовники провайдерів,
допоміжні функції моделей за замовчуванням і побудовники realtime-провайдерів
- `@openclaw/openrouter-provider`: `api.ts` експортує побудовник провайдера та
допоміжні функції онбордингу/конфігурації
- `@openclaw/openai-provider`: `api.ts` експортує побудовники provider,
допоміжні засоби моделей за замовчуванням і побудовники realtime provider
- `@openclaw/openrouter-provider`: `api.ts` експортує побудовник provider, а також
допоміжні засоби онбордингу/конфігурації
<Warning>
Production-код розширень також має уникати імпортів
`openclaw/plugin-sdk/<other-plugin>`. Якщо допоміжна функція справді є
спільною, перенесіть її до нейтрального підшляху SDK, такого як
`openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
поверхні, орієнтованої на можливості, замість зв’язування двох плагінів між собою.
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`
- [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) — докладна архітектура і модель можливостей