Ir al contenido

Instalación de OpenClaw con Nix

Configurar herramientas de desarrollo en un Mac suele ser un proceso manual y propenso a errores. Instalas dependencias, editas archivos de configuración ocultos y, semanas después, no recuerdas por qué algo dejó de funcionar. Es frustrante cuando tu entorno no es reproducible y pierdes tiempo arreglando conflictos de versiones.

Si buscas orden, la mejor opción es usar Nix. Te permite definir todo tu entorno como código, evitando que el sistema se ensucie con instalaciones globales impredecibles.

  • Un equipo con macOS.
  • Determinate Nix instalado.
  • Una cuenta de Telegram para configurar el bot (@BotFather) y obtener tu chat ID (@userinfobot).
  • Una API key de Anthropic.

La forma recomendada de ejecutar OpenClaw con Nix es mediante nix-openclaw, un módulo de Home Manager que ya viene con todo listo para funcionar.

Copia y pega este prompt en tu agente de AI (Claude, Cursor, etc.) para acelerar el proceso:

I want to set up nix-openclaw on my Mac.
Repository: github:openclaw/nix-openclaw
What I need you to do:
1. Check if Determinate Nix is installed (if not, install it)
2. Create a local flake at ~/code/openclaw-local using templates/agent-first/flake.nix
3. Help me create a Telegram bot (@BotFather) and get my chat ID (@userinfobot)
4. Set up secrets (bot token, Anthropic key) - plain files at ~/.secrets/ is fine
5. Fill in the template placeholders and run home-manager switch
6. Verify: launchd running, bot responds to messages
Reference the nix-openclaw README for module options.

Con este método obtienes:

  • Gateway + app de macOS + herramientas (whisper, spotify, cámaras) totalmente ancladas.
  • Servicio de launchd que persiste tras reiniciar.
  • Sistema de plugins con configuración declarativa.
  • Rollback instantáneo con home-manager switch --rollback.

Cuando activas OPENCLAW_NIX_MODE=1, OpenClaw entra en un modo donde la configuración es determinista y se desactivan los flujos de auto-instalación.

Para habilitarlo en la app GUI de macOS, ejecuta:

Ventana de terminal
defaults write bot.molt.mac openclaw.nixMode -bool true

OpenClaw utiliza estas variables para separar la configuración gestionada por Nix de los datos mutables:

  • OPENCLAW_HOME: Directorio base para la resolución de rutas internas.
  • OPENCLAW_STATE_DIR: Carpeta para datos mutables (por defecto ~/.openclaw).
  • OPENCLAW_CONFIG_PATH: Ruta al archivo JSON5 de configuración (por defecto $OPENCLAW_STATE_DIR/openclaw.json).

En Nix, debes definir estas rutas explícitamente para que el estado de ejecución no intente escribirse en el store de Nix, que es inmutable.

  • Dependencias faltantes: Si el sistema detecta que falta algo, verás mensajes de error específicos de Nix con instrucciones para solucionarlo.
  • Interfaz bloqueada: En Nix mode, la UI mostrará un banner de “solo lectura”. Esto es normal, ya que la configuración debe modificarse a través de tu flake o archivos de Nix, no desde la interfaz.
  • Variables de entorno en macOS: Recuerda que la app de GUI no siempre hereda las variables de tu shell; usa el comando defaults write mencionado arriba si el modo Nix no se activa automáticamente.
  • Scripts de empaquetado: Si construyes la app manualmente, el script scripts/package-mac-app.sh se encarga de parchear el Info.plist para que sea determinista sin requerir todo el toolchain de Xcode.

Si necesitas ayuda personalizada con tu configuración, consulta al AI Setup Assistant.

  • nix-openclaw — Guía completa del repositorio.
  • Wizard — Configuración por CLI para entornos sin Nix.
  • Docker — Instalación basada en contenedores.
OpenClaw

OpenClaw Expert

Sigues atascado?

Si esta pagina no resolvio tu caso, pregunta a OpenClaw Expert para pasos concretos.