Вопрос

Как удалить OpenClaw полностью: штатная инструкция для 2026.9.9

Снять сервис Gateway и локальные данные одной командой, потом убрать CLI тем способом, которым его ставили.

· 3 мин чтения

Коротко

  • openclaw uninstall --all снимает сервис Gateway, состояние, workspace и приложение macOS за один прогон, если ни один шаг не заблокирован.
  • Перед удалением сделайте openclaw backup create, если состояние может понадобиться позже.
  • CLI не входит в uninstall, его удаляют отдельно по типу установки: npm, pnpm, Bun или git.
  • Если CLI пропал, а сервис ещё работает, остатки снимают через launchd, systemd или Task Scheduler.

Сверено с документацией OpenClaw 2026.9.9, 8 октября 2026.

Полное удаление OpenClaw — это две разные задачи. Сначала снимают локальные данные через openclaw uninstall, затем убирают сам CLI тем способом, которым его ставили. В интерактивном режиме команда по умолчанию выбирает только сервис Gateway, для полной зачистки нужен флаг --all.

Один прогон через CLI

Если openclaw ещё стоит, хватит одной команды. Сначала посмотрите, что она собирается удалить:

openclaw uninstall --dry-run --all

Затем запустите вручную или без интерактива:

openclaw uninstall --all --yes
npx -y openclaw uninstall --all --yes --non-interactive

Флаги --service, --state, --workspace, --app включают отдельные шаги. --all собирает все четыре сразу. Каждый шаг выполняется отдельно и сообщает о своём результате: если снять сервис не получилось, состояние и workspace команда не трогает, а очистку приложения macOS всё равно пытается выполнить.

Полностью ручной режим

Подходит, когда сервис ещё работает, а CLI уже удалён. На macOS:

launchctl bootout gui/$UID/ai.openclaw.gateway
rm -f ~/Library/LaunchAgents/ai.openclaw.gateway.plist

На Linux с systemd:

systemctl --user disable --now openclaw-gateway.service
rm -f ~/.config/systemd/user/openclaw-gateway.service{,.bak}
systemctl --user daemon-reload

На Windows задача называется OpenClaw Gateway; она запускает gateway.vbs, который в свою очередь запускает gateway.cmd в каталоге состояния:

schtasks /Delete /F /TN "OpenClaw Gateway"
Remove-Item -Force "$env:USERPROFILE\.openclaw\gateway.cmd" -ErrorAction SilentlyContinue
Remove-Item -Force "$env:USERPROFILE\.openclaw\gateway.vbs" -ErrorAction SilentlyContinue

После остановки сервиса удалите состояние и конфиг (при ручном удалении workspace не сохраняются):

rm -rf "${OPENCLAW_STATE_DIR:-$HOME/.openclaw}"

Если задан OPENCLAW_CONFIG_PATH вне каталога состояния, удалите и его. При установленном приложении на macOS:

rm -rf /Applications/OpenClaw.app

Снять CLI: зависит от способа установки

CLI не входит ни в один шаг openclaw uninstall, его удаляют отдельно. Сначала проверьте, откуда команда запускается:

command -v openclaw

Дальше выбирают команду под свой пакетный менеджер или установщик:

npm rm -g openclaw
pnpm remove -g openclaw
bun remove -g openclaw

При установке через install.sh --install-method git проверьте лаунчер ~/.local/bin/openclaw и снимайте его, только если он указывает на нужный каталог, затем удалите сам каталог ~/openclaw. На Windows это %USERPROFILE%\.local\bin\openclaw.cmd и %USERPROFILE%\openclaw. Префикс, заданный --prefix или OPENCLAW_PREFIX, удаляйте выборочно: только проверенные файлы OpenClaw, общие Node-рантаймы и пакеты трогать нельзя. Если включали автодополнение, удалите блок # OpenClaw Completion и строку source OpenClaw из профиля оболочки, сохранив остальное содержимое.

Как проверить, что ничего не осталось

command -v openclaw
Get-Command openclaw -ErrorAction SilentlyContinue

Частые ошибки

  • Запустили rm -rf без остановки сервиса. Перед ручным удалением состояния сервис нужно успешно остановить и снять.
  • Удалили CLI и забыли про сервис. После npm rm -g openclaw процесс под управлением systemd или launchd продолжит работать.
  • Снесли workspace вместе с состоянием. --state сохраняет настроенные workspace, если не выбран --workspace; при ручном удалении каталога состояния workspace внутри него удаляются вместе с ним.
  • Ставили из git, а удалили как npm. Команда npm rm -g openclaw в этом случае мимо, нужно снимать лаунчер и каталог вручную.
  • Использовали --non-interactive без --yes в скрипте. --non-interactive требует --yes, иначе команда запросит подтверждение в интерактиве.