Как установить и настроить подключение OpenClaw к OpenWebUI, чтобы они корректно взаимодействовали?

Привет! Нужна помощь с подключением OpenClaw к OpenWebUI — OpenClaw запускается, но не появляется в списке моделей/AI-агентов в OpenWebUI, и я не понимаю, что делаю не так.
  • 8 апреля 2026 г. 23:00
Ответы на вопрос 1
Ниже — подробный план проверки и настройки, который обычно решает проблему «OpenClaw запущен, но не виден в OpenWebUI». Приведу и общие причины, и конкретные команды/настройки (включая примеры для случая, когда OpenClaw предоставляет OpenAI‑совместимый HTTP API — это самый частый сценарий).

1) Быстрая проверка работы OpenClaw
- Убедитесь, что сервис действительно слушает на ожидаемом адресе и порту:
  - netstat/ss: ss -ltnp | grep <port>
  - или curl: curl -v http://<host>:<port>/ (или /health, если есть)
- Если OpenClaw реализует OpenAI‑совместимый API, проверьте:
  - curl -H "Authorization: Bearer YOUR_TOKEN" http://<host>:<port>/v1/models
  - Ожидаемый ответ — JSON со списком моделей или хотя бы статус 200/JSON.

2) Как правильно указать OpenClaw в OpenWebUI
- В настройках OpenWebUI нужно добавить внешний провайдер/клиента:
  - Если OpenClaw OpenAI‑совместим: в OpenWebUI → Settings → Providers (или OpenAI settings) укажите Base URL = http://<host>:<port> (или https://...), и укажите API‑ключ (тот же, которым пользуется OpenClaw).
  - Если OpenWebUI предлагает «Custom API» — выберите OpenAI‑compatible или укажите endpoint /v1 и заголовок Authorization: Bearer <key>.
- После сохранения — нажмите «Refresh models» / «Reload providers» в UI.

3) Частые причины, почему модель не появляется
- Неправильный URL/порт (localhost vs 0.0.0.0 vs IP; контейнерное имя в Docker).
- Неправильный путь (нужно указывать корень API, обычно http://host:port или http://host:port/v1).
- Отсутствует/неправильный API‑ключ (или OpenClaw ожидает другой заголовок).
- CORS: если OpenWebUI работает в браузере и OpenClaw на другом домене/порту, нужны Access‑Control‑Allow‑Origin заголовки.
- Брандмауэр/iptables, Docker network (контейнеры в разных сетях), reverse proxy (NGINX) неправильно проксирует.
- SSL: если OpenClaw на https с самоподписанным cert, OpenWebUI может отвергать соединение (нужно доверить сертификат или включить опцию игнорировать проверку).
- Несовместимый протокол (OpenClaw не поддерживает OpenAI API, а OpenWebUI настроен на OpenAI).

4) Проверки и дебаг (пошагово)
- Проверка от OpenWebUI-хоста:
  - С той же машины, где работает OpenWebUI, выполните curl как выше. Если curl возвращает ошибку — OpenWebUI тоже не увидит сервис.
- Включите логирование/debug в OpenWebUI и OpenClaw, посмотрите, идут ли запросы и есть ли ошибки.
- Проверьте логи OpenClaw (systemd, docker logs, stdout) на входящие запросы и ошибки авторизации.
- В браузере откройте DevTools → Network: посмотрите запросы к провайдеру, ошибки CORS/401/404/500.
- Используйте tcpdump/ss для проверки соединения, если подозреваете сетевую проблему.

5) Примеры конфигураций и полезные команды

- Простой curl (OpenAI‑совместимый):
  curl -H "Authorization: Bearer SECRET" http://127.0.0.1:8080/v1/models

- Заголовки CORS для Nginx (если ставите прокси):
  add_header 'Access-Control-Allow-Origin' '*' always;
  add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
  add_header 'Access-Control-Allow-Headers' 'Authorization, Content-Type' always;

- Docker: если OpenClaw в контейнере и OpenWebUI в другом контейнере, используйте внутреннее имя сервиса:
  в OpenWebUI указывайте http://openclaw:8080 (и оба в одной сети docker-compose).

- Пример минимального docker-compose (иллюстрация):
  services:
    openclaw:
      image: your/openclaw
      ports:
        - "8080:8080"
      environment:
        - API_KEY=secret
    openwebui:
      image: your/openwebui
      ports:
        - "3000:3000"
      environment:
        - PROVIDER_URL=http://openclaw:8080
        - PROVIDER_KEY=secret

6) Если OpenClaw не OpenAI‑совместим
- Узнайте, какой протокол/API он предоставляет (gRPC, websocket, свой REST).
- OpenWebUI должен поддерживать этот протокол или у вас нужен адаптер/прокси, который переводит API в OpenAI‑совместимый интерфейс.
- Возможно, есть готовый «bridge»/плагин для OpenClaw → OpenAI API; посмотрите документацию OpenClaw.

7) Что прислать, если требуется помощь дальше
- Вывод команды, которая показывает, что OpenClaw слушает (ss -ltnp или docker ps + docker logs).
- Результат curl к /v1/models или /health (включая заголовок Authorization, если применимо).
- Конфигурацию, которую вы вписываете в OpenWebUI (URL, порт, используется ли TLS, установлен ли API‑ключ).
- Логи OpenWebUI при попытке подключиться (ошибка 401/404/0, сообщение в браузере).

Если хотите, помогу шаг за шагом — пришлите:
- Как вы запускаете OpenClaw (команда/контейнер/systemd).
- На каком хосте/порту он слушает.
- Какие настройки вы внесли в OpenWebUI (скрин/текст).
- Результат curl-команды, которую я привёл выше.
Похожие вопросы