chore(i18n): refresh uk translations
This commit is contained in:
parent
0d25dccc5f
commit
b690ade6ef
@ -2,130 +2,141 @@
|
||||
read_when:
|
||||
- Ви бачите попередження OPENCLAW_PLUGIN_SDK_COMPAT_DEPRECATED
|
||||
- Ви бачите попередження OPENCLAW_EXTENSION_API_DEPRECATED
|
||||
- Ви оновлюєте plugin до сучасної архітектури plugin
|
||||
- Ви підтримуєте зовнішній plugin OpenClaw
|
||||
- Ви оновлюєте плагін до сучасної архітектури плагінів
|
||||
- Ви підтримуєте зовнішній плагін OpenClaw
|
||||
sidebarTitle: Migrate to SDK
|
||||
summary: Перейдіть із застарілого шару зворотної сумісності на сучасний Plugin SDK
|
||||
title: Міграція Plugin SDK
|
||||
summary: Перейдіть зі застарілого шару зворотної сумісності на сучасний SDK плагінів
|
||||
title: Міграція SDK плагінів
|
||||
x-i18n:
|
||||
generated_at: "2026-04-08T08:11:06Z"
|
||||
generated_at: "2026-04-09T00:38:49Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: d9a2ce7f5553563516a549ca87e776a6a71e8dd8533a773c5ddbecfae43e7b77
|
||||
source_hash: 60cbb6c8be30d17770887d490c14e3a4538563339a5206fb419e51e0558bbc07
|
||||
source_path: plugins/sdk-migration.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Міграція Plugin SDK
|
||||
# Міграція SDK плагінів
|
||||
|
||||
OpenClaw перейшов від широкого шару зворотної сумісності до сучасної
|
||||
архітектури plugin із цільовими, задокументованими імпортами. Якщо ваш plugin
|
||||
було створено до появи нової архітектури, цей посібник допоможе вам виконати
|
||||
міграцію.
|
||||
архітектури плагінів із цільовими документованими імпортами. Якщо ваш плагін
|
||||
було створено до появи нової архітектури, цей посібник допоможе вам
|
||||
виконати міграцію.
|
||||
|
||||
## Що змінюється
|
||||
|
||||
Стара система plugin надавала дві надто широкі поверхні, які дозволяли plugin
|
||||
імпортувати все необхідне з єдиної точки входу:
|
||||
Стара система плагінів надавала дві надто широкі поверхні, які дозволяли
|
||||
плагінам імпортувати будь-що потрібне з однієї точки входу:
|
||||
|
||||
- **`openclaw/plugin-sdk/compat`** — єдиний імпорт, який повторно експортував
|
||||
десятки допоміжних засобів. Його було запроваджено, щоб зберегти працездатність
|
||||
старіших plugin на основі hooks, поки створювалася нова архітектура plugin.
|
||||
- **`openclaw/extension-api`** — міст, який надавав plugin прямий доступ до
|
||||
допоміжних засобів на боці хоста, таких як вбудований засіб запуску агента.
|
||||
- **`openclaw/plugin-sdk/compat`** — один імпорт, який повторно експортував
|
||||
десятки допоміжних функцій. Його було запроваджено, щоб старіші плагіни на
|
||||
основі hooks продовжували працювати, поки будувалася нова архітектура
|
||||
плагінів.
|
||||
- **`openclaw/extension-api`** — міст, який надавав плагінам прямий доступ до
|
||||
допоміжних засобів на боці хоста, наприклад до вбудованого запускальника
|
||||
агента.
|
||||
|
||||
Обидві поверхні тепер **застарілі**. Вони все ще працюють під час виконання,
|
||||
але нові plugin не повинні їх використовувати, а наявним plugin слід виконати
|
||||
міграцію до того, як наступний мажорний реліз їх прибере.
|
||||
але нові плагіни не повинні їх використовувати, а наявні плагіни мають
|
||||
перейти до наступного мажорного релізу, перш ніж їх буде вилучено.
|
||||
|
||||
<Warning>
|
||||
Шар зворотної сумісності буде видалено в одному з наступних мажорних релізів.
|
||||
Plugins, які все ще імпортують із цих поверхонь, перестануть працювати, коли це станеться.
|
||||
Шар зворотної сумісності буде вилучено в одному з майбутніх мажорних
|
||||
релізів. Плагіни, які й надалі імпортують із цих поверхонь, перестануть
|
||||
працювати, коли це станеться.
|
||||
</Warning>
|
||||
|
||||
## Чому це змінилося
|
||||
|
||||
Старий підхід спричиняв проблеми:
|
||||
|
||||
- **Повільний запуск** — імпорт одного допоміжного засобу завантажував десятки не пов’язаних модулів
|
||||
- **Циклічні залежності** — широкі повторні експорти спрощували створення циклів імпорту
|
||||
- **Неясна поверхня API** — не було способу зрозуміти, які експорти є стабільними, а які внутрішніми
|
||||
- **Повільний запуск** — імпорт однієї допоміжної функції завантажував десятки
|
||||
не пов’язаних між собою модулів
|
||||
- **Циклічні залежності** — широкі повторні експорти спрощували створення
|
||||
циклів імпорту
|
||||
- **Нечітка поверхня API** — не було способу визначити, які експорти є
|
||||
стабільними, а які внутрішніми
|
||||
|
||||
Сучасний Plugin SDK це виправляє: кожен шлях імпорту (`openclaw/plugin-sdk/\<subpath\>`)
|
||||
є невеликим, самодостатнім модулем із чітким призначенням і задокументованим контрактом.
|
||||
Сучасний SDK плагінів виправляє це: кожен шлях імпорту (`openclaw/plugin-sdk/\<subpath\>`)
|
||||
є невеликим самодостатнім модулем із чіткою метою та документованим контрактом.
|
||||
|
||||
Застарілі зручні seams постачальників для вбудованих каналів також прибрано. Імпорти
|
||||
на кшталт `openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
|
||||
Застарілі зручні seams провайдерів для вбудованих каналів також зникли.
|
||||
Імпорти на кшталт `openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
|
||||
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`,
|
||||
допоміжні branded seams для каналів і
|
||||
`openclaw/plugin-sdk/telegram-core` були приватними скороченнями моно-репозиторію, а не
|
||||
стабільними контрактами plugin. Натомість використовуйте вузькі загальні subpaths SDK. Усередині
|
||||
робочого простору вбудованих plugin зберігайте допоміжні засоби, що належать постачальнику, у власному
|
||||
`api.ts` або `runtime-api.ts` цього plugin.
|
||||
канальні branded helper seams та
|
||||
`openclaw/plugin-sdk/telegram-core` були приватними скороченнями монорепозиторію,
|
||||
а не стабільними контрактами плагінів. Натомість використовуйте вузькі
|
||||
загальні підшляхи SDK. Усередині робочого простору вбудованих плагінів
|
||||
залишайте допоміжні засоби, що належать провайдеру, у власному
|
||||
`api.ts` або `runtime-api.ts` цього плагіна.
|
||||
|
||||
Поточні приклади вбудованих постачальників:
|
||||
Поточні приклади вбудованих провайдерів:
|
||||
|
||||
- Anthropic зберігає допоміжні засоби потоків, специфічні для Claude, у власному seam `api.ts` /
|
||||
`contract-api.ts`
|
||||
- OpenAI зберігає конструктори постачальників, допоміжні засоби моделей за замовчуванням і конструктори постачальників realtime
|
||||
у власному `api.ts`
|
||||
- OpenRouter зберігає конструктор постачальника та допоміжні засоби onboarding/config у власному
|
||||
`api.ts`
|
||||
- Anthropic зберігає специфічні для Claude допоміжні засоби потоків у власному
|
||||
seam `api.ts` / `contract-api.ts`
|
||||
- OpenAI зберігає builder-и провайдерів, допоміжні засоби моделей за
|
||||
замовчуванням і builder-и realtime-провайдерів у власному `api.ts`
|
||||
- OpenRouter зберігає builder провайдера та допоміжні засоби
|
||||
онбордингу/конфігурації у власному `api.ts`
|
||||
|
||||
## Як виконати міграцію
|
||||
|
||||
<Steps>
|
||||
<Step title="Мігруйте approval-native обробники до capability facts">
|
||||
Channel plugins із підтримкою approval тепер розкривають нативну поведінку approval через
|
||||
`approvalCapability.nativeRuntime` разом зі спільним реєстром runtime-context.
|
||||
<Step title="Перенесіть обробники з нативним схваленням на факти можливостей">
|
||||
Плагіни каналів із підтримкою схвалення тепер надають нативну поведінку
|
||||
схвалення через `approvalCapability.nativeRuntime` разом зі спільним
|
||||
реєстром контексту runtime.
|
||||
|
||||
Основні зміни:
|
||||
|
||||
- Замініть `approvalCapability.handler.loadRuntime(...)` на
|
||||
`approvalCapability.nativeRuntime`
|
||||
- Перенесіть auth/delivery, специфічні для approval, зі застарілої логіки `plugin.auth` /
|
||||
`plugin.approvals` на `approvalCapability`
|
||||
- `ChannelPlugin.approvals` було вилучено з публічного контракту channel-plugin;
|
||||
перенесіть поля delivery/native/render до `approvalCapability`
|
||||
- `plugin.auth` залишається лише для потоків channel login/logout; approval auth
|
||||
hooks там більше не зчитуються ядром
|
||||
- Реєструйте об’єкти runtime, що належать каналу, як-от clients, tokens або Bolt
|
||||
apps, через `openclaw/plugin-sdk/channel-runtime-context`
|
||||
- Не надсилайте повідомлення reroute, що належать plugin, із нативних approval handlers;
|
||||
тепер ядро відповідає за повідомлення про доставку в інше місце на основі фактичних результатів delivery
|
||||
- Під час передавання `channelRuntime` у `createChannelManager(...)` надавайте
|
||||
реальну поверхню `createPluginRuntime().channel`. Часткові stubs відхиляються.
|
||||
- Перенесіть специфічні для схвалення auth/доставку зі застарілої
|
||||
прив’язки `plugin.auth` / `plugin.approvals` на `approvalCapability`
|
||||
- `ChannelPlugin.approvals` вилучено з публічного контракту channel-plugin;
|
||||
перемістіть поля delivery/native/render до `approvalCapability`
|
||||
- `plugin.auth` залишається лише для потоків входу/виходу каналу; hooks
|
||||
auth для схвалення там більше не зчитуються ядром
|
||||
- Реєструйте об’єкти runtime, що належать каналу, такі як клієнти, токени
|
||||
або застосунки Bolt, через `openclaw/plugin-sdk/channel-runtime-context`
|
||||
- Не надсилайте сповіщення про перенаправлення, що належать плагіну, з
|
||||
нативних обробників схвалення; ядро тепер саме володіє сповіщеннями
|
||||
про доставку в інше місце на основі фактичних результатів доставки
|
||||
- Під час передавання `channelRuntime` до `createChannelManager(...)`
|
||||
надавайте справжню поверхню `createPluginRuntime().channel`.
|
||||
Часткові заглушки відхиляються.
|
||||
|
||||
Див. `/plugins/sdk-channel-plugins`, щоб ознайомитися з поточним компонуванням
|
||||
approval capability.
|
||||
Актуальну структуру можливостей схвалення дивіться в
|
||||
`/plugins/sdk-channel-plugins`.
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="Перевірте резервну поведінку Windows wrapper">
|
||||
Якщо ваш plugin використовує `openclaw/plugin-sdk/windows-spawn`, нерозпізнані Windows
|
||||
wrappers `.cmd`/`.bat` тепер завершуються з помилкою за замовчуванням, якщо ви явно не передасте
|
||||
`allowShellFallback: true`.
|
||||
Якщо ваш плагін використовує `openclaw/plugin-sdk/windows-spawn`, нерозв’язані
|
||||
wrapper-и 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.
|
||||
// Установлюйте це лише для довірених сумісних викликів, які свідомо
|
||||
// допускають резервний перехід через shell.
|
||||
allowShellFallback: true,
|
||||
});
|
||||
```
|
||||
|
||||
Якщо ваш виклик навмисно не покладається на shell fallback, не встановлюйте
|
||||
`allowShellFallback`, а натомість обробляйте викинуту помилку.
|
||||
Якщо ваш виклик не покладається навмисно на резервний перехід через shell,
|
||||
не встановлюйте `allowShellFallback` і натомість обробляйте викинуту
|
||||
помилку.
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="Знайдіть застарілі імпорти">
|
||||
Знайдіть у своєму plugin імпорти з будь-якої із застарілих поверхонь:
|
||||
Пошукайте у своєму плагіні імпорти з будь-якої із застарілих поверхонь:
|
||||
|
||||
```bash
|
||||
grep -r "plugin-sdk/compat" my-plugin/
|
||||
@ -134,36 +145,38 @@ 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 plugin замість
|
||||
прямого імпорту:
|
||||
Для допоміжних засобів на боці хоста використовуйте впроваджений 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,143 +201,144 @@ OpenClaw перейшов від широкого шару зворотної с
|
||||
## Довідник шляхів імпорту
|
||||
|
||||
<Accordion title="Таблиця поширених шляхів імпорту">
|
||||
| Шлях імпорту | Призначення | Основні експорти |
|
||||
| Шлях імпорту | Призначення | Ключові експорти |
|
||||
| --- | --- | --- |
|
||||
| `plugin-sdk/plugin-entry` | Канонічний допоміжний засіб точки входу plugin | `definePluginEntry` |
|
||||
| `plugin-sdk/core` | Застарілий umbrella re-export для визначень/конструкторів точок входу каналу | `defineChannelPluginEntry`, `createChatChannelPlugin` |
|
||||
| `plugin-sdk/config-schema` | Експорт кореневої схеми config | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | Допоміжний засіб точки входу для одного постачальника | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/channel-core` | Цільові визначення та конструктори точок входу каналу | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
|
||||
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування | Запити allowlist, конструктори статусу налаштування |
|
||||
| `plugin-sdk/setup-runtime` | Допоміжні засоби runtime під час налаштування | Безпечні для імпорту patch adapters для setup, допоміжні засоби lookup-note, `promptResolvedAllowFrom`, `splitSetupEntries`, delegated setup proxies |
|
||||
| `plugin-sdk/setup-adapter-runtime` | Допоміжні засоби setup adapter | `createEnvPatchedAccountSetupAdapter` |
|
||||
| `plugin-sdk/setup-tools` | Допоміжні засоби tooling для setup | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
|
||||
| `plugin-sdk/account-core` | Допоміжні засоби для кількох облікових записів | Допоміжні засоби списку/config/action-gate облікових записів |
|
||||
| `plugin-sdk/plugin-entry` | Канонічний допоміжний засіб точки входу плагіна | `definePluginEntry` |
|
||||
| `plugin-sdk/core` | Застарілий umbrella re-export для визначень/builder-ів входу каналів | `defineChannelPluginEntry`, `createChatChannelPlugin` |
|
||||
| `plugin-sdk/config-schema` | Експорт кореневої схеми конфігурації | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | Допоміжний засіб точки входу для одного провайдера | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/channel-core` | Цільові визначення та builder-и входу каналів | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
|
||||
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування | Запити allowlist, builder-и стану налаштування |
|
||||
| `plugin-sdk/setup-runtime` | Допоміжні засоби runtime під час налаштування | Безпечні для імпорту setup patch adapters, допоміжні засоби приміток пошуку, `promptResolvedAllowFrom`, `splitSetupEntries`, проксі делегованого налаштування |
|
||||
| `plugin-sdk/setup-adapter-runtime` | Допоміжні засоби adapter налаштування | `createEnvPatchedAccountSetupAdapter` |
|
||||
| `plugin-sdk/setup-tools` | Допоміжні засоби інструментів налаштування | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
|
||||
| `plugin-sdk/account-core` | Допоміжні засоби для кількох облікових записів | Допоміжні засоби списків/config/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` | Adapters майстра налаштування | `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-config-helpers` | Фабрики adapters config | `createHybridChannelConfigAdapter` |
|
||||
| `plugin-sdk/channel-config-schema` | Конструктори схем config | Типи схем config каналу |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби config команд Telegram | Нормалізація назв команд, обрізання описів, перевірка дублікатів/конфліктів |
|
||||
| `plugin-sdk/channel-policy` | Визначення політики group/DM | `resolveChannelGroupRequireMention` |
|
||||
| `plugin-sdk/channel-lifecycle` | Відстеження статусу облікового запису | `createAccountStatusSink` |
|
||||
| `plugin-sdk/inbound-envelope` | Допоміжні засоби inbound envelope | Спільні допоміжні засоби маршрутизації + конструювання 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 і допоміжні засоби adapter |
|
||||
| `plugin-sdk/agent-media-payload` | Застарілі допоміжні засоби media payload | Конструктор agent media payload для застарілих схем полів |
|
||||
| `plugin-sdk/channel-runtime` | Застарілий compatibility shim | Лише застарілі утиліти channel runtime |
|
||||
| `plugin-sdk/channel-send-result` | Типи результатів надсилання | Типи результатів відповіді |
|
||||
| `plugin-sdk/runtime-store` | Постійне сховище plugin | `createPluginRuntimeStore` |
|
||||
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime | Допоміжні засоби runtime/logging/backup/plugin-install |
|
||||
| `plugin-sdk/account-helpers` | Вузькі допоміжні засоби для облікових записів | Допоміжні засоби списку облікових записів/дій з обліковими записами |
|
||||
| `plugin-sdk/channel-setup` | Адаптери майстра налаштування | `createOptionalChannelSetupSurface`, `createOptionalChannelSetupAdapter`, `createOptionalChannelSetupWizard`, а також `DEFAULT_ACCOUNT_ID`, `createTopLevelChannelDmPolicy`, `setSetupChannelEnabled`, `splitSetupEntries` |
|
||||
| `plugin-sdk/channel-pairing` | Примітиви DM-поєднання | `createChannelPairingController` |
|
||||
| `plugin-sdk/channel-reply-pipeline` | Префікс відповіді + прив’язка typing | `createChannelReplyPipeline` |
|
||||
| `plugin-sdk/channel-config-helpers` | Фабрики адаптерів конфігурації | `createHybridChannelConfigAdapter` |
|
||||
| `plugin-sdk/channel-config-schema` | Builder-и схем конфігурації | Типи схем конфігурації каналів |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби конфігурації команд Telegram | Нормалізація назв команд, обрізання описів, валідація дублікатів/конфліктів |
|
||||
| `plugin-sdk/channel-policy` | Визначення політики груп/DM | `resolveChannelGroupRequireMention` |
|
||||
| `plugin-sdk/channel-lifecycle` | Відстеження стану облікових записів | `createAccountStatusSink` |
|
||||
| `plugin-sdk/inbound-envelope` | Допоміжні засоби вхідних envelope | Спільні допоміжні засоби route + builder-ів envelope |
|
||||
| `plugin-sdk/inbound-reply-dispatch` | Допоміжні засоби вхідних відповідей | Спільні допоміжні засоби запису та dispatch |
|
||||
| `plugin-sdk/messaging-targets` | Розбір цілей повідомлень | Допоміжні засоби розбору/зіставлення цілей |
|
||||
| `plugin-sdk/outbound-media` | Допоміжні засоби вихідних медіа | Спільне завантаження вихідних медіа |
|
||||
| `plugin-sdk/outbound-runtime` | Допоміжні засоби вихідного runtime | Допоміжні засоби outbound identity/send delegate |
|
||||
| `plugin-sdk/thread-bindings-runtime` | Допоміжні засоби прив’язок потоків | Допоміжні засоби життєвого циклу прив’язок потоків та adapter |
|
||||
| `plugin-sdk/agent-media-payload` | Застарілі допоміжні засоби media payload | Builder agent media payload для застарілих макетів полів |
|
||||
| `plugin-sdk/channel-runtime` | Застарілий shim сумісності | Лише застарілі утиліти channel runtime |
|
||||
| `plugin-sdk/channel-send-result` | Типи результатів надсилання | Типи результатів відповідей |
|
||||
| `plugin-sdk/runtime-store` | Постійне сховище плагінів | `createPluginRuntimeStore` |
|
||||
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime | Допоміжні засоби runtime/logging/backup/встановлення плагінів |
|
||||
| `plugin-sdk/runtime-env` | Вузькі допоміжні засоби runtime env | Logger/runtime env, допоміжні засоби timeout, retry та backoff |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби plugin runtime | Допоміжні засоби plugin commands/hooks/http/interactive |
|
||||
| `plugin-sdk/hook-runtime` | Допоміжні засоби pipeline для hooks | Спільні допоміжні засоби pipeline для webhook/internal hook |
|
||||
| `plugin-sdk/lazy-runtime` | Допоміжні засоби lazy runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Допоміжні засоби process | Спільні допоміжні засоби exec |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби runtime плагінів | Допоміжні засоби команд/hooks/http/interactive плагіна |
|
||||
| `plugin-sdk/hook-runtime` | Допоміжні засоби pipeline hooks | Спільні допоміжні засоби pipeline webhook/internal hook |
|
||||
| `plugin-sdk/lazy-runtime` | Допоміжні засоби ледачого runtime | `createLazyRuntimeModule`, `createLazyRuntimeMethod`, `createLazyRuntimeMethodBinder`, `createLazyRuntimeNamedExport`, `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Допоміжні засоби процесів | Спільні допоміжні засоби exec |
|
||||
| `plugin-sdk/cli-runtime` | Допоміжні засоби CLI runtime | Форматування команд, очікування, допоміжні засоби версій |
|
||||
| `plugin-sdk/gateway-runtime` | Допоміжні засоби gateway | Допоміжні засоби клієнта gateway і patch channel-status |
|
||||
| `plugin-sdk/config-runtime` | Допоміжні засоби config | Допоміжні засоби завантаження/запису config |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби команд Telegram | Стабільні fallback-допоміжні засоби перевірки команд Telegram, коли поверхня контракту вбудованого Telegram недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Допоміжні засоби prompt для approval | Допоміжні засоби payload для exec/plugin approval, approval capability/profile, нативної маршрутизації/runtime approval |
|
||||
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби auth для approval | Визначення approver, auth дій у тому самому чаті |
|
||||
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби клієнта approval | Допоміжні засоби profile/filter для нативного exec approval |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Допоміжні засоби delivery для approval | Adapters нативної approval capability/delivery |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Допоміжні засоби gateway для approval | Спільний допоміжний засіб визначення approval gateway |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Допоміжні засоби adapters approval | Полегшені допоміжні засоби завантаження native approval adapter для гарячих точок входу каналу |
|
||||
| `plugin-sdk/approval-handler-runtime` | Допоміжні засоби handlers approval | Ширші допоміжні засоби runtime для handlers approval; віддавайте перевагу вужчим seams adapter/gateway, коли їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби цілей approval | Допоміжні засоби native approval target/account binding |
|
||||
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби відповіді approval | Допоміжні засоби payload відповіді для exec/plugin approval |
|
||||
| `plugin-sdk/channel-runtime-context` | Допоміжні засоби channel runtime-context | Загальні допоміжні засоби register/get/watch для channel runtime-context |
|
||||
| `plugin-sdk/security-runtime` | Допоміжні засоби безпеки | Спільні допоміжні засоби trust, DM gating, external-content і secret-collection |
|
||||
| `plugin-sdk/gateway-runtime` | Допоміжні засоби gateway | Допоміжні засоби клієнта gateway і patch-ів стану каналів |
|
||||
| `plugin-sdk/config-runtime` | Допоміжні засоби конфігурації | Допоміжні засоби завантаження/запису конфігурації |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби команд Telegram | Допоміжні засоби валідації команд Telegram зі стабільним fallback, коли поверхня контракту вбудованого Telegram недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Допоміжні засоби запитів схвалення | Payload схвалення exec/plugin, допоміжні засоби capability/profile схвалення, допоміжні засоби маршрутизації/runtime нативного схвалення |
|
||||
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби auth схвалення | Визначення approver, auth дій у тому самому чаті |
|
||||
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби клієнта схвалення | Допоміжні засоби profile/filter нативного exec-схвалення |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Допоміжні засоби доставки схвалення | Адаптери можливостей/доставки нативного схвалення |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Допоміжні засоби gateway схвалення | Спільний допоміжний засіб визначення gateway схвалення |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Допоміжні засоби adapter схвалення | Полегшені допоміжні засоби завантаження adapter-ів нативного схвалення для гарячих точок входу каналів |
|
||||
| `plugin-sdk/approval-handler-runtime` | Допоміжні засоби обробників схвалення | Ширші допоміжні засоби runtime обробників схвалення; віддавайте перевагу вужчим seams adapter/gateway, коли їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби цілей схвалення | Допоміжні засоби нативної прив’язки цілі/облікового запису схвалення |
|
||||
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби відповідей на схвалення | Допоміжні засоби payload відповіді для exec/plugin схвалення |
|
||||
| `plugin-sdk/channel-runtime-context` | Допоміжні засоби контексту runtime каналу | Узагальнені допоміжні засоби register/get/watch для контексту runtime каналу |
|
||||
| `plugin-sdk/security-runtime` | Допоміжні засоби безпеки | Спільні допоміжні засоби довіри, DM gating, зовнішнього вмісту та збирання секретів |
|
||||
| `plugin-sdk/ssrf-policy` | Допоміжні засоби політики SSRF | Допоміжні засоби allowlist хостів і політики приватної мережі |
|
||||
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби SSRF runtime | Допоміжні засоби pinned-dispatcher, guarded fetch, SSRF policy |
|
||||
| `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/fetch-runtime` | Допоміжні засоби обгорнутого fetch/proxy | `resolveFetch`, допоміжні засоби proxy |
|
||||
| `plugin-sdk/host-runtime` | Допоміжні засоби нормалізації хоста | `normalizeHostname`, `normalizeScpRemoteHost` |
|
||||
| `plugin-sdk/retry-runtime` | Допоміжні засоби retry | `RetryConfig`, `retryAsync`, засоби запуску policy |
|
||||
| `plugin-sdk/retry-runtime` | Допоміжні засоби retry | `RetryConfig`, `retryAsync`, виконавці політик |
|
||||
| `plugin-sdk/allow-from` | Форматування allowlist | `formatAllowFromLowercase` |
|
||||
| `plugin-sdk/allowlist-resolution` | Відображення входів allowlist | `mapAllowlistResolutionInputs` |
|
||||
| `plugin-sdk/command-auth` | Gating команд і допоміжні засоби command-surface | `resolveControlCommandGate`, допоміжні засоби авторизації відправника, допоміжні засоби реєстру команд |
|
||||
| `plugin-sdk/secret-input` | Аналіз secret input | Допоміжні засоби secret input |
|
||||
| `plugin-sdk/allowlist-resolution` | Мапування вводу allowlist | `mapAllowlistResolutionInputs` |
|
||||
| `plugin-sdk/command-auth` | Допоміжні засоби gating команд і поверхні команд | `resolveControlCommandGate`, допоміжні засоби авторизації відправника, допоміжні засоби реєстру команд |
|
||||
| `plugin-sdk/command-status` | Рендерери стану/довідки команд | `buildCommandsMessage`, `buildCommandsMessagePaginated`, `buildHelpMessage` |
|
||||
| `plugin-sdk/secret-input` | Розбір вводу секретів | Допоміжні засоби вводу секретів |
|
||||
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запитів webhook | Утиліти цілей webhook |
|
||||
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби guard для тіла webhook-запиту | Допоміжні засоби читання/обмеження тіла запиту |
|
||||
| `plugin-sdk/reply-runtime` | Спільний reply runtime | Inbound dispatch, heartbeat, планувальник відповіді, chunking |
|
||||
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби dispatch відповіді | Допоміжні засоби finalize + provider dispatch |
|
||||
| `plugin-sdk/reply-history` | Допоміжні засоби history відповідей | `buildHistoryContext`, `buildPendingHistoryContextFromMap`, `recordPendingHistoryEntry`, `clearHistoryEntriesIfEnabled` |
|
||||
| `plugin-sdk/reply-reference` | Планування reply reference | `createReplyReferencePlanner` |
|
||||
| `plugin-sdk/reply-chunking` | Допоміжні засоби chunk для reply | Допоміжні засоби chunking для тексту/markdown |
|
||||
| `plugin-sdk/session-store-runtime` | Допоміжні засоби session store | Допоміжні засоби path сховища + updated-at |
|
||||
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів state | Допоміжні засоби каталогів 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/webhook-request-guards` | Допоміжні засоби guards для тіла webhook | Допоміжні засоби читання/обмеження тіла запиту |
|
||||
| `plugin-sdk/reply-runtime` | Спільний runtime відповідей | Вхідний dispatch, heartbeat, планувальник відповідей, 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` | Допоміжні засоби шляхів стану | Допоміжні засоби каталогів стану та OAuth |
|
||||
| `plugin-sdk/routing` | Допоміжні засоби маршрутизації/ключів сесій | `resolveAgentRoute`, `buildAgentSessionKey`, `resolveDefaultAgentBoundAccountId`, допоміжні засоби нормалізації ключів сесій |
|
||||
| `plugin-sdk/status-helpers` | Допоміжні засоби стану каналів | Builder-и зведення стану каналів/облікових записів, значення runtime-state за замовчуванням, допоміжні засоби метаданих проблем |
|
||||
| `plugin-sdk/target-resolver-runtime` | Допоміжні засоби визначення цілей | Спільні допоміжні засоби target resolver |
|
||||
| `plugin-sdk/string-normalization-runtime` | Допоміжні засоби нормалізації рядків | Допоміжні засоби нормалізації slug/рядків |
|
||||
| `plugin-sdk/request-url` | Допоміжні засоби URL запиту | Витягування рядкових URL із request-подібних вхідних даних |
|
||||
| `plugin-sdk/run-command` | Допоміжні засоби команд із таймером | Засіб запуску timed command із нормалізованими stdout/stderr |
|
||||
| `plugin-sdk/param-readers` | Зчитувачі параметрів | Поширені зчитувачі параметрів tool/CLI |
|
||||
| `plugin-sdk/tool-payload` | Витягування payload tool | Витягування нормалізованих payload із об’єктів результату tool |
|
||||
| `plugin-sdk/tool-send` | Витягування надсилання tool | Витягування канонічних полів цілі надсилання з аргументів tool |
|
||||
| `plugin-sdk/temp-path` | Допоміжні засоби тимчасових шляхів | Спільні допоміжні засоби path для тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Допоміжні засоби logging | Допоміжні засоби logger підсистеми та редагування |
|
||||
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби markdown-table | Допоміжні засоби режиму markdown table |
|
||||
| `plugin-sdk/reply-payload` | Типи відповідей повідомлень | Типи payload відповіді |
|
||||
| `plugin-sdk/provider-setup` | Curated допоміжні засоби налаштування локальних/self-hosted постачальників | Допоміжні засоби виявлення/config для self-hosted постачальників |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Цільові допоміжні засоби налаштування self-hosted постачальників, сумісних з OpenAI | Ті самі допоміжні засоби виявлення/config для self-hosted постачальників |
|
||||
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби runtime auth постачальника | Допоміжні засоби визначення runtime API key |
|
||||
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби налаштування API key постачальника | Допоміжні засоби onboarding/profile-write для API key |
|
||||
| `plugin-sdk/provider-auth-result` | Допоміжні засоби auth-result постачальника | Стандартний конструктор OAuth auth-result |
|
||||
| `plugin-sdk/provider-auth-login` | Допоміжні засоби інтерактивного login постачальника | Спільні допоміжні засоби інтерактивного login |
|
||||
| `plugin-sdk/provider-env-vars` | Допоміжні засоби env vars постачальника | Допоміжні засоби пошуку env vars auth постачальника |
|
||||
| `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` | Патчі onboarding постачальника | Допоміжні засоби onboarding config |
|
||||
| `plugin-sdk/provider-http` | Допоміжні засоби HTTP постачальника | Загальні допоміжні засоби HTTP/можливостей endpoint постачальника |
|
||||
| `plugin-sdk/provider-web-fetch` | Допоміжні засоби web-fetch постачальника | Допоміжні засоби реєстрації/кешу постачальника web-fetch |
|
||||
| `plugin-sdk/provider-web-search-config-contract` | Допоміжні засоби config веб-пошуку постачальника | Вузькі допоміжні засоби config/credential для веб-пошуку для постачальників, яким не потрібна логіка ввімкнення plugin |
|
||||
| `plugin-sdk/provider-web-search-contract` | Допоміжні засоби контракту веб-пошуку постачальника | Вузькі допоміжні засоби contract config/credential для веб-пошуку, як-от `createWebSearchProviderContractFields`, `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig`, і допоміжні засоби scoped credential setters/getters |
|
||||
| `plugin-sdk/provider-web-search` | Допоміжні засоби веб-пошуку постачальника | Допоміжні засоби реєстрації/кешу/runtime постачальника веб-пошуку |
|
||||
| `plugin-sdk/provider-tools` | Допоміжні засоби compat tool/schema постачальника | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + diagnostics і допоміжні засоби compat xAI, як-от `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-usage` | Допоміжні засоби usage постачальника | `fetchClaudeUsage`, `fetchGeminiUsage`, `fetchGithubCopilotUsage` та інші допоміжні засоби usage постачальника |
|
||||
| `plugin-sdk/provider-stream` | Допоміжні засоби wrapper потоку постачальника | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи stream wrapper і спільні допоміжні засоби wrapper для 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, вибору candidate і повідомлень про відсутні моделі для генерації зображень/відео/музики |
|
||||
| `plugin-sdk/media-understanding` | Допоміжні засоби media-understanding | Типи постачальників media understanding плюс експорти допоміжних засобів image/audio для постачальників |
|
||||
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби text | Видалення тексту, видимого асистенту, допоміжні засоби render/chunking/table для markdown, допоміжні засоби редагування, directive-tag, safe-text і пов’язані допоміжні засоби text/logging |
|
||||
| `plugin-sdk/request-url` | Допоміжні засоби URL запитів | Витяг рядкових URL із вхідних даних, схожих на запит |
|
||||
| `plugin-sdk/run-command` | Допоміжні засоби команд із таймером | Виконавець команд із нормалізованими stdout/stderr |
|
||||
| `plugin-sdk/param-readers` | Зчитувачі параметрів | Поширені зчитувачі параметрів інструментів/CLI |
|
||||
| `plugin-sdk/tool-payload` | Витяг payload інструментів | Витяг нормалізованих payload із об’єктів результатів інструментів |
|
||||
| `plugin-sdk/tool-send` | Витяг надсилання інструментів | Витяг канонічних полів цілі надсилання з аргументів інструментів |
|
||||
| `plugin-sdk/temp-path` | Допоміжні засоби тимчасових шляхів | Спільні допоміжні засоби шляхів тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Допоміжні засоби логування | Логер підсистеми та допоміжні засоби редагування чутливих даних |
|
||||
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби таблиць markdown | Допоміжні засоби режиму таблиць markdown |
|
||||
| `plugin-sdk/reply-payload` | Типи відповідей повідомлень | Типи payload відповідей |
|
||||
| `plugin-sdk/provider-setup` | Кураторські допоміжні засоби налаштування локальних/self-hosted провайдерів | Допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Цільові допоміжні засоби налаштування OpenAI-compatible self-hosted провайдерів | Ті самі допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
|
||||
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби runtime auth провайдерів | Допоміжні засоби визначення API-ключів під час виконання |
|
||||
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби налаштування API-ключів провайдера | Допоміжні засоби онбордингу/запису профілю API-ключів |
|
||||
| `plugin-sdk/provider-auth-result` | Допоміжні засоби результатів auth провайдера | Стандартний builder auth-result для OAuth |
|
||||
| `plugin-sdk/provider-auth-login` | Допоміжні засоби інтерактивного входу провайдера | Спільні допоміжні засоби інтерактивного входу |
|
||||
| `plugin-sdk/provider-env-vars` | Допоміжні засоби env vars провайдерів | Допоміжні засоби пошуку env vars auth провайдера |
|
||||
| `plugin-sdk/provider-model-shared` | Спільні допоміжні засоби моделей/replay провайдерів | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні builder-и політик replay, допоміжні засоби 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` | Допоміжні засоби конфігурації веб-пошуку провайдерів | Вузькі допоміжні засоби конфігурації/облікових даних веб-пошуку для провайдерів, яким не потрібна прив’язка ввімкнення плагіна |
|
||||
| `plugin-sdk/provider-web-search-contract` | Допоміжні засоби контракту веб-пошуку провайдерів | Вузькі допоміжні засоби контракту конфігурації/облікових даних веб-пошуку, як-от `createWebSearchProviderContractFields`, `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter-и облікових даних |
|
||||
| `plugin-sdk/provider-web-search` | Допоміжні засоби веб-пошуку провайдерів | Допоміжні засоби реєстрації/кешу/runtime провайдерів веб-пошуку |
|
||||
| `plugin-sdk/provider-tools` | Допоміжні засоби сумісності інструментів/схем провайдерів | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схем Gemini + діагностика, а також допоміжні засоби сумісності xAI, як-от `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-usage` | Допоміжні засоби використання провайдерів | `fetchClaudeUsage`, `fetchGeminiUsage`, `fetchGithubCopilotUsage` та інші допоміжні засоби використання провайдерів |
|
||||
| `plugin-sdk/provider-stream` | Допоміжні засоби обгорток потоків провайдерів | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи обгорток потоків і спільні допоміжні засоби обгорток Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
|
||||
| `plugin-sdk/keyed-async-queue` | Впорядкована async-черга | `KeyedAsyncQueue` |
|
||||
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби медіа | Допоміжні засоби fetch/transform/store медіа, а також builder-и media payload |
|
||||
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні засоби генерації медіа | Спільні допоміжні засоби failover, вибору кандидатів і повідомлень про відсутні моделі для генерації зображень/відео/музики |
|
||||
| `plugin-sdk/media-understanding` | Допоміжні засоби media-understanding | Типи провайдерів media-understanding, а також provider-facing експорти допоміжних засобів зображень/аудіо |
|
||||
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту | Видалення тексту, видимого асистенту, допоміжні засоби render/chunking/table markdown, редагування чутливих даних, допоміжні засоби тегів директив, безпечного тексту та пов’язані допоміжні засоби тексту/логування |
|
||||
| `plugin-sdk/text-chunking` | Допоміжні засоби chunking тексту | Допоміжний засіб chunking вихідного тексту |
|
||||
| `plugin-sdk/speech` | Допоміжні засоби speech | Типи постачальників speech плюс експорти допоміжних засобів directive, registry і validation для постачальників |
|
||||
| `plugin-sdk/speech-core` | Спільне speech core | Типи постачальників speech, registry, directives, normalізація |
|
||||
| `plugin-sdk/realtime-transcription` | Допоміжні засоби realtime transcription | Типи постачальників і допоміжні засоби registry |
|
||||
| `plugin-sdk/realtime-voice` | Допоміжні засоби realtime voice | Типи постачальників і допоміжні засоби registry |
|
||||
| `plugin-sdk/image-generation-core` | Спільне image-generation core | Типи image-generation, failover, auth і допоміжні засоби registry |
|
||||
| `plugin-sdk/music-generation` | Допоміжні засоби music-generation | Типи постачальника/запиту/результату для генерації музики |
|
||||
| `plugin-sdk/music-generation-core` | Спільне music-generation core | Типи генерації музики, допоміжні засоби failover, пошук постачальника та аналіз model-ref |
|
||||
| `plugin-sdk/video-generation` | Допоміжні засоби video-generation | Типи постачальника/запиту/результату для генерації відео |
|
||||
| `plugin-sdk/video-generation-core` | Спільне video-generation core | Типи генерації відео, допоміжні засоби failover, пошук постачальника та аналіз model-ref |
|
||||
| `plugin-sdk/interactive-runtime` | Допоміжні засоби інтерактивної відповіді | Нормалізація/редукція payload інтерактивних відповідей |
|
||||
| `plugin-sdk/channel-config-primitives` | Примітиви config каналу | Вузькі примітиви schema config каналу |
|
||||
| `plugin-sdk/channel-config-writes` | Допоміжні засоби запису config каналу | Допоміжні засоби авторизації запису config каналу |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільний prelude каналу | Експорти спільного prelude для channel plugin |
|
||||
| `plugin-sdk/channel-status` | Допоміжні засоби статусу каналу | Спільні допоміжні засоби snapshot/summary статусу каналу |
|
||||
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби config allowlist | Допоміжні засоби редагування/читання config allowlist |
|
||||
| `plugin-sdk/group-access` | Допоміжні засоби доступу до груп | Спільні допоміжні засоби прийняття рішень щодо group-access |
|
||||
| `plugin-sdk/direct-dm` | Допоміжні засоби прямого DM | Спільні допоміжні засоби auth/guard для прямого DM |
|
||||
| `plugin-sdk/extension-shared` | Спільні допоміжні засоби extension | Примітиви passive-channel/status і ambient proxy helper |
|
||||
| `plugin-sdk/speech` | Допоміжні засоби мовлення | Типи speech-провайдерів, а також provider-facing допоміжні засоби директив, реєстру та валідації |
|
||||
| `plugin-sdk/speech-core` | Спільне ядро мовлення | Типи 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` | Допоміжні засоби інтерактивних відповідей | Нормалізація/зведення payload інтерактивних відповідей |
|
||||
| `plugin-sdk/channel-config-primitives` | Примітиви конфігурації каналів | Вузькі примітиви channel config-schema |
|
||||
| `plugin-sdk/channel-config-writes` | Допоміжні засоби запису конфігурації каналів | Допоміжні засоби авторизації запису конфігурації каналів |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільна преамбула каналів | Експорти спільної преамбули плагінів каналів |
|
||||
| `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` | Спільні допоміжні засоби розширень | Примітиви пасивних каналів/стану та ambient proxy helper |
|
||||
| `plugin-sdk/webhook-targets` | Допоміжні засоби цілей webhook | Реєстр цілей webhook і допоміжні засоби встановлення маршрутів |
|
||||
| `plugin-sdk/webhook-path` | Допоміжні засоби шляхів webhook | Допоміжні засоби нормалізації шляхів webhook |
|
||||
| `plugin-sdk/web-media` | Спільні допоміжні засоби web media | Допоміжні засоби завантаження віддалених/локальних media |
|
||||
| `plugin-sdk/zod` | Повторний експорт Zod | Повторно експортований `zod` для споживачів Plugin SDK |
|
||||
| `plugin-sdk/web-media` | Спільні допоміжні засоби вебмедіа | Допоміжні засоби завантаження віддалених/локальних медіа |
|
||||
| `plugin-sdk/zod` | Повторний експорт Zod | Повторно експортований `zod` для споживачів SDK плагінів |
|
||||
| `plugin-sdk/memory-core` | Допоміжні засоби вбудованого memory-core | Поверхня допоміжних засобів memory manager/config/file/CLI |
|
||||
| `plugin-sdk/memory-core-engine-runtime` | Фасад runtime для memory engine | Фасад runtime для memory index/search |
|
||||
| `plugin-sdk/memory-core-host-engine-foundation` | Базовий engine хоста пам’яті | Експорти foundation engine хоста пам’яті |
|
||||
| `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 хоста пам’яті |
|
||||
@ -332,38 +346,39 @@ OpenClaw перейшов від широкого шару зворотної с
|
||||
| `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-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, суміжних із пам’яттю |
|
||||
| `plugin-sdk/memory-host-search` | Фасад пошуку активної пам’яті | Лінивий фасад runtime search-manager для active-memory |
|
||||
| `plugin-sdk/memory-host-status` | Псевдонім статусу хоста пам’яті | Вендорно-нейтральний псевдонім для допоміжних засобів статусу хоста пам’яті |
|
||||
| `plugin-sdk/memory-host-markdown` | Допоміжні засоби керованого markdown | Спільні допоміжні засоби керованого markdown для суміжних із пам’яттю плагінів |
|
||||
| `plugin-sdk/memory-host-search` | Фасад пошуку активної пам’яті | Ледачий фасад runtime менеджера пошуку активної пам’яті |
|
||||
| `plugin-sdk/memory-host-status` | Псевдонім стану хоста пам’яті | Вендорно-нейтральний псевдонім для допоміжних засобів стану хоста пам’яті |
|
||||
| `plugin-sdk/memory-lancedb` | Допоміжні засоби вбудованого memory-lancedb | Поверхня допоміжних засобів memory-lancedb |
|
||||
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні засоби тестування та mocks |
|
||||
| `plugin-sdk/testing` | Утиліти тестування | Допоміжні засоби тестування та mock-об’єкти |
|
||||
</Accordion>
|
||||
|
||||
Ця таблиця навмисно містить лише поширену підмножину для міграції, а не всю
|
||||
поверхню SDK. Повний список із понад 200 entrypoints міститься в
|
||||
Ця таблиця навмисно охоплює лише поширену підмножину для міграції, а не всю
|
||||
поверхню SDK. Повний список із понад 200 точок входу міститься у
|
||||
`scripts/lib/plugin-sdk-entrypoints.json`.
|
||||
|
||||
Цей список усе ще містить деякі seams допоміжних засобів вбудованих plugin, як-от
|
||||
`plugin-sdk/feishu`, `plugin-sdk/feishu-setup`, `plugin-sdk/zalo`,
|
||||
`plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Вони все ще експортуються для
|
||||
підтримки вбудованих plugin і сумісності, але навмисно не включені до поширеної таблиці міграції
|
||||
й не є рекомендованою ціллю для
|
||||
нового коду plugin.
|
||||
Цей список усе ще містить деякі seams допоміжних засобів вбудованих плагінів,
|
||||
такі як `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`
|
||||
- Matrix: `plugin-sdk/matrix*`
|
||||
- LINE: `plugin-sdk/line*`
|
||||
- IRC: `plugin-sdk/irc*`
|
||||
- поверхні вбудованих допоміжних засобів/plugin, як-от `plugin-sdk/googlechat`,
|
||||
- поверхні вбудованих helper/plugin, такі як `plugin-sdk/googlechat`,
|
||||
`plugin-sdk/zalouser`, `plugin-sdk/bluebubbles*`,
|
||||
`plugin-sdk/mattermost*`, `plugin-sdk/msteams`,
|
||||
`plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`,
|
||||
@ -372,39 +387,39 @@ OpenClaw перейшов від широкого шару зворотної с
|
||||
`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`,
|
||||
`plugin-sdk/github-copilot-token` наразі надає вузьку поверхню допоміжних
|
||||
засобів токена `DEFAULT_COPILOT_API_BASE_URL`,
|
||||
`deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken`.
|
||||
|
||||
Використовуйте найвужчий імпорт, який відповідає завданню. Якщо ви не можете знайти потрібний експорт,
|
||||
перевірте вихідний код у `src/plugin-sdk/` або запитайте в Discord.
|
||||
Використовуйте найвужчий імпорт, який відповідає вашому завданню. Якщо ви не
|
||||
можете знайти експорт, перегляньте джерело в `src/plugin-sdk/` або запитайте в Discord.
|
||||
|
||||
## Часова шкала вилучення
|
||||
## Хронологія вилучення
|
||||
|
||||
| Коли | Що відбувається |
|
||||
| ---------------------- | ----------------------------------------------------------------------- |
|
||||
| **Зараз** | Застарілі поверхні виводять попередження під час виконання |
|
||||
| **Наступний мажорний реліз** | Застарілі поверхні буде вилучено; plugins, які все ще їх використовують, перестануть працювати |
|
||||
| **Зараз** | Застарілі поверхні надсилають попередження під час виконання |
|
||||
| **Наступний мажорний реліз** | Застарілі поверхні буде вилучено; плагіни, які все ще їх використовують, перестануть працювати |
|
||||
|
||||
Усі core plugins уже мігровано. Зовнішнім plugins слід виконати міграцію
|
||||
Усі основні плагіни вже перенесено. Зовнішні плагіни мають виконати міграцію
|
||||
до наступного мажорного релізу.
|
||||
|
||||
## Тимчасове приглушення попереджень
|
||||
|
||||
Поки ви працюєте над міграцією, установіть такі змінні середовища:
|
||||
Установіть ці змінні середовища, поки працюєте над міграцією:
|
||||
|
||||
```bash
|
||||
OPENCLAW_SUPPRESS_PLUGIN_SDK_COMPAT_WARNING=1 openclaw gateway run
|
||||
OPENCLAW_SUPPRESS_EXTENSION_API_WARNING=1 openclaw gateway run
|
||||
```
|
||||
|
||||
Це тимчасовий обхідний шлях, а не постійне рішення.
|
||||
Це тимчасовий обхідний механізм, а не постійне рішення.
|
||||
|
||||
## Пов’язане
|
||||
|
||||
- [Початок роботи](/uk/plugins/building-plugins) — створіть свій перший plugin
|
||||
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник імпортів subpath
|
||||
- [Channel Plugins](/uk/plugins/sdk-channel-plugins) — створення channel plugins
|
||||
- [Provider Plugins](/uk/plugins/sdk-provider-plugins) — створення provider plugins
|
||||
- [Внутрішня будова plugin](/uk/plugins/architecture) — поглиблений розбір архітектури
|
||||
- [Маніфест plugin](/uk/plugins/manifest) — довідник схеми маніфесту
|
||||
- [Початок роботи](/uk/plugins/building-plugins) — створіть свій перший плагін
|
||||
- [Огляд SDK](/uk/plugins/sdk-overview) — повний довідник імпорту підшляхів
|
||||
- [Плагіни каналів](/uk/plugins/sdk-channel-plugins) — створення плагінів каналів
|
||||
- [Плагіни провайдерів](/uk/plugins/sdk-provider-plugins) — створення плагінів провайдерів
|
||||
- [Внутрішня будова плагінів](/uk/plugins/architecture) — глибокий огляд архітектури
|
||||
- [Маніфест плагіна](/uk/plugins/manifest) — довідник схеми маніфесту
|
||||
|
||||
@ -1,33 +1,33 @@
|
||||
---
|
||||
read_when:
|
||||
- Вам потрібно знати, з якого підшляху SDK імпортувати
|
||||
- Вам потрібна довідка щодо всіх методів реєстрації в OpenClawPluginApi
|
||||
- Потрібно знати, з якого підшляху SDK імпортувати
|
||||
- Потрібен довідник для всіх методів реєстрації в OpenClawPluginApi
|
||||
- Ви шукаєте конкретний експорт SDK
|
||||
sidebarTitle: SDK Overview
|
||||
summary: Карта імпорту, довідка щодо API реєстрації та архітектура SDK
|
||||
summary: Карта імпортів, довідник API реєстрації та архітектура SDK
|
||||
title: Огляд Plugin SDK
|
||||
x-i18n:
|
||||
generated_at: "2026-04-08T08:11:33Z"
|
||||
generated_at: "2026-04-09T00:38:40Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 6e7b420eb0f3faa8916357d52df949f6c9a46f1c843a1e6a0c0b8bb26db6cbff
|
||||
source_hash: bf205af060971931df97dca4af5110ce173d2b7c12f56ad7c62d664a402f2381
|
||||
source_path: plugins/sdk-overview.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Огляд Plugin SDK
|
||||
|
||||
Plugin SDK — це типізований контракт між plugins і core. Ця сторінка є
|
||||
довідником щодо **що імпортувати** і **що можна реєструвати**.
|
||||
Plugin SDK — це типізований контракт між плагінами та ядром. Ця сторінка —
|
||||
довідник про **що імпортувати** і **що можна реєструвати**.
|
||||
|
||||
<Tip>
|
||||
**Шукаєте практичний посібник?**
|
||||
- Перший plugin? Почніть із [Getting Started](/uk/plugins/building-plugins)
|
||||
- Channel plugin? Див. [Channel Plugins](/uk/plugins/sdk-channel-plugins)
|
||||
- Provider plugin? Див. [Provider Plugins](/uk/plugins/sdk-provider-plugins)
|
||||
**Шукаєте покроковий посібник?**
|
||||
- Перший плагін? Почніть із [Getting Started](/uk/plugins/building-plugins)
|
||||
- Плагін каналу? Див. [Channel Plugins](/uk/plugins/sdk-channel-plugins)
|
||||
- Плагін провайдера? Див. [Provider Plugins](/uk/plugins/sdk-provider-plugins)
|
||||
</Tip>
|
||||
|
||||
## Угода щодо імпорту
|
||||
## Правило імпорту
|
||||
|
||||
Завжди імпортуйте з конкретного підшляху:
|
||||
|
||||
@ -36,329 +36,332 @@ import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
|
||||
import { defineChannelPluginEntry } from "openclaw/plugin-sdk/channel-core";
|
||||
```
|
||||
|
||||
Кожен підшлях — це невеликий самодостатній модуль. Це пришвидшує запуск і
|
||||
запобігає проблемам із циклічними залежностями. Для специфічних для channel
|
||||
entry/build helper-ів віддавайте перевагу `openclaw/plugin-sdk/channel-core`; `openclaw/plugin-sdk/core` залишайте для
|
||||
ширшої парасолькової поверхні та спільних helper-ів, таких як
|
||||
Кожен підшлях — це невеликий самодостатній модуль. Це забезпечує швидкий
|
||||
запуск і запобігає проблемам із циклічними залежностями. Для специфічних для
|
||||
каналів допоміжних засобів входу/збирання надавайте перевагу
|
||||
`openclaw/plugin-sdk/channel-core`; залишайте `openclaw/plugin-sdk/core` для
|
||||
ширшої узагальнювальної поверхні та спільних допоміжних засобів, таких як
|
||||
`buildChannelConfigSchema`.
|
||||
|
||||
Не додавайте й не використовуйте зручні seams з іменами provider-ів, такі як
|
||||
Не додавайте і не використовуйте зручні шви з назвами провайдерів, такі як
|
||||
`openclaw/plugin-sdk/slack`, `openclaw/plugin-sdk/discord`,
|
||||
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або
|
||||
helper seams із брендуванням channel. Bundled plugins мають компонувати загальні
|
||||
підшляхи SDK у власних barrels `api.ts` або `runtime-api.ts`, а core
|
||||
має або використовувати ці локальні plugin barrels, або додавати вузький загальний SDK
|
||||
контракт, коли потреба справді є міжканальною.
|
||||
`openclaw/plugin-sdk/signal`, `openclaw/plugin-sdk/whatsapp`, або допоміжні
|
||||
шви з брендингом каналів. Вбудовані плагіни мають компонувати загальні
|
||||
підшляхи SDK у власних barrel-файлах `api.ts` або `runtime-api.ts`, а ядро
|
||||
має або використовувати ці локальні barrel-файли плагіна, або додавати вузький
|
||||
загальний контракт SDK, якщо потреба справді є міжканальною.
|
||||
|
||||
Згенерована карта експортів усе ще містить невеликий набір helper
|
||||
seams для bundled plugins, таких як `plugin-sdk/feishu`, `plugin-sdk/feishu-setup`,
|
||||
`plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і `plugin-sdk/matrix*`. Ці
|
||||
підшляхи існують лише для підтримки bundled plugins і сумісності; їх
|
||||
навмисно не включено до загальної таблиці нижче, і вони не є рекомендованим
|
||||
шляхом імпорту для нових сторонніх plugins.
|
||||
Згенерована карта експортів усе ще містить невеликий набір допоміжних
|
||||
швів для вбудованих плагінів, таких як `plugin-sdk/feishu`,
|
||||
`plugin-sdk/feishu-setup`, `plugin-sdk/zalo`, `plugin-sdk/zalo-setup` і
|
||||
`plugin-sdk/matrix*`. Ці підшляхи існують лише для підтримки вбудованих
|
||||
плагінів і сумісності; їх навмисно не включено до загальної таблиці нижче,
|
||||
і вони не є рекомендованим шляхом імпорту для нових сторонніх плагінів.
|
||||
|
||||
## Довідник підшляхів
|
||||
|
||||
Найуживаніші підшляхи, згруповані за призначенням. Згенерований повний список із
|
||||
200+ підшляхів міститься в `scripts/lib/plugin-sdk-entrypoints.json`.
|
||||
Найуживаніші підшляхи, згруповані за призначенням. Згенерований повний список
|
||||
із понад 200 підшляхів міститься в `scripts/lib/plugin-sdk-entrypoints.json`.
|
||||
|
||||
Зарезервовані helper-підшляхи для bundled plugins усе ще з’являються в цьому згенерованому списку.
|
||||
Сприймайте їх як деталі реалізації/поверхні сумісності, якщо лише сторінка документації
|
||||
явно не просуває один із них як публічний.
|
||||
Зарезервовані допоміжні підшляхи вбудованих плагінів усе ще з’являються в
|
||||
цьому згенерованому списку. Вважайте їх деталями реалізації / поверхнями
|
||||
сумісності, якщо тільки якась сторінка документації явно не просуває один із
|
||||
них як публічний.
|
||||
|
||||
### Точка входу plugin
|
||||
### Вхід плагіна
|
||||
|
||||
| Subpath | Ключові експорти |
|
||||
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `plugin-sdk/plugin-entry` | `definePluginEntry` |
|
||||
| Підшлях | Ключові експорти |
|
||||
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `plugin-sdk/plugin-entry` | `definePluginEntry` |
|
||||
| `plugin-sdk/core` | `defineChannelPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase`, `defineSetupPluginEntry`, `buildChannelConfigSchema` |
|
||||
| `plugin-sdk/config-schema` | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/config-schema` | `OpenClawSchema` |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Підшляхи channel">
|
||||
| Subpath | Ключові експорти |
|
||||
<Accordion title="Підшляхи каналів">
|
||||
| Підшлях | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/channel-core` | `defineChannelPluginEntry`, `defineSetupPluginEntry`, `createChatChannelPlugin`, `createChannelPluginBase` |
|
||||
| `plugin-sdk/config-schema` | Експорт кореневої Zod-схеми `openclaw.json` (`OpenClawSchema`) |
|
||||
| `plugin-sdk/channel-setup` | `createOptionalChannelSetupSurface`, `createOptionalChannelSetupAdapter`, `createOptionalChannelSetupWizard`, а також `DEFAULT_ACCOUNT_ID`, `createTopLevelChannelDmPolicy`, `setSetupChannelEnabled`, `splitSetupEntries` |
|
||||
| `plugin-sdk/setup` | Спільні helper-и майстра налаштування, запити allowlist, конструктори статусу налаштування |
|
||||
| `plugin-sdk/setup` | Спільні допоміжні засоби майстра налаштування, запити списків дозволених джерел, побудова статусу налаштування |
|
||||
| `plugin-sdk/setup-runtime` | `createPatchedAccountSetupAdapter`, `createEnvPatchedAccountSetupAdapter`, `createSetupInputPresenceValidator`, `noteChannelLookupFailure`, `noteChannelLookupSummary`, `promptResolvedAllowFrom`, `splitSetupEntries`, `createAllowlistSetupWizardProxy`, `createDelegatedSetupWizardProxy` |
|
||||
| `plugin-sdk/setup-adapter-runtime` | `createEnvPatchedAccountSetupAdapter` |
|
||||
| `plugin-sdk/setup-tools` | `formatCliCommand`, `detectBinary`, `extractArchive`, `resolveBrewExecutable`, `formatDocsLink`, `CONFIG_DIR` |
|
||||
| `plugin-sdk/account-core` | Helper-и для багатоакаунтної config/action-gate, helper-и fallback для облікового запису за замовчуванням |
|
||||
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, helper-и нормалізації account-id |
|
||||
| `plugin-sdk/account-resolution` | Пошук облікового запису + helper-и fallback за замовчуванням |
|
||||
| `plugin-sdk/account-helpers` | Вузькі helper-и для списку облікових записів/дій з обліковими записами |
|
||||
| `plugin-sdk/account-core` | Допоміжні засоби для конфігурації/керування шлюзами дій з кількома обліковими записами, допоміжні засоби резервного використання типового облікового запису |
|
||||
| `plugin-sdk/account-id` | `DEFAULT_ACCOUNT_ID`, допоміжні засоби нормалізації account-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` | Типи схеми config channel |
|
||||
| `plugin-sdk/telegram-command-config` | Helper-и нормалізації/валідації користувацьких команд Telegram з fallback на bundled contract |
|
||||
| `plugin-sdk/channel-config-schema` | Типи схеми конфігурації каналу |
|
||||
| `plugin-sdk/telegram-command-config` | Допоміжні засоби нормалізації/валідації користувацьких команд Telegram із резервним вбудованим контрактом |
|
||||
| `plugin-sdk/channel-policy` | `resolveChannelGroupRequireMention` |
|
||||
| `plugin-sdk/channel-lifecycle` | `createAccountStatusSink` |
|
||||
| `plugin-sdk/inbound-envelope` | Спільні helper-и маршрутизації вхідних повідомлень + побудови envelope |
|
||||
| `plugin-sdk/inbound-reply-dispatch` | Спільні helper-и запису та диспетчеризації вхідних повідомлень |
|
||||
| `plugin-sdk/messaging-targets` | Helper-и розбору/зіставлення цілей |
|
||||
| `plugin-sdk/outbound-media` | Спільні helper-и завантаження вихідних медіа |
|
||||
| `plugin-sdk/outbound-runtime` | Helper-и делегування вихідної ідентичності/надсилання |
|
||||
| `plugin-sdk/thread-bindings-runtime` | Helper-и життєвого циклу та адаптера thread-binding |
|
||||
| `plugin-sdk/agent-media-payload` | Застарілий конструктор agent media payload |
|
||||
| `plugin-sdk/conversation-runtime` | Helper-и conversation/thread binding, pairing та configured-binding |
|
||||
| `plugin-sdk/runtime-config-snapshot` | Helper знімка runtime config |
|
||||
| `plugin-sdk/runtime-group-policy` | Helper-и визначення group-policy під час виконання |
|
||||
| `plugin-sdk/channel-status` | Спільні helper-и знімка/підсумку статусу channel |
|
||||
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми config channel |
|
||||
| `plugin-sdk/channel-config-writes` | Helper-и авторизації запису config channel |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільні експорти prelude для channel plugins |
|
||||
| `plugin-sdk/allowlist-config-edit` | Helper-и читання/редагування config allowlist |
|
||||
| `plugin-sdk/group-access` | Спільні helper-и рішень щодо group-access |
|
||||
| `plugin-sdk/direct-dm` | Спільні helper-и auth/guard для прямих DM |
|
||||
| `plugin-sdk/interactive-runtime` | Helper-и нормалізації/зведення interactive reply payload |
|
||||
| `plugin-sdk/channel-inbound` | Helper-и debounce вхідних повідомлень, зіставлення згадок, політики згадок і envelope |
|
||||
| `plugin-sdk/channel-send-result` | Типи результатів reply |
|
||||
| `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` | Застарілий побудовник медіа payload агента |
|
||||
| `plugin-sdk/conversation-runtime` | Допоміжні засоби прив’язки розмов/потоків, pairинг і налаштованих прив’язок |
|
||||
| `plugin-sdk/runtime-config-snapshot` | Допоміжний засіб знімка конфігурації під час виконання |
|
||||
| `plugin-sdk/runtime-group-policy` | Допоміжні засоби визначення групових політик під час виконання |
|
||||
| `plugin-sdk/channel-status` | Спільні допоміжні засоби знімка/зведення статусу каналу |
|
||||
| `plugin-sdk/channel-config-primitives` | Вузькі примітиви схеми конфігурації каналу |
|
||||
| `plugin-sdk/channel-config-writes` | Допоміжні засоби авторизації запису конфігурації каналу |
|
||||
| `plugin-sdk/channel-plugin-common` | Спільні преамбулні експорти плагінів каналів |
|
||||
| `plugin-sdk/allowlist-config-edit` | Допоміжні засоби редагування/читання конфігурації списку дозволених джерел |
|
||||
| `plugin-sdk/group-access` | Спільні допоміжні засоби рішень щодо доступу груп |
|
||||
| `plugin-sdk/direct-dm` | Спільні допоміжні засоби автентифікації/захисту прямих DM |
|
||||
| `plugin-sdk/interactive-runtime` | Допоміжні засоби нормалізації/скорочення payload інтерактивних відповідей |
|
||||
| `plugin-sdk/channel-inbound` | Допоміжні засоби debounce для вхідних повідомлень, зіставлення згадок, політики згадок і envelope |
|
||||
| `plugin-sdk/channel-send-result` | Типи результатів відповіді |
|
||||
| `plugin-sdk/channel-actions` | `createMessageToolButtonsSchema`, `createMessageToolCardSchema` |
|
||||
| `plugin-sdk/channel-targets` | Helper-и розбору/зіставлення цілей |
|
||||
| `plugin-sdk/channel-contract` | Типи контракту channel |
|
||||
| `plugin-sdk/channel-feedback` | Підключення feedback/reaction |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі helper-и secret-contract, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, і типи secret target |
|
||||
| `plugin-sdk/channel-targets` | Допоміжні засоби розбору/зіставлення цілей |
|
||||
| `plugin-sdk/channel-contract` | Типи контракту каналу |
|
||||
| `plugin-sdk/channel-feedback` | Підключення відгуків/реакцій |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби контракту секретів, такі як `collectSimpleChannelFieldAssignments`, `getChannelSurface`, `pushAssignment`, а також типи цілей секретів |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи provider">
|
||||
| Subpath | Ключові експорти |
|
||||
<Accordion title="Підшляхи провайдерів">
|
||||
| Підшлях | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/provider-entry` | `defineSingleProviderPluginEntry` |
|
||||
| `plugin-sdk/provider-setup` | Кураторські helper-и налаштування локального/self-hosted provider |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані helper-и налаштування self-hosted provider, сумісного з OpenAI |
|
||||
| `plugin-sdk/cli-backend` | Значення CLI backend за замовчуванням + константи watchdog |
|
||||
| `plugin-sdk/provider-auth-runtime` | Helper-и визначення API-ключа під час виконання для provider plugins |
|
||||
| `plugin-sdk/provider-auth-api-key` | Helper-и онбордингу/запису профілю API-ключа, такі як `upsertApiKeyProfile` |
|
||||
| `plugin-sdk/provider-auth-result` | Стандартний конструктор результату OAuth auth |
|
||||
| `plugin-sdk/provider-auth-login` | Спільні helper-и інтерактивного входу для provider plugins |
|
||||
| `plugin-sdk/provider-env-vars` | Helper-и пошуку auth env vars для provider-ів |
|
||||
| `plugin-sdk/provider-setup` | Кураторські допоміжні засоби налаштування локальних/self-hosted провайдерів |
|
||||
| `plugin-sdk/self-hosted-provider-setup` | Сфокусовані допоміжні засоби налаштування self-hosted провайдерів, сумісних з OpenAI |
|
||||
| `plugin-sdk/cli-backend` | Типові значення CLI-бекенду + константи watchdog |
|
||||
| `plugin-sdk/provider-auth-runtime` | Допоміжні засоби визначення API-ключів під час виконання для плагінів провайдерів |
|
||||
| `plugin-sdk/provider-auth-api-key` | Допоміжні засоби онбордингу/запису профілю API-ключа, такі як `upsertApiKeyProfile` |
|
||||
| `plugin-sdk/provider-auth-result` | Стандартний побудовник результату OAuth-автентифікації |
|
||||
| `plugin-sdk/provider-auth-login` | Спільні інтерактивні допоміжні засоби входу для плагінів провайдерів |
|
||||
| `plugin-sdk/provider-env-vars` | Допоміжні засоби пошуку env var для автентифікації провайдерів |
|
||||
| `plugin-sdk/provider-auth` | `createProviderApiKeyAuthMethod`, `ensureApiKeyFromOptionEnvOrPrompt`, `upsertAuthProfile`, `upsertApiKeyProfile`, `writeOAuthCredentials` |
|
||||
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні конструктори replay-policy, helper-и endpoint provider-ів і helper-и нормалізації model-id, такі як `normalizeNativeXaiModelId` |
|
||||
| `plugin-sdk/provider-model-shared` | `ProviderReplayFamily`, `buildProviderReplayFamilyHooks`, `normalizeModelCompat`, спільні побудовники політик replay, допоміжні засоби endpoint провайдерів і нормалізації model-id, такі як `normalizeNativeXaiModelId` |
|
||||
| `plugin-sdk/provider-catalog-shared` | `findCatalogTemplate`, `buildSingleProviderApiKeyCatalog`, `supportsNativeStreamingUsageCompat`, `applyProviderNativeStreamingUsageCompat` |
|
||||
| `plugin-sdk/provider-http` | Загальні helper-и HTTP/можливостей endpoint provider-ів |
|
||||
| `plugin-sdk/provider-web-fetch-contract` | Вузькі helper-и контракту config/вибору web-fetch, такі як `enablePluginInConfig` і `WebFetchProviderPlugin` |
|
||||
| `plugin-sdk/provider-web-fetch` | Helper-и реєстрації/кешу provider-а web-fetch |
|
||||
| `plugin-sdk/provider-web-search-config-contract` | Вузькі helper-и config/облікових даних web-search для provider-ів, яким не потрібне підключення увімкнення plugin |
|
||||
| `plugin-sdk/provider-web-search-contract` | Вузькі helper-и контракту config/облікових даних web-search, такі як `createWebSearchProviderContractFields`, `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і scoped setter/getter-и облікових даних |
|
||||
| `plugin-sdk/provider-web-search` | Helper-и реєстрації/кешу/runtime для provider-а web-search |
|
||||
| `plugin-sdk/provider-tools` | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + diagnostics, а також helper-и сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-usage` | `fetchClaudeUsage` та подібне |
|
||||
| `plugin-sdk/provider-stream` | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи stream wrapper і спільні helper-и wrapper-ів для Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
|
||||
| `plugin-sdk/provider-onboard` | Helper-и патчів config для онбордингу |
|
||||
| `plugin-sdk/global-singleton` | Helper-и локальних для процесу singleton/map/cache |
|
||||
| `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-config-contract` | Вузькі допоміжні засоби конфігурації/облікових даних web-search для провайдерів, яким не потрібне підключення ввімкнення плагіна |
|
||||
| `plugin-sdk/provider-web-search-contract` | Вузькі допоміжні засоби контракту конфігурації/облікових даних web-search, такі як `createWebSearchProviderContractFields`, `enablePluginInConfig`, `resolveProviderWebSearchPluginConfig` і область дії setter/getter для облікових даних |
|
||||
| `plugin-sdk/provider-web-search` | Допоміжні засоби реєстрації/кешу/виконання провайдерів web-search |
|
||||
| `plugin-sdk/provider-tools` | `ProviderToolCompatFamily`, `buildProviderToolCompatFamilyHooks`, очищення схеми Gemini + діагностика та допоміжні засоби сумісності xAI, такі як `resolveXaiModelCompatPatch` / `applyXaiModelCompat` |
|
||||
| `plugin-sdk/provider-usage` | `fetchClaudeUsage` та подібні |
|
||||
| `plugin-sdk/provider-stream` | `ProviderStreamFamily`, `buildProviderStreamFamilyHooks`, `composeProviderStreamWrappers`, типи обгорток потоків і спільні допоміжні засоби обгорток Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
|
||||
| `plugin-sdk/provider-onboard` | Допоміжні засоби патчів конфігурації онбордингу |
|
||||
| `plugin-sdk/global-singleton` | Допоміжні засоби локальних для процесу singleton/map/cache |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи auth і безпеки">
|
||||
| Subpath | Ключові експорти |
|
||||
<Accordion title="Підшляхи автентифікації та безпеки">
|
||||
| Підшлях | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, helper-и реєстру команд, helper-и авторизації відправника |
|
||||
| `plugin-sdk/approval-auth-runtime` | Helper-и визначення approver і auth дій у тому самому чаті |
|
||||
| `plugin-sdk/approval-client-runtime` | Helper-и профілю/фільтра native exec approval |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Адаптери доставки/можливостей native approval |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Спільний helper визначення approval gateway |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Легковагі helper-и завантаження native approval adapter для hot channel entrypoints |
|
||||
| `plugin-sdk/approval-handler-runtime` | Ширші runtime helper-и approval handler; віддавайте перевагу вужчим adapter/gateway seams, коли їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Helper-и native approval target + account-binding |
|
||||
| `plugin-sdk/approval-reply-runtime` | Helper-и payload відповіді для exec/plugin approval |
|
||||
| `plugin-sdk/command-auth-native` | Helper-и native command auth + native session-target |
|
||||
| `plugin-sdk/command-detection` | Спільні helper-и виявлення команд |
|
||||
| `plugin-sdk/command-surface` | Helper-и нормалізації тіла команди та command-surface |
|
||||
| `plugin-sdk/command-auth` | `resolveControlCommandGate`, допоміжні засоби реєстру команд, допоміжні засоби авторизації відправника |
|
||||
| `plugin-sdk/command-status` | Побудовники повідомлень команд/довідки, такі як `buildCommandsMessagePaginated` і `buildHelpMessage` |
|
||||
| `plugin-sdk/approval-auth-runtime` | Допоміжні засоби визначення approver і автентифікації дій у межах того самого чату |
|
||||
| `plugin-sdk/approval-client-runtime` | Допоміжні засоби профілів/фільтрів нативного схвалення виконання |
|
||||
| `plugin-sdk/approval-delivery-runtime` | Адаптери нативних можливостей/доставки схвалення |
|
||||
| `plugin-sdk/approval-gateway-runtime` | Спільний допоміжний засіб визначення шлюзу схвалення |
|
||||
| `plugin-sdk/approval-handler-adapter-runtime` | Полегшені допоміжні засоби завантаження нативного адаптера схвалення для гарячих entrypoint каналу |
|
||||
| `plugin-sdk/approval-handler-runtime` | Ширші допоміжні засоби runtime-обробника схвалення; надавайте перевагу вужчим швам adapter/gateway, коли їх достатньо |
|
||||
| `plugin-sdk/approval-native-runtime` | Допоміжні засоби нативних цілей схвалення + прив’язки облікових записів |
|
||||
| `plugin-sdk/approval-reply-runtime` | Допоміжні засоби payload відповідей схвалення exec/plugin |
|
||||
| `plugin-sdk/command-auth-native` | Допоміжні засоби нативної автентифікації команд + нативних цілей сеансу |
|
||||
| `plugin-sdk/command-detection` | Спільні допоміжні засоби виявлення команд |
|
||||
| `plugin-sdk/command-surface` | Допоміжні засоби нормалізації тіла команди та command-surface |
|
||||
| `plugin-sdk/allow-from` | `formatAllowFromLowercase` |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі helper-и збирання secret-contract для поверхонь secret channel/plugin |
|
||||
| `plugin-sdk/secret-ref-runtime` | Вузькі helper-и `coerceSecretRef` і типізації SecretRef для розбору secret-contract/config |
|
||||
| `plugin-sdk/security-runtime` | Спільні helper-и довіри, DM gating, зовнішнього вмісту та збирання секретів |
|
||||
| `plugin-sdk/ssrf-policy` | Helper-и політики SSRF для allowlist хостів і приватних мереж |
|
||||
| `plugin-sdk/ssrf-runtime` | Helper-и pinned-dispatcher, fetch із захистом від SSRF і політики SSRF |
|
||||
| `plugin-sdk/secret-input` | Helper-и розбору secret input |
|
||||
| `plugin-sdk/webhook-ingress` | Helper-и webhook request/target |
|
||||
| `plugin-sdk/webhook-request-guards` | Helper-и розміру body/timeout для request |
|
||||
| `plugin-sdk/channel-secret-runtime` | Вузькі допоміжні засоби збирання контракту секретів для поверхонь секретів каналу/плагіна |
|
||||
| `plugin-sdk/secret-ref-runtime` | Вузькі допоміжні засоби `coerceSecretRef` і типізації SecretRef для парсингу контракту секретів/конфігурації |
|
||||
| `plugin-sdk/security-runtime` | Спільні допоміжні засоби довіри, обмеження DM, зовнішнього вмісту та збирання секретів |
|
||||
| `plugin-sdk/ssrf-policy` | Допоміжні засоби політики SSRF для списків дозволених хостів і приватних мереж |
|
||||
| `plugin-sdk/ssrf-runtime` | Допоміжні засоби pinned-dispatcher, fetch із захистом SSRF і політики SSRF |
|
||||
| `plugin-sdk/secret-input` | Допоміжні засоби парсингу введення секретів |
|
||||
| `plugin-sdk/webhook-ingress` | Допоміжні засоби запиту/цілі webhook |
|
||||
| `plugin-sdk/webhook-request-guards` | Допоміжні засоби розміру тіла запиту / тайм-аутів |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи runtime і сховища">
|
||||
| Subpath | Ключові експорти |
|
||||
| Підшлях | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/runtime` | Широкі helper-и runtime/logging/backup/install plugin |
|
||||
| `plugin-sdk/runtime-env` | Вузькі helper-и runtime env, logger, timeout, retry і backoff |
|
||||
| `plugin-sdk/channel-runtime-context` | Загальні helper-и реєстрації та пошуку runtime-context channel |
|
||||
| `plugin-sdk/runtime` | Широкі допоміжні засоби runtime/логування/резервних копій/встановлення плагінів |
|
||||
| `plugin-sdk/runtime-env` | Вужчі допоміжні засоби env runtime, логера, тайм-аутів, повторних спроб і backoff |
|
||||
| `plugin-sdk/channel-runtime-context` | Загальні допоміжні засоби реєстрації та пошуку channel runtime-context |
|
||||
| `plugin-sdk/runtime-store` | `createPluginRuntimeStore` |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні helper-и команди/hook/http/interactive для plugin |
|
||||
| `plugin-sdk/hook-runtime` | Спільні helper-и конвеєра webhook/internal hook |
|
||||
| `plugin-sdk/lazy-runtime` | Helper-и lazy runtime import/binding, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Helper-и виконання процесів |
|
||||
| `plugin-sdk/cli-runtime` | Helper-и форматування CLI, очікування і версії |
|
||||
| `plugin-sdk/gateway-runtime` | Helper-и gateway client і patch статусу channel |
|
||||
| `plugin-sdk/config-runtime` | Helper-и завантаження/запису config |
|
||||
| `plugin-sdk/telegram-command-config` | Helper-и нормалізації назв/описів команд Telegram і перевірок дублікатів/конфліктів, навіть коли поверхня контракту bundled Telegram недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Helper-и exec/plugin approval, конструктори approval-capability, helper-и auth/profile, helper-и native routing/runtime |
|
||||
| `plugin-sdk/reply-runtime` | Спільні runtime helper-и для inbound/reply, chunking, dispatch, heartbeat, планувальник reply |
|
||||
| `plugin-sdk/reply-dispatch-runtime` | Вузькі helper-и dispatch/finalize для reply |
|
||||
| `plugin-sdk/reply-history` | Спільні helper-и коротковіконної історії reply, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
|
||||
| `plugin-sdk/plugin-runtime` | Спільні допоміжні засоби команд/хуків/http/інтерактивних функцій плагіна |
|
||||
| `plugin-sdk/hook-runtime` | Спільні допоміжні засоби pipeline webhook/внутрішніх хуків |
|
||||
| `plugin-sdk/lazy-runtime` | Допоміжні засоби лінивого імпорту/прив’язки runtime, такі як `createLazyRuntimeModule`, `createLazyRuntimeMethod` і `createLazyRuntimeSurface` |
|
||||
| `plugin-sdk/process-runtime` | Допоміжні засоби виконання процесів |
|
||||
| `plugin-sdk/cli-runtime` | Допоміжні засоби форматування CLI, очікування та версій |
|
||||
| `plugin-sdk/gateway-runtime` | Допоміжні засоби клієнта шлюзу та патчів статусу каналу |
|
||||
| `plugin-sdk/config-runtime` | Допоміжні засоби завантаження/запису конфігурації |
|
||||
| `plugin-sdk/telegram-command-config` | Нормалізація назв/описів команд Telegram і перевірки дублювань/конфліктів, навіть коли поверхня вбудованого контракту Telegram недоступна |
|
||||
| `plugin-sdk/approval-runtime` | Допоміжні засоби схвалення exec/plugin, побудовники можливостей схвалення, допоміжні засоби auth/profile, нативної маршрутизації/runtime |
|
||||
| `plugin-sdk/reply-runtime` | Спільні допоміжні засоби runtime для вхідних повідомлень/відповідей, chunking, dispatch, heartbeat, planner відповідей |
|
||||
| `plugin-sdk/reply-dispatch-runtime` | Вузькі допоміжні засоби dispatch/finalize для відповідей |
|
||||
| `plugin-sdk/reply-history` | Спільні допоміжні засоби історії відповідей для короткого вікна, такі як `buildHistoryContext`, `recordPendingHistoryEntry` і `clearHistoryEntriesIfEnabled` |
|
||||
| `plugin-sdk/reply-reference` | `createReplyReferencePlanner` |
|
||||
| `plugin-sdk/reply-chunking` | Вузькі helper-и chunking для text/markdown |
|
||||
| `plugin-sdk/session-store-runtime` | Helper-и шляху сховища сесій + updated-at |
|
||||
| `plugin-sdk/state-paths` | Helper-и шляхів каталогів state/OAuth |
|
||||
| `plugin-sdk/routing` | Helper-и route/session-key/account binding, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
|
||||
| `plugin-sdk/status-helpers` | Спільні helper-и підсумку статусу channel/account, значення runtime-state за замовчуванням і helper-и метаданих проблем |
|
||||
| `plugin-sdk/target-resolver-runtime` | Спільні helper-и визначення цілі |
|
||||
| `plugin-sdk/string-normalization-runtime` | Helper-и нормалізації slug/string |
|
||||
| `plugin-sdk/request-url` | Витягує рядкові URL з fetch/request-подібних вхідних даних |
|
||||
| `plugin-sdk/reply-chunking` | Вузькі допоміжні засоби chunking тексту/markdown |
|
||||
| `plugin-sdk/session-store-runtime` | Допоміжні засоби шляхів до сховища сеансів + updated-at |
|
||||
| `plugin-sdk/state-paths` | Допоміжні засоби шляхів до каталогів state/OAuth |
|
||||
| `plugin-sdk/routing` | Допоміжні засоби маршрутів / session-key / прив’язки облікових записів, такі як `resolveAgentRoute`, `buildAgentSessionKey` і `resolveDefaultAgentBoundAccountId` |
|
||||
| `plugin-sdk/status-helpers` | Спільні допоміжні засоби зведення статусу каналу/облікового запису, типові значення стану runtime і допоміжні засоби метаданих проблем |
|
||||
| `plugin-sdk/target-resolver-runtime` | Спільні допоміжні засоби визначення цілей |
|
||||
| `plugin-sdk/string-normalization-runtime` | Допоміжні засоби нормалізації slug/рядків |
|
||||
| `plugin-sdk/request-url` | Витягування рядкових URL із fetch/request-подібних входів |
|
||||
| `plugin-sdk/run-command` | Виконавець команд із таймером і нормалізованими результатами stdout/stderr |
|
||||
| `plugin-sdk/param-readers` | Поширені readers параметрів tool/CLI |
|
||||
| `plugin-sdk/tool-payload` | Витягує нормалізовані payload-и з об’єктів результатів tool |
|
||||
| `plugin-sdk/tool-send` | Витягує канонічні поля цілі надсилання з аргументів tool |
|
||||
| `plugin-sdk/temp-path` | Спільні helper-и шляхів тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Helper-и логера підсистеми та редагування чутливих даних |
|
||||
| `plugin-sdk/markdown-table-runtime` | Helper-и режиму markdown-таблиць |
|
||||
| `plugin-sdk/json-store` | Невеликі helper-и читання/запису стану JSON |
|
||||
| `plugin-sdk/file-lock` | Helper-и повторно вхідного file-lock |
|
||||
| `plugin-sdk/persistent-dedupe` | Helper-и дискового кешу усунення дублікатів |
|
||||
| `plugin-sdk/acp-runtime` | Helper-и runtime/session і reply-dispatch для ACP |
|
||||
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви схеми runtime config agent |
|
||||
| `plugin-sdk/boolean-param` | Loose reader логічних параметрів |
|
||||
| `plugin-sdk/dangerous-name-runtime` | Helper-и визначення збігів небезпечних імен |
|
||||
| `plugin-sdk/device-bootstrap` | Helper-и bootstrap пристрою та токенів pairing |
|
||||
| `plugin-sdk/extension-shared` | Спільні примітиви helper-ів passive-channel, status та ambient proxy |
|
||||
| `plugin-sdk/models-provider-runtime` | Helper-и відповідей provider-а/команди `/models` |
|
||||
| `plugin-sdk/skill-commands-runtime` | Helper-и виведення списку команд Skills |
|
||||
| `plugin-sdk/native-command-registry` | Helper-и реєстру/build/serialize native commands |
|
||||
| `plugin-sdk/provider-zai-endpoint` | Helper-и виявлення endpoint Z.A.I |
|
||||
| `plugin-sdk/infra-runtime` | Helper-и системних подій/heartbeat |
|
||||
| `plugin-sdk/collection-runtime` | Невеликі helper-и обмеженого кешу |
|
||||
| `plugin-sdk/diagnostic-runtime` | Helper-и прапорців diagnostics і подій |
|
||||
| `plugin-sdk/error-runtime` | Helper-и графа помилок, форматування, спільної класифікації помилок, `isApprovalNotFoundError` |
|
||||
| `plugin-sdk/fetch-runtime` | Helper-и обгорнутого fetch, proxy і pinned lookup |
|
||||
| `plugin-sdk/host-runtime` | Helper-и нормалізації hostname і SCP host |
|
||||
| `plugin-sdk/retry-runtime` | Helper-и config retry і запуску retry |
|
||||
| `plugin-sdk/agent-runtime` | Helper-и каталогу/ідентичності/workspace agent |
|
||||
| `plugin-sdk/directory-runtime` | Запит/dedup каталогів на основі config |
|
||||
| `plugin-sdk/param-readers` | Поширені читачі параметрів інструментів/CLI |
|
||||
| `plugin-sdk/tool-payload` | Витягування нормалізованих payload із об’єктів результатів інструментів |
|
||||
| `plugin-sdk/tool-send` | Витягування канонічних полів цілі надсилання з аргументів інструменту |
|
||||
| `plugin-sdk/temp-path` | Спільні допоміжні засоби шляхів для тимчасових завантажень |
|
||||
| `plugin-sdk/logging-core` | Допоміжні засоби логера підсистеми та редагування чутливих даних |
|
||||
| `plugin-sdk/markdown-table-runtime` | Допоміжні засоби режиму таблиць Markdown |
|
||||
| `plugin-sdk/json-store` | Невеликі допоміжні засоби читання/запису JSON-стану |
|
||||
| `plugin-sdk/file-lock` | Реентерабельні допоміжні засоби file-lock |
|
||||
| `plugin-sdk/persistent-dedupe` | Допоміжні засоби кешу дедуплікації на диску |
|
||||
| `plugin-sdk/acp-runtime` | Допоміжні засоби runtime/сеансів ACP і dispatch відповідей |
|
||||
| `plugin-sdk/agent-config-primitives` | Вузькі примітиви схеми конфігурації runtime агента |
|
||||
| `plugin-sdk/boolean-param` | Читач слабко типізованих boolean-параметрів |
|
||||
| `plugin-sdk/dangerous-name-runtime` | Допоміжні засоби визначення зіставлення небезпечних імен |
|
||||
| `plugin-sdk/device-bootstrap` | Допоміжні засоби bootstrap пристрою та токенів pairингу |
|
||||
| `plugin-sdk/extension-shared` | Спільні примітиви допоміжних засобів пасивних каналів, статусу та ambient proxy |
|
||||
| `plugin-sdk/models-provider-runtime` | Допоміжні засоби відповідей команди `/models` / провайдера |
|
||||
| `plugin-sdk/skill-commands-runtime` | Допоміжні засоби переліку команд Skills |
|
||||
| `plugin-sdk/native-command-registry` | Допоміжні засоби реєстру/build/serialize нативних команд |
|
||||
| `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` | Допоміжні засоби конфігурації повторних спроб і виконавця повторних спроб |
|
||||
| `plugin-sdk/agent-runtime` | Допоміжні засоби каталогу/ідентичності/робочого простору агента |
|
||||
| `plugin-sdk/directory-runtime` | Запит/дедуплікація каталогів на основі конфігурації |
|
||||
| `plugin-sdk/keyed-async-queue` | `KeyedAsyncQueue` |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Підшляхи можливостей і тестування">
|
||||
| Subpath | Ключові експорти |
|
||||
| Підшлях | Ключові експорти |
|
||||
| --- | --- |
|
||||
| `plugin-sdk/media-runtime` | Спільні helper-и fetch/transform/store для медіа, а також конструктори media payload |
|
||||
| `plugin-sdk/media-generation-runtime` | Спільні helper-и failover для генерації медіа, вибір candidate і повідомлення про відсутню модель |
|
||||
| `plugin-sdk/media-understanding` | Типи provider-а media understanding, а також орієнтовані на provider експортовані helper-и для зображень/аудіо |
|
||||
| `plugin-sdk/text-runtime` | Спільні helper-и text/markdown/logging, такі як видалення видимого для assistant тексту, helper-и render/chunking/table для markdown, helper-и редагування чутливих даних, helper-и directive-tag і утиліти safe-text |
|
||||
| `plugin-sdk/text-chunking` | Helper chunking для вихідного text |
|
||||
| `plugin-sdk/speech` | Типи speech provider, а також орієнтовані на provider helper-и directive, registry і validation |
|
||||
| `plugin-sdk/speech-core` | Спільні типи speech provider, helper-и registry, directive і normalization |
|
||||
| `plugin-sdk/realtime-transcription` | Типи provider-а realtime transcription і helper-и registry |
|
||||
| `plugin-sdk/realtime-voice` | Типи provider-а realtime voice і helper-и registry |
|
||||
| `plugin-sdk/image-generation` | Типи provider-а генерації зображень |
|
||||
| `plugin-sdk/image-generation-core` | Спільні типи генерації зображень, helper-и failover, auth і registry |
|
||||
| `plugin-sdk/music-generation` | Типи provider/request/result для генерації музики |
|
||||
| `plugin-sdk/music-generation-core` | Спільні типи генерації музики, helper-и failover, lookup provider-а та розбору model-ref |
|
||||
| `plugin-sdk/video-generation` | Типи provider/request/result для генерації відео |
|
||||
| `plugin-sdk/video-generation-core` | Спільні типи генерації відео, helper-и failover, lookup provider-а та розбору model-ref |
|
||||
| `plugin-sdk/webhook-targets` | Реєстр webhook target і helper-и встановлення route |
|
||||
| `plugin-sdk/webhook-path` | Helper-и нормалізації шляху webhook |
|
||||
| `plugin-sdk/web-media` | Спільні helper-и завантаження віддалених/локальних медіа |
|
||||
| `plugin-sdk/zod` | Повторно експортований `zod` для користувачів Plugin SDK |
|
||||
| `plugin-sdk/media-runtime` | Спільні допоміжні засоби fetch/transform/store для медіа плюс побудовники медіа payload |
|
||||
| `plugin-sdk/media-generation-runtime` | Спільні допоміжні засоби failover для генерації медіа, вибір кандидатів і повідомлення про відсутні моделі |
|
||||
| `plugin-sdk/media-understanding` | Типи провайдерів розуміння медіа плюс орієнтовані на провайдерів експорти допоміжних засобів для зображень/аудіо |
|
||||
| `plugin-sdk/text-runtime` | Спільні допоміжні засоби тексту/markdown/логування, такі як вилучення видимого асистенту тексту, render/chunking/table для markdown, редагування чутливих даних, допоміжні засоби тегів директив і утиліти безпечного тексту |
|
||||
| `plugin-sdk/text-chunking` | Допоміжний засіб chunking вихідного тексту |
|
||||
| `plugin-sdk/speech` | Типи провайдерів мовлення плюс орієнтовані на провайдерів допоміжні засоби директив, реєстру та валідації |
|
||||
| `plugin-sdk/speech-core` | Спільні типи провайдерів мовлення, допоміжні засоби реєстру, директив і нормалізації |
|
||||
| `plugin-sdk/realtime-transcription` | Типи провайдерів транскрипції в реальному часі та допоміжні засоби реєстру |
|
||||
| `plugin-sdk/realtime-voice` | Типи провайдерів голосу в реальному часі та допоміжні засоби реєстру |
|
||||
| `plugin-sdk/image-generation` | Типи провайдерів генерації зображень |
|
||||
| `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/webhook-targets` | Реєстр цілей webhook і допоміжні засоби встановлення маршрутів |
|
||||
| `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` | Поверхня helper-ів bundled memory-core для менеджера/config/file/CLI |
|
||||
| `plugin-sdk/memory-core-engine-runtime` | Runtime facade для індексу/пошуку пам’яті |
|
||||
| `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 helper-и для memory host |
|
||||
| `plugin-sdk/memory-core-host-query` | Query helper-и для memory host |
|
||||
| `plugin-sdk/memory-core-host-secret` | Secret helper-и для memory host |
|
||||
| `plugin-sdk/memory-core-host-events` | Helper-и журналу подій для memory host |
|
||||
| `plugin-sdk/memory-core-host-status` | Status helper-и для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-cli` | Runtime helper-и CLI для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-core` | Core runtime helper-и для memory host |
|
||||
| `plugin-sdk/memory-core-host-runtime-files` | Helper-и файлів/runtime для memory host |
|
||||
| `plugin-sdk/memory-host-core` | Vendor-neutral alias для core runtime helper-ів memory host |
|
||||
| `plugin-sdk/memory-host-events` | Vendor-neutral alias для helper-ів журналу подій memory host |
|
||||
| `plugin-sdk/memory-host-files` | Vendor-neutral alias для helper-ів файлів/runtime memory host |
|
||||
| `plugin-sdk/memory-host-markdown` | Спільні helper-и managed-markdown для plugins, суміжних із пам’яттю |
|
||||
| `plugin-sdk/memory-core` | Поверхня допоміжних засобів вбудованого memory-core для manager/config/file/CLI |
|
||||
| `plugin-sdk/memory-core-engine-runtime` | Runtime facade для індексації/пошуку в пам’яті |
|
||||
| `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` | Допоміжні засоби мультимодального хоста пам’яті |
|
||||
| `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` | Нейтральний щодо постачальника псевдонім для допоміжних засобів core runtime хоста пам’яті |
|
||||
| `plugin-sdk/memory-host-events` | Нейтральний щодо постачальника псевдонім для допоміжних засобів журналу подій хоста пам’яті |
|
||||
| `plugin-sdk/memory-host-files` | Нейтральний щодо постачальника псевдонім для допоміжних засобів файлів/runtime хоста пам’яті |
|
||||
| `plugin-sdk/memory-host-markdown` | Спільні допоміжні засоби managed-markdown для плагінів, суміжних із пам’яттю |
|
||||
| `plugin-sdk/memory-host-search` | Active memory runtime facade для доступу до search-manager |
|
||||
| `plugin-sdk/memory-host-status` | Vendor-neutral alias для status helper-ів memory host |
|
||||
| `plugin-sdk/memory-lancedb` | Поверхня helper-ів bundled memory-lancedb |
|
||||
| `plugin-sdk/memory-host-status` | Нейтральний щодо постачальника псевдонім для допоміжних засобів статусу хоста пам’яті |
|
||||
| `plugin-sdk/memory-lancedb` | Поверхня допоміжних засобів вбудованого memory-lancedb |
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Зарезервовані helper-підшляхи bundled plugins">
|
||||
| Family | Current subpaths | Intended use |
|
||||
<Accordion title="Зарезервовані підшляхи допоміжних засобів вбудованих плагінів">
|
||||
| Сімейство | Поточні підшляхи | Призначення |
|
||||
| --- | --- | --- |
|
||||
| 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` | Helper-и підтримки bundled browser plugin (`browser-support` залишається compatibility 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 для bundled Matrix |
|
||||
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня helper-ів/runtime для bundled LINE |
|
||||
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня helper-ів для bundled IRC |
|
||||
| Helper-и, специфічні для 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` | Seams сумісності/helper-и для bundled channels |
|
||||
| Helper-и, специфічні для 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` | Helper seams для bundled feature/plugin; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
|
||||
| Browser | `plugin-sdk/browser-cdp`, `plugin-sdk/browser-config-runtime`, `plugin-sdk/browser-config-support`, `plugin-sdk/browser-control-auth`, `plugin-sdk/browser-node-runtime`, `plugin-sdk/browser-profiles`, `plugin-sdk/browser-security-runtime`, `plugin-sdk/browser-setup-tools`, `plugin-sdk/browser-support` | Допоміжні засоби підтримки вбудованого browser plugin (`browser-support` залишається barrel-файлом сумісності) |
|
||||
| Matrix | `plugin-sdk/matrix`, `plugin-sdk/matrix-helper`, `plugin-sdk/matrix-runtime-heavy`, `plugin-sdk/matrix-runtime-shared`, `plugin-sdk/matrix-runtime-surface`, `plugin-sdk/matrix-surface`, `plugin-sdk/matrix-thread-bindings` | Поверхня допоміжних засобів/runtime для вбудованого Matrix |
|
||||
| Line | `plugin-sdk/line`, `plugin-sdk/line-core`, `plugin-sdk/line-runtime`, `plugin-sdk/line-surface` | Поверхня допоміжних засобів/runtime для вбудованого LINE |
|
||||
| IRC | `plugin-sdk/irc`, `plugin-sdk/irc-surface` | Поверхня допоміжних засобів для вбудованого IRC |
|
||||
| Допоміжні засоби, специфічні для каналів | `plugin-sdk/googlechat`, `plugin-sdk/zalouser`, `plugin-sdk/bluebubbles`, `plugin-sdk/bluebubbles-policy`, `plugin-sdk/mattermost`, `plugin-sdk/mattermost-policy`, `plugin-sdk/feishu-conversation`, `plugin-sdk/msteams`, `plugin-sdk/nextcloud-talk`, `plugin-sdk/nostr`, `plugin-sdk/tlon`, `plugin-sdk/twitch` | Шви сумісності / допоміжні засоби для вбудованих каналів |
|
||||
| Допоміжні засоби, специфічні для auth/плагіна | `plugin-sdk/github-copilot-login`, `plugin-sdk/github-copilot-token`, `plugin-sdk/diagnostics-otel`, `plugin-sdk/diffs`, `plugin-sdk/llm-task`, `plugin-sdk/thread-ownership`, `plugin-sdk/voice-call` | Шви допоміжних засобів для вбудованих функцій/плагінів; `plugin-sdk/github-copilot-token` наразі експортує `DEFAULT_COPILOT_API_BASE_URL`, `deriveCopilotApiBaseUrlFromToken` і `resolveCopilotApiToken` |
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## API реєстрації
|
||||
|
||||
Зворотний виклик `register(api)` отримує об’єкт `OpenClawPluginApi` з такими
|
||||
Колбек `register(api)` отримує об’єкт `OpenClawPluginApi` з такими
|
||||
методами:
|
||||
|
||||
### Реєстрація можливостей
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------------ | ------------------------------ |
|
||||
| `api.registerProvider(...)` | Текстовий inference (LLM) |
|
||||
| `api.registerCliBackend(...)` | Локальний backend CLI inference |
|
||||
| `api.registerChannel(...)` | Канал обміну повідомленнями |
|
||||
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
|
||||
| `api.registerRealtimeTranscriptionProvider(...)` | Потокову транскрипцію realtime |
|
||||
| `api.registerRealtimeVoiceProvider(...)` | Дуплексні сесії голосу realtime |
|
||||
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
|
||||
| `api.registerImageGenerationProvider(...)` | Генерацію зображень |
|
||||
| `api.registerMusicGenerationProvider(...)` | Генерацію музики |
|
||||
| `api.registerVideoGenerationProvider(...)` | Генерацію відео |
|
||||
| `api.registerWebFetchProvider(...)` | Provider для web fetch / scrape |
|
||||
| `api.registerWebSearchProvider(...)` | Web search |
|
||||
| Метод | Що він реєструє |
|
||||
| ------------------------------------------------ | ------------------------------- |
|
||||
| `api.registerProvider(...)` | Текстовий inference (LLM) |
|
||||
| `api.registerCliBackend(...)` | Локальний CLI-бекенд inference |
|
||||
| `api.registerChannel(...)` | Канал обміну повідомленнями |
|
||||
| `api.registerSpeechProvider(...)` | Синтез text-to-speech / STT |
|
||||
| `api.registerRealtimeTranscriptionProvider(...)` | Потокова транскрипція в реальному часі |
|
||||
| `api.registerRealtimeVoiceProvider(...)` | Дуплексні голосові сеанси в реальному часі |
|
||||
| `api.registerMediaUnderstandingProvider(...)` | Аналіз зображень/аудіо/відео |
|
||||
| `api.registerImageGenerationProvider(...)` | Генерація зображень |
|
||||
| `api.registerMusicGenerationProvider(...)` | Генерація музики |
|
||||
| `api.registerVideoGenerationProvider(...)` | Генерація відео |
|
||||
| `api.registerWebFetchProvider(...)` | Провайдер web fetch / scrape |
|
||||
| `api.registerWebSearchProvider(...)` | Вебпошук |
|
||||
|
||||
### Tools і команди
|
||||
### Інструменти та команди
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------- | ------------------------------------------- |
|
||||
| `api.registerTool(tool, opts?)` | Tool agent-а (обов’язковий або `{ optional: true }`) |
|
||||
| `api.registerCommand(def)` | Користувацьку команду (обходить LLM) |
|
||||
| Метод | Що він реєструє |
|
||||
| ------------------------------ | -------------------------------------------- |
|
||||
| `api.registerTool(tool, opts?)` | Інструмент агента (обов’язковий або `{ optional: true }`) |
|
||||
| `api.registerCommand(def)` | Користувацька команда (оминає LLM) |
|
||||
|
||||
### Інфраструктура
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | ----------------------------------- |
|
||||
| `api.registerHook(events, handler, opts?)` | Event hook |
|
||||
| `api.registerHttpRoute(params)` | HTTP endpoint gateway |
|
||||
| `api.registerGatewayMethod(name, handler)` | RPC method gateway |
|
||||
| `api.registerCli(registrar, opts?)` | Підкоманду CLI |
|
||||
| `api.registerService(service)` | Фоновий service |
|
||||
| `api.registerInteractiveHandler(registration)` | Interactive handler |
|
||||
| `api.registerMemoryPromptSupplement(builder)` | Адитивний розділ prompt, суміжний із пам’яттю |
|
||||
| `api.registerMemoryCorpusSupplement(adapter)` | Адитивний corpus пошуку/читання пам’яті |
|
||||
| Метод | Що він реєструє |
|
||||
| --------------------------------------------- | ---------------------------------- |
|
||||
| `api.registerHook(events, handler, opts?)` | Хук події |
|
||||
| `api.registerHttpRoute(params)` | HTTP endpoint шлюзу |
|
||||
| `api.registerGatewayMethod(name, handler)` | RPC-метод шлюзу |
|
||||
| `api.registerCli(registrar, opts?)` | Підкоманда CLI |
|
||||
| `api.registerService(service)` | Фоновий сервіс |
|
||||
| `api.registerInteractiveHandler(registration)` | Інтерактивний обробник |
|
||||
| `api.registerMemoryPromptSupplement(builder)` | Адитивний розділ prompt, суміжний із пам’яттю |
|
||||
| `api.registerMemoryCorpusSupplement(adapter)` | Адитивний корпус пошуку/читання пам’яті |
|
||||
|
||||
Зарезервовані простори імен core admin (`config.*`, `exec.approvals.*`, `wizard.*`,
|
||||
`update.*`) завжди залишаються `operator.admin`, навіть якщо plugin намагається призначити
|
||||
вужчу область gateway method. Для
|
||||
методів, що належать plugin, віддавайте перевагу префіксам, специфічним для plugin.
|
||||
Зарезервовані простори імен адміністрування ядра (`config.*`, `exec.approvals.*`, `wizard.*`,
|
||||
`update.*`) завжди залишаються `operator.admin`, навіть якщо плагін
|
||||
намагається призначити вужчу область дії методу шлюзу. Для методів, що
|
||||
належать плагіну, надавайте перевагу специфічним для плагіна префіксам.
|
||||
|
||||
### Метадані реєстрації CLI
|
||||
|
||||
`api.registerCli(registrar, opts?)` приймає два види метаданих верхнього рівня:
|
||||
`api.registerCli(registrar, opts?)` приймає два типи метаданих верхнього рівня:
|
||||
|
||||
- `commands`: явні корені команд, якими володіє registrar
|
||||
- `descriptors`: дескриптори команд на етапі парсингу, які використовуються для кореневої довідки CLI,
|
||||
маршрутизації та ледачої реєстрації CLI plugin
|
||||
- `descriptors`: дескриптори команд часу парсингу, що використовуються для довідки кореневого CLI,
|
||||
маршрутизації та лінивої реєстрації CLI плагіна
|
||||
|
||||
Якщо ви хочете, щоб команда plugin залишалася lazy-loaded у звичайному шляху кореневого CLI,
|
||||
надайте `descriptors`, які охоплюють кожен корінь команди верхнього рівня, що експонується цим
|
||||
registrar.
|
||||
Якщо ви хочете, щоб команда плагіна залишалася ліниво завантажуваною в
|
||||
звичайному шляху кореневого CLI, надайте `descriptors`, які охоплюють кожен
|
||||
корінь команди верхнього рівня, що експонується цим registrar.
|
||||
|
||||
```typescript
|
||||
api.registerCli(
|
||||
@ -378,135 +381,139 @@ api.registerCli(
|
||||
);
|
||||
```
|
||||
|
||||
Використовуйте лише `commands`, коли вам не потрібна ледача реєстрація в кореневому CLI.
|
||||
Цей eager-шлях сумісності залишається підтримуваним, але він не встановлює
|
||||
placeholders на основі descriptor для ледачого завантаження під час парсингу.
|
||||
Використовуйте лише `commands`, коли вам не потрібна лінива реєстрація
|
||||
кореневого CLI. Цей eager-шлях сумісності залишається підтримуваним, але він
|
||||
не встановлює placeholder-и на основі дескрипторів для лінивого завантаження
|
||||
під час парсингу.
|
||||
|
||||
### Реєстрація CLI backend
|
||||
### Реєстрація CLI-бекенду
|
||||
|
||||
`api.registerCliBackend(...)` дає plugin змогу володіти config за замовчуванням для локального
|
||||
AI CLI backend, такого як `codex-cli`.
|
||||
`api.registerCliBackend(...)` дає змогу плагіну володіти типовою конфігурацією
|
||||
для локального AI CLI-бекенду, такого як `codex-cli`.
|
||||
|
||||
- `id` backend стає префіксом provider-а в model refs, таких як `codex-cli/gpt-5`.
|
||||
- `config` backend використовує ту саму форму, що й `agents.defaults.cliBackends.<id>`.
|
||||
- `id` бекенду стає префіксом провайдера в model ref на кшталт `codex-cli/gpt-5`.
|
||||
- `config` бекенду використовує ту саму форму, що й `agents.defaults.cliBackends.<id>`.
|
||||
- Конфігурація користувача все одно має пріоритет. OpenClaw зливає `agents.defaults.cliBackends.<id>` поверх
|
||||
значення plugin за замовчуванням перед запуском CLI.
|
||||
- Використовуйте `normalizeConfig`, коли backend потребує переписування для сумісності після злиття
|
||||
(наприклад, нормалізації старих форм прапорців).
|
||||
типового значення плагіна перед запуском CLI.
|
||||
- Використовуйте `normalizeConfig`, коли бекенду потрібні переписування сумісності після злиття
|
||||
(наприклад, для нормалізації старих форм прапорців).
|
||||
|
||||
### Ексклюзивні слоти
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `api.registerContextEngine(id, factory)` | Context engine (одночасно активний лише один). Зворотний виклик `assemble()` отримує `availableTools` і `citationsMode`, щоб engine міг адаптувати доповнення до prompt. |
|
||||
| `api.registerMemoryCapability(capability)` | Єдину memory capability |
|
||||
| `api.registerMemoryPromptSection(builder)` | Конструктор розділу prompt для пам’яті |
|
||||
| `api.registerMemoryFlushPlan(resolver)` | Resolver плану flush пам’яті |
|
||||
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime пам’яті |
|
||||
| Метод | Що він реєструє |
|
||||
| ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `api.registerContextEngine(id, factory)` | Context engine (одночасно активний лише один). Колбек `assemble()` отримує `availableTools` і `citationsMode`, щоб engine міг адаптувати доповнення до prompt. |
|
||||
| `api.registerMemoryCapability(capability)` | Уніфіковану можливість пам’яті |
|
||||
| `api.registerMemoryPromptSection(builder)` | Побудовник розділу prompt пам’яті |
|
||||
| `api.registerMemoryFlushPlan(resolver)` | Resolver плану flush пам’яті |
|
||||
| `api.registerMemoryRuntime(runtime)` | Адаптер runtime пам’яті |
|
||||
|
||||
### Адаптери embedding для пам’яті
|
||||
|
||||
| Method | Що реєструє |
|
||||
| ---------------------------------------------- | ---------------------------------------------- |
|
||||
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер embedding для пам’яті для активного plugin |
|
||||
| Метод | Що він реєструє |
|
||||
| --------------------------------------------- | -------------------------------------------- |
|
||||
| `api.registerMemoryEmbeddingProvider(adapter)` | Адаптер embedding пам’яті для активного плагіна |
|
||||
|
||||
- `registerMemoryCapability` — це рекомендований API ексклюзивного plugin пам’яті.
|
||||
- `registerMemoryCapability` також може надавати `publicArtifacts.listArtifacts(...)`,
|
||||
щоб companion plugins могли споживати експортовані артефакти пам’яті через
|
||||
`openclaw/plugin-sdk/memory-host-core` замість звернення до приватної
|
||||
структури конкретного plugin пам’яті.
|
||||
- `registerMemoryCapability` — рекомендований API ексклюзивного memory-plugin.
|
||||
- `registerMemoryCapability` також може експонувати `publicArtifacts.listArtifacts(...)`,
|
||||
щоб супутні плагіни могли споживати експортовані артефакти пам’яті через
|
||||
`openclaw/plugin-sdk/memory-host-core` замість звернення до приватного
|
||||
макета конкретного плагіна пам’яті.
|
||||
- `registerMemoryPromptSection`, `registerMemoryFlushPlan` і
|
||||
`registerMemoryRuntime` — це застаріло-сумісні API ексклюзивного plugin пам’яті.
|
||||
- `registerMemoryEmbeddingProvider` дає активному plugin пам’яті змогу реєструвати один
|
||||
або кілька id embedding adapter (наприклад, `openai`, `gemini` або
|
||||
користувацький id, визначений plugin).
|
||||
`registerMemoryRuntime` — це застаріло-сумісні API ексклюзивного memory-plugin.
|
||||
- `registerMemoryEmbeddingProvider` дає змогу активному memory-plugin зареєструвати
|
||||
один або кілька id адаптерів embedding (наприклад, `openai`, `gemini` або
|
||||
користувацький id, визначений плагіном).
|
||||
- Конфігурація користувача, така як `agents.defaults.memorySearch.provider` і
|
||||
`agents.defaults.memorySearch.fallback`, визначається відносно цих зареєстрованих
|
||||
id adapter-ів.
|
||||
id адаптерів.
|
||||
|
||||
### Події та життєвий цикл
|
||||
|
||||
| Method | Що робить |
|
||||
| -------------------------------------------- | ---------------------------- |
|
||||
| `api.on(hookName, handler, opts?)` | Типізований lifecycle hook |
|
||||
| `api.onConversationBindingResolved(handler)` | Зворотний виклик binding conversation |
|
||||
| Метод | Що він робить |
|
||||
| ------------------------------------------- | ---------------------------- |
|
||||
| `api.on(hookName, handler, opts?)` | Типізований хук життєвого циклу |
|
||||
| `api.onConversationBindingResolved(handler)` | Колбек визначення прив’язки розмови |
|
||||
|
||||
### Семантика рішень 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 бере dispatch на себе, handlers із нижчим пріоритетом і стандартний шлях dispatch моделі пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно будь-який handler встановлює це значення, handlers із нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: false }` вважається відсутністю рішення (так само, як якщо не вказувати `cancel`), а не перевизначенням.
|
||||
- `before_tool_call`: повернення `{ block: true }` є термінальним. Щойно якийсь обробник встановить його, обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_tool_call`: повернення `{ block: false }` трактується як відсутність рішення (так само, як і пропуск `block`), а не як перевизначення.
|
||||
- `before_install`: повернення `{ block: true }` є термінальним. Щойно якийсь обробник встановить його, обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_install`: повернення `{ block: false }` трактується як відсутність рішення (так само, як і пропуск `block`), а не як перевизначення.
|
||||
- `reply_dispatch`: повернення `{ handled: true, ... }` є термінальним. Щойно якийсь обробник візьме dispatch на себе, обробники з нижчим пріоритетом і типовий шлях dispatch моделі пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: true }` є термінальним. Щойно якийсь обробник встановить його, обробники з нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: повернення `{ cancel: false }` трактується як відсутність рішення (так само, як і пропуск `cancel`), а не як перевизначення.
|
||||
|
||||
### Поля об’єкта API
|
||||
|
||||
| Field | Type | Description |
|
||||
| ------------------------ | ------------------------- | ------------------------------------------------------------------------------------------- |
|
||||
| `api.id` | `string` | ID plugin |
|
||||
| `api.name` | `string` | Відображувана назва |
|
||||
| `api.version` | `string?` | Версія plugin (необов’язково) |
|
||||
| `api.description` | `string?` | Опис plugin (необов’язково) |
|
||||
| `api.source` | `string` | Шлях до джерела plugin |
|
||||
| `api.rootDir` | `string?` | Кореневий каталог plugin (необов’язково) |
|
||||
| `api.config` | `OpenClawConfig` | Поточний знімок config (активний знімок runtime у пам’яті, коли доступний) |
|
||||
| `api.pluginConfig` | `Record<string, unknown>` | Специфічна для plugin config з `plugins.entries.<id>.config` |
|
||||
| `api.runtime` | `PluginRuntime` | [Runtime helpers](/uk/plugins/sdk-runtime) |
|
||||
| `api.logger` | `PluginLogger` | Логер з областю видимості (`debug`, `info`, `warn`, `error`) |
|
||||
| `api.registrationMode` | `PluginRegistrationMode` | Поточний режим завантаження; `"setup-runtime"` — це легковаге вікно запуску/налаштування перед повним entry |
|
||||
| `api.resolvePath(input)` | `(string) => string` | Визначення шляху відносно кореня plugin |
|
||||
| Поле | Тип | Опис |
|
||||
| ------------------------ | ------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `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` | Логер з областю дії (`debug`, `info`, `warn`, `error`) |
|
||||
| `api.registrationMode` | `PluginRegistrationMode` | Поточний режим завантаження; `"setup-runtime"` — це полегшене вікно запуску/налаштування перед повним entry |
|
||||
| `api.resolvePath(input)` | `(string) => string` | Визначення шляху відносно кореня плагіна |
|
||||
|
||||
## Угода щодо внутрішніх модулів
|
||||
## Внутрішнє правило модулів
|
||||
|
||||
Усередині вашого plugin використовуйте локальні barrel-файли для внутрішніх імпортів:
|
||||
Усередині вашого плагіна використовуйте локальні barrel-файли для внутрішніх імпортів:
|
||||
|
||||
```
|
||||
my-plugin/
|
||||
api.ts # Публічні експорти для зовнішніх споживачів
|
||||
runtime-api.ts # Лише внутрішні runtime експорти
|
||||
index.ts # Точка входу plugin
|
||||
setup-entry.ts # Легка точка входу лише для налаштування (необов’язково)
|
||||
runtime-api.ts # Експорти runtime лише для внутрішнього використання
|
||||
index.ts # Точка входу плагіна
|
||||
setup-entry.ts # Полегшений вхід лише для налаштування (необов’язково)
|
||||
```
|
||||
|
||||
<Warning>
|
||||
Ніколи не імпортуйте власний plugin через `openclaw/plugin-sdk/<your-plugin>`
|
||||
у production code. Спрямовуйте внутрішні імпорти через `./api.ts` або
|
||||
Ніколи не імпортуйте власний плагін через `openclaw/plugin-sdk/<your-plugin>`
|
||||
у production-коді. Спрямовуйте внутрішні імпорти через `./api.ts` або
|
||||
`./runtime-api.ts`. Шлях SDK — це лише зовнішній контракт.
|
||||
</Warning>
|
||||
|
||||
Facade-loaded публічні поверхні bundled plugin (`api.ts`, `runtime-api.ts`,
|
||||
`index.ts`, `setup-entry.ts` та подібні публічні entry-файли) тепер віддають перевагу
|
||||
активному знімку runtime config, коли OpenClaw уже запущено. Якщо знімка runtime
|
||||
ще немає, вони повертаються до config-файлу на диску, шлях до якого було визначено.
|
||||
Публічні поверхні вбудованих плагінів, що завантажуються через facade
|
||||
(`api.ts`, `runtime-api.ts`, `index.ts`, `setup-entry.ts` та подібні публічні
|
||||
entry-файли), тепер віддають перевагу активному знімку конфігурації runtime,
|
||||
коли OpenClaw уже запущено. Якщо знімка runtime ще немає, вони переходять до
|
||||
резервного використання визначеного файла конфігурації на диску.
|
||||
|
||||
Provider plugins також можуть експонувати вузький локальний barrel контракту plugin, коли
|
||||
helper навмисно є специфічним для provider-а і ще не належить до загального підшляху SDK.
|
||||
Поточний bundled приклад: provider Anthropic зберігає свої Claude
|
||||
stream helper-и у власному публічному seam `api.ts` / `contract-api.ts` замість
|
||||
просування логіки Anthropic beta-header і `service_tier` у загальний
|
||||
контракт `plugin-sdk/*`.
|
||||
Плагіни провайдерів також можуть експонувати вузький локальний barrel-файл
|
||||
контракту плагіна, коли допоміжний засіб навмисно є специфічним для провайдера
|
||||
і ще не належить до загального підшляху SDK. Поточний вбудований приклад:
|
||||
провайдер Anthropic тримає свої допоміжні засоби потоку Claude у власному
|
||||
публічному шві `api.ts` / `contract-api.ts` замість просування логіки
|
||||
beta-header Anthropic і `service_tier` до загального контракту
|
||||
`plugin-sdk/*`.
|
||||
|
||||
Інші поточні bundled приклади:
|
||||
Інші поточні вбудовані приклади:
|
||||
|
||||
- `@openclaw/openai-provider`: `api.ts` експортує конструктори provider-ів,
|
||||
helper-и моделей за замовчуванням і конструктори realtime provider-ів
|
||||
- `@openclaw/openrouter-provider`: `api.ts` експортує конструктор provider-а, а також
|
||||
helper-и онбордингу/config
|
||||
- `@openclaw/openai-provider`: `api.ts` експортує побудовники провайдерів,
|
||||
допоміжні засоби типових моделей і побудовники провайдерів realtime
|
||||
- `@openclaw/openrouter-provider`: `api.ts` експортує побудовник провайдера та
|
||||
допоміжні засоби онбордингу/конфігурації
|
||||
|
||||
<Warning>
|
||||
Production code extension також має уникати імпортів `openclaw/plugin-sdk/<other-plugin>`.
|
||||
Якщо helper справді є спільним, просуньте його до нейтрального підшляху SDK,
|
||||
такого як `openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
|
||||
поверхні, орієнтованої на можливість, замість зв’язування двох plugins між собою.
|
||||
Production-код розширень також має уникати імпортів
|
||||
`openclaw/plugin-sdk/<other-plugin>`. Якщо допоміжний засіб справді є спільним,
|
||||
перенесіть його до нейтрального підшляху SDK, такого як
|
||||
`openclaw/plugin-sdk/speech`, `.../provider-model-shared` або іншої
|
||||
поверхні, орієнтованої на можливості, замість зв’язування двох плагінів між собою.
|
||||
</Warning>
|
||||
|
||||
## Пов’язане
|
||||
|
||||
- [Entry Points](/uk/plugins/sdk-entrypoints) — параметри `definePluginEntry` і `defineChannelPluginEntry`
|
||||
- [Runtime Helpers](/uk/plugins/sdk-runtime) — повний довідник простору імен `api.runtime`
|
||||
- [Setup and Config](/uk/plugins/sdk-setup) — пакування, маніфести, схеми config
|
||||
- [Setup and Config](/uk/plugins/sdk-setup) — пакування, маніфести, схеми конфігурації
|
||||
- [Testing](/uk/plugins/sdk-testing) — утиліти тестування та правила lint
|
||||
- [SDK Migration](/uk/plugins/sdk-migration) — міграція із застарілих поверхонь
|
||||
- [Plugin Internals](/uk/plugins/architecture) — глибока архітектура та модель можливостей
|
||||
- [SDK Migration](/uk/plugins/sdk-migration) — міграція з застарілих поверхонь
|
||||
- [Plugin Internals](/uk/plugins/architecture) — поглиблена архітектура та модель можливостей
|
||||
|
||||
Loading…
Reference in New Issue
Block a user