Containers
Nix
Installez OpenClaw de manière déclarative avec nix-openclaw - le module Home Manager officiel et clé en main.
Ce que vous obtenez
- Gateway + application macOS + outils (whisper, spotify, cameras) -- tous épinglés
- Service launchd qui survit aux redémarrages
- Système de Plugin avec configuration déclarative
- Retour arrière instantané :
home-manager switch --rollback
Démarrage rapide
Installer Determinate Nix
Si Nix n’est pas déjà installé, suivez les instructions de l’installateur Determinate Nix.
Créer une flake locale
Utilisez le modèle agent-first du dépôt nix-openclaw :
mkdir -p ~/code/openclaw-local
# Copy templates/agent-first/flake.nix from the nix-openclaw repo
Configurer les secrets
Configurez le jeton de votre bot de messagerie et la clé API du fournisseur de modèle. Des fichiers simples dans ~/.secrets/ conviennent très bien.
Renseigner les espaces réservés du modèle et appliquer
home-manager switch
Vérifier
Confirmez que le service launchd est en cours d’exécution et que votre bot répond aux messages.
Consultez le README de nix-openclaw pour les options complètes du module et des exemples.
Comportement d’exécution en mode Nix
Lorsque OPENCLAW_NIX_MODE=1 est défini (automatique avec nix-openclaw), OpenClaw passe en mode déterministe pour les installations gérées par Nix. D’autres packages Nix peuvent définir le même mode ; nix-openclaw est la référence officielle.
Vous pouvez également le définir manuellement :
export OPENCLAW_NIX_MODE=1
Sur macOS, l’application GUI n’hérite pas automatiquement des variables d’environnement du shell. Activez plutôt le mode Nix via defaults :
defaults write ai.openclaw.mac openclaw.nixMode -bool true
Ce qui change en mode Nix
- Les flux d’installation automatique et d’auto-mutation sont désactivés
openclaw.jsonest traité comme immuable. Les valeurs par défaut dérivées du démarrage restent uniquement disponibles à l’exécution, et les outils d’écriture de configuration comme setup, onboarding, la mutation viaopenclaw update, l’installation/mise à jour/désinstallation/activation de Plugin,doctor --fix,doctor --generate-gateway-tokenetopenclaw config setrefusent de modifier le fichier.- Les agents doivent plutôt modifier la source Nix. Pour nix-openclaw, utilisez le Démarrage rapide agent-first et définissez la configuration sous
programs.openclaw.configouinstances.<name>.config. - Les dépendances manquantes affichent des messages de remédiation propres à Nix
- L’UI affiche une bannière de mode Nix en lecture seule
Chemins de configuration et d’état
OpenClaw lit la configuration JSON5 depuis OPENCLAW_CONFIG_PATH et stocke les données mutables dans OPENCLAW_STATE_DIR. Lors de l’exécution sous Nix, définissez-les explicitement vers des emplacements gérés par Nix afin que l’état d’exécution et la configuration restent hors du magasin immuable.
| Variable | Par défaut |
|---|---|
OPENCLAW_HOME |
HOME / USERPROFILE / os.homedir() |
OPENCLAW_STATE_DIR |
~/.openclaw |
OPENCLAW_CONFIG_PATH |
$OPENCLAW_STATE_DIR/openclaw.json |
Découverte du PATH du service
Le service gateway launchd/systemd découvre automatiquement les binaires du profil Nix afin que
les Plugins et les outils qui appellent des exécutables installés via nix fonctionnent sans
configuration manuelle du PATH :
- Lorsque
NIX_PROFILESest défini, chaque entrée est ajoutée au PATH du service avec une précédence de droite à gauche (correspond à la précédence du shell Nix - l’élément le plus à droite gagne). - Lorsque
NIX_PROFILESn’est pas défini,~/.nix-profile/binest ajouté comme solution de repli.
Cela s’applique aux environnements de service macOS launchd comme Linux systemd.
Connexe
Module Home Manager source de vérité et guide de configuration complet.
Guide pas à pas de configuration CLI hors Nix.
Configuration conteneurisée comme alternative hors Nix.
Mise à jour des installations gérées par Home Manager avec le package.