2026 OpenClaw после обновления: чат да, инструменты нет — матрица tools.profile, tools.deny и triage переопределений agent

около 18 мин чтения · MACCOME

После обновления или смены конфигурации OpenClaw: Telegram/Slack отвечает, но exec/read/write/browser «not found» или агент выводит только текст вызовов инструментов? Статья даёт: ① какой слой проверять первым; ② матрица tools.profile и порядок для tools.deny и overrides agent; ③ шесть шагов runbook и лестница верификации. Дополняет runbook Gateway без ответа — там каналы и модели, здесь контракт allowlist инструментов.

Шесть частых причин «чат да, инструменты нет» после обновления (сначала triage, затем config)

  1. tools.profile на messaging / minimal: обновление или мастер сузили поверхность инструментов — чат плавный, exec → not found.
  2. tools.deny побочный ущерб: временный deny exec / browser для compliance; тикет закрыт, правило осталось.
  3. agents.list[].tools.profile перекрывает глобальный: глобально coding, prod-агент всё ещё messaging.
  4. Полу-обновление без reload Gateway: CLI видит новый config, процесс — старый allowlist — как split-brain в runbook отката.
  5. Модель без надёжного tool-calling: слабая модель печатает вызовы текстом; смена profile не поможет.
  6. Путать «нет ответа» и «инструмент сломан»: сначала triage без ответа.

Поверхность инструментов OpenClaw — не «установил = всё открыто», а пересечение глобальный profile → deny → override agent. Документация 2026 задаёт tools.profile как базовый allowlist. Многие команды при первом upgrade упираются в контракт от неявно открыто к явному разрешению без «restart + минимальная проба» в change-тикете.

На спящем ноутбуке добавляется «config изменён, launchd/контейнер не reload». Авторитетный Gateway на постоянно включённом выделенном удалённом Mac с SSH local forward: приёмка на стороне Gateway, не только success в CLI.

СимптомПодозреваемый слойПервое действие
Ответ есть, exec/read tool not foundtools.profile узкий или override agentЭкспорт эффективного profile; openclaw config set tools.profile coding; gateway restart
Один инструмент мёртв, остальные OKtools.denyПоиск deny; официальная документация tools
Один agentagents.list[].tools.profileВыровнять agent и global
JSON-подобный текст tool callTool-calling моделиМодель с function calling; меньше параллельных tools
Канал молчитКанал / token / маршрутизацияСтатья без ответа; отложить шаги здесь

tools.profile: coding или full?

Большинство automation/dev-агентов → coding: файлы, shell, web, sessions, memory — проще для security review, чем full. Вместе с Agents / Skills / memory_search — surface и лимит контекста в одном change.

При старте сессии Gateway строит эффективный реестр инструментов; без exec — отказ или текст. Сначала исключить «нет ответа».

profileВозможностиСценарий
minimalsession_statusМониторинг без FS
messagingКаналы, sessionsМаршрутизация support
codingfilesystem, runtime, web, memory…Dev (рекомендуемый default)
fullБез среза на уровне profileProd с аудитом
info

Примечание: после tools.profileперезапуск Gateway. openclaw doctor не перезагружает allowlist в процессе. Docker: production runbook.

tools.deny и overrides agent: порядок трёх слоёв

① эффективный profile Gateway → ② tools.deny → ③ agents.list[].tools.profile → ④ глобальный config. После upgrade канала — миграция default profile? Откат: runbook плохого релиза.

В тикете: имя agent и канал; пробы CLI и Telegram/Slack. Временные deny: срок и владелец.

Шесть шагов: выровнять — перезапуск — пробы

  1. Зафиксировать evidence: version, tools.profile, список agents, request id.
  2. Классифицировать симптом; при «нет ответа» — стоп.
  3. Целевой profile: coding; причина и rollback в тикете.
  4. Применить config, gateway restart: один авторитетный Gateway.
  5. Лестница: doctor → status → проба read / exec echochannels status --probe.
  6. Документировать default profile после upgrade в ROLLBACK.md.
bash
openclaw --version
openclaw config get tools.profile 2>/dev/null || true
openclaw config set tools.profile coding
openclaw gateway restart
openclaw doctor
openclaw gateway status

Три KPI для дежурной книги

  • Доля ложных «chat-only»: root cause profile/deny/override; >40 % две недели → checklist без приёмки profile.
  • Минуты до зелёной пробы: медиана ≤10.
  • Доля rollback после restart: >15 % → модель или регрессия версии.

POC: день 1 — целевой profile и пустой deny в acceptance — матрица KPI POC.

Итог: allowlist — не мистический переключатель

Смена prompt без restart не аудируется. Gateway на выделенном удалённом Mac + документированный profile: MTTR в минутах. MACCOME Mac mini M4 / M4 Pro — мультирегиональное руководство.

FAQ

Нужен ли full после обновления?

coding часто достаточно. Restart и минимальная проба. Ставки аренды и поддержка.

Пересечение с Gateway без ответа?

Там каналы/модели; здесь allowlist. Полная тишина → другая статья; tool not found → эта.

Всё ещё текст tool call?

Модель с function calling A/B; откат.