chore(i18n): refresh uk translations
This commit is contained in:
parent
efe97c94f2
commit
01da1e233b
File diff suppressed because it is too large
Load Diff
@ -3,26 +3,26 @@ read_when:
|
||||
- Ви хочете обслуговувати моделі зі свого GPU-сервера
|
||||
- Ви налаштовуєте LM Studio або OpenAI-сумісний проксі
|
||||
- Вам потрібні найбезпечніші рекомендації щодо локальних моделей
|
||||
summary: Запуск OpenClaw на локальних LLM (LM Studio, vLLM, LiteLLM, власні OpenAI-сумісні endpoint)
|
||||
summary: Запускайте OpenClaw на локальних LLM (LM Studio, vLLM, LiteLLM, власні OpenAI-сумісні ендпоїнти)
|
||||
title: Локальні моделі
|
||||
x-i18n:
|
||||
generated_at: "2026-04-05T18:03:36Z"
|
||||
generated_at: "2026-04-07T14:58:36Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 3b99c8fb57f65c0b765fc75bd36933221b5aeb94c4a3f3428f92640ae064f8b6
|
||||
source_hash: d619d72b0e06914ebacb7e9f38b746caf1b9ce8908c9c6638c3acdddbaa025e8
|
||||
source_path: gateway/local-models.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Локальні моделі
|
||||
|
||||
Локальний запуск можливий, але OpenClaw очікує великий контекст + сильний захист від prompt injection. Невеликі карти обрізають контекст і послаблюють безпеку. Орієнтуйтеся на високий рівень: **≥2 повністю укомплектованих Mac Studio або еквівалентний GPU-риг (~$30k+)**. Одна GPU на **24 GB** підходить лише для легших prompt із вищою затримкою. Використовуйте **найбільший / повнорозмірний варіант моделі, який можете запустити**; агресивно квантизовані або “small” checkpoint підвищують ризик prompt injection (див. [Security](/gateway/security)).
|
||||
Локальний запуск можливий, але OpenClaw очікує великий контекст і сильний захист від інʼєкції промптів. Невеликі карти обрізають контекст і послаблюють безпеку. Орієнтуйтеся на серйозне обладнання: **≥2 Mac Studio з максимальною конфігурацією або еквівалентну GPU-систему (~$30k+)**. Один GPU на **24 ГБ** підходить лише для легших промптів із вищою затримкою. Використовуйте **найбільший / повнорозмірний варіант моделі, який ви можете запустити**; агресивно квантизовані або “small” чекпойнти підвищують ризик інʼєкції промптів (див. [Безпека](/uk/gateway/security)).
|
||||
|
||||
Якщо вам потрібне локальне налаштування з найменшими труднощами, почніть з [Ollama](/providers/ollama) і `openclaw onboard`. Ця сторінка — практичний посібник для потужніших локальних стеків і власних локальних серверів, сумісних з OpenAI.
|
||||
Якщо вам потрібне локальне налаштування з найменшими труднощами, почніть з [Ollama](/uk/providers/ollama) і `openclaw onboard`. Ця сторінка — рекомендаційний посібник для більш потужних локальних стеків і власних OpenAI-сумісних локальних серверів.
|
||||
|
||||
## Рекомендовано: LM Studio + велика локальна модель (Responses API)
|
||||
|
||||
Найкращий поточний локальний стек. Завантажте велику модель у LM Studio (наприклад, повнорозмірну збірку Qwen, DeepSeek або Llama), увімкніть локальний сервер (типово `http://127.0.0.1:1234`) і використовуйте Responses API, щоб тримати міркування окремо від фінального тексту.
|
||||
Найкращий поточний локальний стек. Завантажте велику модель у LM Studio (наприклад, повнорозмірну збірку Qwen, DeepSeek або Llama), увімкніть локальний сервер (типово `http://127.0.0.1:1234`) і використовуйте Responses API, щоб відокремити міркування від фінального тексту.
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -61,16 +61,16 @@ x-i18n:
|
||||
|
||||
**Контрольний список налаштування**
|
||||
|
||||
- Установіть LM Studio: [https://lmstudio.ai](https://lmstudio.ai)
|
||||
- У LM Studio завантажте **найбільшу доступну збірку моделі** (уникайте варіантів “small”/сильно квантизованих), запустіть сервер, переконайтеся, що `http://127.0.0.1:1234/v1/models` її показує.
|
||||
- Замініть `my-local-model` на фактичний ID моделі, показаний у LM Studio.
|
||||
- Тримайте модель завантаженою; холодне завантаження додає затримку запуску.
|
||||
- За потреби скоригуйте `contextWindow`/`maxTokens`, якщо ваша збірка LM Studio відрізняється.
|
||||
- Для WhatsApp використовуйте Responses API, щоб надсилався лише фінальний текст.
|
||||
- Встановіть LM Studio: [https://lmstudio.ai](https://lmstudio.ai)
|
||||
- У LM Studio завантажте **найбільшу доступну збірку моделі** (уникайте варіантів “small”/сильно квантизованих), запустіть сервер, переконайтеся, що `http://127.0.0.1:1234/v1/models` показує її.
|
||||
- Замініть `my-local-model` на фактичний ідентифікатор моделі, показаний у LM Studio.
|
||||
- Тримайте модель завантаженою; холодне завантаження додає затримку під час запуску.
|
||||
- Скоригуйте `contextWindow`/`maxTokens`, якщо у вашій збірці LM Studio вони відрізняються.
|
||||
- Для WhatsApp дотримуйтеся Responses API, щоб надсилався лише фінальний текст.
|
||||
|
||||
Тримайте hosted-моделі налаштованими навіть під час локального запуску; використовуйте `models.mode: "merge"`, щоб резервні варіанти залишалися доступними.
|
||||
Залишайте хостовані моделі налаштованими навіть під час локального запуску; використовуйте `models.mode: "merge"`, щоб резервні варіанти залишалися доступними.
|
||||
|
||||
### Гібридна конфігурація: hosted primary, локальний fallback
|
||||
### Гібридна конфігурація: основна хостована модель, локальний резервний варіант
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -111,18 +111,18 @@ x-i18n:
|
||||
}
|
||||
```
|
||||
|
||||
### Спочатку локально, із hosted safety net
|
||||
### Спочатку локально, із хостованою страховкою
|
||||
|
||||
Поміняйте місцями primary і fallback; залиште той самий блок providers і `models.mode: "merge"`, щоб можна було перейти на Sonnet або Opus, коли локальний сервер недоступний.
|
||||
Поміняйте місцями основну модель і резервні варіанти; збережіть той самий блок providers і `models.mode: "merge"`, щоб мати змогу переключитися на Sonnet або Opus, коли локальний сервер недоступний.
|
||||
|
||||
### Регіональний хостинг / маршрутизація даних
|
||||
|
||||
- Hosted-варіанти MiniMax/Kimi/GLM також існують на OpenRouter з endpoint, прив’язаними до регіону (наприклад, розміщеними у США). Виберіть там регіональний варіант, щоб трафік залишався у вибраній вами юрисдикції, і водночас використовуйте `models.mode: "merge"` для fallback на Anthropic/OpenAI.
|
||||
- Лише локальний запуск залишається найсильнішим варіантом для приватності; регіональна маршрутизація hosted — це проміжний варіант, коли вам потрібні можливості провайдера, але ви хочете контролювати потік даних.
|
||||
- Хостовані варіанти MiniMax/Kimi/GLM також доступні в OpenRouter з ендпоїнтами, привʼязаними до регіону (наприклад, хостинг у США). Виберіть там регіональний варіант, щоб трафік залишався у вибраній юрисдикції, і водночас використовуйте `models.mode: "merge"` для резервних варіантів Anthropic/OpenAI.
|
||||
- Лише локальний запуск залишається найсильнішим шляхом до конфіденційності; регіональна хостована маршрутизація — це компромісний варіант, коли вам потрібні можливості провайдера, але ви хочете контролювати потік даних.
|
||||
|
||||
## Інші OpenAI-сумісні локальні проксі
|
||||
|
||||
vLLM, LiteLLM, OAI-proxy або власні gateway працюють, якщо вони надають OpenAI-подібний endpoint `/v1`. Замініть блок provider вище своїм endpoint і ID моделі:
|
||||
vLLM, LiteLLM, OAI-proxy або власні шлюзи працюють, якщо вони надають OpenAI-подібний ендпоїнт `/v1`. Замініть наведений вище блок provider на свій ендпоїнт та ідентифікатор моделі:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -150,20 +150,40 @@ vLLM, LiteLLM, OAI-proxy або власні gateway працюють, якщо
|
||||
}
|
||||
```
|
||||
|
||||
Зберігайте `models.mode: "merge"`, щоб hosted-моделі залишалися доступними як fallback.
|
||||
Зберігайте `models.mode: "merge"`, щоб хостовані моделі залишалися доступними як резервні варіанти.
|
||||
|
||||
Примітка щодо поведінки для локальних/проксійованих бекендів `/v1`:
|
||||
Примітка щодо поведінки локальних/проксійованих бекендів `/v1`:
|
||||
|
||||
- OpenClaw трактує їх як проксі-подібні OpenAI-сумісні маршрути, а не як нативні endpoint OpenAI
|
||||
- нативне формування запитів, доступне лише для OpenAI, тут не застосовується: немає
|
||||
`service_tier`, немає Responses `store`, немає формування payload сумісності
|
||||
reasoning OpenAI і немає підказок для prompt cache
|
||||
- приховані службові заголовки OpenClaw (`originator`, `version`, `User-Agent`)
|
||||
не додаються до цих користувацьких проксі-URL
|
||||
- OpenClaw розглядає їх як проксі-подібні OpenAI-сумісні маршрути, а не як нативні ендпоїнти OpenAI
|
||||
- формування запитів, притаманне лише нативному OpenAI, тут не застосовується: без
|
||||
`service_tier`, без Responses `store`, без формування payload сумісності з OpenAI reasoning
|
||||
і без підказок для кешу промптів
|
||||
- приховані заголовки атрибуції OpenClaw (`originator`, `version`, `User-Agent`)
|
||||
не додаються до цих власних проксі-URL
|
||||
|
||||
## Усунення проблем
|
||||
Примітки щодо сумісності для суворіших OpenAI-сумісних бекендів:
|
||||
|
||||
- Деякі сервери приймають у Chat Completions лише рядковий `messages[].content`, а не
|
||||
структуровані масиви частин контенту. Для
|
||||
таких ендпоїнтів установіть `models.providers.<provider>.models[].compat.requiresStringContent: true`.
|
||||
- Деякі менші або суворіші локальні бекенди нестабільно працюють із повною
|
||||
формою промптів runtime агента OpenClaw, особливо коли включені схеми інструментів. Якщо
|
||||
бекенд працює для маленьких прямих викликів `/v1/chat/completions`, але збій відбувається на звичайних
|
||||
ходах агента OpenClaw, спочатку спробуйте
|
||||
`models.providers.<provider>.models[].compat.supportsTools: false`.
|
||||
- Якщо бекенд усе ще збоїть лише на більших запусках OpenClaw, то, як правило, проблема
|
||||
у можливостях моделі/сервера на стороні апстріму або в помилці бекенда, а не в транспортному
|
||||
шарі OpenClaw.
|
||||
|
||||
## Усунення несправностей
|
||||
|
||||
- Gateway може дістатися до проксі? `curl http://127.0.0.1:1234/v1/models`.
|
||||
- Модель LM Studio вивантажена? Завантажте її знову; холодний старт — типова причина “зависання”.
|
||||
- Модель у LM Studio вивантажена? Завантажте її знову; холодний старт — поширена причина “зависання”.
|
||||
- Помилки контексту? Зменште `contextWindow` або підвищте ліміт на своєму сервері.
|
||||
- Безпека: локальні моделі пропускають фільтри на боці провайдера; тримайте агентів вузькоспеціалізованими, а compaction увімкненим, щоб обмежити радіус ураження від prompt injection.
|
||||
- OpenAI-сумісний сервер повертає `messages[].content ... expected a string`?
|
||||
Додайте `compat.requiresStringContent: true` для запису цієї моделі.
|
||||
- Прямі маленькі виклики `/v1/chat/completions` працюють, але `openclaw infer model run`
|
||||
завершується з помилкою на Gemma або іншій локальній моделі? Спочатку вимкніть схеми інструментів за допомогою
|
||||
`compat.supportsTools: false`, а потім повторіть перевірку. Якщо сервер і далі падає лише
|
||||
на більших промптах OpenClaw, вважайте це обмеженням моделі/сервера на стороні апстріму.
|
||||
- Безпека: локальні моделі пропускають фільтри на боці провайдера; звужуйте агентів і тримайте compaction увімкненим, щоб обмежити радіус впливу інʼєкції промптів.
|
||||
|
||||
@ -1,21 +1,21 @@
|
||||
---
|
||||
read_when:
|
||||
- Центр усунення несправностей направив вас сюди для поглибленої діагностики
|
||||
- Вам потрібні стабільні розділи runbook за симптомами з точними командами
|
||||
summary: Поглиблений runbook з усунення несправностей для шлюзу, каналів, автоматизації, вузлів і браузера
|
||||
- Центр усунення несправностей скерував вас сюди для глибшої діагностики
|
||||
- Вам потрібні стабільні розділи посібника за симптомами з точними командами
|
||||
summary: Детальний посібник з усунення несправностей для gateway, каналів, автоматизації, вузлів і браузера
|
||||
title: Усунення несправностей
|
||||
x-i18n:
|
||||
generated_at: "2026-04-06T15:29:04Z"
|
||||
generated_at: "2026-04-07T14:59:22Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: e0202e8858310a0bfc1c994cd37b01c3b2d6c73c8a74740094e92dc3c4c36729
|
||||
source_hash: 02c9537845248db0c9d315bf581338a93215fe6fe3688ed96c7105cbb19fe6ba
|
||||
source_path: gateway/troubleshooting.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Усунення несправностей шлюзу
|
||||
# Усунення несправностей gateway
|
||||
|
||||
Ця сторінка — поглиблений runbook.
|
||||
Ця сторінка — детальний посібник.
|
||||
Почніть із [/help/troubleshooting](/uk/help/troubleshooting), якщо спочатку хочете пройти швидкий потік тріажу.
|
||||
|
||||
## Послідовність команд
|
||||
@ -34,10 +34,10 @@ openclaw channels status --probe
|
||||
|
||||
- `openclaw gateway status` показує `Runtime: running` і `RPC probe: ok`.
|
||||
- `openclaw doctor` не повідомляє про блокувальні проблеми конфігурації/сервісу.
|
||||
- `openclaw channels status --probe` показує живий стан транспорту для кожного облікового запису і,
|
||||
де підтримується, результати probe/audit, наприклад `works` або `audit ok`.
|
||||
- `openclaw channels status --probe` показує живий стан транспорту для кожного облікового запису та,
|
||||
де це підтримується, результати probe/audit, наприклад `works` або `audit ok`.
|
||||
|
||||
## Anthropic 429: потрібне додаткове використання для довгого контексту
|
||||
## Для Anthropic 429 для довгого контексту потрібне додаткове використання
|
||||
|
||||
Використовуйте це, коли журнали/помилки містять:
|
||||
`HTTP 429: rate_limit_error: Extra usage is required for long context requests`.
|
||||
@ -50,15 +50,15 @@ openclaw config get agents.defaults.models
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Для вибраної моделі Anthropic Opus/Sonnet встановлено `params.context1m: true`.
|
||||
- Поточні облікові дані Anthropic не дають права на використання довгого контексту.
|
||||
- Запити падають лише на довгих сесіях/запусках моделі, яким потрібен beta-шлях 1M.
|
||||
- Вибрана модель Anthropic Opus/Sonnet має `params.context1m: true`.
|
||||
- Поточні облікові дані Anthropic не мають права на використання довгого контексту.
|
||||
- Запити збоять лише в довгих сесіях/запусках моделі, яким потрібен шлях 1M beta.
|
||||
|
||||
Варіанти виправлення:
|
||||
|
||||
1. Вимкніть `context1m` для цієї моделі, щоб повернутися до звичайного вікна контексту.
|
||||
2. Використовуйте облікові дані Anthropic, які дають право на запити з довгим контекстом, або перейдіть на ключ API Anthropic.
|
||||
3. Налаштуйте резервні моделі, щоб запуски продовжувалися, коли запити Anthropic з довгим контекстом відхиляються.
|
||||
2. Використайте облікові дані Anthropic, які мають право на запити з довгим контекстом, або перейдіть на Anthropic API key.
|
||||
3. Налаштуйте резервні моделі, щоб запуски продовжувалися, коли Anthropic відхиляє запити з довгим контекстом.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
@ -66,9 +66,62 @@ openclaw config get agents.defaults.models
|
||||
- [/reference/token-use](/uk/reference/token-use)
|
||||
- [/help/faq#why-am-i-seeing-http-429-ratelimiterror-from-anthropic](/uk/help/faq#why-am-i-seeing-http-429-ratelimiterror-from-anthropic)
|
||||
|
||||
## Локальний OpenAI-compatible backend проходить прямі probe, але збоять agent runs
|
||||
|
||||
Використовуйте це, коли:
|
||||
|
||||
- `curl ... /v1/models` працює
|
||||
- малі прямі виклики `/v1/chat/completions` працюють
|
||||
- запуски моделей OpenClaw збоять лише під час звичайних ходів агента
|
||||
|
||||
```bash
|
||||
curl http://127.0.0.1:1234/v1/models
|
||||
curl http://127.0.0.1:1234/v1/chat/completions \
|
||||
-H 'content-type: application/json' \
|
||||
-d '{"model":"<id>","messages":[{"role":"user","content":"hi"}],"stream":false}'
|
||||
openclaw infer model run --model <provider/model> --prompt "hi" --json
|
||||
openclaw logs --follow
|
||||
```
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- прямі малі виклики успішні, але запуски OpenClaw збоять лише на більших prompt
|
||||
- backend повертає помилки про те, що `messages[].content` очікує рядок
|
||||
- backend падає лише при більшій кількості токенів prompt або на повних prompt середовища агента
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `messages[...].content: invalid type: sequence, expected a string` → backend
|
||||
відхиляє структуровані частини вмісту Chat Completions. Виправлення: задайте
|
||||
`models.providers.<provider>.models[].compat.requiresStringContent: true`.
|
||||
- прямі малі запити успішні, але ходи агента OpenClaw збоять із падіннями backend/моделі
|
||||
(наприклад Gemma у деяких збірках `inferrs`) → транспорт OpenClaw,
|
||||
імовірно, уже налаштований правильно; backend збоїть на більшій формі prompt
|
||||
середовища агента.
|
||||
- збої зменшуються після вимкнення інструментів, але не зникають → схеми інструментів
|
||||
були частиною навантаження, але решта проблеми все ще в обмеженнях моделі/сервера
|
||||
вищого рівня або в помилці backend.
|
||||
|
||||
Варіанти виправлення:
|
||||
|
||||
1. Задайте `compat.requiresStringContent: true` для backend Chat Completions, які приймають лише рядки.
|
||||
2. Задайте `compat.supportsTools: false` для моделей/backend, які не можуть надійно обробляти
|
||||
поверхню схем інструментів OpenClaw.
|
||||
3. За можливості зменште навантаження prompt: менший bootstrap workspace, коротша
|
||||
історія сесії, легша локальна модель або backend із кращою підтримкою довгого контексту.
|
||||
4. Якщо малі прямі запити й надалі проходять, а ходи OpenClaw усе ще падають
|
||||
всередині backend, розглядайте це як обмеження upstream server/model і створіть
|
||||
там repro з прийнятою формою payload.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
- [/gateway/local-models](/uk/gateway/local-models)
|
||||
- [/gateway/configuration#models](/uk/gateway/configuration#models)
|
||||
- [/gateway/configuration-reference#openai-compatible-endpoints](/uk/gateway/configuration-reference#openai-compatible-endpoints)
|
||||
|
||||
## Немає відповідей
|
||||
|
||||
Якщо канали підключені, але нічого не відповідає, перевірте маршрутизацію та політику, перш ніж щось перепідключати.
|
||||
Якщо канали працюють, але ніхто не відповідає, перевірте маршрутизацію та політику, перш ніж щось перепідключати.
|
||||
|
||||
```bash
|
||||
openclaw status
|
||||
@ -80,13 +133,13 @@ openclaw logs --follow
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Pairing очікує підтвердження для відправників у DM.
|
||||
- Обмеження згадування для груп (`requireMention`, `mentionPatterns`).
|
||||
- Невідповідності allowlist для каналу/групи.
|
||||
- Очікує pairing для відправників у DM.
|
||||
- Фільтрація згадок у групах (`requireMention`, `mentionPatterns`).
|
||||
- Невідповідності allowlist каналу/групи.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `drop guild message (mention required` → групове повідомлення ігнорується, доки немає згадки.
|
||||
- `drop guild message (mention required` → повідомлення в групі ігнорується, доки не буде згадки.
|
||||
- `pairing request` → відправника потрібно схвалити.
|
||||
- `blocked` / `allowlist` → відправника/канал відфільтровано політикою.
|
||||
|
||||
@ -96,9 +149,9 @@ openclaw logs --follow
|
||||
- [/channels/pairing](/uk/channels/pairing)
|
||||
- [/channels/groups](/uk/channels/groups)
|
||||
|
||||
## Підключення dashboard/control UI
|
||||
## Підключення dashboard control UI
|
||||
|
||||
Коли dashboard/control UI не підключається, перевірте URL, режим автентифікації та припущення щодо безпечного контексту.
|
||||
Коли dashboard/control UI не підключається, перевірте URL, режим auth і припущення щодо secure context.
|
||||
|
||||
```bash
|
||||
openclaw gateway status
|
||||
@ -111,45 +164,46 @@ openclaw gateway status --json
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Правильний URL probe і URL dashboard.
|
||||
- Невідповідність режиму/токена автентифікації між клієнтом і шлюзом.
|
||||
- Невідповідність режиму auth/token між клієнтом і gateway.
|
||||
- Використання HTTP там, де потрібна ідентичність пристрою.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `device identity required` → небезпечний контекст або відсутня автентифікація пристрою.
|
||||
- `device identity required` → небезпечний контекст або відсутня auth пристрою.
|
||||
- `origin not allowed` → `Origin` браузера відсутній у `gateway.controlUi.allowedOrigins`
|
||||
(або ви підключаєтеся з origin браузера, що не є loopback, без явного
|
||||
(або ви підключаєтеся з не-loopback origin браузера без явного
|
||||
allowlist).
|
||||
- `device nonce required` / `device nonce mismatch` → клієнт не завершує
|
||||
challenge-based потік автентифікації пристрою (`connect.challenge` + `device.nonce`).
|
||||
flow challenge-based device auth (`connect.challenge` + `device.nonce`).
|
||||
- `device signature invalid` / `device signature expired` → клієнт підписав неправильний
|
||||
payload (або використав застарілий timestamp) для поточного рукостискання.
|
||||
payload (або використав застарілу часову мітку) для поточного handshake.
|
||||
- `AUTH_TOKEN_MISMATCH` з `canRetryWithDeviceToken=true` → клієнт може виконати одну довірену повторну спробу з кешованим токеном пристрою.
|
||||
- Ця повторна спроба з кешованим токеном повторно використовує кешований набір scope, збережений разом із pair-ованим
|
||||
токеном пристрою. Виклики з явним `deviceToken` / явними `scopes` зберігають
|
||||
свій запитаний набір scope.
|
||||
- Поза цим шляхом повторної спроби пріоритет автентифікації connect такий: спочатку явний спільний
|
||||
токен/пароль, потім явний `deviceToken`, потім збережений токен пристрою,
|
||||
потім bootstrap-токен.
|
||||
- В асинхронному шляху Tailscale Serve Control UI невдалі спроби для одного й того самого
|
||||
`{scope, ip}` серіалізуються до того, як лімітер зафіксує помилку. Тому дві хибні
|
||||
одночасні повторні спроби від того самого клієнта можуть призвести до `retry later`
|
||||
у другій спробі замість двох звичайних невідповідностей.
|
||||
- `too many failed authentication attempts (retry later)` від loopback-клієнта з browser-origin
|
||||
→ повторні невдалі спроби з того самого нормалізованого `Origin` тимчасово блокуються; інший localhost origin використовує окремий bucket.
|
||||
- повторюване `unauthorized` після цієї повторної спроби → розсинхронізація спільного токена/токена пристрою; оновіть конфігурацію токена та за потреби повторно схваліть/ротуйте токен пристрою.
|
||||
- `gateway connect failed:` → неправильний хост/порт/URL призначення.
|
||||
- Ця повторна спроба з кешованим токеном повторно використовує набір scope, збережений разом
|
||||
зі спареним токеном пристрою. Виклики з явним `deviceToken` / явними `scopes` зберігають свій
|
||||
запитаний набір scope.
|
||||
- Поза цим шляхом повторної спроби пріоритет auth під час підключення такий:
|
||||
спочатку явний shared token/password, потім явний `deviceToken`, потім збережений токен пристрою,
|
||||
а потім bootstrap token.
|
||||
- На асинхронному шляху Tailscale Serve Control UI невдалі спроби для того самого
|
||||
`{scope, ip}` серіалізуються до того, як обмежувач зафіксує невдачу. Тому дві некоректні
|
||||
одночасні повторні спроби від одного клієнта можуть показати `retry later`
|
||||
на другій спробі замість двох звичайних невідповідностей.
|
||||
- `too many failed authentication attempts (retry later)` від loopback-клієнта браузерного origin
|
||||
→ повторні невдачі від того самого нормалізованого `Origin` тимчасово
|
||||
блокуються; інший localhost origin використовує окремий bucket.
|
||||
- повторювані `unauthorized` після цієї повторної спроби → розсинхронізація shared token/device token; оновіть конфігурацію токена й за потреби повторно схваліть/переверніть токен пристрою.
|
||||
- `gateway connect failed:` → неправильний host/port/url призначення.
|
||||
|
||||
### Швидка карта кодів деталей автентифікації
|
||||
### Швидка карта кодів деталей auth
|
||||
|
||||
Використовуйте `error.details.code` з невдалого відповіді `connect`, щоб вибрати наступну дію:
|
||||
Використовуйте `error.details.code` із невдалого відповіді `connect`, щоб вибрати наступну дію:
|
||||
|
||||
| Код деталей | Значення | Рекомендована дія |
|
||||
| ---------------------------- | -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `AUTH_TOKEN_MISSING` | Клієнт не надіслав обов’язковий спільний токен. | Вставте/задайте токен у клієнті та повторіть спробу. Для шляхів dashboard: `openclaw config get gateway.auth.token`, потім вставте його в налаштуваннях Control UI. |
|
||||
| `AUTH_TOKEN_MISMATCH` | Спільний токен не збігся з токеном автентифікації шлюзу. | Якщо `canRetryWithDeviceToken=true`, дозвольте одну довірену повторну спробу. Повторні спроби з кешованим токеном повторно використовують збережені схвалені scope; виклики з явним `deviceToken` / `scopes` зберігають запитувані scope. Якщо все ще не працює, виконайте [контрольний список відновлення після дрейфу токена](/cli/devices#token-drift-recovery-checklist). |
|
||||
| `AUTH_DEVICE_TOKEN_MISMATCH` | Кешований токен для конкретного пристрою застарів або відкликаний. | Ротуйте/повторно схваліть токен пристрою за допомогою [devices CLI](/cli/devices), потім перепідключіться. |
|
||||
| `PAIRING_REQUIRED` | Ідентичність пристрою відома, але не схвалена для цієї ролі. | Схваліть очікуваний запит: `openclaw devices list`, потім `openclaw devices approve <requestId>`. |
|
||||
| Detail code | Значення | Рекомендована дія |
|
||||
| ---------------------------- | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `AUTH_TOKEN_MISSING` | Клієнт не надіслав обов’язковий shared token. | Вставте/задайте токен у клієнті й повторіть спробу. Для шляхів dashboard: `openclaw config get gateway.auth.token`, а потім вставте його в налаштуваннях Control UI. |
|
||||
| `AUTH_TOKEN_MISMATCH` | Shared token не збігся з токеном auth gateway. | Якщо `canRetryWithDeviceToken=true`, дозвольте одну довірену повторну спробу. Повторні спроби з кешованим токеном повторно використовують збережені схвалені scope; виклики з явним `deviceToken` / `scopes` зберігають запитані scope. Якщо все одно не працює, виконайте [контрольний список відновлення після дрейфу токена](/cli/devices#token-drift-recovery-checklist). |
|
||||
| `AUTH_DEVICE_TOKEN_MISMATCH` | Кешований токен для пристрою застарів або відкликаний. | Переверніть/повторно схваліть токен пристрою за допомогою [CLI devices](/cli/devices), а потім підключіться знову. |
|
||||
| `PAIRING_REQUIRED` | Ідентичність пристрою відома, але не схвалена для цієї ролі. | Схваліть запит, що очікує: `openclaw devices list`, потім `openclaw devices approve <requestId>`. |
|
||||
|
||||
Перевірка міграції device auth v2:
|
||||
|
||||
@ -163,49 +217,49 @@ openclaw gateway status
|
||||
|
||||
1. чекає на `connect.challenge`
|
||||
2. підписує payload, прив’язаний до challenge
|
||||
3. надсилає `connect.params.device.nonce` з тим самим challenge nonce
|
||||
3. надсилає `connect.params.device.nonce` з тим самим nonce challenge
|
||||
|
||||
Якщо `openclaw devices rotate` / `revoke` / `remove` неочікувано відхиляються:
|
||||
Якщо `openclaw devices rotate` / `revoke` / `remove` несподівано заборонено:
|
||||
|
||||
- сесії токена pair-ованого пристрою можуть керувати лише **власним** пристроєм, якщо
|
||||
виклик також не має `operator.admin`
|
||||
- `openclaw devices rotate --scope ...` може запитувати лише ті scope оператора,
|
||||
- сесії paired-device token можуть керувати лише **власним**
|
||||
пристроєм, якщо тільки виклик також не має `operator.admin`
|
||||
- `openclaw devices rotate --scope ...` може запитувати лише ті operator scope,
|
||||
які сесія виклику вже має
|
||||
|
||||
Пов’язане:
|
||||
|
||||
- [/web/control-ui](/web/control-ui)
|
||||
- [/gateway/configuration](/uk/gateway/configuration) (режими автентифікації шлюзу)
|
||||
- [/gateway/configuration](/uk/gateway/configuration) (режими auth gateway)
|
||||
- [/gateway/trusted-proxy-auth](/uk/gateway/trusted-proxy-auth)
|
||||
- [/gateway/remote](/uk/gateway/remote)
|
||||
- [/cli/devices](/cli/devices)
|
||||
|
||||
## Сервіс шлюзу не працює
|
||||
## Сервіс gateway не працює
|
||||
|
||||
Використовуйте це, коли сервіс установлено, але процес не утримується запущеним.
|
||||
Використовуйте це, якщо сервіс встановлено, але процес не утримується в робочому стані.
|
||||
|
||||
```bash
|
||||
openclaw gateway status
|
||||
openclaw status
|
||||
openclaw logs --follow
|
||||
openclaw doctor
|
||||
openclaw gateway status --deep # також сканувати системні сервіси
|
||||
openclaw gateway status --deep # також сканує системні сервіси
|
||||
```
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- `Runtime: stopped` з підказками щодо завершення.
|
||||
- `Runtime: stopped` з підказками про завершення.
|
||||
- Невідповідність конфігурації сервісу (`Config (cli)` проти `Config (service)`).
|
||||
- Конфлікти порту/слухача.
|
||||
- Додаткові встановлення launchd/systemd/schtasks, коли використовується `--deep`.
|
||||
- Конфлікти портів/слухачів.
|
||||
- Додаткові встановлення launchd/systemd/schtasks при використанні `--deep`.
|
||||
- Підказки очищення `Other gateway-like services detected (best effort)`.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `Gateway start blocked: set gateway.mode=local` або `existing config is missing gateway.mode` → локальний режим шлюзу не ввімкнено, або файл конфігурації було пошкоджено й він втратив `gateway.mode`. Виправлення: задайте `gateway.mode="local"` у конфігурації або повторно виконайте `openclaw onboard --mode local` / `openclaw setup`, щоб знову проставити очікувану конфігурацію локального режиму. Якщо ви запускаєте OpenClaw через Podman, типовий шлях до конфігурації — `~/.openclaw/openclaw.json`.
|
||||
- `refusing to bind gateway ... without auth` → bind не на loopback без дійсного шляху автентифікації шлюзу (токен/пароль або trusted-proxy там, де його налаштовано).
|
||||
- `Gateway start blocked: set gateway.mode=local` або `existing config is missing gateway.mode` → локальний режим gateway не ввімкнено, або файл конфігурації було пошкоджено й він втратив `gateway.mode`. Виправлення: задайте `gateway.mode="local"` у своїй конфігурації або повторно запустіть `openclaw onboard --mode local` / `openclaw setup`, щоб відновити очікувану конфігурацію local-mode. Якщо ви запускаєте OpenClaw через Podman, типовий шлях до конфігурації — `~/.openclaw/openclaw.json`.
|
||||
- `refusing to bind gateway ... without auth` → прив’язка не до loopback без дійсного шляху auth gateway (token/password або trusted-proxy, якщо налаштовано).
|
||||
- `another gateway instance is already listening` / `EADDRINUSE` → конфлікт порту.
|
||||
- `Other gateway-like services detected (best effort)` → існують застарілі або паралельні launchd/systemd/schtasks-юнити. У більшості конфігурацій має бути один шлюз на машину; якщо вам справді потрібно більше одного, ізолюйте порти + конфігурацію/стан/робочий простір. Див. [/gateway#multiple-gateways-same-host](/uk/gateway#multiple-gateways-same-host).
|
||||
- `Other gateway-like services detected (best effort)` → існують застарілі або паралельні launchd/systemd/schtasks units. У більшості конфігурацій слід тримати один gateway на машину; якщо вам справді потрібно більше одного, ізолюйте порти + config/state/workspace. Див. [/gateway#multiple-gateways-same-host](/uk/gateway#multiple-gateways-same-host).
|
||||
|
||||
Пов’язане:
|
||||
|
||||
@ -213,9 +267,9 @@ openclaw gateway status --deep # також сканувати системн
|
||||
- [/gateway/configuration](/uk/gateway/configuration)
|
||||
- [/gateway/doctor](/uk/gateway/doctor)
|
||||
|
||||
## Попередження probe шлюзу
|
||||
## Попередження probe gateway
|
||||
|
||||
Використовуйте це, коли `openclaw gateway probe` досягає цілі, але все одно виводить блок попередження.
|
||||
Використовуйте це, коли `openclaw gateway probe` до чогось дістається, але все одно виводить блок попередження.
|
||||
|
||||
```bash
|
||||
openclaw gateway probe
|
||||
@ -225,15 +279,15 @@ openclaw gateway probe --ssh user@gateway-host
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- `warnings[].code` і `primaryTargetId` у JSON-виводі.
|
||||
- Чи стосується попередження резервного SSH-шляху, кількох шлюзів, відсутніх scope або нерозв’язаних auth refs.
|
||||
- `warnings[].code` і `primaryTargetId` у виводі JSON.
|
||||
- Чи пов’язане попередження з резервним SSH, кількома gateway, відсутніми scope або нерозв’язаними auth refs.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `SSH tunnel failed to start; falling back to direct probes.` → налаштування SSH не вдалося, але команда все одно спробувала прямі налаштовані/loopback-цілі.
|
||||
- `multiple reachable gateways detected` → відповіла більш ніж одна ціль. Зазвичай це означає навмисну багатошлюзову конфігурацію або застарілі/дубльовані слухачі.
|
||||
- `Probe diagnostics are limited by gateway scopes (missing operator.read)` → connect спрацював, але детальний RPC обмежено scope; pair-уйте ідентичність пристрою або використовуйте облікові дані з `operator.read`.
|
||||
- нерозв’язане попередження SecretRef для `gateway.auth.*` / `gateway.remote.*` → матеріали автентифікації були недоступні в цьому шляху команди для цілі, що завершилася помилкою.
|
||||
- `SSH tunnel failed to start; falling back to direct probes.` → налаштування SSH не вдалося, але команда все одно спробувала прямі налаштовані/loopback-призначення.
|
||||
- `multiple reachable gateways detected` → відповіло більше однієї цілі. Зазвичай це означає навмисне багатошлюзове налаштування або застарілі/дубльовані слухачі.
|
||||
- `Probe diagnostics are limited by gateway scopes (missing operator.read)` → підключення спрацювало, але RPC деталей обмежений scope; спарте ідентичність пристрою або використайте облікові дані з `operator.read`.
|
||||
- нерозв’язане попередження SecretRef для `gateway.auth.*` / `gateway.remote.*` → auth-матеріал був недоступний у цьому шляху команди для цілі, що не пройшла перевірку.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
@ -243,7 +297,7 @@ openclaw gateway probe --ssh user@gateway-host
|
||||
|
||||
## Канал підключений, але повідомлення не проходять
|
||||
|
||||
Якщо стан каналу — connected, але потік повідомлень не працює, зосередьтеся на політиці, дозволах і правилах доставки, специфічних для каналу.
|
||||
Якщо стан каналу показує, що він підключений, але потік повідомлень мертвий, зосередьтеся на політиці, дозволах і специфічних для каналу правилах доставки.
|
||||
|
||||
```bash
|
||||
openclaw channels status --probe
|
||||
@ -256,14 +310,14 @@ openclaw config get channels
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Політика DM (`pairing`, `allowlist`, `open`, `disabled`).
|
||||
- Allowlist групи та вимоги до згадки.
|
||||
- Allowlist групи та вимоги до згадок.
|
||||
- Відсутні дозволи/scopes API каналу.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `mention required` → повідомлення ігнорується політикою згадки в групі.
|
||||
- `pairing` / сліди очікуваного схвалення → відправника не схвалено.
|
||||
- `missing_scope`, `not_in_channel`, `Forbidden`, `401/403` → проблема автентифікації/дозволів каналу.
|
||||
- `mention required` → повідомлення ігнорується через політику згадок у групі.
|
||||
- `pairing` / сліди очікування схвалення → відправника не схвалено.
|
||||
- `missing_scope`, `not_in_channel`, `Forbidden`, `401/403` → проблема з auth/дозволами каналу.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
@ -274,7 +328,7 @@ openclaw config get channels
|
||||
|
||||
## Доставка cron і heartbeat
|
||||
|
||||
Якщо cron або heartbeat не спрацювали чи не були доставлені, спочатку перевірте стан планувальника, а потім ціль доставки.
|
||||
Якщо cron або heartbeat не запустилися чи не були доставлені, спочатку перевірте стан планувальника, а потім ціль доставки.
|
||||
|
||||
```bash
|
||||
openclaw cron status
|
||||
@ -287,18 +341,18 @@ openclaw logs --follow
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Cron увімкнено і є наступне пробудження.
|
||||
- Статус історії запусків завдань (`ok`, `skipped`, `error`).
|
||||
- Стан історії запусків завдання (`ok`, `skipped`, `error`).
|
||||
- Причини пропуску heartbeat (`quiet-hours`, `requests-in-flight`, `alerts-disabled`, `empty-heartbeat-file`, `no-tasks-due`).
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `cron: scheduler disabled; jobs will not run automatically` → cron вимкнено.
|
||||
- `cron: timer tick failed` → збій тіку планувальника; перевірте помилки файлів/журналів/runtime.
|
||||
- `cron: timer tick failed` → збій тіку планувальника; перевірте помилки файлів/журналів/середовища виконання.
|
||||
- `heartbeat skipped` з `reason=quiet-hours` → поза вікном активних годин.
|
||||
- `heartbeat skipped` з `reason=empty-heartbeat-file` → `HEARTBEAT.md` існує, але містить лише порожні рядки / markdown-заголовки, тому OpenClaw пропускає виклик моделі.
|
||||
- `heartbeat skipped` з `reason=no-tasks-due` → `HEARTBEAT.md` містить блок `tasks:`, але жодне із завдань не підлягає виконанню в цьому тіку.
|
||||
- `heartbeat skipped` з `reason=no-tasks-due` → `HEARTBEAT.md` містить блок `tasks:`, але на цьому тіку жодне із завдань не має бути виконане.
|
||||
- `heartbeat: unknown accountId` → недійсний id облікового запису для цілі доставки heartbeat.
|
||||
- `heartbeat skipped` з `reason=dm-blocked` → ціль heartbeat була зіставлена з призначенням у стилі DM, тоді як `agents.defaults.heartbeat.directPolicy` (або перевизначення для конкретного агента) має значення `block`.
|
||||
- `heartbeat skipped` з `reason=dm-blocked` → ціль heartbeat визначилася як призначення стилю DM, тоді як `agents.defaults.heartbeat.directPolicy` (або перевизначення для конкретного агента) має значення `block`.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
@ -306,9 +360,9 @@ openclaw logs --follow
|
||||
- [/automation/cron-jobs](/uk/automation/cron-jobs)
|
||||
- [/gateway/heartbeat](/uk/gateway/heartbeat)
|
||||
|
||||
## Збій інструмента pair-ованого вузла
|
||||
## Не працює paired tool вузла
|
||||
|
||||
Якщо вузол pair-ований, але інструменти не працюють, окремо перевірте передній план, дозволи та стан схвалення.
|
||||
Якщо вузол спарено, але інструменти не працюють, окремо перевірте foreground, дозволи та стан схвалення.
|
||||
|
||||
```bash
|
||||
openclaw nodes status
|
||||
@ -320,9 +374,9 @@ openclaw status
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Вузол у мережі з очікуваними можливостями.
|
||||
- Надані ОС-дозволи для камери/мікрофона/геолокації/екрана.
|
||||
- Стан схвалень exec і allowlist.
|
||||
- Вузол онлайн з очікуваними можливостями.
|
||||
- Надані дозволи ОС для camera/mic/location/screen.
|
||||
- Стан exec approvals і allowlist.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
@ -337,9 +391,9 @@ openclaw status
|
||||
- [/nodes/index](/uk/nodes/index)
|
||||
- [/tools/exec-approvals](/uk/tools/exec-approvals)
|
||||
|
||||
## Збій browser tool
|
||||
## Не працює browser tool
|
||||
|
||||
Використовуйте це, коли дії browser tool не працюють, хоча сам шлюз справний.
|
||||
Використовуйте це, коли дії browser tool збоять, хоча сам gateway справний.
|
||||
|
||||
```bash
|
||||
openclaw browser status
|
||||
@ -351,41 +405,41 @@ openclaw doctor
|
||||
|
||||
Зверніть увагу на таке:
|
||||
|
||||
- Чи встановлено `plugins.allow` і чи містить він `browser`.
|
||||
- Дійсний шлях до виконуваного файла браузера.
|
||||
- Чи задано `plugins.allow` і чи містить він `browser`.
|
||||
- Коректний шлях до виконуваного файла браузера.
|
||||
- Досяжність профілю CDP.
|
||||
- Доступність локального Chrome для профілів `existing-session` / `user`.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `unknown command "browser"` або `unknown command 'browser'` → вбудований browser plugin виключено через `plugins.allow`.
|
||||
- browser tool відсутній / недоступний, хоча `browser.enabled=true` → `plugins.allow` виключає `browser`, тому плагін ніколи не завантажився.
|
||||
- `Failed to start Chrome CDP on port` → не вдалося запустити процес браузера.
|
||||
- `unknown command "browser"` або `unknown command 'browser'` → bundled plugin браузера виключено через `plugins.allow`.
|
||||
- browser tool відсутній / недоступний, хоча `browser.enabled=true` → `plugins.allow` виключає `browser`, тому plugin ніколи не завантажився.
|
||||
- `Failed to start Chrome CDP on port` → процес браузера не зміг запуститися.
|
||||
- `browser.executablePath not found` → налаштований шлях недійсний.
|
||||
- `browser.cdpUrl must be http(s) or ws(s)` → налаштований URL CDP використовує непідтримувану схему, наприклад `file:` або `ftp:`.
|
||||
- `browser.cdpUrl has invalid port` → у налаштованого URL CDP неправильний або позадіапазонний порт.
|
||||
- `No Chrome tabs found for profile="user"` → профіль приєднання Chrome MCP не має відкритих локальних вкладок Chrome.
|
||||
- `Remote CDP for profile "<name>" is not reachable` → налаштована віддалена кінцева точка CDP недосяжна з хоста шлюзу.
|
||||
- `Browser attachOnly is enabled ... not reachable` або `Browser attachOnly is enabled and CDP websocket ... is not reachable` → профіль attach-only не має досяжної цілі, або HTTP-кінцева точка відповіла, але CDP WebSocket усе одно не вдалося відкрити.
|
||||
- `Playwright is not available in this gateway build; '<feature>' is unsupported.` → у поточному встановленні шлюзу немає повного пакета Playwright; знімки ARIA і базові знімки сторінки все ще можуть працювати, але навігація, AI-знімки, знімки елементів за CSS-селекторами та експорт PDF залишаються недоступними.
|
||||
- `fullPage is not supported for element screenshots` → запит на знімок екрана змішав `--full-page` з `--ref` або `--element`.
|
||||
- `element screenshots are not supported for existing-session profiles; use ref from snapshot.` → виклики знімків екрана Chrome MCP / `existing-session` мають використовувати захоплення сторінки або `--ref` зі знімка, а не CSS `--element`.
|
||||
- `existing-session file uploads do not support element selectors; use ref/inputRef.` → хуки завантаження файлів Chrome MCP потребують посилань зі знімка, а не CSS-селекторів.
|
||||
- `existing-session file uploads currently support one file at a time.` → надсилайте по одному завантаженню за виклик у профілях Chrome MCP.
|
||||
- `browser.cdpUrl has invalid port` → налаштований URL CDP має некоректний або позадіапазонний порт.
|
||||
- `No Chrome tabs found for profile="user"` → профіль підключення Chrome MCP не має відкритих локальних вкладок Chrome.
|
||||
- `Remote CDP for profile "<name>" is not reachable` → налаштований віддалений endpoint CDP недосяжний з хоста gateway.
|
||||
- `Browser attachOnly is enabled ... not reachable` або `Browser attachOnly is enabled and CDP websocket ... is not reachable` → профіль лише з підключенням не має досяжної цілі, або HTTP endpoint відповів, але WebSocket CDP все одно не вдалося відкрити.
|
||||
- `Playwright is not available in this gateway build; '<feature>' is unsupported.` → поточна інсталяція gateway не містить повного пакета Playwright; ARIA snapshots і базові знімки сторінки все ще можуть працювати, але навігація, AI snapshots, знімки елементів за CSS-селекторами та експорт PDF залишаються недоступними.
|
||||
- `fullPage is not supported for element screenshots` → запит знімка екрана поєднав `--full-page` з `--ref` або `--element`.
|
||||
- `element screenshots are not supported for existing-session profiles; use ref from snapshot.` → виклики знімків екрана Chrome MCP / `existing-session` мають використовувати захоплення сторінки або `--ref` зі snapshot, а не CSS `--element`.
|
||||
- `existing-session file uploads do not support element selectors; use ref/inputRef.` → хуки завантаження файлів Chrome MCP потребують snapshot refs, а не CSS-селекторів.
|
||||
- `existing-session file uploads currently support one file at a time.` → надсилайте одне завантаження за виклик у профілях Chrome MCP.
|
||||
- `existing-session dialog handling does not support timeoutMs.` → хуки діалогів у профілях Chrome MCP не підтримують перевизначення timeout.
|
||||
- `response body is not supported for existing-session profiles yet.` → `responsebody` усе ще потребує керованого браузера або сирого профілю CDP.
|
||||
- застарілі перевизначення viewport / dark-mode / locale / offline у профілях attach-only або віддаленого CDP → виконайте `openclaw browser stop --browser-profile <name>`, щоб закрити активну керовану сесію та звільнити стан емуляції Playwright/CDP без перезапуску всього шлюзу.
|
||||
- `response body is not supported for existing-session profiles yet.` → `responsebody` поки що потребує керованого браузера або профілю raw CDP.
|
||||
- застарілі перевизначення viewport / dark-mode / locale / offline у профілях attach-only або remote CDP → виконайте `openclaw browser stop --browser-profile <name>`, щоб закрити активну сесію керування та звільнити стан емуляції Playwright/CDP без перезапуску всього gateway.
|
||||
|
||||
Пов’язане:
|
||||
|
||||
- [/tools/browser-linux-troubleshooting](/uk/tools/browser-linux-troubleshooting)
|
||||
- [/tools/browser](/uk/tools/browser)
|
||||
|
||||
## Якщо ви оновилися і щось раптом зламалося
|
||||
## Якщо ви оновилися і щось раптово зламалося
|
||||
|
||||
Більшість проблем після оновлення пов’язані з дрейфом конфігурації або з жорсткішими типовими значеннями, які тепер застосовуються.
|
||||
Більшість проблем після оновлення — це дрейф конфігурації або суворіші типові налаштування, які тепер примусово застосовуються.
|
||||
|
||||
### 1) Змінилася поведінка автентифікації та перевизначення URL
|
||||
### 1) Змінилася поведінка auth і перевизначення URL
|
||||
|
||||
```bash
|
||||
openclaw gateway status
|
||||
@ -396,15 +450,15 @@ openclaw config get gateway.auth.mode
|
||||
|
||||
Що перевірити:
|
||||
|
||||
- Якщо `gateway.mode=remote`, виклики CLI можуть бути спрямовані на remote, навіть якщо локальний сервіс працює нормально.
|
||||
- Явні виклики `--url` не повертаються до збережених облікових даних.
|
||||
- Якщо `gateway.mode=remote`, виклики CLI можуть бути спрямовані на remote, тоді як локальний сервіс працює нормально.
|
||||
- Явні виклики `--url` не використовують збережені облікові дані як резервний варіант.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `gateway connect failed:` → неправильна ціль URL.
|
||||
- `unauthorized` → кінцева точка досяжна, але автентифікація неправильна.
|
||||
- `unauthorized` → endpoint досяжний, але auth неправильна.
|
||||
|
||||
### 2) Guardrails для bind і auth стали суворішими
|
||||
### 2) Обмеження bind і auth стали суворішими
|
||||
|
||||
```bash
|
||||
openclaw config get gateway.bind
|
||||
@ -416,13 +470,13 @@ openclaw logs --follow
|
||||
|
||||
Що перевірити:
|
||||
|
||||
- Bind не на loopback (`lan`, `tailnet`, `custom`) потребують дійсного шляху автентифікації шлюзу: спільна автентифікація токеном/паролем або правильно налаштоване розгортання `trusted-proxy` не на loopback.
|
||||
- Старі ключі, як-от `gateway.token`, не замінюють `gateway.auth.token`.
|
||||
- Для bind не до loopback (`lan`, `tailnet`, `custom`) потрібен дійсний шлях auth gateway: auth через shared token/password або коректно налаштоване розгортання non-loopback `trusted-proxy`.
|
||||
- Старі ключі на кшталт `gateway.token` не замінюють `gateway.auth.token`.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `refusing to bind gateway ... without auth` → bind не на loopback без дійсного шляху автентифікації шлюзу.
|
||||
- `RPC probe: failed` while runtime is running → шлюз живий, але недоступний із поточними auth/url.
|
||||
- `refusing to bind gateway ... without auth` → прив’язка не до loopback без дійсного шляху auth gateway.
|
||||
- `RPC probe: failed` while runtime is running → gateway живий, але недоступний з поточною auth/url.
|
||||
|
||||
### 3) Змінився стан pairing та ідентичності пристрою
|
||||
|
||||
@ -435,15 +489,15 @@ openclaw doctor
|
||||
|
||||
Що перевірити:
|
||||
|
||||
- Очікувані схвалення пристроїв для dashboard/nodes.
|
||||
- Очікувані схвалення DM pairing після змін політики або ідентичності.
|
||||
- Очікують схвалення пристрої для dashboard/nodes.
|
||||
- Очікують схвалення DM pairing після змін політики або ідентичності.
|
||||
|
||||
Типові ознаки:
|
||||
|
||||
- `device identity required` → вимоги device auth не виконано.
|
||||
- `pairing required` → відправника/пристрій потрібно схвалити.
|
||||
|
||||
Якщо конфігурація сервісу та runtime все ще не збігаються після перевірок, перевстановіть метадані сервісу з того самого каталогу профілю/стану:
|
||||
Якщо після перевірок конфігурація сервісу й runtime усе ще не збігаються, перевстановіть метадані сервісу з того самого каталогу profile/state:
|
||||
|
||||
```bash
|
||||
openclaw gateway install --force
|
||||
|
||||
@ -1,25 +1,25 @@
|
||||
---
|
||||
read_when:
|
||||
- OpenClaw не працює, і вам потрібен найшвидший шлях до виправлення
|
||||
- Вам потрібен процес первинної діагностики перед переходом до глибоких runbook
|
||||
summary: Центр усунення несправностей OpenClaw з підходом «спершу симптом»
|
||||
- Ви хочете пройти процес тріажу перед зануренням у докладні інструкції
|
||||
summary: Центр усунення несправностей OpenClaw зі швидкою діагностикою за симптомами
|
||||
title: Загальне усунення несправностей
|
||||
x-i18n:
|
||||
generated_at: "2026-04-05T18:06:22Z"
|
||||
generated_at: "2026-04-07T14:58:59Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 23ae9638af5edf5a5e0584ccb15ba404223ac3b16c2d62eb93b2c9dac171c252
|
||||
source_hash: 8abda90ef80234c2f91a51c5e1f2c004d4a4da12a5d5631b5927762550c6d5e3
|
||||
source_path: help/troubleshooting.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Усунення несправностей
|
||||
|
||||
Якщо у вас є лише 2 хвилини, використовуйте цю сторінку як вхідну точку для первинної діагностики.
|
||||
Якщо у вас є лише 2 хвилини, використайте цю сторінку як початкову точку тріажу.
|
||||
|
||||
## Перші 60 секунд
|
||||
|
||||
Виконайте цю точну послідовність команд у такому порядку:
|
||||
Запустіть цю точну послідовність команд у вказаному порядку:
|
||||
|
||||
```bash
|
||||
openclaw status
|
||||
@ -31,23 +31,36 @@ openclaw channels status --probe
|
||||
openclaw logs --follow
|
||||
```
|
||||
|
||||
Хороший результат в один рядок:
|
||||
Хороший результат в одному рядку:
|
||||
|
||||
- `openclaw status` → показує налаштовані канали й не має очевидних помилок auth.
|
||||
- `openclaw status --all` → повний звіт присутній і ним можна поділитися.
|
||||
- `openclaw status` → показує налаштовані канали та відсутність явних помилок автентифікації.
|
||||
- `openclaw status --all` → повний звіт наявний і ним можна поділитися.
|
||||
- `openclaw gateway probe` → очікувана ціль gateway доступна (`Reachable: yes`). `RPC: limited - missing scope: operator.read` означає погіршену діагностику, а не збій підключення.
|
||||
- `openclaw gateway status` → `Runtime: running` і `RPC probe: ok`.
|
||||
- `openclaw doctor` → немає блокувальних помилок config/service.
|
||||
- `openclaw channels status --probe` → за доступного gateway повертає live-стан транспорту для кожного облікового запису
|
||||
плюс результати probe/audit, наприклад `works` або `audit ok`; якщо
|
||||
gateway недоступний, команда повертається до зведень лише з config.
|
||||
- `openclaw doctor` → немає блокувальних помилок конфігурації/сервісу.
|
||||
- `openclaw channels status --probe` → доступний gateway повертає живий стан транспорту для кожного облікового запису разом із результатами probe/audit, такими як `works` або `audit ok`; якщо gateway недоступний, команда повертається до зведень лише за конфігурацією.
|
||||
- `openclaw logs --follow` → стабільна активність, без повторюваних фатальних помилок.
|
||||
|
||||
## Anthropic long context 429
|
||||
## 429 для довгого контексту Anthropic
|
||||
|
||||
Якщо ви бачите:
|
||||
`HTTP 429: rate_limit_error: Extra usage is required for long context requests`,
|
||||
перейдіть до [/gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context](/gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context).
|
||||
перейдіть до [/gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context](/uk/gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context).
|
||||
|
||||
## Локальний OpenAI-compatible backend працює напряму, але не працює в OpenClaw
|
||||
|
||||
Якщо ваш локальний або self-hosted backend `/v1` відповідає на малі прямі probe до
|
||||
`/v1/chat/completions`, але завершується помилкою в `openclaw infer model run` або під час звичайних
|
||||
ходів агента:
|
||||
|
||||
1. Якщо помилка згадує, що `messages[].content` має бути рядком, установіть
|
||||
`models.providers.<provider>.models[].compat.requiresStringContent: true`.
|
||||
2. Якщо backend усе ще завершується помилкою лише під час ходів агента OpenClaw, установіть
|
||||
`models.providers.<provider>.models[].compat.supportsTools: false` і повторіть спробу.
|
||||
3. Якщо крихітні прямі виклики все ще працюють, але більші запити OpenClaw аварійно завершують роботу
|
||||
backend, розглядайте решту проблеми як обмеження висхідної моделі/сервера та
|
||||
продовжуйте в докладній інструкції:
|
||||
[/gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail](/uk/gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail)
|
||||
|
||||
## Не вдається встановити plugin через відсутні openclaw extensions
|
||||
|
||||
@ -58,7 +71,7 @@ openclaw logs --follow
|
||||
|
||||
1. Додайте `openclaw.extensions` до `package.json`.
|
||||
2. Спрямуйте записи на зібрані runtime-файли (зазвичай `./dist/index.js`).
|
||||
3. Опублікуйте plugin знову й ще раз виконайте `openclaw plugins install <package>`.
|
||||
3. Перевидайте plugin і знову виконайте `openclaw plugins install <package>`.
|
||||
|
||||
Приклад:
|
||||
|
||||
@ -72,28 +85,28 @@ openclaw logs --follow
|
||||
}
|
||||
```
|
||||
|
||||
Довідка: [Архітектура plugins](/plugins/architecture)
|
||||
Довідка: [Архітектура plugin](/uk/plugins/architecture)
|
||||
|
||||
## Дерево рішень
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
A[OpenClaw не працює] --> B{Що ламається першим}
|
||||
B --> C[Немає відповідей]
|
||||
B --> D[Dashboard або Control UI не підключається]
|
||||
B --> E[Gateway не запускається або service не працює]
|
||||
B --> F[Канал підключається, але повідомлення не проходять]
|
||||
B --> G[Cron або heartbeat не спрацював чи не доставив]
|
||||
B --> H[Node спарено, але camera canvas screen exec не працює]
|
||||
B --> I[Не працює інструмент browser]
|
||||
A[OpenClaw is not working] --> B{What breaks first}
|
||||
B --> C[No replies]
|
||||
B --> D[Dashboard or Control UI will not connect]
|
||||
B --> E[Gateway will not start or service not running]
|
||||
B --> F[Channel connects but messages do not flow]
|
||||
B --> G[Cron or heartbeat did not fire or did not deliver]
|
||||
B --> H[Node is paired but camera canvas screen exec fails]
|
||||
B --> I[Browser tool fails]
|
||||
|
||||
C --> C1[/Розділ Немає відповідей/]
|
||||
D --> D1[/Розділ Control UI/]
|
||||
E --> E1[/Розділ Gateway/]
|
||||
F --> F1[/Розділ Потік каналу/]
|
||||
G --> G1[/Розділ Автоматизація/]
|
||||
H --> H1[/Розділ Інструменти node/]
|
||||
I --> I1[/Розділ Browser/]
|
||||
C --> C1[/No replies section/]
|
||||
D --> D1[/Control UI section/]
|
||||
E --> E1[/Gateway section/]
|
||||
F --> F1[/Channel flow section/]
|
||||
G --> G1[/Automation section/]
|
||||
H --> H1[/Node tools section/]
|
||||
I --> I1[/Browser section/]
|
||||
```
|
||||
|
||||
<AccordionGroup>
|
||||
@ -110,24 +123,24 @@ flowchart TD
|
||||
|
||||
- `Runtime: running`
|
||||
- `RPC probe: ok`
|
||||
- Ваш канал показує підключений транспорт і, де це підтримується, `works` або `audit ok` у `channels status --probe`
|
||||
- Відправник схвалений (або політика DM має значення open/allowlist)
|
||||
- Ваш канал показує підключений транспорт і, де підтримується, `works` або `audit ok` у `channels status --probe`
|
||||
- Відправник позначений як схвалений (або для DM політика відкрита/allowlist)
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `drop guild message (mention required` → gating згадувань заблокував повідомлення в Discord.
|
||||
- `pairing request` → відправник не схвалений і чекає схвалення pairing у DM.
|
||||
- `drop guild message (mention required` → обмеження згадки заблокувало повідомлення в Discord.
|
||||
- `pairing request` → відправника не схвалено, і він очікує схвалення pairing у DM.
|
||||
- `blocked` / `allowlist` у логах каналу → відправник, кімната або група відфільтровані.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#no-replies](/gateway/troubleshooting#no-replies)
|
||||
- [/channels/troubleshooting](/channels/troubleshooting)
|
||||
- [/channels/pairing](/channels/pairing)
|
||||
- [/gateway/troubleshooting#no-replies](/uk/gateway/troubleshooting#no-replies)
|
||||
- [/channels/troubleshooting](/uk/channels/troubleshooting)
|
||||
- [/channels/pairing](/uk/channels/pairing)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Dashboard або Control UI не підключається">
|
||||
<Accordion title="Dashboard або Control UI не підключаються">
|
||||
```bash
|
||||
openclaw status
|
||||
openclaw gateway status
|
||||
@ -138,35 +151,30 @@ flowchart TD
|
||||
|
||||
Хороший результат виглядає так:
|
||||
|
||||
- `Dashboard: http://...` показано в `openclaw gateway status`
|
||||
- `Dashboard: http://...` показується в `openclaw gateway status`
|
||||
- `RPC probe: ok`
|
||||
- У логах немає циклу auth
|
||||
- У логах немає циклу автентифікації
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `device identity required` → контекст HTTP/non-secure не може завершити auth пристрою.
|
||||
- `device identity required` → HTTP/незахищений контекст не може завершити автентифікацію пристрою.
|
||||
- `origin not allowed` → `Origin` браузера не дозволений для цілі gateway Control UI.
|
||||
- `AUTH_TOKEN_MISMATCH` із підказками повторної спроби (`canRetryWithDeviceToken=true`) → може автоматично відбутися одна довірена повторна спроба з токеном пристрою.
|
||||
- Ця повторна спроба з кешованим токеном повторно використовує кешований набір scope, збережений разом із токеном спареного
|
||||
пристрою. Викликачі з явним `deviceToken` / явними `scopes` зберігають
|
||||
свій запитаний набір scope.
|
||||
- В асинхронному шляху Tailscale Serve для Control UI невдалі спроби для того самого
|
||||
`{scope, ip}` серіалізуються до того, як обмежувач зафіксує невдачу, тож
|
||||
друга одночасна хибна повторна спроба вже може показати `retry later`.
|
||||
- `too many failed authentication attempts (retry later)` від origin браузера на localhost → повторні невдалі спроби з того самого `Origin` тимчасово
|
||||
блокуються; інший origin localhost використовує окремий bucket.
|
||||
- повторювані `unauthorized` після цієї повторної спроби → неправильний token/password, невідповідність режиму auth або застарілий токен спареного пристрою.
|
||||
- `gateway connect failed:` → UI націлено на неправильний URL/порт або на недоступний gateway.
|
||||
- `AUTH_TOKEN_MISMATCH` із підказками повторної спроби (`canRetryWithDeviceToken=true`) → одна повторна спроба з довіреним токеном пристрою може відбутися автоматично.
|
||||
- Ця повторна спроба з кешованим токеном повторно використовує кешований набір scope, збережений разом із paired токеном пристрою. Виклики з явним `deviceToken` / явними `scopes` натомість зберігають запитаний ними набір scope.
|
||||
- В асинхронному шляху Tailscale Serve Control UI невдалі спроби для того самого `{scope, ip}` серіалізуються до того, як limiter зафіксує помилку, тому друга одночасна невдала повторна спроба вже може показати `retry later`.
|
||||
- `too many failed authentication attempts (retry later)` з браузерного джерела localhost → повторні невдалі спроби з того самого `Origin` тимчасово блокуються; інше джерело localhost використовує окремий bucket.
|
||||
- повторюване `unauthorized` після цієї повторної спроби → неправильний токен/пароль, невідповідність режиму автентифікації або застарілий paired токен пристрою.
|
||||
- `gateway connect failed:` → UI спрямовано на неправильний URL/порт або gateway недоступний.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#dashboard-control-ui-connectivity](/gateway/troubleshooting#dashboard-control-ui-connectivity)
|
||||
- [/gateway/troubleshooting#dashboard-control-ui-connectivity](/uk/gateway/troubleshooting#dashboard-control-ui-connectivity)
|
||||
- [/web/control-ui](/web/control-ui)
|
||||
- [/gateway/authentication](/gateway/authentication)
|
||||
- [/gateway/authentication](/uk/gateway/authentication)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Gateway не запускається або service встановлено, але він не працює">
|
||||
<Accordion title="Gateway не запускається або сервіс встановлено, але він не працює">
|
||||
```bash
|
||||
openclaw status
|
||||
openclaw gateway status
|
||||
@ -183,15 +191,15 @@ flowchart TD
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `Gateway start blocked: set gateway.mode=local` або `existing config is missing gateway.mode` → режим gateway має значення remote або у файлі config немає позначки local-mode, і це слід виправити.
|
||||
- `refusing to bind gateway ... without auth` → bind не на loopback без дійсного шляху auth для gateway (token/password або trusted-proxy, де це налаштовано).
|
||||
- `another gateway instance is already listening` або `EADDRINUSE` → порт уже зайнято.
|
||||
- `Gateway start blocked: set gateway.mode=local` або `existing config is missing gateway.mode` → режим gateway є remote, або у файлі конфігурації відсутня позначка локального режиму, і його слід виправити.
|
||||
- `refusing to bind gateway ... without auth` → прив’язування не до loopback без дійсного шляху автентифікації gateway (токен/пароль або trusted-proxy, якщо налаштовано).
|
||||
- `another gateway instance is already listening` або `EADDRINUSE` → порт уже зайнятий.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#gateway-service-not-running](/gateway/troubleshooting#gateway-service-not-running)
|
||||
- [/gateway/background-process](/gateway/background-process)
|
||||
- [/gateway/configuration](/gateway/configuration)
|
||||
- [/gateway/troubleshooting#gateway-service-not-running](/uk/gateway/troubleshooting#gateway-service-not-running)
|
||||
- [/gateway/background-process](/uk/gateway/background-process)
|
||||
- [/gateway/configuration](/uk/gateway/configuration)
|
||||
|
||||
</Accordion>
|
||||
|
||||
@ -206,24 +214,24 @@ flowchart TD
|
||||
|
||||
Хороший результат виглядає так:
|
||||
|
||||
- Транспорт каналу підключений.
|
||||
- Транспорт каналу підключено.
|
||||
- Перевірки pairing/allowlist проходять.
|
||||
- Згадування виявляються там, де це потрібно.
|
||||
- Згадки виявляються там, де це потрібно.
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `mention required` → gating згадувань заблокував обробку.
|
||||
- `pairing` / `pending` → відправник DM ще не схвалений.
|
||||
- `not_in_channel`, `missing_scope`, `Forbidden`, `401/403` → проблема з token дозволів каналу.
|
||||
- `mention required` → обмеження згадки в групі заблокувало обробку.
|
||||
- `pairing` / `pending` → відправника DM ще не схвалено.
|
||||
- `not_in_channel`, `missing_scope`, `Forbidden`, `401/403` → проблема з токеном дозволів каналу.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#channel-connected-messages-not-flowing](/gateway/troubleshooting#channel-connected-messages-not-flowing)
|
||||
- [/channels/troubleshooting](/channels/troubleshooting)
|
||||
- [/gateway/troubleshooting#channel-connected-messages-not-flowing](/uk/gateway/troubleshooting#channel-connected-messages-not-flowing)
|
||||
- [/channels/troubleshooting](/uk/channels/troubleshooting)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Cron або heartbeat не спрацював чи не доставив">
|
||||
<Accordion title="Cron або heartbeat не спрацювали чи не були доставлені">
|
||||
```bash
|
||||
openclaw status
|
||||
openclaw gateway status
|
||||
@ -235,7 +243,7 @@ flowchart TD
|
||||
|
||||
Хороший результат виглядає так:
|
||||
|
||||
- `cron.status` показує, що функцію ввімкнено і є наступне пробудження.
|
||||
- `cron.status` показує, що cron увімкнено і є наступне пробудження.
|
||||
- `cron runs` показує нещодавні записи `ok`.
|
||||
- Heartbeat увімкнено і він не поза активними годинами.
|
||||
|
||||
@ -243,20 +251,20 @@ flowchart TD
|
||||
|
||||
- `cron: scheduler disabled; jobs will not run automatically` → cron вимкнено.
|
||||
- `heartbeat skipped` з `reason=quiet-hours` → поза налаштованими активними годинами.
|
||||
- `heartbeat skipped` з `reason=empty-heartbeat-file` → `HEARTBEAT.md` існує, але містить лише порожній або суто заголовковий шаблон.
|
||||
- `heartbeat skipped` з `reason=no-tasks-due` → у `HEARTBEAT.md` активний режим завдань, але жоден із інтервалів завдань ще не настав.
|
||||
- `heartbeat skipped` з `reason=empty-heartbeat-file` → `HEARTBEAT.md` існує, але містить лише порожній каркас або каркас лише із заголовками.
|
||||
- `heartbeat skipped` з `reason=no-tasks-due` → у `HEARTBEAT.md` активний режим завдань, але ще не настав час для жодного з інтервалів завдань.
|
||||
- `heartbeat skipped` з `reason=alerts-disabled` → усю видимість heartbeat вимкнено (`showOk`, `showAlerts` і `useIndicator` усі вимкнені).
|
||||
- `requests-in-flight` → основна смуга зайнята; heartbeat wake було відкладено. - `unknown accountId` → accountId цілі доставки heartbeat не існує.
|
||||
- `requests-in-flight` → основна смуга зайнята; пробудження heartbeat було відкладено. - `unknown accountId` → цільовий account heartbeat для доставки не існує.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#cron-and-heartbeat-delivery](/gateway/troubleshooting#cron-and-heartbeat-delivery)
|
||||
- [/automation/cron-jobs#troubleshooting](/automation/cron-jobs#troubleshooting)
|
||||
- [/gateway/heartbeat](/gateway/heartbeat)
|
||||
- [/gateway/troubleshooting#cron-and-heartbeat-delivery](/uk/gateway/troubleshooting#cron-and-heartbeat-delivery)
|
||||
- [/automation/cron-jobs#troubleshooting](/uk/automation/cron-jobs#troubleshooting)
|
||||
- [/gateway/heartbeat](/uk/gateway/heartbeat)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Node спарено, але інструмент не працює: camera canvas screen exec">
|
||||
<Accordion title="Node paired, але інструмент не працює: camera canvas screen exec">
|
||||
```bash
|
||||
openclaw status
|
||||
openclaw gateway status
|
||||
@ -267,26 +275,26 @@ flowchart TD
|
||||
|
||||
Хороший результат виглядає так:
|
||||
|
||||
- Node показано як підключений і спарений для role `node`.
|
||||
- Для команди, яку ви викликаєте, існує відповідна capability.
|
||||
- Стан permission для інструмента дозволений.
|
||||
- Node вказано як підключений і paired для ролі `node`.
|
||||
- Для команди, яку ви викликаєте, існує capability.
|
||||
- Для інструмента надано стан дозволу.
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `NODE_BACKGROUND_UNAVAILABLE` → переведіть застосунок node на передній план.
|
||||
- `*_PERMISSION_REQUIRED` → permission ОС відсутній або був відхилений.
|
||||
- `SYSTEM_RUN_DENIED: approval required` → approval для exec очікує рішення.
|
||||
- `*_PERMISSION_REQUIRED` → дозвіл ОС було відхилено або він відсутній.
|
||||
- `SYSTEM_RUN_DENIED: approval required` → очікується схвалення exec.
|
||||
- `SYSTEM_RUN_DENIED: allowlist miss` → команди немає в allowlist exec.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#node-paired-tool-fails](/gateway/troubleshooting#node-paired-tool-fails)
|
||||
- [/nodes/troubleshooting](/nodes/troubleshooting)
|
||||
- [/tools/exec-approvals](/tools/exec-approvals)
|
||||
- [/gateway/troubleshooting#node-paired-tool-fails](/uk/gateway/troubleshooting#node-paired-tool-fails)
|
||||
- [/nodes/troubleshooting](/uk/nodes/troubleshooting)
|
||||
- [/tools/exec-approvals](/uk/tools/exec-approvals)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Exec раптом почав запитувати approval">
|
||||
<Accordion title="Exec раптово почав вимагати схвалення">
|
||||
```bash
|
||||
openclaw config get tools.exec.host
|
||||
openclaw config get tools.exec.security
|
||||
@ -296,14 +304,14 @@ flowchart TD
|
||||
|
||||
Що змінилося:
|
||||
|
||||
- Якщо `tools.exec.host` не задано, типовим є `auto`.
|
||||
- `host=auto` визначається як `sandbox`, коли активний runtime sandbox, і як `gateway` — в іншому разі.
|
||||
- `host=auto` відповідає лише за маршрутизацію; поведінка без запитів у стилі "YOLO" походить від `security=full` плюс `ask=off` на gateway/node.
|
||||
- Для `gateway` і `node`, якщо `tools.exec.security` не задано, типове значення — `full`.
|
||||
- Якщо `tools.exec.ask` не задано, типове значення — `off`.
|
||||
- Підсумок: якщо ви бачите approval, значить якась локальна для хоста або для сесії політика посилила exec порівняно з поточними типовими значеннями.
|
||||
- Якщо `tools.exec.host` не встановлено, значенням за замовчуванням є `auto`.
|
||||
- `host=auto` визначається як `sandbox`, коли активний runtime sandbox, інакше як `gateway`.
|
||||
- `host=auto` відповідає лише за маршрутизацію; поведінка "YOLO" без запиту визначається `security=full` разом із `ask=off` на gateway/node.
|
||||
- Для `gateway` і `node` невстановлений `tools.exec.security` за замовчуванням має значення `full`.
|
||||
- Невстановлений `tools.exec.ask` за замовчуванням має значення `off`.
|
||||
- Результат: якщо ви бачите схвалення, якась локальна для хоста або поточної сесії політика зробила exec суворішим порівняно з поточними значеннями за замовчуванням.
|
||||
|
||||
Відновлення поточної типової поведінки без approval:
|
||||
Відновлення поточної поведінки за замовчуванням без схвалень:
|
||||
|
||||
```bash
|
||||
openclaw config set tools.exec.host gateway
|
||||
@ -314,25 +322,25 @@ flowchart TD
|
||||
|
||||
Безпечніші альтернативи:
|
||||
|
||||
- Задайте лише `tools.exec.host=gateway`, якщо вам просто потрібна стабільна маршрутизація до хоста.
|
||||
- Використовуйте `security=allowlist` з `ask=on-miss`, якщо хочете exec на хості, але все одно хочете перевірку при промахах по allowlist.
|
||||
- Встановіть лише `tools.exec.host=gateway`, якщо вам просто потрібна стабільна маршрутизація на хості.
|
||||
- Використовуйте `security=allowlist` з `ask=on-miss`, якщо хочете exec на хості, але також хочете перевірку у разі промахів по allowlist.
|
||||
- Увімкніть режим sandbox, якщо хочете, щоб `host=auto` знову визначався як `sandbox`.
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `Approval required.` → команда чекає на `/approve ...`.
|
||||
- `SYSTEM_RUN_DENIED: approval required` → approval для exec на хості node очікує рішення.
|
||||
- `exec host=sandbox requires a sandbox runtime for this session` → неявний/явний вибір sandbox, але режим sandbox вимкнено.
|
||||
- `Approval required.` → команда очікує на `/approve ...`.
|
||||
- `SYSTEM_RUN_DENIED: approval required` → очікується схвалення exec на хості node.
|
||||
- `exec host=sandbox requires a sandbox runtime for this session` → неявно/явно вибрано sandbox, але режим sandbox вимкнено.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/tools/exec](/tools/exec)
|
||||
- [/tools/exec-approvals](/tools/exec-approvals)
|
||||
- [/gateway/security#runtime-expectation-drift](/gateway/security#runtime-expectation-drift)
|
||||
- [/tools/exec](/uk/tools/exec)
|
||||
- [/tools/exec-approvals](/uk/tools/exec-approvals)
|
||||
- [/gateway/security#runtime-expectation-drift](/uk/gateway/security#runtime-expectation-drift)
|
||||
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="Не працює інструмент browser">
|
||||
<Accordion title="Не працює інструмент браузера">
|
||||
```bash
|
||||
openclaw status
|
||||
openclaw gateway status
|
||||
@ -343,35 +351,35 @@ flowchart TD
|
||||
|
||||
Хороший результат виглядає так:
|
||||
|
||||
- Статус browser показує `running: true` і вибраний browser/profile.
|
||||
- Стан браузера показує `running: true` і вибраний браузер/профіль.
|
||||
- `openclaw` запускається, або `user` бачить локальні вкладки Chrome.
|
||||
|
||||
Поширені сигнатури в логах:
|
||||
|
||||
- `unknown command "browser"` або `unknown command 'browser'` → `plugins.allow` задано, але не містить `browser`.
|
||||
- `Failed to start Chrome CDP on port` → не вдалося запустити локальний browser.
|
||||
- `browser.executablePath not found` → налаштований шлях до бінарного файлу неправильний.
|
||||
- `unknown command "browser"` або `unknown command 'browser'` → `plugins.allow` установлено, але воно не містить `browser`.
|
||||
- `Failed to start Chrome CDP on port` → не вдалося запустити локальний браузер Chrome CDP.
|
||||
- `browser.executablePath not found` → налаштований шлях до бінарного файла неправильний.
|
||||
- `browser.cdpUrl must be http(s) or ws(s)` → налаштований URL CDP використовує непідтримувану схему.
|
||||
- `browser.cdpUrl has invalid port` → налаштований URL CDP містить неправильний або неприпустимий порт.
|
||||
- `No Chrome tabs found for profile="user"` → у профілі приєднання Chrome MCP немає відкритих локальних вкладок Chrome.
|
||||
- `Remote CDP for profile "<name>" is not reachable` → налаштований віддалений ендпоїнт CDP недоступний із цього хоста.
|
||||
- `browser.cdpUrl has invalid port` → налаштований URL CDP містить неправильний або позадіапазонний порт.
|
||||
- `No Chrome tabs found for profile="user"` → профіль приєднання Chrome MCP не має відкритих локальних вкладок Chrome.
|
||||
- `Remote CDP for profile "<name>" is not reachable` → налаштована віддалена кінцева точка CDP недоступна з цього хоста.
|
||||
- `Browser attachOnly is enabled ... not reachable` або `Browser attachOnly is enabled and CDP websocket ... is not reachable` → профіль attach-only не має живої цілі CDP.
|
||||
- застарілі перевизначення viewport / dark-mode / locale / offline для профілів attach-only або remote CDP → виконайте `openclaw browser stop --browser-profile <name>`, щоб закрити активну сесію керування й скинути стан емуляції без перезапуску gateway.
|
||||
- застарілі перевизначення viewport / dark-mode / locale / offline у профілях attach-only або remote CDP → виконайте `openclaw browser stop --browser-profile <name>`, щоб закрити активну керовану сесію та скинути стан емуляції без перезапуску gateway.
|
||||
|
||||
Детальні сторінки:
|
||||
Докладні сторінки:
|
||||
|
||||
- [/gateway/troubleshooting#browser-tool-fails](/gateway/troubleshooting#browser-tool-fails)
|
||||
- [/tools/browser#missing-browser-command-or-tool](/tools/browser#missing-browser-command-or-tool)
|
||||
- [/tools/browser-linux-troubleshooting](/tools/browser-linux-troubleshooting)
|
||||
- [/tools/browser-wsl2-windows-remote-cdp-troubleshooting](/tools/browser-wsl2-windows-remote-cdp-troubleshooting)
|
||||
- [/gateway/troubleshooting#browser-tool-fails](/uk/gateway/troubleshooting#browser-tool-fails)
|
||||
- [/tools/browser#missing-browser-command-or-tool](/uk/tools/browser#missing-browser-command-or-tool)
|
||||
- [/tools/browser-linux-troubleshooting](/uk/tools/browser-linux-troubleshooting)
|
||||
- [/tools/browser-wsl2-windows-remote-cdp-troubleshooting](/uk/tools/browser-wsl2-windows-remote-cdp-troubleshooting)
|
||||
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## Пов’язане
|
||||
## Пов’язані матеріали
|
||||
|
||||
- [FAQ](/help/faq) — часті запитання
|
||||
- [Усунення несправностей Gateway](/gateway/troubleshooting) — проблеми, специфічні для gateway
|
||||
- [Doctor](/gateway/doctor) — автоматичні перевірки стану та виправлення
|
||||
- [Усунення несправностей каналів](/channels/troubleshooting) — проблеми з підключенням каналів
|
||||
- [Усунення несправностей автоматизації](/automation/cron-jobs#troubleshooting) — проблеми cron і heartbeat
|
||||
- [FAQ](/uk/help/faq) — поширені запитання
|
||||
- [Усунення несправностей gateway](/uk/gateway/troubleshooting) — проблеми, пов’язані з gateway
|
||||
- [Doctor](/uk/gateway/doctor) — автоматичні перевірки стану та виправлення
|
||||
- [Усунення несправностей каналів](/uk/channels/troubleshooting) — проблеми з підключенням каналів
|
||||
- [Усунення несправностей автоматизації](/uk/automation/cron-jobs#troubleshooting) — проблеми з cron і heartbeat
|
||||
|
||||
@ -1,24 +1,23 @@
|
||||
---
|
||||
read_when:
|
||||
- Ви хочете вибрати постачальника моделей
|
||||
- Вам потрібен швидкий огляд підтримуваних бекендів LLM
|
||||
- Вам потрібен короткий огляд підтримуваних бекендів LLM
|
||||
summary: Постачальники моделей (LLM), які підтримує OpenClaw
|
||||
title: Каталог постачальників
|
||||
x-i18n:
|
||||
generated_at: "2026-04-06T18:54:57Z"
|
||||
generated_at: "2026-04-07T14:58:15Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: 39d9ace35fd9452a4fb510fd980d251b6e51480e4647f051020bee2f1f2222e1
|
||||
source_hash: e7bee5528b7fc9a982b3d0eaa4930cb77f7bded19a47aec00572b6fcbd823a70
|
||||
source_path: providers/index.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# Постачальники моделей
|
||||
|
||||
OpenClaw може використовувати багато постачальників LLM. Виберіть постачальника, пройдіть автентифікацію, а потім задайте
|
||||
модель за замовчуванням як `provider/model`.
|
||||
OpenClaw може використовувати багато постачальників LLM. Виберіть постачальника, пройдіть автентифікацію, а потім задайте модель за замовчуванням як `provider/model`.
|
||||
|
||||
Шукаєте документацію про канали чату (WhatsApp/Telegram/Discord/Slack/Mattermost (plugin)/etc.)? Див. [Канали](/uk/channels).
|
||||
Шукаєте документацію щодо каналів чату (WhatsApp/Telegram/Discord/Slack/Mattermost (plugin)/тощо)? Див. [Канали](/uk/channels).
|
||||
|
||||
## Швидкий старт
|
||||
|
||||
@ -37,7 +36,7 @@ OpenClaw може використовувати багато постачаль
|
||||
- [Amazon Bedrock](/uk/providers/bedrock)
|
||||
- [Anthropic (API + Claude CLI)](/uk/providers/anthropic)
|
||||
- [Arcee AI (моделі Trinity)](/uk/providers/arcee)
|
||||
- [BytePlus (міжнародний)](/uk/concepts/model-providers#byteplus-international)
|
||||
- [BytePlus (міжнародна версія)](/uk/concepts/model-providers#byteplus-international)
|
||||
- [Chutes](/uk/providers/chutes)
|
||||
- [ComfyUI](/uk/providers/comfy)
|
||||
- [Cloudflare AI Gateway](/uk/providers/cloudflare-ai-gateway)
|
||||
@ -45,17 +44,18 @@ OpenClaw може використовувати багато постачаль
|
||||
- [fal](/uk/providers/fal)
|
||||
- [Fireworks](/uk/providers/fireworks)
|
||||
- [GitHub Copilot](/uk/providers/github-copilot)
|
||||
- [Моделі GLM](/uk/providers/glm)
|
||||
- [моделі GLM](/uk/providers/glm)
|
||||
- [Google (Gemini)](/uk/providers/google)
|
||||
- [Groq (LPU-інференс)](/uk/providers/groq)
|
||||
- [Hugging Face (інференс)](/uk/providers/huggingface)
|
||||
- [inferrs (локальні моделі)](/uk/providers/inferrs)
|
||||
- [Kilocode](/uk/providers/kilocode)
|
||||
- [LiteLLM (уніфікований шлюз)](/uk/providers/litellm)
|
||||
- [MiniMax](/uk/providers/minimax)
|
||||
- [Mistral](/uk/providers/mistral)
|
||||
- [Moonshot AI (Kimi + Kimi Coding)](/uk/providers/moonshot)
|
||||
- [NVIDIA](/uk/providers/nvidia)
|
||||
- [Ollama (хмарні + локальні моделі)](/uk/providers/ollama)
|
||||
- [Ollama (хмарні та локальні моделі)](/uk/providers/ollama)
|
||||
- [OpenAI (API + Codex)](/uk/providers/openai)
|
||||
- [OpenCode](/uk/providers/opencode)
|
||||
- [OpenCode Go](/uk/providers/opencode-go)
|
||||
@ -68,7 +68,7 @@ OpenClaw може використовувати багато постачаль
|
||||
- [StepFun](/uk/providers/stepfun)
|
||||
- [Synthetic](/uk/providers/synthetic)
|
||||
- [Together AI](/uk/providers/together)
|
||||
- [Venice (Venice AI, орієнтований на конфіденційність)](/uk/providers/venice)
|
||||
- [Venice (Venice AI, орієнтований на приватність)](/uk/providers/venice)
|
||||
- [Vercel AI Gateway](/uk/providers/vercel-ai-gateway)
|
||||
- [Vydra](/uk/providers/vydra)
|
||||
- [vLLM (локальні моделі)](/uk/providers/vllm)
|
||||
|
||||
161
docs/uk/providers/inferrs.md
Normal file
161
docs/uk/providers/inferrs.md
Normal file
@ -0,0 +1,161 @@
|
||||
---
|
||||
read_when:
|
||||
- Ви хочете запускати OpenClaw із локальним сервером inferrs
|
||||
- Ви обслуговуєте Gemma або іншу модель через inferrs
|
||||
- Вам потрібні точні прапорці сумісності OpenClaw для inferrs
|
||||
summary: Запускайте OpenClaw через inferrs (локальний сервер, сумісний з OpenAI)
|
||||
title: inferrs
|
||||
x-i18n:
|
||||
generated_at: "2026-04-07T14:58:20Z"
|
||||
model: gpt-5.4
|
||||
provider: openai
|
||||
source_hash: d84f660d49a682d0c0878707eebe1bc1e83dd115850687076ea3938b9f9c86c6
|
||||
source_path: providers/inferrs.md
|
||||
workflow: 15
|
||||
---
|
||||
|
||||
# inferrs
|
||||
|
||||
[inferrs](https://github.com/ericcurtin/inferrs) може обслуговувати локальні моделі через API `/v1`, сумісний з OpenAI. OpenClaw працює з `inferrs` через загальний шлях `openai-completions`.
|
||||
|
||||
Наразі `inferrs` найкраще розглядати як користувацький самостійно розміщений бекенд, сумісний з OpenAI, а не як окремий плагін провайдера OpenClaw.
|
||||
|
||||
## Швидкий старт
|
||||
|
||||
1. Запустіть `inferrs` із моделлю.
|
||||
|
||||
Приклад:
|
||||
|
||||
```bash
|
||||
inferrs serve gg-hf-gg/gemma-4-E2B-it \
|
||||
--host 127.0.0.1 \
|
||||
--port 8080 \
|
||||
--device metal
|
||||
```
|
||||
|
||||
2. Переконайтеся, що сервер доступний.
|
||||
|
||||
```bash
|
||||
curl http://127.0.0.1:8080/health
|
||||
curl http://127.0.0.1:8080/v1/models
|
||||
```
|
||||
|
||||
3. Додайте явний запис провайдера OpenClaw і вкажіть на нього свою модель за замовчуванням.
|
||||
|
||||
## Повний приклад конфігурації
|
||||
|
||||
У цьому прикладі використовується Gemma 4 на локальному сервері `inferrs`.
|
||||
|
||||
```json5
|
||||
{
|
||||
agents: {
|
||||
defaults: {
|
||||
model: { primary: "inferrs/gg-hf-gg/gemma-4-E2B-it" },
|
||||
models: {
|
||||
"inferrs/gg-hf-gg/gemma-4-E2B-it": {
|
||||
alias: "Gemma 4 (inferrs)",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
models: {
|
||||
mode: "merge",
|
||||
providers: {
|
||||
inferrs: {
|
||||
baseUrl: "http://127.0.0.1:8080/v1",
|
||||
apiKey: "inferrs-local",
|
||||
api: "openai-completions",
|
||||
models: [
|
||||
{
|
||||
id: "gg-hf-gg/gemma-4-E2B-it",
|
||||
name: "Gemma 4 E2B (inferrs)",
|
||||
reasoning: false,
|
||||
input: ["text"],
|
||||
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
||||
contextWindow: 131072,
|
||||
maxTokens: 4096,
|
||||
compat: {
|
||||
requiresStringContent: true,
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
## Чому `requiresStringContent` має значення
|
||||
|
||||
Деякі маршрути Chat Completions в `inferrs` приймають лише рядковий `messages[].content`, а не структуровані масиви частин вмісту.
|
||||
|
||||
Якщо запуски OpenClaw завершуються помилкою на кшталт:
|
||||
|
||||
```text
|
||||
messages[1].content: invalid type: sequence, expected a string
|
||||
```
|
||||
|
||||
встановіть:
|
||||
|
||||
```json5
|
||||
compat: {
|
||||
requiresStringContent: true
|
||||
}
|
||||
```
|
||||
|
||||
OpenClaw перетворить частини вмісту, що складаються лише з тексту, на звичайні рядки перед надсиланням запиту.
|
||||
|
||||
## Застереження щодо Gemma і схеми інструментів
|
||||
|
||||
Деякі поточні комбінації `inferrs` + Gemma приймають невеликі прямі запити до `/v1/chat/completions`, але все одно не справляються з повними ходами середовища виконання агента OpenClaw.
|
||||
|
||||
Якщо це відбувається, спочатку спробуйте ось це:
|
||||
|
||||
```json5
|
||||
compat: {
|
||||
requiresStringContent: true,
|
||||
supportsTools: false
|
||||
}
|
||||
```
|
||||
|
||||
Це вимикає поверхню схеми інструментів OpenClaw для моделі й може зменшити навантаження від prompt на суворіших локальних бекендах.
|
||||
|
||||
Якщо маленькі прямі запити й далі працюють, але звичайні ходи агента OpenClaw продовжують аварійно завершуватися всередині `inferrs`, то решта проблеми зазвичай пов’язана з поведінкою моделі/сервера на стороні upstream, а не з транспортним шаром OpenClaw.
|
||||
|
||||
## Ручний smoke-тест
|
||||
|
||||
Після налаштування перевірте обидва шари:
|
||||
|
||||
```bash
|
||||
curl http://127.0.0.1:8080/v1/chat/completions \
|
||||
-H 'content-type: application/json' \
|
||||
-d '{"model":"gg-hf-gg/gemma-4-E2B-it","messages":[{"role":"user","content":"What is 2 + 2?"}],"stream":false}'
|
||||
|
||||
openclaw infer model run \
|
||||
--model inferrs/gg-hf-gg/gemma-4-E2B-it \
|
||||
--prompt "What is 2 + 2? Reply with one short sentence." \
|
||||
--json
|
||||
```
|
||||
|
||||
Якщо перша команда працює, а друга — ні, скористайтеся наведеними нижче примітками щодо усунення несправностей.
|
||||
|
||||
## Усунення несправностей
|
||||
|
||||
- `curl /v1/models` не працює: `inferrs` не запущено, він недоступний або не прив’язаний до очікуваного хоста/порту.
|
||||
- `messages[].content ... expected a string`: установіть `compat.requiresStringContent: true`.
|
||||
- Прямі маленькі виклики `/v1/chat/completions` проходять, але `openclaw infer model run` не працює: спробуйте `compat.supportsTools: false`.
|
||||
- OpenClaw більше не отримує помилок схеми, але `inferrs` все одно аварійно завершується на більших ходах агента: вважайте це обмеженням `inferrs` або моделі на стороні upstream і зменште навантаження від prompt або змініть локальний бекенд/модель.
|
||||
|
||||
## Поведінка в стилі проксі
|
||||
|
||||
`inferrs` розглядається як бекенд `/v1`, сумісний з OpenAI, у стилі проксі, а не як нативна кінцева точка OpenAI.
|
||||
|
||||
- тут не застосовується формування запитів, призначене лише для нативного OpenAI
|
||||
- немає `service_tier`, немає `store` у Responses, немає підказок кешу prompt і немає формування payload сумісності з reasoning OpenAI
|
||||
- приховані заголовки атрибуції OpenClaw (`originator`, `version`, `User-Agent`) не додаються для користувацьких `inferrs` base URL
|
||||
|
||||
## Див. також
|
||||
|
||||
- [Локальні моделі](/uk/gateway/local-models)
|
||||
- [Усунення несправностей шлюзу](/uk/gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail)
|
||||
- [Провайдери моделей](/uk/concepts/model-providers)
|
||||
Loading…
Reference in New Issue
Block a user