OpenClaw
30 ошибок / AI-ассистент в мессенджерах
Типичные проблемы при установке и использовании OpenClaw с решениями.
Установка и Docker
Container exited with code 137 (OOM Kill)
Платформа: Docker / VPS
Причина: Недостаточно RAM. OpenClaw требует минимум 4 GB (рекомендуется 8 GB). На дешёвых VPS с 1-2 GB — гарантированный OOM.
Container exited with code 137
Решение:
- Увеличить RAM VPS до 4+ GB
- Или добавить swap:
fallocate -l 4G /swapfile && mkswap /swapfile && swapon /swapfile - Проверить лимиты:
docker stats
EACCES: permission denied на /home/node/.openclaw
Платформа: Docker
Причина: Bind mounts на хосте принадлежат другому пользователю. OpenClaw в контейнере работает под uid 1000.
EACCES: permission denied, open '/home/node/.openclaw/config.json'
Решение:
sudo chown -R 1000:1000 /path/to/openclaw-config- Или использовать named volumes вместо bind mounts
WebSocket connection failed: 1006 / 1008, token mismatch
Платформа: Docker
Причина: CLI не подключается к Gateway. Переменная OPENCLAW_GATEWAY_TOKEN перезаписывает токен из конфига.
WebSocket connection failed: 1006 / 1008, token mismatch
Решение:
- Убедиться, что
OPENCLAW_GATEWAY_TOKENв.envсовпадает с токеном в конфиге - Диагностика:
docker compose logs -f - Пересоздать pairing:
openclaw onboard
API-ключи и авторизация
No API key found for provider "anthropic"
Платформа: Docker / Local
Причина: API-ключ Anthropic не указан или в неверном формате. Ключ должен начинаться с sk-ant-api03-. OAuth-токены больше не работают с апреля 2026.
Agent failed before reply: No API key found for provider "anthropic"
Решение:
- Получить ключ на console.anthropic.com
- Указать через
openclaw onboard→ Anthropic → API Key - Проверить:
openclaw status --all
LLM request rejected: You're out of extra usage
Платформа: Docker / Local
Причина: С апреля 2026 Anthropic запретила подписочные OAuth-токены (Claude Pro/Max) в сторонних приложениях. Нужен API-ключ или Extra Usage credits.
LLM request rejected: You're out of extra usage
Решение:
- Переключиться на API-ключ (рекомендуется)
- Или купить Extra Usage credits на claude.ai/settings/usage
- Или использовать API-прокси
OAuth authentication is currently not supported
Платформа: Docker / Local
Причина: В версии 2026.2.17 сломана OAuth для Anthropic и OpenAI. API Anthropic не поддерживает OAuth — только API-ключи.
OAuth authentication is currently not supported invalid x-api-key
Решение:
- Переключиться на API Key:
openclaw onboard→ провайдер → API Key - Не использовать OAuth для Anthropic
429 — You exceeded your current quota (OpenAI)
Платформа: Docker / Local / VPS
Причина: Закончились credits на OpenAI, или новый аккаунт не активирован (до 20 минут после оплаты).
Error code: 429 — You exceeded your current quota, please check your plan and billing details
Решение:
- Проверить баланс на platform.openai.com/usage
- Пополнить credits
- Настроить
maxRequestsPerMinuteв конфиге OpenClaw
401 Unauthorized / IAM token is expired (YandexGPT)
Платформа: VPS / Local
Причина: IAM-токен YandexGPT живёт максимум 12 часов. Для бота нужен сервисный аккаунт с API-ключом. Часто путают FOLDER_ID и CATALOG_ID.
401 Unauthorized IAM token is expired
Решение:
- Создать сервисный аккаунт в Yandex Cloud
- Использовать API-ключ (
Api-Keyheader) вместо IAM-токена - Указать правильный
FOLDER_ID(из URL консоли Yandex Cloud)
Мессенджеры
Telegram plugin is not available
Платформа: Docker / Local
Причина: При онбординге Telegram определяется как «plugin», хотя это встроенный канал. Конфиг пишется в plugins.entries.telegram вместо channels.telegram.
Telegram plugin is not available
Решение:
- Выполнить
openclaw plugins enable telegram - Или вручную перенести конфиг в секцию
channels.telegramвopenclaw.json - Перезапустить OpenClaw
Telegram бот не получает сообщения (polling vs webhook)
Платформа: Docker / VPS
Причина: Конфликт webhook и polling. Если ранее был настроен webhook, Telegram не отправляет сообщения через polling.
Решение:
- Удалить webhook:
curl https://api.telegram.org/bot<TOKEN>/deleteWebhook - Перезапустить OpenClaw
- Если проблема с IPv6 — принудительно использовать IPv4
Account banned / Connection closed: 515 (WhatsApp)
Платформа: Docker / Local
Причина: WhatsApp не имеет официального API для ботов. Библиотеки Baileys/Whiskay реверс-инженерят протокол, WhatsApp детектирует автоматизацию и банит.
Решение:
- Использовать WhatsApp Business API (официальный, платный)
- Или: ограничить частоту сообщений, не использовать в группах
- Добавить случайные задержки, session persistence обязательна
Discord бот онлайн, но не отвечает на сообщения
Платформа: Docker / Local
Причина: Не включён привилегированный intent «Message Content» в Discord Developer Portal. С 2022 года это обязательно.
Решение:
- Discord Developer Portal → Bot → Privileged Gateway Intents
- Включить «Message Content Intent»
- Перезапустить OpenClaw
Конфигурация
Invalid configuration / Unknown config key
Платформа: Docker / Local
Причина: В Q1 2026 три релиза подряд содержали breaking changes. Формат openclaw.json меняется без автоматической миграции.
Invalid configuration Unknown config key: "plugins.entries.telegram"
Решение:
- Перед обновлением:
cp openclaw.json openclaw.json.bak - После:
openclaw doctor --fix - Если не помогает — ручная правка по changelog
Безопасность
CVE-2026-25253: RCE через неаутентифицированный WebSocket
Платформа: Docker / VPS (публичный доступ)
Причина: Версии до 2026.1.29 имели auth: none по умолчанию на Control Plane WebSocket. Любой мог выполнить произвольный код на сервере.
Решение:
- Обновить OpenClaw до версии ≥ 2026.1.29
- Проверить, что
gateway.authне установлен вnone - Не выставлять порт 18789 наружу без аутентификации
Для не-программистов
Как развернуть бота на VPS — пошагово для новичков
Платформа: VPS (Ubuntu/Debian)
Причина: Нет опыта с серверами. Бот работает локально, но непонятно, как перенести на VPS, чтобы он работал 24/7.
Решение (минимальный VPS — 1 vCPU, 2 GB RAM):
- Купить VPS (Timeweb, Selectel, Aéza — от 300 руб/мес). Выбрать Ubuntu 22.04
- Подключиться по SSH:
ssh root@IP_ВАШЕГО_СЕРВЕРА - Установить Node.js 22+:
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && apt install -y nodejs - Установить OpenClaw:
npm install -g openclaw - Настроить:
openclaw onboard(мастер проведёт через настройку) - Запустить как сервис:
openclaw gateway install --daemon
Путаница: API key vs OAuth vs подписка — что использовать
Платформа: Все
Причина: Три разных способа авторизации у AI-провайдеров вызывают путаницу. Подписка Claude Pro/Max — это НЕ то же самое, что API-ключ.
Разница:
- Подписка (Claude Pro/Max, ChatGPT Plus) — для сайтов claude.ai / chatgpt.com. Для ботов не подходит
- API-ключ — специальный токен для программ. Оплата за использование (по токенам). Это то, что нужно для OpenClaw
- OAuth — вход через аккаунт. С апреля 2026 сломан для Anthropic. Не рекомендуется
Бот отвечает ерунду — настройка личности через SOUL.md
Платформа: Все
Причина: Без файла SOUL.md (или с пустым файлом) бот использует дефолтную личность — общую и безликую. Он не знает, кто он, как разговаривать и какие задачи решать.
Решение:
- Создать файл
SOUL.mdв рабочей директории OpenClaw - Описать: имя бота, роль, стиль общения, запреты, целевую аудиторию
- Перезапустить:
openclaw gateway restart - Проверить загрузку:
openclaw status --all(в секции Bootstrap Files)
Бот слишком дорогой — оптимизация расхода токенов
Платформа: Все
Причина: Контекст раздувается до 100K+ токенов на длинных диалогах. Каждое сообщение отправляет всю историю в API — расход растёт экспоненциально.
context_length_exceeded -- input tokens: 135,892, max: 128,000
Решение:
- Включить компактификацию:
openclaw config set context.compaction.enabled true - Ограничить контекст:
openclaw config set context.maxTokens 4000 - Использовать дешёвую модель для рутины: Claude Haiku или GPT-4o-mini (~$0.15/1M токенов vs $15 у Opus)
- Использовать локальную модель через Ollama для тестирования (бесплатно)
Как подключить российские модели (YandexGPT, GigaChat)
Платформа: VPS / Local
Причина: Российские модели используют нестандартную авторизацию. YandexGPT — IAM-токены с коротким сроком жизни. GigaChat — OAuth 2.0 с hashing. Стандартный OpenAI-совместимый endpoint не работает.
YandexGPT:
- Создать сервисный аккаунт в Yandex Cloud с ролью
ai.languageModels.user - Получить API-ключ (не IAM-токен — он протухает за 12 часов)
- Добавить как OpenAI-compatible провайдер с endpoint
https://llm.api.cloud.yandex.net/foundationModels/v1/completion
GigaChat:
- Получить client_id и client_secret на developers.sber.ru
- GigaChat требует отдельный proxy-слой — стандартный OpenAI-формат не работает
- Рекомендация: использовать GigaChain как прокси
Личность и навыки бота
SOUL.md не применяется — бот игнорирует личность
Платформа: Docker / Local
Причина: OpenClaw загружает только 8 конкретных файлов: SOUL.md, AGENTS.md, USER.md, TOOLS.md, IDENTITY.md, HEARTBEAT.md, BOOTSTRAP.md, MEMORY.md. Файл с другим именем или в неправильной директории молча игнорируется. Симлинки за пределами workspace тоже отклоняются без ошибки.
openclaw status --all Bootstrap Files: SOUL.md (not found)
Решение:
- Файл должен называться точно
SOUL.md(неsoul.md, неSoul.md) - Лежать в корне workspace (рядом с
openclaw.json) - Не быть симлинком за пределами workspace
- После обновления выполнить:
openclaw doctor --deep --yes - Проверить:
openclaw status --all— в секции Bootstrap Files должен быть SOUL.md
Skills молча не загружаются
Платформа: Docker / Local
Причина: Skills требуют строгую структуру: папка skills/<id>/SKILL.md, а не просто файл skills/my-skill.md. Также ломаются при: двоеточии в name/description (ломает YAML), коллизии имён, BOM-маркере в файле.
openclaw skills list Loaded: 8/13 skills (5 skipped)
Решение:
- Проверить структуру:
skills/my-skill/SKILL.md(папка, внутри SKILL.md) - Диагностика:
openclaw skills check - Убрать
:из name и description в frontmatter (или обернуть в кавычки) - Проверить кодировку: файл должен быть UTF-8 без BOM
- Приоритет загрузки:
<workspace>/skills→ bundled →skills.load.extraDirs
Бот не помнит контекст разговора
Платформа: Все
Причина: Длинные диалоги компактируются (сжимаются), теряя детали. При смене темы бот «забывает» предыдущий контекст. Долгосрочная память работает только через MEMORY.md, который надо настроить явно.
Решение:
- Для долгосрочных фактов — попросить бота записать в MEMORY.md: «запомни, что меня зовут Иван»
- Настроить компактификацию:
openclaw config set context.compaction.threshold 0.8 - Увеличить окно контекста (если модель позволяет):
openclaw config set context.maxTokens 16000 - Диагностика:
OPENCLAW_LOG_CONTEXT_SIZE=true openclaw logs --follow
Мультимодальность (картинки, голос) не работает
Платформа: Все
Причина: Фото и голосовые сообщения молча игнорируются, если: модель не поддерживает vision (например, Claude Haiku старых версий), не установлен speech-to-text skill для голоса, или Ollama-модель без vision.
Решение для изображений:
- Убедиться, что модель поддерживает vision: Claude Sonnet/Opus, GPT-4o, Gemini Pro
- Для Ollama: использовать модель с vision (llava, llama3.2-vision)
Решение для голоса:
- Установить Whisper skill:
openclaw skills install whisper-stt - Или подключить внешний STT через API (Google Speech, Yandex SpeechKit)
Продвинутое использование
Бот не работает в группах Telegram (Privacy Mode)
Платформа: Docker / VPS
Причина: По умолчанию Telegram-боты работают в Privacy Mode — они не видят сообщения в группах, только команды (/start) и прямые ответы на свои сообщения.
Решение:
- Открыть @BotFather →
/setprivacy→ выбрать бота → Disable - Или сделать бота админом группы (тогда Privacy Mode не действует)
- Критично: после переключения удалить и заново добавить бота в каждую группу
- Для ограничения доступа: настроить
channels.telegram.groupAllowFromв конфиге
Rate limiting — бот перестаёт отвечать при нагрузке
Платформа: VPS / Docker
Причина: AI-провайдеры ограничивают запросы: Anthropic — 50 RPM на бесплатном тире, OpenAI — зависит от уровня. При rate limit OpenClaw ставит провайдера в cooldown, и следующие запросы тоже отклоняются.
429 Too Many Requests Provider "anthropic" entered cooldown (300s)
Решение:
- Настроить лимиты:
openclaw config set providers.anthropic.maxRequestsPerMinute 30 - Добавить fallback-провайдер (OpenAI или Ollama) — при cooldown бот переключится
- Увеличить API tier у провайдера (пополнить баланс)
- Проверить статус:
openclaw models status
Логи и отладка — как найти проблему
Платформа: Все
Причина: OpenClaw по умолчанию показывает минимум логов. Без правильной диагностики невозможно понять, почему бот молчит или выдаёт ошибки.
Диагностические команды:
openclaw status --deep # полная диагностика с health probe openclaw doctor --deep --yes # авторемонт (решает ~80% проблем) openclaw logs --follow # логи в реальном времени openclaw logs --level error --tail 50 # последние 50 ошибок openclaw config validate # валидация конфига openclaw channels status --probe # статус всех каналов openclaw skills check # проверка skills openclaw health --json # полный snapshot для отчёта
Docker Compose обновление — потеря данных при миграции
Платформа: Docker
Причина: OpenClaw выпускает релизы каждые 1-2 дня, часто с breaking changes. Команда docker compose pull && docker compose up -d может сломать конфиг. А config.apply заменяет ВЕСЬ конфиг — частичные объекты удаляют всё остальное.
Безопасное обновление:
- Бэкап:
cp openclaw.json openclaw.json.bak - Пинить версию в docker-compose:
image: openclaw/openclaw:2026.3.23-2 - Обновить:
docker compose pull && docker compose up -d - Мигрировать конфиг:
docker compose exec openclaw openclaw doctor --fix - Для мелких правок:
openclaw config set key value(неconfig.apply!)
Несколько ботов на одном сервере
Платформа: VPS / Docker
Причина: Каждый экземпляр OpenClaw запускает свой Gateway на порту 18789 по умолчанию. Два бота с одним портом — конфликт.
Решение через Docker Compose (рекомендуется):
# docker-compose.yml
services:
bot-support:
image: openclaw/openclaw:2026.3.23-2
volumes:
- ./bot-support:/workspace
ports: ["18789:18789"]
bot-sales:
image: openclaw/openclaw:2026.3.23-2
volumes:
- ./bot-sales:/workspace
ports: ["18790:18789"] Каждому боту — своя директория с отдельными openclaw.json, SOUL.md и API-ключами.
Бот не отвечает ночью / после простоя (server sleep)
Платформа: VPS / Docker
Причина: Несколько возможных причин: Gateway process упал (systemd не перезапустил), Telegram webhook протух, Ollama cold start занимает 13-46 секунд и вызывает timeout, или хостинг усыпляет VPS.
LLM HTTP request timeout (60s exceeded)
Решение:
- Проверить Gateway:
openclaw gateway status - Запустить как systemd-сервис:
openclaw gateway install --daemon(автоперезапуск) - Для Ollama: увеличить timeout —
openclaw config set providers.ollama.requestTimeout 120000 - Если Ollama на Docker:
host.docker.internal:11434/v1(неlocalhost!) - Проверить, что VPS не засыпает (дешёвые хостинги отключают idle-машины)
Полезные ссылки
// Обсуждение
Можно писать анонимно. Укажите email, чтобы получать уведомления об ответах.