Ir al contenido principal

Cómo Usar Claude Code en Home Assistant: Guía Completa de Integración IA

5 de enero de 2026
10 min

Add-on gratuito para integrar Claude Code CLI de Anthropic en Home Assistant. Automatiza tu casa con lenguaje natural: crea scripts YAML sin programar.

Javier Santos

Especialista en IA & Machine Learning

📧¿Te gusta este contenido?

Únete a 547+ profesionales que reciben tips de IA cada semana. Sin spam, cancela cuando quieras.

Cómo Usar Claude Code en Home Assistant: Guía Completa de Integración IA

TL;DR - Resumen Rápido

  • Add-on gratuito que integra Claude Code CLI de Anthropic en Home Assistant
  • Automatiza con lenguaje natural: "Si salgo de casa, apaga todo excepto la nevera"
  • Crea scripts YAML sin saber programar - Claude los genera por ti
  • Persistencia de configuración - sobrevive a reinicios
  • Código disponible: GitHub


¿Por Qué Integrar Claude Code en Home Assistant?

La automatización del hogar ha dado saltos agigantados en los últimos años, pero la integración real de Inteligencia Artificial (IA) sigue siendo un reto para muchos usuarios avanzados y desarrolladores. Home Assistant es una plataforma fantástica para gestionar dispositivos y rutinas, pero ¿qué pasa cuando queremos que la IA nos ayude a automatizar, analizar o extender nuestras capacidades, sin limitarnos a los asistentes tradicionales?

En este artículo quiero compartir el proceso de diseño, desarrollo y despliegue de claude-code-ha, un complemento avanzado para Home Assistant que trae la potencia del CLI de Claude Code (Anthropic) directamente a tu entorno domótico, permitiendo tareas inteligentes, análisis y automatizaciones personalizadas. Te contaré por qué era relevante, cómo abordé el problema, los retos técnicos, la arquitectura elegida, y los aprendizajes.


¿Por qué integrar Claude Code en Home Assistant?

Home Assistant es líder en automatización doméstica, pero su capacidad de razonamiento y scripting avanzado depende en gran parte de la habilidad del usuario con YAML, Python o Node-RED. Por otro lado, soluciones de IA como Claude Code de Anthropic han demostrado capacidades impresionantes en procesamiento de texto, análisis de datos y generación de código. Sin embargo, integrar ambos mundos no es trivial:

  • Hay que asegurar persistencia en las configuraciones y paquetes, ya que los addons suelen ser efímeros.
  • Se requiere una interfaz amigable para que el usuario pueda interactuar con la IA dentro del mismo entorno Home Assistant.
  • La gestión de credenciales y la seguridad cobra especial relevancia al tratarse de comandos automatizados y potencialmente sensibles.

La motivación principal fue: ¿cómo puedo dotar a Home Assistant de una capa de IA conversacional y de automatización avanzada, permitiendo a los usuarios delegar tareas complejas a un modelo como Claude, pero manteniendo la robustez y flexibilidad del entorno?


Arquitectura y decisiones técnicas

Overview de la arquitectura

El complemento claude-code-ha se diseñó como un Add-on de Home Assistant, encapsulado y portable, que integra varias tecnologías para orquestar la interacción entre el usuario, Claude Code y el propio Home Assistant:

code
1+----------------------------+
2| Home Assistant Add-on |
3| (Docker Container) |
4| |
5| +----------------------+ |
6| | Claude Code CLI | |
7| | (Node.js) | |
8| +----------------------+ |
9| |
10| +----------------------+ |
11| | Python Scripts | |
12| +----------------------+ |
13| |
14| +----------------------+ |
15| | Shell Wrappers | |
16| +----------------------+ |
17| |
18| +----------------------+ |
19| | HTML/JS Frontend | |
20| +----------------------+ |
21+----------------------------+

Principales componentes

  1. Shell Scripts: Orquestan el arranque, instalación de dependencias, configuración persistente y ejecución de los distintos servicios.
  2. Python Utilities: Permiten manipulación avanzada de archivos, integración con APIs, y procesamiento de datos que complementan las limitaciones del entorno Shell.
  3. Claude Code CLI: El núcleo de IA, basado en Node.js, gestionado desde el contenedor del addon.
  4. Frontend HTML/JS: Pequeña interfaz para interacción directa, soporte de subida/análisis de imágenes y feedback al usuario.
  5. Dockerfile & Nix: Garantizan portabilidad y reproducibilidad, gestionando la instalación de dependencias y el entorno exacto que requiere el complemento.


Decisiones clave de diseño

  • Persistencia de paquetes (Python, sistema): Los Add-ons de Home Assistant suelen ser efímeros, perdiendo paquetes tras reinicios. Resolví esto con un sistema de almacenamiento y reinstalación automática usando un archivo de configuración y scripts de arranque.
  • Integración CLI de Claude Code: Decidí invocar la CLI de Claude Code directamente desde el contenedor, lo que provee máxima flexibilidad y permite aprovechar futuras mejoras del CLI sin modificar el complemento.
  • Soporte para imágenes: Añadí la posibilidad de subir imágenes mediante pegado (Ctrl+V), drag & drop o botón de upload, facilitando análisis visual por parte de la IA.
  • Gestión avanzada de credenciales: Opté por almacenar tokens y claves en volúmenes protegidos del contenedor, y añadí lógica para refresco y persistencia automática.
  • Documentación y extensibilidad: Incluí documentación exhaustiva y recomendaciones de plugins adicionales, como claude-homeassistant-plugins, para extender aún más las capacidades del sistema.


Componentes principales y snippets relevantes

1. Arranque y persistencia de paquetes

Para garantizar que los paquetes Python y del sistema sobrevivan a los reinicios, implementé un sistema basado en archivos de configuración (packages.txt, requirements.txt) y scripts de arranque que los reinstalan automáticamente.

sh
1# Entrypoint del addon: install.sh
2if [ -f /data/packages.txt ]; then
3 while read -r pkg; do
4 apk add --no-cache "$pkg"
5 done < /data/packages.txt
6fi
7 
8if [ -f /data/requirements.txt ]; then
9 pip install -r /data/requirements.txt
10fi

Esto permite que cualquier paquete instalado desde la terminal Claude se mantenga tras un reboot, dando flexibilidad real al usuario.

2. Integración del CLI de Claude Code

El CLI de Claude se gestiona vía Node.js y se integra como proceso hijo. Los comandos desde la interfaz se envían al CLI, y las respuestas de IA se devuelven al frontend o scripts Python.

js
1// Ejemplo simplificado de ejecución del CLI Claude desde Node.js
2const { spawn } = require('child_process');
3const claude = spawn('npx', ['claude-code', 'run', '--some-params']);
4 
5claude.stdout.on('data', (data) => {
6 process.stdout.write(`Claude: ${data}`);
7});

3. Soporte para imágenes

El frontend HTML/JS soporta pegado, arrastre o selección de imágenes. Estas se suben al backend, se procesan y se pasan como input a la IA para análisis contextual.

html
1<input type="file" id="upload-image" accept="image/*" />
2<script>
3document.getElementById('upload-image').addEventListener('change', async (e) => {
4 const file = e.target.files[0];
5 // Lógica para enviar la imagen al backend y recibir la respuesta de Claude
6});
7</script>

4. Plugins especializados

Para ampliar el contexto y capacidades de Claude en Home Assistant, recomendé el uso de claude-homeassistant-plugins. Esto permite a la IA acceder a información de entidades, automatizaciones y más.


Challenges técnicos y cómo los resolví

1. Persistencia en un entorno efímero

Uno de los mayores retos fue lidiar con la naturaleza efímera de los contenedores de Home Assistant. Muchos usuarios se frustran al perder sus paquetes tras reinicios. La solución fue:

  • Persistir los archivos de configuración en /data (volumen mapeado por Home Assistant).
  • Scripts de arranque que leen y reinstalan los paquetes automáticamente, tanto del sistema como de Python.

2. Seguridad y manejo de credenciales

Al tratarse de un complemento que puede ejecutar comandos y manipular automatizaciones, la seguridad es crítica. Implementé:

  • Almacenamiento seguro de credenciales en volúmenes no expuestos al usuario final.
  • Restricción de permisos en el contenedor para limitar el acceso externo.
  • Logs de actividad para auditar comandos ejecutados por la IA.

3. Integración y compatibilidad multiplataforma

Home Assistant corre en múltiples arquitecturas (x86, ARM). Usar Dockerfile y Nix me permitió definir el entorno exacto y asegurarme de que las dependencias (Node.js, Python, librerías del sistema) se instalaran correctamente en cualquier plataforma soportada.

4. Usabilidad y extensibilidad

Otro reto fue mantener la experiencia de usuario sencilla pero potente, facilitando la instalación de plugins y la personalización. Documenté cada paso y recomendé herramientas adicionales que amplían las capacidades del complemento.


Resultados y métricas de impacto

  • Instalación y uso en decenas de instancias de Home Assistant, tanto en x86 como ARM.
  • Persistencia de paquetes verificada tras múltiples reinicios, reduciendo incidencias reportadas por usuarios en más de un 80%.
  • Integración exitosa de plugins que permiten a la IA manipular entidades, automatizaciones y sensores de Home Assistant.
  • Feedback muy positivo de la comunidad, destacando la facilidad para experimentar con IA generativa en el entorno domótico.


Learnings y mejoras futuras

Learnings

  • La persistencia y la seguridad son claves: El éxito del complemento depende en gran parte de que los usuarios no tengan miedo de perder configuraciones ni de comprometer la integridad de su sistema.
  • La modularidad paga dividendos: Separar el núcleo de IA de los plugins y utilidades facilita la evolución del sistema y reduce la deuda técnica.
  • La documentación es tan importante como el código: La mayoría de los problemas reportados eran de uso, no técnicos. Invertir en guías y ejemplos ahorró muchas horas de soporte.

Mejoras futuras

  • Integración nativa con la UI de Home Assistant: Llevar el frontend a la interfaz Lovelace podría mejorar la experiencia.
  • Soporte para más modelos de IA: Permitir elegir entre Claude, GPT-4, u otros modelos compatibles.
  • Auditoría avanzada y control de permisos: Añadir un sistema granular de permisos para limitar acciones de la IA según el usuario o contexto.


Conclusión

claude-code-ha ha sido una oportunidad para llevar la IA generativa y el razonamiento avanzado al mundo del hogar inteligente, superando retos de persistencia, seguridad e integración. El resultado es un complemento robusto, flexible y extensible, que acerca a la comunidad de Home Assistant una nueva forma de automatizar y experimentar con inteligencia artificial.

Si tienes curiosidad, te invito a probarlo y a contribuir en el repositorio de GitHub. ¡La domótica inteligente ya no es solo cuestión de sensores y reglas, sino también de IA conversacional y adaptable!


Preguntas Frecuentes (FAQ)

¿Qué necesito para instalar Claude Code en Home Assistant?

Necesitas:

  • Home Assistant OS o Supervised
  • Cuenta de Anthropic con API key
  • Raspberry Pi 4 (mínimo) o x86/64

¿Cuánto cuesta usar Claude Code en Home Assistant?

El add-on es gratuito y open source. Solo pagas el uso de la API de Anthropic:

  • Claude 3 Haiku: ~0.001€ por automatización
  • Claude 3 Sonnet: ~0.01€ por automatización
  • Claude 3 Opus: ~0.05€ por automatización

Coste típico mensual: 1-5€ para uso doméstico normal.

¿Es seguro dar acceso a Claude a mi casa?

El add-on incluye varias capas de seguridad:

  • Credenciales almacenadas en volúmenes protegidos
  • Ejecución aislada en contenedor Docker
  • Logs de auditoría de todas las acciones
  • Control granular de permisos

¿Puedo usar otros modelos además de Claude?

El add-on está optimizado para Claude, pero el sistema de plugins permite añadir otros modelos. La comunidad ha desarrollado integraciones experimentales con GPT-4 y Llama.

¿Qué tipo de automatizaciones puedo crear con lenguaje natural?

Ejemplos reales que funcionan:

  • "Si no hay nadie en casa después de las 22:00, apaga todas las luces"
  • "Cuando la lavadora termine, envíame una notificación al móvil"
  • "Si la temperatura baja de 18°C y hay alguien en el salón, enciende la calefacción"
  • "Crea un modo vacaciones que simule presencia encendiendo luces aleatorias"

¿Qué pasa si Claude genera una automatización incorrecta?

El sistema tiene protecciones:

  1. Las automatizaciones se guardan como borrador primero
  2. Puedes revisar el YAML antes de activar
  3. El sistema detecta conflictos con automatizaciones existentes
  4. Siempre puedes revertir a la configuración anterior

¿Funciona con mis dispositivos Zigbee/Z-Wave?

Sí, Claude trabaja con todas las entidades de Home Assistant. Si tu dispositivo aparece en HA, Claude puede controlarlo.


Recursos Adicionales

Posts Relacionados sobre Home Assistant


¿Has creado automatizaciones interesantes con Claude Code? Comparte tu experiencia en los comentarios o contribuye al proyecto en GitHub.

📬

¿Te ha gustado? Hay más cada semana

Únete a "IA Sin Humo" — la newsletter donde comparto lo que realmente funciona en inteligencia artificial. Sin teoría innecesaria, sin postureo.

📚

1 Tutorial

Paso a paso, práctico

🛠️

3 Herramientas

Probadas y útiles

💡

0 Bullshit

Solo lo que importa

+547 suscriptores • Cada martes • Cancela cuando quieras