Перейти к основному содержанию
Устанавливайте OpenClaw декларативно с nix-openclaw - официальным модулем Home Manager с полным набором возможностей.
Репозиторий nix-openclaw является источником истины для установки через Nix. Эта страница - краткий обзор.

Что вы получаете

  • Gateway + приложение macOS + инструменты (whisper, spotify, cameras) — все с закрепленными версиями
  • Сервис launchd, который сохраняется после перезагрузок
  • Система Plugin с декларативной конфигурацией
  • Мгновенный откат: home-manager switch --rollback

Быстрый старт

1

Установите Determinate Nix

Если Nix еще не установлен, следуйте инструкциям установщика Determinate Nix.
2

Создайте локальный flake

Используйте шаблон agent-first из репозитория nix-openclaw:
mkdir -p ~/code/openclaw-local
# Copy templates/agent-first/flake.nix from the nix-openclaw repo
3

Настройте секреты

Настройте токен бота для обмена сообщениями и API-ключ поставщика модели. Обычные файлы в ~/.secrets/ вполне подходят.
4

Заполните заполнители шаблона и переключитесь

home-manager switch
5

Проверьте

Убедитесь, что сервис launchd запущен и ваш бот отвечает на сообщения.
Полные параметры модуля и примеры см. в README nix-openclaw.

Поведение среды выполнения в режиме Nix

Когда задано OPENCLAW_NIX_MODE=1 (автоматически с nix-openclaw), OpenClaw переходит в детерминированный режим для установок, управляемых Nix. Другие пакеты Nix могут задавать тот же режим; nix-openclaw является официальным эталоном. Его также можно задать вручную:
export OPENCLAW_NIX_MODE=1
В macOS приложение с графическим интерфейсом не наследует переменные окружения оболочки автоматически. Вместо этого включите режим Nix через defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool true

Что меняется в режиме Nix

  • Потоки автоустановки и самоизменения отключены
  • openclaw.json рассматривается как неизменяемый. Значения по умолчанию, полученные при запуске, остаются только в среде выполнения, а средства записи конфигурации, такие как настройка, onboarding, изменяющий openclaw update, установка/обновление/удаление/включение Plugin, doctor --fix, doctor --generate-gateway-token и openclaw config set, отказываются редактировать файл.
  • Вместо этого агенты должны редактировать исходный код Nix. Для nix-openclaw используйте agent-first Быстрый старт и задавайте конфигурацию в programs.openclaw.config или instances.<name>.config.
  • Отсутствующие зависимости выводят сообщения по исправлению, специфичные для Nix
  • UI показывает баннер режима Nix только для чтения

Пути конфигурации и состояния

OpenClaw читает конфигурацию JSON5 из OPENCLAW_CONFIG_PATH и хранит изменяемые данные в OPENCLAW_STATE_DIR. При запуске под Nix задавайте их явно в расположения, управляемые Nix, чтобы состояние среды выполнения и конфигурация оставались вне неизменяемого хранилища.
ПеременнаяЗначение по умолчанию
OPENCLAW_HOMEHOME / USERPROFILE / os.homedir()
OPENCLAW_STATE_DIR~/.openclaw
OPENCLAW_CONFIG_PATH$OPENCLAW_STATE_DIR/openclaw.json

Обнаружение PATH сервиса

Сервис gateway launchd/systemd автоматически обнаруживает бинарные файлы Nix-профиля, чтобы plugins и инструменты, запускающие исполняемые файлы, установленные через nix, работали без ручной настройки PATH:
  • Когда задан NIX_PROFILES, каждая запись добавляется в PATH сервиса с приоритетом справа налево (соответствует приоритету оболочки Nix - самая правая запись побеждает).
  • Когда NIX_PROFILES не задан, ~/.nix-profile/bin добавляется как fallback.
Это относится как к окружениям сервиса launchd в macOS, так и systemd в Linux.

Связанное

nix-openclaw

Модуль Home Manager, являющийся источником истины, и полное руководство по настройке.

Мастер настройки

Пошаговая настройка CLI без Nix.

Docker

Контейнеризованная настройка как альтернатива без Nix.

Обновление

Обновление установок, управляемых Home Manager, вместе с пакетом.