chore(i18n): refresh uk translations
This commit is contained in:
parent
cb3a5a463b
commit
fbfb77aa4e
@ -2,24 +2,20 @@
|
||||
read_when:
|
||||
- Встановлення або налаштування плагінів
|
||||
- Розуміння правил виявлення та завантаження плагінів
|
||||
- Робота з наборами плагінів, сумісними з Codex/Claude
|
||||
- Робота з сумісними з Codex/Claude наборами плагінів
|
||||
sidebarTitle: Install and Configure
|
||||
summary: Встановлюйте, налаштовуйте та керуйте плагінами OpenClaw
|
||||
summary: Встановлення, налаштування та керування плагінами OpenClaw
|
||||
title: Плагіни
|
||||
x-i18n:
|
||||
generated_at: "2026-04-26T10:04:28Z"
|
||||
generated_at: "2026-04-26T10:15:19Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: ecc6920ddc8c1a95cd817ea3535c7ea215ed70cbdc30e9589232c43d022791f0
|
||||
source_hash: e88fd1576a4deefabea592a62da93fdaa41234aee8e5a28b0b0e16e41a53625f
|
||||
source_path: tools/plugin.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
Плагіни розширюють OpenClaw новими можливостями: канали, постачальники моделей,
|
||||
каркаси агентів, інструменти, Skills, мовлення, транскрипція в реальному часі, голос у реальному
|
||||
часі, розуміння медіа, генерація зображень, генерація відео, отримання даних із вебу, вебпошук
|
||||
та інше. Деякі плагіни є **core** (постачаються разом з OpenClaw), інші —
|
||||
**external** (опубліковані спільнотою в npm).
|
||||
Плагіни розширюють OpenClaw новими можливостями: канали, постачальники моделей, каркаси агентів, інструменти, Skills, мовлення, транскрипція в реальному часі, голос у реальному часі, розуміння медіа, генерація зображень, генерація відео, отримання вебданих, вебпошук тощо. Деякі плагіни є **core** (постачаються разом з OpenClaw), інші — **external** (опубліковані спільнотою в npm).
|
||||
|
||||
## Швидкий старт
|
||||
|
||||
@ -30,7 +26,7 @@ x-i18n:
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="Установіть плагін">
|
||||
<Step title="Встановіть плагін">
|
||||
```bash
|
||||
# З npm
|
||||
openclaw plugins install @openclaw/voice-call
|
||||
@ -47,12 +43,12 @@ x-i18n:
|
||||
openclaw gateway restart
|
||||
```
|
||||
|
||||
Потім налаштуйте в `plugins.entries.\<id\>.config` у вашому файлі конфігурації.
|
||||
Потім налаштуйте його в `plugins.entries.\<id\>.config` у вашому файлі конфігурації.
|
||||
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
Якщо ви надаєте перевагу керуванню прямо в чаті, увімкніть `commands.plugins: true` і використовуйте:
|
||||
Якщо ви віддаєте перевагу керуванню безпосередньо в чаті, увімкніть `commands.plugins: true` і використовуйте:
|
||||
|
||||
```text
|
||||
/plugin install clawhub:@openclaw/voice-call
|
||||
@ -60,62 +56,82 @@ x-i18n:
|
||||
/plugin enable voice-call
|
||||
```
|
||||
|
||||
Шлях установлення використовує той самий механізм розв’язання, що й CLI: локальний
|
||||
шлях/архів, явний `clawhub:<pkg>` або специфікація пакета без префікса (спочатку ClawHub, потім резервний перехід на npm).
|
||||
Шлях встановлення використовує той самий механізм визначення, що й CLI: локальний шлях/архів, явний
|
||||
`clawhub:<pkg>` або специфікація пакета без префікса (спочатку ClawHub, потім резервний варіант через npm).
|
||||
|
||||
Якщо конфігурація некоректна, установлення зазвичай безпечно завершується з відмовою та спрямовує вас до
|
||||
`openclaw doctor --fix`. Єдиний виняток для відновлення — вузький шлях
|
||||
перевстановлення вбудованого плагіна для плагінів, які підтримують
|
||||
Якщо конфігурація недійсна, встановлення зазвичай безпечно завершується з відмовою та вказує вам на
|
||||
`openclaw doctor --fix`. Єдиний виняток для відновлення — це вузький шлях перевстановлення вбудованого плагіна
|
||||
для плагінів, які підтримують
|
||||
`openclaw.install.allowInvalidConfigRecovery`.
|
||||
|
||||
Пакетні інсталяції OpenClaw не виконують завчасне встановлення всього дерева
|
||||
залежностей середовища виконання для кожного вбудованого плагіна. Коли вбудований плагін,
|
||||
що належить OpenClaw, активний через конфігурацію плагіна, застарілу конфігурацію каналу
|
||||
або маніфест із увімкненням за замовчуванням, під час запуску відновлюються
|
||||
лише оголошені залежності середовища виконання цього плагіна, перш ніж його буде імпортовано.
|
||||
Сам по собі збережений стан автентифікації каналу не активує вбудований канал для
|
||||
відновлення залежностей середовища виконання Gateway під час запуску.
|
||||
У пакетних інсталяціях OpenClaw дерево залежностей середовища виконання кожного вбудованого плагіна не встановлюється завчасно.
|
||||
Коли вбудований плагін, що належить OpenClaw, активний через конфігурацію плагіна,
|
||||
застарілу конфігурацію каналу або маніфест із увімкненням за замовчуванням, під час запуску
|
||||
відновлюються лише оголошені залежності середовища виконання цього плагіна перед його імпортом.
|
||||
Сам по собі збережений стан автентифікації каналу не активує вбудований канал для відновлення залежностей
|
||||
середовища виконання під час запуску Gateway.
|
||||
Явне вимкнення все одно має пріоритет: `plugins.entries.<id>.enabled: false`,
|
||||
`plugins.deny`, `plugins.enabled: false` і `channels.<id>.enabled: false`
|
||||
запобігають автоматичному відновленню вбудованих залежностей середовища виконання
|
||||
для цього плагіна/каналу.
|
||||
Непорожній `plugins.allow` також обмежує відновлення вбудованих залежностей середовища виконання
|
||||
для вбудованих плагінів, увімкнених за замовчуванням; явне ввімкнення вбудованого каналу
|
||||
(`channels.<id>.enabled: true`) усе ще може відновити залежності плагіна цього каналу.
|
||||
External-плагіни та власні шляхи завантаження, як і раніше, потрібно встановлювати через
|
||||
запобігають автоматичному відновленню залежностей середовища виконання для цього вбудованого плагіна/каналу.
|
||||
Непорожній `plugins.allow` також обмежує відновлення залежностей середовища виконання
|
||||
для вбудованих плагінів, увімкнених за замовчуванням; явне ввімкнення вбудованого каналу (`channels.<id>.enabled: true`) усе ще може
|
||||
відновити залежності плагіна цього каналу.
|
||||
External-плагіни та користувацькі шляхи завантаження все одно потрібно встановлювати через
|
||||
`openclaw plugins install`.
|
||||
|
||||
## Типи плагінів
|
||||
|
||||
OpenClaw розпізнає два формати плагінів:
|
||||
|
||||
| Формат | Як це працює | Приклади |
|
||||
| ---------- | ---------------------------------------------------------------- | ------------------------------------------------------ |
|
||||
| **Native** | `openclaw.plugin.json` + модуль середовища виконання; виконується в межах процесу | Офіційні плагіни, npm-пакети спільноти |
|
||||
| Формат | Як це працює | Приклади |
|
||||
| ---------- | ------------------------------------------------------------------ | ------------------------------------------------------ |
|
||||
| **Native** | `openclaw.plugin.json` + модуль середовища виконання; виконується в тому самому процесі | Офіційні плагіни, пакети npm від спільноти |
|
||||
| **Bundle** | Сумісне з Codex/Claude/Cursor компонування; зіставляється з можливостями OpenClaw | `.codex-plugin/`, `.claude-plugin/`, `.cursor-plugin/` |
|
||||
|
||||
Обидва відображаються в `openclaw plugins list`. Докладніше про набори див. у [Набори плагінів](/uk/plugins/bundles).
|
||||
|
||||
Якщо ви пишете native-плагін, почніть із [Створення плагінів](/uk/plugins/building-plugins)
|
||||
та [Огляд Plugin SDK](/uk/plugins/sdk-overview).
|
||||
та [Огляду Plugin SDK](/uk/plugins/sdk-overview).
|
||||
|
||||
## Точки входу пакета
|
||||
|
||||
Пакети npm native-плагінів повинні оголошувати `openclaw.extensions` у `package.json`.
|
||||
Кожен запис має залишатися в межах каталогу пакета та вказувати на доступний для читання
|
||||
файл середовища виконання або на вихідний файл TypeScript із виведеним побудованим JavaScript-аналогом,
|
||||
наприклад `src/index.ts` до `dist/index.js`.
|
||||
|
||||
Використовуйте `openclaw.runtimeExtensions`, коли опубліковані файли середовища виконання не розміщені за
|
||||
тими самими шляхами, що й вихідні записи. Якщо `runtimeExtensions` присутній, він має містити
|
||||
рівно один запис для кожного запису в `extensions`. Списки, що не збігаються, призводять до помилки встановлення та
|
||||
виявлення плагіна, а не до безшумного резервного переходу до шляхів вихідного коду.
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "@acme/openclaw-plugin",
|
||||
"openclaw": {
|
||||
"extensions": ["./src/index.ts"],
|
||||
"runtimeExtensions": ["./dist/index.js"]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Офіційні плагіни
|
||||
|
||||
### Доступні для встановлення (npm)
|
||||
|
||||
| Плагін | Пакет | Документація |
|
||||
| --------------- | --------------------- | ------------------------------------ |
|
||||
| Matrix | `@openclaw/matrix` | [Matrix](/uk/channels/matrix) |
|
||||
| Microsoft Teams | `@openclaw/msteams` | [Microsoft Teams](/uk/channels/msteams) |
|
||||
| Nostr | `@openclaw/nostr` | [Nostr](/uk/channels/nostr) |
|
||||
| Voice Call | `@openclaw/voice-call` | [Voice Call](/uk/plugins/voice-call) |
|
||||
| Zalo | `@openclaw/zalo` | [Zalo](/uk/channels/zalo) |
|
||||
| Zalo Personal | `@openclaw/zalouser` | [Zalo Personal](/uk/plugins/zalouser) |
|
||||
| Плагін | Пакет | Документація |
|
||||
| --------------- | ---------------------- | ------------------------------------ |
|
||||
| Matrix | `@openclaw/matrix` | [Matrix](/uk/channels/matrix) |
|
||||
| Microsoft Teams | `@openclaw/msteams` | [Microsoft Teams](/uk/channels/msteams) |
|
||||
| Nostr | `@openclaw/nostr` | [Nostr](/uk/channels/nostr) |
|
||||
| Voice Call | `@openclaw/voice-call` | [Voice Call](/uk/plugins/voice-call) |
|
||||
| Zalo | `@openclaw/zalo` | [Zalo](/uk/channels/zalo) |
|
||||
| Zalo Personal | `@openclaw/zalouser` | [Zalo Personal](/uk/plugins/zalouser) |
|
||||
|
||||
### Core (постачаються разом з OpenClaw)
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Постачальники моделей (увімкнено за замовчуванням)">
|
||||
<Accordion title="Постачальники моделей (увімкнені за замовчуванням)">
|
||||
`anthropic`, `byteplus`, `cloudflare-ai-gateway`, `github-copilot`, `google`,
|
||||
`huggingface`, `kilocode`, `kimi-coding`, `minimax`, `mistral`, `qwen`,
|
||||
`moonshot`, `nvidia`, `openai`, `opencode`, `opencode-go`, `openrouter`,
|
||||
@ -124,17 +140,17 @@ OpenClaw розпізнає два формати плагінів:
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Плагіни пам’яті">
|
||||
- `memory-core` — вбудований пошук у пам’яті (за замовчуванням через `plugins.slots.memory`)
|
||||
- `memory-lancedb` — довготривала пам’ять зі встановленням на вимогу з автоматичним пригадуванням/захопленням (установіть `plugins.slots.memory = "memory-lancedb"`)
|
||||
- `memory-core` — вбудований пошук у пам’яті (типово через `plugins.slots.memory`)
|
||||
- `memory-lancedb` — довготривала пам’ять із встановленням на вимогу та автоматичним пригадуванням/захопленням (установіть `plugins.slots.memory = "memory-lancedb"`)
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Постачальники мовлення (увімкнено за замовчуванням)">
|
||||
<Accordion title="Постачальники мовлення (увімкнені за замовчуванням)">
|
||||
`elevenlabs`, `microsoft`
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Інше">
|
||||
- `browser` — вбудований browser-плагін для інструмента браузера, CLI `openclaw browser`, методу Gateway `browser.request`, середовища виконання браузера та служби керування браузером за замовчуванням (увімкнено за замовчуванням; вимкніть перед заміною)
|
||||
- `copilot-proxy` — міст VS Code Copilot Proxy (вимкнено за замовчуванням)
|
||||
- `browser` — вбудований плагін браузера для інструмента браузера, CLI `openclaw browser`, методу Gateway `browser.request`, середовища виконання браузера та стандартного сервісу керування браузером (увімкнений за замовчуванням; вимкніть його перед заміною)
|
||||
- `copilot-proxy` — міст VS Code Copilot Proxy (вимкнений за замовчуванням)
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
@ -160,40 +176,39 @@ OpenClaw розпізнає два формати плагінів:
|
||||
| ---------------- | --------------------------------------------------------- |
|
||||
| `enabled` | Головний перемикач (типово: `true`) |
|
||||
| `allow` | Список дозволених плагінів (необов’язково) |
|
||||
| `deny` | Список заборонених плагінів (необов’язково; deny має пріоритет) |
|
||||
| `deny` | Список заборонених плагінів (необов’язково; заборона має пріоритет) |
|
||||
| `load.paths` | Додаткові файли/каталоги плагінів |
|
||||
| `slots` | Селектори ексклюзивних слотів (наприклад, `memory`, `contextEngine`) |
|
||||
| `entries.\<id\>` | Перемикачі та конфігурація для окремого плагіна |
|
||||
|
||||
Зміни конфігурації **потребують перезапуску Gateway**. Якщо Gateway працює з відстеженням
|
||||
конфігурації та внутрішньопроцесним перезапуском (типовий шлях `openclaw gateway`),
|
||||
цей перезапуск зазвичай виконується автоматично невдовзі після запису конфігурації.
|
||||
Підтримуваного шляху гарячого перезавантаження для коду середовища виконання native-плагіна
|
||||
або хуків життєвого циклу немає; перезапустіть процес Gateway, який обслуговує активний канал,
|
||||
перш ніж очікувати, що оновлений код `register(api)`, хуки `api.on(...)`, інструменти, служби
|
||||
або хуки постачальника/середовища виконання почнуть працювати.
|
||||
Зміни конфігурації **потребують перезапуску gateway**. Якщо Gateway працює з
|
||||
відстеженням конфігурації та ввімкненим перезапуском у процесі (типовий шлях `openclaw gateway`),
|
||||
цей перезапуск зазвичай виконується автоматично невдовзі після запису змін до конфігурації.
|
||||
Підтримуваного шляху гарячого перезавантаження для native-коду середовища виконання плагіна або хуків життєвого циклу немає;
|
||||
перезапустіть процес Gateway, який обслуговує активний канал, перш ніж очікувати, що оновлений код `register(api)`,
|
||||
хуки `api.on(...)`, інструменти, сервіси або хуки постачальника/середовища виконання запрацюють.
|
||||
|
||||
`openclaw plugins list` — це локальний знімок реєстру/конфігурації плагінів. Плагін зі
|
||||
станом `enabled` означає, що збережений реєстр і поточна конфігурація дозволяють
|
||||
станом `enabled` там означає, що збережений реєстр і поточна конфігурація дозволяють
|
||||
йому брати участь. Це не доводить, що вже запущений віддалений дочірній процес Gateway
|
||||
було перезапущено з тим самим кодом плагіна. У конфігураціях VPS/контейнерів з
|
||||
процесами-обгортками надсилайте перезапуск до фактичного процесу `openclaw gateway run`,
|
||||
перезапустився з тим самим кодом плагіна. У конфігураціях VPS/контейнерів з
|
||||
процесами-обгортками надсилайте перезапуск фактичному процесу `openclaw gateway run`,
|
||||
або використовуйте `openclaw gateway restart` для запущеного Gateway.
|
||||
|
||||
<Accordion title="Стани плагіна: вимкнений, відсутній, некоректний">
|
||||
<Accordion title="Стани плагіна: вимкнений, відсутній, недійсний">
|
||||
- **Вимкнений**: плагін існує, але правила ввімкнення його вимкнули. Конфігурація зберігається.
|
||||
- **Відсутній**: конфігурація посилається на ідентифікатор плагіна, який не знайдено під час виявлення.
|
||||
- **Некоректний**: плагін існує, але його конфігурація не відповідає оголошеній схемі.
|
||||
- **Відсутній**: конфігурація посилається на ідентифікатор плагіна, який не було знайдено під час виявлення.
|
||||
- **Недійсний**: плагін існує, але його конфігурація не відповідає оголошеній схемі.
|
||||
</Accordion>
|
||||
|
||||
## Виявлення та пріоритет
|
||||
|
||||
OpenClaw сканує плагіни в такому порядку (перший збіг має пріоритет):
|
||||
OpenClaw сканує плагіни в такому порядку (перше знайдене співпадіння має пріоритет):
|
||||
|
||||
<Steps>
|
||||
<Step title="Шляхи з конфігурації">
|
||||
`plugins.load.paths` — явні шляхи до файлів або каталогів. Шляхи, які вказують
|
||||
назад на власні упаковані каталоги вбудованих плагінів OpenClaw, ігноруються;
|
||||
<Step title="Шляхи конфігурації">
|
||||
`plugins.load.paths` — явні шляхи до файлу або каталогу. Шляхи, що вказують
|
||||
назад на власні каталоги пакетних вбудованих плагінів OpenClaw, ігноруються;
|
||||
виконайте `openclaw doctor --fix`, щоб видалити ці застарілі псевдоніми.
|
||||
</Step>
|
||||
|
||||
@ -206,8 +221,8 @@ OpenClaw сканує плагіни в такому порядку (перши
|
||||
</Step>
|
||||
|
||||
<Step title="Вбудовані плагіни">
|
||||
Постачаються разом з OpenClaw. Багато з них увімкнені за замовчуванням (постачальники моделей, мовлення).
|
||||
Для інших потрібне явне ввімкнення.
|
||||
Постачаються разом з OpenClaw. Багато з них увімкнено за замовчуванням (постачальники моделей, мовлення).
|
||||
Інші потребують явного ввімкнення.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
@ -216,38 +231,39 @@ OpenClaw сканує плагіни в такому порядку (перши
|
||||
- `plugins.enabled: false` вимикає всі плагіни
|
||||
- `plugins.deny` завжди має пріоритет над allow
|
||||
- `plugins.entries.\<id\>.enabled: false` вимикає цей плагін
|
||||
- Плагіни з походженням із робочого простору **вимкнені за замовчуванням** (їх треба явно ввімкнути)
|
||||
- Вбудовані плагіни дотримуються вбудованого набору, увімкненого за замовчуванням, якщо немає перевизначення
|
||||
- Ексклюзивні слоти можуть примусово ввімкнути вибраний для цього слота плагін
|
||||
- Деякі вбудовані плагіни з опціональним ввімкненням вмикаються автоматично, коли конфігурація вказує
|
||||
на поверхню, що належить плагіну, наприклад посилання на модель постачальника, конфігурацію каналу або середовище виконання каркаса
|
||||
- Плагіни з робочого простору **вимкнені за замовчуванням** (їх потрібно явно ввімкнути)
|
||||
- Вбудовані плагіни дотримуються вбудованого набору, увімкненого за замовчуванням, якщо не перевизначено
|
||||
- Ексклюзивні слоти можуть примусово ввімкнути вибраний плагін для цього слота
|
||||
- Деякі вбудовані плагіни з явним підключенням увімкнюються автоматично, коли конфігурація вказує на
|
||||
поверхню, що належить плагіну, наприклад посилання на модель постачальника, конфігурацію каналу або
|
||||
середовище виконання каркаса
|
||||
- Маршрути Codex сімейства OpenAI зберігають окремі межі плагінів:
|
||||
`openai-codex/*` належить плагіну OpenAI, тоді як вбудований плагін app-server Codex
|
||||
вибирається через `agentRuntime.id: "codex"` або застарілі
|
||||
`openai-codex/*` належить плагіну OpenAI, тоді як вбудований плагін
|
||||
app-server Codex вибирається через `agentRuntime.id: "codex"` або застарілі
|
||||
посилання на модель `codex/*`
|
||||
|
||||
## Усунення проблем із хуками середовища виконання
|
||||
|
||||
Якщо плагін відображається в `plugins list`, але побічні ефекти `register(api)` або хуки
|
||||
не спрацьовують у живому чат-трафіку, спершу перевірте таке:
|
||||
не спрацьовують у живому чат-трафіку, спочатку перевірте таке:
|
||||
|
||||
- Виконайте `openclaw gateway status --deep --require-rpc` і підтвердьте, що активні
|
||||
URL Gateway, профіль, шлях до конфігурації та процес — саме ті, які ви редагуєте.
|
||||
- Перезапустіть активний Gateway після змін установлення/конфігурації/коду плагіна. У контейнерах
|
||||
з обгорткою PID 1 може бути лише супервізором; перезапустіть або надішліть сигнал дочірньому
|
||||
URL Gateway, профіль, шлях до конфігурації та процес — це саме ті, які ви редагуєте.
|
||||
- Перезапустіть активний Gateway після змін встановлення/конфігурації/коду плагіна. У контейнерах
|
||||
з обгортками PID 1 може бути лише супервізором; перезапустіть або надішліть сигнал дочірньому
|
||||
процесу `openclaw gateway run`.
|
||||
- Використайте `openclaw plugins inspect <id> --json`, щоб підтвердити реєстрацію хуків і
|
||||
- Використовуйте `openclaw plugins inspect <id> --json`, щоб підтвердити реєстрації хуків і
|
||||
діагностику. Для невбудованих хуків розмови, таких як `llm_input`,
|
||||
`llm_output`, `before_agent_finalize` і `agent_end`, потрібен параметр
|
||||
`llm_output`, `before_agent_finalize` і `agent_end`, потрібен
|
||||
`plugins.entries.<id>.hooks.allowConversationAccess=true`.
|
||||
- Для перемикання моделей надавайте перевагу `before_model_resolve`. Він виконується до
|
||||
розв’язання моделі для ходів агента; `llm_output` виконується лише після того,
|
||||
як спроба моделі створює вивід асистента.
|
||||
- Щоб підтвердити ефективну модель сеансу, використовуйте `openclaw sessions` або
|
||||
поверхні сеансу/стану Gateway, а під час налагодження payload-даних постачальника запускайте
|
||||
- Для перемикання моделей віддавайте перевагу `before_model_resolve`. Він запускається перед
|
||||
визначенням моделі для ходів агента; `llm_output` запускається лише після того,
|
||||
як спроба використання моделі породить вивід помічника.
|
||||
- Для підтвердження фактичної моделі сеансу використовуйте `openclaw sessions` або
|
||||
поверхні сеансу/стану Gateway, а під час налагодження навантаження постачальника запускайте
|
||||
Gateway з `--raw-stream --raw-stream-path <path>`.
|
||||
|
||||
### Дубльоване володіння каналом або інструментом
|
||||
### Дублювання володіння каналом або інструментом
|
||||
|
||||
Симптоми:
|
||||
|
||||
@ -255,34 +271,35 @@ OpenClaw сканує плагіни в такому порядку (перши
|
||||
- `channel setup already registered: <channel-id> (<plugin-id>)`
|
||||
- `plugin tool name conflict (<plugin-id>): <tool-name>`
|
||||
|
||||
Це означає, що більш ніж один увімкнений плагін намагається володіти тим самим каналом,
|
||||
потоком налаштування або назвою інструмента. Найпоширеніша причина — external-плагін каналу,
|
||||
Це означає, що більше ніж один увімкнений плагін намагається володіти тим самим каналом,
|
||||
потоком налаштування або назвою інструмента. Найпоширеніша причина — зовнішній плагін каналу,
|
||||
встановлений поруч із вбудованим плагіном, який тепер надає той самий ідентифікатор каналу.
|
||||
|
||||
Кроки налагодження:
|
||||
|
||||
- Виконайте `openclaw plugins list --enabled --verbose`, щоб побачити кожен увімкнений плагін
|
||||
і його походження.
|
||||
- Виконайте `openclaw plugins inspect <id> --json` для кожного підозрюваного плагіна та
|
||||
та його походження.
|
||||
- Виконайте `openclaw plugins inspect <id> --json` для кожного підозрілого плагіна та
|
||||
порівняйте `channels`, `channelConfigs`, `tools` і діагностику.
|
||||
- Виконайте `openclaw plugins registry --refresh` після встановлення або видалення
|
||||
пакетів плагінів, щоб збережені метадані відображали поточне встановлення.
|
||||
- Перезапустіть Gateway після змін установлення, реєстру або конфігурації.
|
||||
- Перезапустіть Gateway після змін встановлення, реєстру або конфігурації.
|
||||
|
||||
Варіанти виправлення:
|
||||
|
||||
- Якщо один плагін навмисно замінює інший для того самого ідентифікатора каналу,
|
||||
бажаний плагін має оголосити `channelConfigs.<channel-id>.preferOver` із
|
||||
- Якщо один плагін навмисно замінює інший для того самого ідентифікатора каналу, бажаний
|
||||
плагін має оголошувати `channelConfigs.<channel-id>.preferOver` із
|
||||
ідентифікатором плагіна нижчого пріоритету. Див. [/plugins/manifest#replacing-another-channel-plugin](/uk/plugins/manifest#replacing-another-channel-plugin).
|
||||
- Якщо дублювання випадкове, вимкніть одну зі сторін через
|
||||
`plugins.entries.<plugin-id>.enabled: false` або видаліть застаріле встановлення плагіна.
|
||||
`plugins.entries.<plugin-id>.enabled: false` або видаліть застаріле встановлення
|
||||
плагіна.
|
||||
- Якщо ви явно ввімкнули обидва плагіни, OpenClaw зберігає цей запит і
|
||||
повідомляє про конфлікт. Виберіть одного власника для каналу або перейменуйте
|
||||
інструменти, що належать плагіну, щоб поверхня середовища виконання була однозначною.
|
||||
повідомляє про конфлікт. Виберіть одного власника для каналу або перейменуйте інструменти,
|
||||
що належать плагіну, щоб поверхня середовища виконання була однозначною.
|
||||
|
||||
## Слоти плагінів (ексклюзивні категорії)
|
||||
|
||||
Деякі категорії є ексклюзивними (одночасно активним може бути лише один варіант):
|
||||
Деякі категорії є ексклюзивними (одночасно активним може бути лише один):
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -295,40 +312,40 @@ OpenClaw сканує плагіни в такому порядку (перши
|
||||
}
|
||||
```
|
||||
|
||||
| Слот | Що він керує | Типове значення |
|
||||
| --------------- | --------------------- | ------------------- |
|
||||
| `memory` | Active Memory плагін | `memory-core` |
|
||||
| Слот | Що він керує | За замовчуванням |
|
||||
| --------------- | ----------------------- | --------------------- |
|
||||
| `memory` | Active Memory plugin | `memory-core` |
|
||||
| `contextEngine` | Активний рушій контексту | `legacy` (вбудований) |
|
||||
|
||||
## Довідка CLI
|
||||
## Довідник CLI
|
||||
|
||||
```bash
|
||||
openclaw plugins list # компактний перелік
|
||||
openclaw plugins list # компактний список
|
||||
openclaw plugins list --enabled # лише увімкнені плагіни
|
||||
openclaw plugins list --verbose # детальні рядки по кожному плагіну
|
||||
openclaw plugins list --json # машиночитний перелік
|
||||
openclaw plugins inspect <id> # детальна інформація
|
||||
openclaw plugins inspect <id> --json # машиночитний формат
|
||||
openclaw plugins inspect --all # таблиця по всьому набору
|
||||
openclaw plugins list --verbose # докладні рядки по кожному плагіну
|
||||
openclaw plugins list --json # машинозчитуваний список
|
||||
openclaw plugins inspect <id> # докладна інформація
|
||||
openclaw plugins inspect <id> --json # машинозчитуваний формат
|
||||
openclaw plugins inspect --all # загальна таблиця
|
||||
openclaw plugins info <id> # псевдонім inspect
|
||||
openclaw plugins doctor # діагностика
|
||||
openclaw plugins registry # перегляд збереженого стану реєстру
|
||||
openclaw plugins registry --refresh # перебудувати збережений реєстр
|
||||
openclaw doctor --fix # виправити стан реєстру плагінів
|
||||
openclaw plugins registry # перегляд стану збереженого реєстру
|
||||
openclaw plugins registry --refresh # перебудова збереженого реєстру
|
||||
openclaw doctor --fix # відновлення стану реєстру плагінів
|
||||
|
||||
openclaw plugins install <package> # встановити (спочатку ClawHub, потім npm)
|
||||
openclaw plugins install clawhub:<pkg> # встановити лише з ClawHub
|
||||
openclaw plugins install <spec> --force # перезаписати наявне встановлення
|
||||
openclaw plugins install <path> # встановити з локального шляху
|
||||
openclaw plugins install -l <path> # приєднати (без копіювання) для розробки
|
||||
openclaw plugins install <package> # встановлення (спочатку ClawHub, потім npm)
|
||||
openclaw plugins install clawhub:<pkg> # встановлення лише з ClawHub
|
||||
openclaw plugins install <spec> --force # перезапис наявного встановлення
|
||||
openclaw plugins install <path> # встановлення з локального шляху
|
||||
openclaw plugins install -l <path> # підключення (без копіювання) для розробки
|
||||
openclaw plugins install <plugin> --marketplace <source>
|
||||
openclaw plugins install <plugin> --marketplace https://github.com/<owner>/<repo>
|
||||
openclaw plugins install <spec> --pin # зафіксувати точну розв’язану специфікацію npm
|
||||
openclaw plugins install <spec> --pin # запис точного визначеного npm-специфікатора
|
||||
openclaw plugins install <spec> --dangerously-force-unsafe-install
|
||||
openclaw plugins update <id-or-npm-spec> # оновити один плагін
|
||||
openclaw plugins update <id-or-npm-spec> --dangerously-force-unsafe-install
|
||||
openclaw plugins update --all # оновити всі
|
||||
openclaw plugins uninstall <id> # видалити конфігурацію та записи індексу плагінів
|
||||
openclaw plugins uninstall <id> # видалити записи конфігурації та індексу плагіна
|
||||
openclaw plugins uninstall <id> --keep-files
|
||||
openclaw plugins marketplace list <source>
|
||||
openclaw plugins marketplace list <source> --json
|
||||
@ -338,68 +355,65 @@ openclaw plugins disable <id>
|
||||
```
|
||||
|
||||
Вбудовані плагіни постачаються разом з OpenClaw. Багато з них увімкнено за замовчуванням (наприклад,
|
||||
вбудовані постачальники моделей, вбудовані постачальники мовлення та вбудований
|
||||
browser-плагін). Інші вбудовані плагіни все ще потребують `openclaw plugins enable <id>`.
|
||||
вбудовані постачальники моделей, вбудовані постачальники мовлення та вбудований плагін
|
||||
браузера). Інші вбудовані плагіни все ще потребують `openclaw plugins enable <id>`.
|
||||
|
||||
`--force` перезаписує наявний встановлений плагін або пакет хуків на місці. Використовуйте
|
||||
`openclaw plugins update <id-or-npm-spec>` для звичайних оновлень відстежуваних npm-
|
||||
плагінів. Цей параметр не підтримується з `--link`, який повторно використовує вихідний шлях
|
||||
замість копіювання в керовану ціль установлення.
|
||||
`--force` перезаписує наявний встановлений плагін або пакет хуків на місці. Для стандартних оновлень відстежуваних npm-
|
||||
плагінів використовуйте `openclaw plugins update <id-or-npm-spec>`. Це не підтримується з `--link`, який повторно використовує вихідний шлях
|
||||
замість копіювання у керовану ціль встановлення.
|
||||
|
||||
Коли `plugins.allow` уже задано, `openclaw plugins install` додає
|
||||
ідентифікатор встановленого плагіна до цього списку дозволених перед його ввімкненням. Якщо той самий ідентифікатор плагіна
|
||||
присутній у `plugins.deny`, установлення видаляє цей застарілий запис deny, щоб після перезапуску
|
||||
явно встановлений плагін можна було одразу завантажити.
|
||||
присутній у `plugins.deny`, під час встановлення цей застарілий запис deny видаляється, щоб після перезапуску
|
||||
явно встановлений плагін одразу можна було завантажити.
|
||||
|
||||
OpenClaw зберігає локальний реєстр плагінів як постійну модель читання для
|
||||
переліку плагінів, володіння внесками та планування запуску. Потоки install, update,
|
||||
uninstall, enable і disable оновлюють цей реєстр після зміни стану
|
||||
плагіна. Той самий файл `plugins/installs.json` зберігає тривалі метадані встановлення в
|
||||
верхньорівневому `installRecords` і відтворювані метадані маніфесту в `plugins`. Якщо
|
||||
реєстр відсутній, застарілий або некоректний, `openclaw plugins registry
|
||||
--refresh` перебудовує його уявлення про маніфест на основі записів установлення, політики конфігурації та
|
||||
OpenClaw зберігає локальний реєстр плагінів як модель холодного читання для
|
||||
обліку плагінів, володіння внесками та планування запуску. Потоки встановлення, оновлення,
|
||||
видалення, увімкнення та вимкнення оновлюють цей реєстр після зміни стану
|
||||
плагіна. Той самий файл `plugins/installs.json` зберігає довговічні метадані встановлення у
|
||||
верхньорівневому `installRecords` і придатні до перебудови метадані маніфесту в `plugins`. Якщо
|
||||
реєстр відсутній, застарілий або недійсний, `openclaw plugins registry
|
||||
--refresh` перебудовує його представлення маніфесту з записів встановлення, політики конфігурації та
|
||||
метаданих маніфесту/пакета без завантаження модулів середовища виконання плагінів.
|
||||
`openclaw plugins update <id-or-npm-spec>` застосовується до відстежуваних установлень. Передавання
|
||||
специфікації npm-пакета з dist-tag або точною версією зіставляє назву пакета
|
||||
назад із записом відстежуваного плагіна та фіксує нову специфікацію для майбутніх оновлень.
|
||||
Передавання назви пакета без версії повертає точно зафіксоване встановлення
|
||||
до стандартної лінії випуску реєстру. Якщо встановлений npm-плагін уже відповідає
|
||||
розв’язаній версії та зафіксованій ідентичності артефакту, OpenClaw пропускає оновлення
|
||||
без завантаження, перевстановлення чи перезапису конфігурації.
|
||||
`openclaw plugins update <id-or-npm-spec>` застосовується до відстежуваних встановлень. Передавання
|
||||
специфікатора пакета npm з dist-tag або точною версією знову зіставляє назву пакета
|
||||
із записом відстежуваного плагіна та фіксує новий специфікатор для майбутніх оновлень.
|
||||
Передавання назви пакета без версії повертає точно закріплене встановлення назад на
|
||||
типову лінійку випусків реєстру. Якщо встановлений npm-плагін уже відповідає
|
||||
визначеній версії та записаній ідентичності артефакту, OpenClaw пропускає оновлення
|
||||
без завантаження, перевстановлення або перезапису конфігурації.
|
||||
|
||||
`--pin` працює лише з npm. Він не підтримується з `--marketplace`, оскільки
|
||||
встановлення з marketplace зберігають метадані джерела marketplace замість специфікації npm.
|
||||
встановлення з marketplace зберігають метадані джерела marketplace замість npm-специфікатора.
|
||||
|
||||
`--dangerously-force-unsafe-install` — це аварійний режим перевизначення для хибнопозитивних
|
||||
спрацювань вбудованого сканера небезпечного коду. Він дозволяє продовжити встановлення
|
||||
та оновлення плагінів попри вбудовані результати `critical`, але все одно
|
||||
не обходить блокування політики `before_install` плагіна або блокування через збої сканування.
|
||||
`--dangerously-force-unsafe-install` — це аварійний обхідний прапорець для хибнопозитивних
|
||||
спрацьовувань вбудованого сканера небезпечного коду. Він дозволяє продовжувати встановлення
|
||||
й оновлення плагінів попри вбудовані знахідки `critical`, але все одно
|
||||
не обходить блокування політики плагіна `before_install` або блокування через помилки сканування.
|
||||
|
||||
Цей прапорець CLI застосовується лише до потоків install/update плагінів. Встановлення
|
||||
залежностей Skills через Gateway використовують натомість відповідне перевизначення запиту
|
||||
`dangerouslyForceUnsafeInstall`, тоді як `openclaw skills install` лишається окремим потоком
|
||||
завантаження/встановлення Skills із ClawHub.
|
||||
Цей прапорець CLI застосовується лише до потоків встановлення/оновлення плагінів. Встановлення залежностей Skills через Gateway
|
||||
замість цього використовують відповідний параметр запиту `dangerouslyForceUnsafeInstall`, тоді як `openclaw skills install`
|
||||
залишається окремим потоком завантаження/встановлення Skills із ClawHub.
|
||||
|
||||
Сумісні набори беруть участь у тому самому потоці list/inspect/enable/disable
|
||||
плагінів. Поточна підтримка середовища виконання включає bundle Skills, Claude command-skills,
|
||||
для плагінів. Поточна підтримка середовища виконання включає bundle Skills, командні Skills Claude,
|
||||
типові значення Claude `settings.json`, типові значення Claude `.lsp.json` і оголошених у маніфесті
|
||||
`lspServers`, Cursor command-skills і сумісні каталоги хуків Codex.
|
||||
`lspServers`, командні Skills Cursor і сумісні каталоги хуків Codex.
|
||||
|
||||
`openclaw plugins inspect <id>` також повідомляє про виявлені можливості набору, а також
|
||||
підтримувані або непідтримувані записи серверів MCP і LSP для плагінів, що базуються на наборах.
|
||||
підтримувані або непідтримувані записи серверів MCP і LSP для плагінів на основі наборів.
|
||||
|
||||
Джерела marketplace можуть бути відомою назвою Claude marketplace з
|
||||
Джерела marketplace можуть бути відомою назвою marketplace Claude з
|
||||
`~/.claude/plugins/known_marketplaces.json`, локальним коренем marketplace або шляхом до
|
||||
`marketplace.json`, скороченим записом GitHub на кшталт `owner/repo`, URL репозиторію GitHub
|
||||
або URL git. Для віддалених marketplace записи плагінів мають залишатися всередині
|
||||
клонованого репозиторію marketplace і використовувати лише відносні джерела шляхів.
|
||||
`marketplace.json`, скороченим записом GitHub на кшталт `owner/repo`, URL репозиторію GitHub або URL git. Для віддалених marketplace
|
||||
записи плагінів мають залишатися в межах клонованого репозиторію marketplace і використовувати лише відносні шляхи до джерел.
|
||||
|
||||
Повну інформацію див. у [довідці CLI `openclaw plugins`](/uk/cli/plugins).
|
||||
Повні відомості див. у [довіднику CLI `openclaw plugins`](/uk/cli/plugins).
|
||||
|
||||
## Огляд API плагінів
|
||||
|
||||
Native-плагіни експортують об’єкт entry, який надає `register(api)`. Старіші
|
||||
плагіни можуть і далі використовувати `activate(api)` як застарілий псевдонім, але нові плагіни повинні
|
||||
Native-плагіни експортують об’єкт точки входу, який надає `register(api)`. Старіші
|
||||
плагіни все ще можуть використовувати `activate(api)` як застарілий псевдонім, але нові плагіни повинні
|
||||
використовувати `register`.
|
||||
|
||||
```typescript
|
||||
@ -420,75 +434,74 @@ export default definePluginEntry({
|
||||
});
|
||||
```
|
||||
|
||||
OpenClaw завантажує об’єкт entry і викликає `register(api)` під час активації
|
||||
плагіна. Завантажувач усе ще повертається до `activate(api)` для старіших плагінів,
|
||||
але вбудовані плагіни та нові external-плагіни мають вважати `register`
|
||||
публічним контрактом.
|
||||
OpenClaw завантажує об’єкт точки входу та викликає `register(api)` під час
|
||||
активації плагіна. Завантажувач усе ще повертається до `activate(api)` для старіших плагінів,
|
||||
але вбудовані плагіни та нові external-плагіни повинні розглядати `register` як
|
||||
публічний контракт.
|
||||
|
||||
`api.registrationMode` повідомляє плагіну, чому його entry завантажується:
|
||||
`api.registrationMode` повідомляє плагіну, чому завантажується його точка входу:
|
||||
|
||||
| Режим | Значення |
|
||||
| Режим | Значення |
|
||||
| --------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `full` | Активація середовища виконання. Реєструйте інструменти, хуки, служби, команди, маршрути та інші живі побічні ефекти. |
|
||||
| `discovery` | Виявлення можливостей лише для читання. Реєструйте постачальників і метадані; код entry довіреного плагіна може завантажуватися, але живі побічні ефекти слід пропускати. |
|
||||
| `setup-only` | Завантаження метаданих налаштування каналу через полегшений entry налаштування. |
|
||||
| `setup-runtime` | Завантаження налаштування каналу, якому також потрібен entry середовища виконання. |
|
||||
| `cli-metadata` | Лише збирання метаданих команди CLI. |
|
||||
| `full` | Активація середовища виконання. Реєстрація інструментів, хуків, сервісів, команд, маршрутів та інших побічних ефектів у живому режимі. |
|
||||
| `discovery` | Виявлення можливостей лише для читання. Реєструйте постачальників і метадані; код точки входу довіреного плагіна може завантажуватися, але слід пропускати побічні ефекти живого режиму. |
|
||||
| `setup-only` | Завантаження метаданих налаштування каналу через полегшену точку входу налаштування. |
|
||||
| `setup-runtime` | Завантаження налаштування каналу, яке також потребує точки входу середовища виконання. |
|
||||
| `cli-metadata` | Лише збирання метаданих команд CLI. |
|
||||
|
||||
Entry плагінів, які відкривають сокети, бази даних, фонові воркери або довгоживучі
|
||||
клієнти, повинні обмежувати ці побічні ефекти умовою `api.registrationMode === "full"`.
|
||||
Точки входу плагінів, які відкривають сокети, бази даних, фонові воркери або довготривалі
|
||||
клієнти, повинні обмежувати такі побічні ефекти умовою `api.registrationMode === "full"`.
|
||||
Завантаження для виявлення кешуються окремо від активаційних завантажень і не замінюють
|
||||
реєстр запущеного Gateway. Виявлення не активує, але й не є вільним від імпорту:
|
||||
OpenClaw може обчислювати довірений entry плагіна або модуль channel-плагіна, щоб побудувати
|
||||
знімок. Тримайте верхні рівні модуля легкими та без побічних ефектів, а мережевих клієнтів,
|
||||
підпроцеси, слухачів, читання облікових даних і запуск служб переносіть
|
||||
за межі full-runtime шляхів.
|
||||
реєстр запущеного Gateway. Виявлення не активує середовище виконання, але й не є вільним від імпорту:
|
||||
OpenClaw може обчислити довірену точку входу плагіна або модуль канального плагіна, щоб побудувати
|
||||
знімок. Тримайте верхні рівні модулів легкими й без побічних ефектів та перемістіть
|
||||
мережевих клієнтів, підпроцеси, слухачі, читання облікових даних і запуск сервісів
|
||||
за шляхи повного режиму середовища виконання.
|
||||
|
||||
Поширені методи реєстрації:
|
||||
|
||||
| Метод | Що він реєструє |
|
||||
| -------------------------------------- | ---------------------------- |
|
||||
| `registerProvider` | Постачальник моделі (LLM) |
|
||||
| `registerChannel` | Канал чату |
|
||||
| `registerTool` | Інструмент агента |
|
||||
| `registerHook` / `on(...)` | Хуки життєвого циклу |
|
||||
| `registerSpeechProvider` | Перетворення тексту в мовлення / STT |
|
||||
| `registerRealtimeTranscriptionProvider`| Потоковий STT |
|
||||
| `registerRealtimeVoiceProvider` | Двобічний голос у реальному часі |
|
||||
| `registerMediaUnderstandingProvider` | Аналіз зображень/аудіо |
|
||||
| `registerImageGenerationProvider` | Генерація зображень |
|
||||
| `registerMusicGenerationProvider` | Генерація музики |
|
||||
| `registerVideoGenerationProvider` | Генерація відео |
|
||||
| `registerWebFetchProvider` | Постачальник отримання/скрапінгу вебданих |
|
||||
| `registerWebSearchProvider` | Вебпошук |
|
||||
| `registerHttpRoute` | HTTP-ендпоінт |
|
||||
| `registerCommand` / `registerCli` | Команди CLI |
|
||||
| `registerContextEngine` | Рушій контексту |
|
||||
| `registerService` | Фонова служба |
|
||||
| Метод | Що він реєструє |
|
||||
| --------------------------------------- | --------------------------- |
|
||||
| `registerProvider` | Постачальник моделей (LLM) |
|
||||
| `registerChannel` | Канал чату |
|
||||
| `registerTool` | Інструмент агента |
|
||||
| `registerHook` / `on(...)` | Хуки життєвого циклу |
|
||||
| `registerSpeechProvider` | Синтез мовлення / STT |
|
||||
| `registerRealtimeTranscriptionProvider` | Потоковий STT |
|
||||
| `registerRealtimeVoiceProvider` | Дуплексний голос у реальному часі |
|
||||
| `registerMediaUnderstandingProvider` | Аналіз зображень/аудіо |
|
||||
| `registerImageGenerationProvider` | Генерація зображень |
|
||||
| `registerMusicGenerationProvider` | Генерація музики |
|
||||
| `registerVideoGenerationProvider` | Генерація відео |
|
||||
| `registerWebFetchProvider` | Постачальник веботримання / скрапінгу |
|
||||
| `registerWebSearchProvider` | Вебпошук |
|
||||
| `registerHttpRoute` | HTTP-ендпойнт |
|
||||
| `registerCommand` / `registerCli` | Команди CLI |
|
||||
| `registerContextEngine` | Рушій контексту |
|
||||
| `registerService` | Фоновий сервіс |
|
||||
|
||||
Поведінка guard для типізованих хуків життєвого циклу:
|
||||
Поведінка захисту хуків для типізованих хуків життєвого циклу:
|
||||
|
||||
- `before_tool_call`: `{ block: true }` є завершальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_tool_call`: `{ block: false }` нічого не робить і не скасовує попереднє блокування.
|
||||
- `before_install`: `{ block: true }` є завершальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_install`: `{ block: false }` нічого не робить і не скасовує попереднє блокування.
|
||||
- `message_sending`: `{ cancel: true }` є завершальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: `{ cancel: false }` нічого не робить і не скасовує попереднє скасування.
|
||||
- `before_tool_call`: `{ block: true }` є фінальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_tool_call`: `{ block: false }` не виконує жодної дії та не скасовує попереднє блокування.
|
||||
- `before_install`: `{ block: true }` є фінальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `before_install`: `{ block: false }` не виконує жодної дії та не скасовує попереднє блокування.
|
||||
- `message_sending`: `{ cancel: true }` є фінальним; обробники з нижчим пріоритетом пропускаються.
|
||||
- `message_sending`: `{ cancel: false }` не виконує жодної дії та не скасовує попереднє скасування.
|
||||
|
||||
Native Codex app-server повертає події інструментів Codex-native через цю
|
||||
Native Codex app-server запускає міст, який повертає події native-інструментів Codex назад у цю
|
||||
поверхню хуків. Плагіни можуть блокувати native-інструменти Codex через `before_tool_call`,
|
||||
спостерігати результати через `after_tool_call` і брати участь у погодженнях
|
||||
`PermissionRequest` Codex. Міст поки що не переписує аргументи native-інструментів Codex.
|
||||
Точна межа підтримки середовища виконання Codex описана в
|
||||
спостерігати за результатами через `after_tool_call` і брати участь у схваленнях Codex
|
||||
`PermissionRequest`. Міст поки що не переписує аргументи native-інструментів Codex. Точна межа підтримки середовища виконання Codex описана в
|
||||
[контракті підтримки Codex harness v1](/uk/plugins/codex-harness#v1-support-contract).
|
||||
|
||||
Повну інформацію про типізовану поведінку хуків див. в [огляді SDK](/uk/plugins/sdk-overview#hook-decision-semantics).
|
||||
Повну інформацію про поведінку типізованих хуків див. в [огляді SDK](/uk/plugins/sdk-overview#hook-decision-semantics).
|
||||
|
||||
## Пов’язане
|
||||
|
||||
- [Створення плагінів](/uk/plugins/building-plugins) — створіть власний плагін
|
||||
- [Набори плагінів](/uk/plugins/bundles) — сумісність наборів Codex/Claude/Cursor
|
||||
- [Маніфест плагіна](/uk/plugins/manifest) — схема маніфесту
|
||||
- [Реєстрація інструментів](/uk/plugins/building-plugins#registering-agent-tools) — додавання інструментів агента в плагін
|
||||
- [Реєстрація інструментів](/uk/plugins/building-plugins#registering-agent-tools) — додавання інструментів агента в плагіні
|
||||
- [Внутрішня архітектура плагінів](/uk/plugins/architecture) — модель можливостей і конвеєр завантаження
|
||||
- [Плагіни спільноти](/uk/plugins/community) — переліки сторонніх плагінів
|
||||
- [Плагіни спільноти](/uk/plugins/community) — сторонні добірки
|
||||
|
||||
Loading…
Reference in New Issue
Block a user