Containers
Nix
Zainstaluj OpenClaw deklaratywnie za pomocą nix-openclaw — oficjalnego, kompletnego modułu Home Manager.
Co otrzymujesz
- Gateway, aplikację macOS i narzędzia (whisper, spotify, kamery) — wszystkie w przypiętych wersjach
- Usługę launchd, która działa również po ponownym uruchomieniu
- System Pluginów z konfiguracją deklaratywną
- Natychmiastowe wycofanie zmian:
home-manager switch --rollback
Szybki start
Zainstaluj Determinate Nix
Jeśli Nix nie jest jeszcze zainstalowany, postępuj zgodnie z instrukcjami instalatora Determinate Nix.
Utwórz lokalny flake
Użyj szablonu przeznaczonego przede wszystkim dla agenta z repozytorium nix-openclaw:
mkdir -p ~/code/openclaw-local# Skopiuj templates/agent-first/flake.nix z repozytorium nix-openclawSkonfiguruj dane poufne
Skonfiguruj token bota komunikatora oraz klucz API dostawcy modelu. Zwykłe pliki w ~/.secrets/ sprawdzą się doskonale.
Uzupełnij symbole zastępcze w szablonie i zastosuj konfigurację
home-manager switchSprawdź
Upewnij się, że usługa launchd działa, a bot odpowiada na wiadomości.
Pełną listę opcji modułu i przykłady znajdziesz w pliku README nix-openclaw.
Działanie środowiska uruchomieniowego w trybie Nix
Gdy ustawiona jest zmienna OPENCLAW_NIX_MODE=1 (automatycznie w przypadku nix-openclaw), OpenClaw przechodzi w tryb deterministyczny przeznaczony dla instalacji zarządzanych przez Nix. Inne pakiety Nix również mogą ustawić ten tryb; nix-openclaw jest oficjalną implementacją referencyjną.
Możesz także ustawić go ręcznie:
export OPENCLAW_NIX_MODE=1W systemie macOS aplikacja z graficznym interfejsem użytkownika nie dziedziczy zmiennych środowiskowych powłoki. Zamiast tego włącz tryb Nix za pomocą defaults:
defaults write ai.openclaw.mac openclaw.nixMode -bool trueCo zmienia się w trybie Nix
- Mechanizmy automatycznej instalacji i samoczynnej modyfikacji są wyłączone.
- Plik
openclaw.jsonjest traktowany jako niezmienny. Wartości domyślne wyznaczane podczas uruchamiania obowiązują tylko w środowisku uruchomieniowym, a mechanizmy zapisujące konfigurację (konfiguracja początkowa, wdrażanie, modyfikujące polecenieopenclaw update, instalowanie/aktualizowanie/odinstalowywanie/włączanie Pluginów,doctor --fix,doctor --generate-gateway-token,openclaw config set) odmawiają edycji tego pliku. - Zamiast tego edytuj źródło Nix. W przypadku nix-openclaw skorzystaj z sekcji Szybki start przeznaczonej przede wszystkim dla agenta i ustaw konfigurację w
programs.openclaw.configlubinstances.<name>.config. - Brakujące zależności powodują wyświetlenie komunikatów dotyczących rozwiązania problemu specyficznych dla Nix.
- Interfejs użytkownika wyświetla baner trybu Nix informujący o dostępie tylko do odczytu.
Ścieżki konfiguracji i stanu
OpenClaw odczytuje konfigurację JSON5 ze ścieżki OPENCLAW_CONFIG_PATH i przechowuje modyfikowalne dane w katalogu OPENCLAW_STATE_DIR. W środowisku Nix ustaw je jawnie na lokalizacje zarządzane przez Nix, aby stan środowiska uruchomieniowego i konfiguracja znajdowały się poza niezmiennym magazynem.
| Zmienna | Wartość domyślna |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Wykrywanie PATH usługi
Usługa Gateway uruchamiana przez launchd/systemd automatycznie wykrywa pliki wykonywalne w profilach Nix, dzięki czemu Pluginy i narzędzia uruchamiające zewnętrzne pliki wykonywalne zainstalowane przez nix działają bez ręcznej konfiguracji PATH:
- Gdy ustawiona jest zmienna
NIX_PROFILES, każdy jej wpis jest dodawany do PATH usługi z priorytetem od prawej do lewej (zgodnie z priorytetem powłoki Nix: wygrywa wpis położony najbardziej na prawo). - Gdy zmienna
NIX_PROFILESnie jest ustawiona, jako lokalizacja zapasowa dodawany jest katalog~/.nix-profile/bin.
Dotyczy to zarówno środowisk usług launchd w systemie macOS, jak i systemd w systemie Linux.
Powiązane
Moduł Home Manager będący źródłem prawdy oraz kompletny przewodnik konfiguracji.
Instrukcja konfiguracji za pomocą CLI bez użycia Nix.
Konfiguracja kontenerowa jako alternatywa dla Nix.
Aktualizowanie instalacji zarządzanych przez Home Manager wraz z pakietem.