Міграція Plugin SDK
OpenClaw перейшов від широкого шару зворотної сумісності до сучасної архітектури plugin-ів із цілеспрямованими, задокументованими імпортами. Якщо ваш plugin було створено до появи нової архітектури, цей посібник допоможе вам виконати міграцію.Що змінюється
Стара система plugin-ів надавала дві широко відкриті поверхні, які дозволяли plugin-ам імпортувати все необхідне з однієї точки входу:openclaw/plugin-sdk/compat— один імпорт, який повторно експортував десятки допоміжних функцій. Його було запроваджено, щоб старіші hook-орієнтовані plugin-и продовжували працювати під час розробки нової архітектури plugin-ів.openclaw/extension-api— міст, який надавав plugin-ам прямий доступ до допоміжних засобів на боці хоста, наприклад до вбудованого засобу запуску агента.
Чому це змінилося
Старий підхід спричиняв проблеми:- Повільний запуск — імпорт однієї допоміжної функції завантажував десятки не пов’язаних між собою модулів
- Циклічні залежності — широкі повторні експорти спрощували створення циклів імпорту
- Неочевидна поверхня API — не було способу визначити, які експорти є стабільними, а які — внутрішніми
openclaw/plugin-sdk/\<subpath\>) є невеликим, самодостатнім модулем із чітким призначенням і задокументованим контрактом.
Застарілі зручні шви провайдерів для вбудованих каналів також зникли. Імпорти
на кшталт openclaw/plugin-sdk/slack, openclaw/plugin-sdk/discord,
openclaw/plugin-sdk/signal, openclaw/plugin-sdk/whatsapp,
допоміжні шви з брендуванням каналів і
openclaw/plugin-sdk/telegram-core були приватними скороченнями монорепозиторію, а не
стабільними контрактами plugin-ів. Натомість використовуйте вузькі узагальнені підшляхи SDK. Усередині робочого простору вбудованого plugin-а зберігайте допоміжні засоби, що належать провайдеру, у власному
api.ts або runtime-api.ts цього plugin-а.
Поточні приклади вбудованих провайдерів:
- Anthropic зберігає допоміжні засоби потокової обробки, специфічні для Claude, у власному шві
api.ts/contract-api.ts - OpenAI зберігає конструктори провайдерів, допоміжні засоби для моделей за замовчуванням і конструктори realtime-провайдерів у власному
api.ts - OpenRouter зберігає конструктор провайдера та допоміжні засоби для онбордингу/конфігурації у власному
api.ts
Як виконати міграцію
Перенесіть approval-native обробники на факти можливостей
Channel plugin-и з підтримкою approval тепер надають нативну поведінку approval через
approvalCapability.nativeRuntime разом зі спільним реєстром контексту середовища виконання.Основні зміни:- Замініть
approvalCapability.handler.loadRuntime(...)наapprovalCapability.nativeRuntime - Перенесіть auth/delivery, специфічні для approval, із застарілого зв’язування
plugin.auth/plugin.approvalsдоapprovalCapability ChannelPlugin.approvalsвилучено з публічного контракту channel plugin-а; перенесіть поля delivery/native/render доapprovalCapabilityplugin.authзалишається лише для потоків входу/виходу з каналу; approval auth hooks там більше не зчитуються ядром- Реєструйте об’єкти середовища виконання, що належать каналу, як-от клієнти, токени або Bolt
apps, через
openclaw/plugin-sdk/channel-runtime-context - Не надсилайте сповіщення про перенаправлення, що належать plugin-у, з нативних approval-обробників; тепер ядро саме відповідає за routed-elsewhere сповіщення на основі фактичних результатів delivery
- Коли передаєте
channelRuntimeдоcreateChannelManager(...), надавайте реальну поверхнюcreatePluginRuntime().channel. Часткові заглушки відхиляються.
/plugins/sdk-channel-plugins, щоб переглянути поточну
структуру можливостей approval.Перевірте резервну поведінку Windows wrapper
Якщо ваш plugin використовує Якщо ваш виклик не покладається навмисно на резервний перехід через shell, не встановлюйте
openclaw/plugin-sdk/windows-spawn, нерозв’язані Windows
wrappers .cmd/.bat тепер завершуються із закритою відмовою, якщо ви явно не передасте allowShellFallback: true.allowShellFallback і натомість обробляйте згенеровану помилку.Замініть їх на цілеспрямовані імпорти
Кожен експорт зі старої поверхні відповідає певному сучасному шляху імпорту:Для допоміжних засобів на боці хоста використовуйте інжектоване середовище виконання plugin-а замість прямого імпорту:Такий самий шаблон застосовується й до інших допоміжних засобів застарілого моста:
| Старий імпорт | Сучасний еквівалент |
|---|---|
resolveAgentDir | api.runtime.agent.resolveAgentDir |
resolveAgentWorkspaceDir | api.runtime.agent.resolveAgentWorkspaceDir |
resolveAgentIdentity | api.runtime.agent.resolveAgentIdentity |
resolveThinkingDefault | api.runtime.agent.resolveThinkingDefault |
resolveAgentTimeoutMs | api.runtime.agent.resolveAgentTimeoutMs |
ensureAgentWorkspace | api.runtime.agent.ensureAgentWorkspace |
| session store helpers | api.runtime.agent.session.* |
Довідник шляхів імпорту
Таблиця поширених шляхів імпорту
Таблиця поширених шляхів імпорту
| Import path | Призначення | Ключові експорти |
|---|---|---|
plugin-sdk/plugin-entry | Канонічний допоміжний засіб точки входу plugin-а | definePluginEntry |
plugin-sdk/core | Застарілий узагальнений повторний експорт для визначень/конструкторів точок входу каналу | defineChannelPluginEntry, createChatChannelPlugin |
plugin-sdk/config-schema | Експорт кореневої схеми конфігурації | OpenClawSchema |
plugin-sdk/provider-entry | Допоміжний засіб точки входу для одного провайдера | defineSingleProviderPluginEntry |
plugin-sdk/channel-core | Цілеспрямовані визначення та конструктори точок входу каналу | defineChannelPluginEntry, defineSetupPluginEntry, createChatChannelPlugin, createChannelPluginBase |
plugin-sdk/setup | Спільні допоміжні засоби майстра налаштування | Запити allowlist, конструктори стану налаштування |
plugin-sdk/setup-runtime | Допоміжні засоби середовища виконання під час налаштування | Безпечні для імпорту адаптери патчів налаштування, допоміжні засоби для приміток пошуку, promptResolvedAllowFrom, splitSetupEntries, делеговані проксі налаштування |
plugin-sdk/setup-adapter-runtime | Допоміжні засоби адаптера налаштування | createEnvPatchedAccountSetupAdapter |
plugin-sdk/setup-tools | Допоміжні засоби інструментів налаштування | formatCliCommand, detectBinary, extractArchive, resolveBrewExecutable, formatDocsLink, CONFIG_DIR |
plugin-sdk/account-core | Допоміжні засоби для кількох облікових записів | Допоміжні засоби списку/конфігурації/гейтів дій облікових записів |
plugin-sdk/account-id | Допоміжні засоби account-id | DEFAULT_ACCOUNT_ID, нормалізація account-id |
plugin-sdk/account-resolution | Допоміжні засоби пошуку облікових записів | Допоміжні засоби пошуку облікового запису + резервного значення за замовчуванням |
plugin-sdk/account-helpers | Вузькі допоміжні засоби облікових записів | Допоміжні засоби списку облікових записів/дій облікового запису |
plugin-sdk/channel-setup | Адаптери майстра налаштування | createOptionalChannelSetupSurface, createOptionalChannelSetupAdapter, createOptionalChannelSetupWizard, а також DEFAULT_ACCOUNT_ID, createTopLevelChannelDmPolicy, setSetupChannelEnabled, splitSetupEntries |
plugin-sdk/channel-pairing | Примітиви pairing для DM | createChannelPairingController |
plugin-sdk/channel-reply-pipeline | Префікс reply + wiring індикатора набору | createChannelReplyPipeline |
plugin-sdk/channel-config-helpers | Фабрики адаптерів конфігурації | createHybridChannelConfigAdapter |
plugin-sdk/channel-config-schema | Конструктори схем конфігурації | Типи схем конфігурації каналу |
plugin-sdk/telegram-command-config | Допоміжні засоби конфігурації команд Telegram | Нормалізація імен команд, обрізання описів, перевірка дублікатів/конфліктів |
plugin-sdk/channel-policy | Визначення політик груп/DM | resolveChannelGroupRequireMention |
plugin-sdk/channel-lifecycle | Відстеження стану облікового запису | createAccountStatusSink |
plugin-sdk/inbound-envelope | Допоміжні засоби вхідних envelope | Спільні допоміжні засоби маршрутизації + побудови envelope |
plugin-sdk/inbound-reply-dispatch | Допоміжні засоби вхідних reply | Спільні допоміжні засоби запису та dispatch |
plugin-sdk/messaging-targets | Розбір цілей повідомлень | Допоміжні засоби розбору/зіставлення цілей |
plugin-sdk/outbound-media | Допоміжні засоби вихідних медіа | Спільне завантаження вихідних медіа |
plugin-sdk/outbound-runtime | Допоміжні засоби вихідного середовища виконання | Допоміжні засоби outbound identity/send delegate і планування payload |
plugin-sdk/thread-bindings-runtime | Допоміжні засоби прив’язок thread | Допоміжні засоби життєвого циклу й адаптера прив’язок thread |
plugin-sdk/agent-media-payload | Застарілі допоміжні засоби media payload | Конструктор media payload агента для застарілих макетів полів |
plugin-sdk/channel-runtime | Застарілий шім сумісності | Лише застарілі утиліти середовища виконання каналу |
plugin-sdk/channel-send-result | Типи результатів send | Типи результатів reply |
plugin-sdk/runtime-store | Постійне сховище plugin-а | createPluginRuntimeStore |
plugin-sdk/runtime | Широкі допоміжні засоби середовища виконання | Допоміжні засоби runtime/logging/backup/встановлення plugin-ів |
plugin-sdk/runtime-env | Вузькі допоміжні засоби runtime env | Logger/runtime env, timeout, retry та допоміжні засоби backoff |
plugin-sdk/plugin-runtime | Спільні допоміжні засоби середовища виконання plugin-а | Допоміжні засоби команд/hooks/http/interactive plugin-а |
plugin-sdk/hook-runtime | Допоміжні засоби конвеєра hook | Спільні допоміжні засоби конвеєра Webhook/внутрішніх hook |
plugin-sdk/lazy-runtime | Допоміжні засоби lazy runtime | createLazyRuntimeModule, createLazyRuntimeMethod, createLazyRuntimeMethodBinder, createLazyRuntimeNamedExport, createLazyRuntimeSurface |
plugin-sdk/process-runtime | Допоміжні засоби process | Спільні допоміжні засоби exec |
plugin-sdk/cli-runtime | Допоміжні засоби середовища виконання CLI | Форматування команд, очікування, допоміжні засоби версій |
plugin-sdk/gateway-runtime | Допоміжні засоби Gateway | Допоміжні засоби клієнта Gateway та патчів стану каналу |
plugin-sdk/config-runtime | Допоміжні засоби конфігурації | Допоміжні засоби завантаження/запису конфігурації |
plugin-sdk/telegram-command-config | Допоміжні засоби команд Telegram | Стабільні при fallback допоміжні засоби перевірки команд Telegram, коли поверхня контракту вбудованого Telegram недоступна |
plugin-sdk/approval-runtime | Допоміжні засоби prompt approval | Допоміжні засоби payload exec/plugin approval, capability/profile approval, маршрутизації/середовища виконання native approval |
plugin-sdk/approval-auth-runtime | Допоміжні засоби auth для approval | Визначення approver, auth дій у тому самому чаті |
plugin-sdk/approval-client-runtime | Допоміжні засоби клієнта approval | Допоміжні засоби profile/filter native exec approval |
plugin-sdk/approval-delivery-runtime | Допоміжні засоби delivery для approval | Адаптери capability/delivery native approval |
plugin-sdk/approval-gateway-runtime | Допоміжні засоби Gateway для approval | Спільний допоміжний засіб визначення Gateway для approval |
plugin-sdk/approval-handler-adapter-runtime | Допоміжні засоби адаптера approval | Полегшені допоміжні засоби завантаження адаптера native approval для гарячих точок входу каналу |
plugin-sdk/approval-handler-runtime | Допоміжні засоби обробника approval | Ширші допоміжні засоби середовища виконання обробника approval; віддавайте перевагу вужчим швам adapter/gateway, якщо їх достатньо |
plugin-sdk/approval-native-runtime | Допоміжні засоби цілей approval | Допоміжні засоби прив’язки цілі/облікового запису native approval |
plugin-sdk/approval-reply-runtime | Допоміжні засоби reply для approval | Допоміжні засоби payload reply exec/plugin approval |
plugin-sdk/channel-runtime-context | Допоміжні засоби runtime-context каналу | Узагальнені допоміжні засоби register/get/watch для runtime-context каналу |
plugin-sdk/security-runtime | Допоміжні засоби безпеки | Спільні допоміжні засоби trust, DM gating, external-content і збирання секретів |
plugin-sdk/ssrf-policy | Допоміжні засоби політики SSRF | Допоміжні засоби allowlist хостів і політики приватної мережі |
plugin-sdk/ssrf-runtime | Допоміжні засоби середовища виконання SSRF | Допоміжні засоби pinned-dispatcher, guarded fetch, політики SSRF |
plugin-sdk/collection-runtime | Допоміжні засоби обмеженого кешу | pruneMapToMaxSize |
plugin-sdk/diagnostic-runtime | Допоміжні засоби діагностичного gating | isDiagnosticFlagEnabled, isDiagnosticsEnabled |
plugin-sdk/error-runtime | Допоміжні засоби форматування помилок | formatUncaughtError, isApprovalNotFoundError, допоміжні засоби графа помилок |
plugin-sdk/fetch-runtime | Допоміжні засоби обгорнутого fetch/proxy | resolveFetch, допоміжні засоби proxy |
plugin-sdk/host-runtime | Допоміжні засоби нормалізації хоста | normalizeHostname, normalizeScpRemoteHost |
plugin-sdk/retry-runtime | Допоміжні засоби retry | RetryConfig, retryAsync, виконавці політик |
plugin-sdk/allow-from | Форматування allowlist | formatAllowFromLowercase |
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 | Inbound dispatch, Heartbeat, планувальник reply, chunking |
plugin-sdk/reply-dispatch-runtime | Вузькі допоміжні засоби dispatch reply | Допоміжні засоби finalize + dispatch провайдера |
plugin-sdk/reply-history | Допоміжні засоби історії reply | buildHistoryContext, buildPendingHistoryContextFromMap, recordPendingHistoryEntry, clearHistoryEntriesIfEnabled |
plugin-sdk/reply-reference | Планування посилань reply | createReplyReferencePlanner |
plugin-sdk/reply-chunking | Допоміжні засоби chunk для reply | Допоміжні засоби chunking тексту/markdown |
plugin-sdk/session-store-runtime | Допоміжні засоби сховища сесій | Допоміжні засоби шляху сховища + updated-at |
plugin-sdk/state-paths | Допоміжні засоби шляхів стану | Допоміжні засоби каталогів стану та OAuth |
plugin-sdk/routing | Допоміжні засоби маршрутизації/session-key | resolveAgentRoute, buildAgentSessionKey, resolveDefaultAgentBoundAccountId, допоміжні засоби нормалізації session-key |
plugin-sdk/status-helpers | Допоміжні засоби стану каналу | Конструктори зведення стану каналу/облікового запису, значення стану runtime за замовчуванням, допоміжні засоби метаданих issue |
plugin-sdk/target-resolver-runtime | Допоміжні засоби визначення цілей | Спільні допоміжні засоби target resolver |
plugin-sdk/string-normalization-runtime | Допоміжні засоби нормалізації рядків | Допоміжні засоби нормалізації slug/рядків |
plugin-sdk/request-url | Допоміжні засоби URL запиту | Витягування рядкових URL із вхідних даних, подібних до request |
plugin-sdk/run-command | Допоміжні засоби команд із часовими обмеженнями | Запускач команд із нормалізованими stdout/stderr |
plugin-sdk/param-readers | Читачі параметрів | Загальні читачі параметрів tool/CLI |
plugin-sdk/tool-payload | Витягування payload tool | Витягування нормалізованих payload з об’єктів результатів tool |
plugin-sdk/tool-send | Витягування send tool | Витягування канонічних полів цілі send з аргументів tool |
plugin-sdk/temp-path | Допоміжні засоби тимчасових шляхів | Спільні допоміжні засоби шляхів тимчасового завантаження |
plugin-sdk/logging-core | Допоміжні засоби логування | Допоміжні засоби logger підсистеми та редагування |
plugin-sdk/markdown-table-runtime | Допоміжні засоби markdown-таблиць | Допоміжні засоби режиму markdown-таблиць |
plugin-sdk/reply-payload | Типи reply повідомлень | Типи payload reply |
plugin-sdk/provider-setup | Кураторські допоміжні засоби налаштування локальних/self-hosted провайдерів | Допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
plugin-sdk/self-hosted-provider-setup | Цілеспрямовані допоміжні засоби налаштування OpenAI-сумісних self-hosted провайдерів | Ті самі допоміжні засоби виявлення/конфігурації self-hosted провайдерів |
plugin-sdk/provider-auth-runtime | Допоміжні засоби auth середовища виконання провайдера | Допоміжні засоби визначення API-ключа під час виконання |
plugin-sdk/provider-auth-api-key | Допоміжні засоби налаштування API-ключа провайдера | Допоміжні засоби онбордингу/запису профілю API-ключа |
plugin-sdk/provider-auth-result | Допоміжні засоби результату auth провайдера | Стандартний конструктор результату auth OAuth |
plugin-sdk/provider-auth-login | Допоміжні засоби інтерактивного входу провайдера | Спільні допоміжні засоби інтерактивного входу |
plugin-sdk/provider-env-vars | Допоміжні засоби env var провайдера | Допоміжні засоби пошуку env var auth провайдера |
plugin-sdk/provider-model-shared | Спільні допоміжні засоби моделей/replay провайдера | ProviderReplayFamily, buildProviderReplayFamilyHooks, normalizeModelCompat, спільні конструктори політики 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 | Допоміжні засоби конфігурації web-search провайдера | Вузькі допоміжні засоби конфігурації/облікових даних web-search для провайдерів, яким не потрібне зв’язування ввімкнення plugin-а |
plugin-sdk/provider-web-search-contract | Допоміжні засоби контракту web-search провайдера | Вузькі допоміжні засоби контракту конфігурації/облікових даних web-search, як-от createWebSearchProviderContractFields, enablePluginInConfig, resolveProviderWebSearchPluginConfig і scoped setters/getters облікових даних |
plugin-sdk/provider-web-search | Допоміжні засоби web-search провайдера | Допоміжні засоби реєстрації/кешу/runtime web-search провайдера |
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 | Допоміжні засоби обгорток stream провайдера | ProviderStreamFamily, buildProviderStreamFamilyHooks, composeProviderStreamWrappers, типи обгорток stream і спільні допоміжні засоби обгорток Anthropic/Bedrock/Google/Kilocode/Moonshot/OpenAI/OpenRouter/Z.A.I/MiniMax/Copilot |
plugin-sdk/provider-transport-runtime | Допоміжні засоби транспорту провайдера | Нативні допоміжні засоби транспорту провайдера, як-от guarded fetch, перетворення transport message і writable transport event streams |
plugin-sdk/keyed-async-queue | Упорядкована async-черга | KeyedAsyncQueue |
plugin-sdk/media-runtime | Спільні допоміжні засоби медіа | Допоміжні засоби fetch/transform/store медіа, а також конструктори media payload |
plugin-sdk/media-generation-runtime | Спільні допоміжні засоби генерації медіа | Спільні допоміжні засоби failover, вибору candidate та повідомлень про відсутню модель для генерації зображень/відео/музики |
plugin-sdk/media-understanding | Допоміжні засоби media-understanding | Типи провайдера media understanding, а також експорти допоміжних засобів зображень/аудіо для провайдерів |
plugin-sdk/text-runtime | Спільні допоміжні засоби тексту | Видалення тексту, видимого асистенту, допоміжні засоби render/chunking/table для markdown, допоміжні засоби редагування, допоміжні засоби тегів директив, утиліти безпечного тексту та пов’язані допоміжні засоби тексту/логування |
plugin-sdk/text-chunking | Допоміжні засоби chunking тексту | Допоміжний засіб chunking вихідного тексту |
plugin-sdk/speech | Допоміжні засоби мовлення | Типи провайдера мовлення, а також допоміжні засоби директив, реєстру й валідації для провайдерів |
plugin-sdk/speech-core | Спільне ядро мовлення | Типи провайдера мовлення, реєстр, директиви, нормалізація |
plugin-sdk/realtime-transcription | Допоміжні засоби realtime-транскрипції | Типи провайдера та допоміжні засоби реєстру |
plugin-sdk/realtime-voice | Допоміжні засоби realtime-голосу | Типи провайдера та допоміжні засоби реєстру |
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 | Допоміжні засоби інтерактивних reply | Нормалізація/редукція payload інтерактивних reply |
plugin-sdk/channel-config-primitives | Примітиви конфігурації каналу | Вузькі примітиви config-schema каналу |
plugin-sdk/channel-config-writes | Допоміжні засоби запису конфігурації каналу | Допоміжні засоби авторизації запису конфігурації каналу |
plugin-sdk/channel-plugin-common | Спільний prelude каналу | Експорти спільного prelude channel plugin-а |
plugin-sdk/channel-status | Допоміжні засоби стану каналу | Спільні допоміжні засоби snapshot/summary стану каналу |
plugin-sdk/allowlist-config-edit | Допоміжні засоби конфігурації allowlist | Допоміжні засоби редагування/читання конфігурації allowlist |
plugin-sdk/group-access | Допоміжні засоби доступу до груп | Спільні допоміжні засоби рішень щодо group-access |
plugin-sdk/direct-dm | Допоміжні засоби прямого DM | Спільні допоміжні засоби auth/guard для прямого DM |
plugin-sdk/extension-shared | Спільні допоміжні засоби extension | Примітиви допоміжних засобів passive-channel/status і ambient proxy |
plugin-sdk/webhook-targets | Допоміжні засоби цілей Webhook | Допоміжні засоби реєстру цілей Webhook та встановлення маршрутів |
plugin-sdk/webhook-path | Допоміжні засоби шляхів Webhook | Допоміжні засоби нормалізації шляхів Webhook |
plugin-sdk/web-media | Спільні допоміжні засоби web media | Допоміжні засоби завантаження віддалених/локальних медіа |
plugin-sdk/zod | Повторний експорт Zod | Повторно експортований zod для споживачів Plugin SDK |
plugin-sdk/memory-core | Допоміжні засоби вбудованого memory-core | Поверхня допоміжних засобів менеджера пам’яті/конфігурації/файлів/CLI |
plugin-sdk/memory-core-engine-runtime | Фасад середовища виконання рушія пам’яті | Фасад середовища виконання індексу/пошуку пам’яті |
plugin-sdk/memory-core-host-engine-foundation | Базовий рушій хоста пам’яті | Експорти базового рушія хоста пам’яті |
plugin-sdk/memory-core-host-engine-embeddings | Рушій embedding хоста пам’яті | Контракти embedding пам’яті, доступ до реєстру, локальний провайдер і узагальнені допоміжні засоби batch/remote; конкретні віддалені провайдери розміщуються у plugin-ах, яким вони належать |
plugin-sdk/memory-core-host-engine-qmd | Рушій QMD хоста пам’яті | Експорти рушія QMD хоста пам’яті |
plugin-sdk/memory-core-host-engine-storage | Рушій сховища хоста пам’яті | Експорти рушія сховища хоста пам’яті |
plugin-sdk/memory-core-host-multimodal | Допоміжні засоби multimodal хоста пам’яті | Допоміжні засоби multimodal хоста пам’яті |
plugin-sdk/memory-core-host-query | Допоміжні засоби query хоста пам’яті | Допоміжні засоби 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 хоста пам’яті | Допоміжні засоби середовища виконання CLI хоста пам’яті |
plugin-sdk/memory-core-host-runtime-core | Основне середовище виконання хоста пам’яті | Основні допоміжні засоби середовища виконання хоста пам’яті |
plugin-sdk/memory-core-host-runtime-files | Допоміжні засоби файлів/runtime хоста пам’яті | Допоміжні засоби файлів/runtime хоста пам’яті |
plugin-sdk/memory-host-core | Псевдонім основного середовища виконання хоста пам’яті | Незалежний від постачальника псевдонім для основних допоміжних засобів середовища виконання хоста пам’яті |
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 | Фасад пошуку Active Memory | Лінивий фасад середовища виконання менеджера пошуку active-memory |
plugin-sdk/memory-host-status | Псевдонім стану хоста пам’яті | Незалежний від постачальника псевдонім для допоміжних засобів стану хоста пам’яті |
plugin-sdk/memory-lancedb | Допоміжні засоби вбудованого memory-lancedb | Поверхня допоміжних засобів memory-lancedb |
plugin-sdk/testing | Утиліти тестування | Допоміжні засоби тестування та mocks |
scripts/lib/plugin-sdk-entrypoints.json.
Цей список усе ще містить деякі шви допоміжних засобів вбудованих plugin-ів, як-от
plugin-sdk/feishu, plugin-sdk/feishu-setup, plugin-sdk/zalo,
plugin-sdk/zalo-setup і plugin-sdk/matrix*. Вони й надалі експортуються для
підтримки та сумісності вбудованих plugin-ів, але навмисно
не включені до поширеної таблиці міграції й не є рекомендованою ціллю для
нового коду plugin-ів.
Те саме правило застосовується до інших сімейств допоміжних засобів вбудованих plugin-ів, таких як:
- допоміжні засоби підтримки браузера:
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,plugin-sdk/zalouser,plugin-sdk/bluebubbles*,plugin-sdk/mattermost*,plugin-sdk/msteams,plugin-sdk/nextcloud-talk,plugin-sdk/nostr,plugin-sdk/tlon,plugin-sdk/twitch,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.
Використовуйте найвужчий імпорт, який відповідає завданню. Якщо ви не можете знайти експорт,
перевірте код у src/plugin-sdk/ або запитайте в Discord.
Графік вилучення
| Коли | Що відбувається |
|---|---|
| Зараз | Застарілі поверхні генерують попередження під час виконання |
| Наступний мажорний випуск | Застарілі поверхні буде вилучено; plugin-и, які досі їх використовують, перестануть працювати |
Тимчасове приглушення попереджень
Встановіть ці змінні середовища, поки працюєте над міграцією:Пов’язане
- Початок роботи — створіть свій перший plugin
- Огляд SDK — повний довідник імпорту підшляхів
- Channel Plugins — створення channel plugin-ів
- Provider Plugins — створення provider plugin-ів
- Внутрішня будова plugin-ів — глибокий огляд архітектури
- Маніфест plugin-а — довідник схеми маніфесту