10 puntos por GN⁺ 2026-02-23 | 1 comentarios | Compartir por WhatsApp
  • Asistente de IA ultraligero que funciona en placas ESP32, con el tamaño total del firmware limitado a menos de 888KiB
  • Escrito en C, permite combinar mediante lenguaje natural control GPIO, programación de tareas (cron), memoria persistente y herramientas personalizadas
  • La imagen completa, incluyendo Wi-Fi, TLS/cifrado y paquete de certificados, cabe dentro de 888KiB, y el código de la app en sí ronda los 25KB
  • Soporta integración con chat por Telegram y relay web, además de los principales proveedores de LLM como Anthropic, OpenAI y OpenRouter
  • Probado en placas ESP32-C3/S3/C6 y publicado como open source (licencia MIT), lo que facilita la experimentación con IA embebida y la extensibilidad

Resumen del proyecto

  • zclaw es un asistente personal de IA para ESP32, diseñado con el objetivo de mantener el tamaño total del firmware por debajo de 888KiB
    • El firmware incluye la lógica de zclaw, el runtime de ESP-IDF/FreeRTOS, además de Wi-Fi, TLS y el paquete de certificados
    • El código de la app en sí ocupa alrededor de 25KB, es decir, solo cerca del 4% de la imagen completa
  • Está escrito en C y soporta composición de herramientas mediante comandos en lenguaje natural, además de control GPIO y funciones de programación de tareas
  • Con la frase “Fun to use, fun to hack on”, pone énfasis en la experimentación para desarrolladores y la extensibilidad

Funciones principales

  • Ofrece una interfaz de chat mediante Telegram o relay web
  • Soporta programación de tareas con reconocimiento de zona horaria: permite configurar tareas repetitivas o únicas como daily, periodic y once
  • Extensión de funciones mediante herramientas integradas y personalizadas
  • Control de lectura/escritura GPIO y protecciones integradas como gpio_read_all
  • Incluye una función de memoria que persiste incluso después de reiniciar
  • Permite elegir persona: neutral, friendly, technical, witty
  • Integración con proveedores de LLM: Anthropic, OpenAI, OpenRouter

Soporte de hardware

  • Probado en: ESP32-C3, ESP32-S3, ESP32-C6
    • Otras variantes de ESP32 también pueden funcionar con configuración manual
  • Placa recomendada: Seeed XIAO ESP32-C3
  • Incluye scripts para el bucle de desarrollo y hackeo local
    • build.sh, flash.sh, provision-dev.sh, monitor.sh, etc.

Instalación y configuración

  • Incluye un comando bootstrap de una sola línea para macOS/Linux
    • bootstrap.sh clona el repositorio y luego ejecuta install.sh
  • Permite almacenar credenciales cifradas con flash en modo seguro (--flash-mode secure)
  • Las credenciales de Wi-Fi y del LLM se configuran con provision.sh
  • Límites predeterminados de llamadas al LLM: 100 por hora, 1000 por día (se puede cambiar en compilación)
  • Se puede verificar la respuesta del dispositivo con el script de pruebas (web-relay.sh)

Licencia e información del repositorio

  • Licencia MIT
  • Sitio oficial de documentación: zclaw.dev

1 comentarios

 
GN⁺ 2026-02-23
Comentarios de Hacker News
  • Puede que lo haya entendido mal, pero me pregunto si esto lleva un LLM pequeño integrado, o si solo es un wrapper que necesita conexión a internet

    • Es un wrapper. Básicamente usa la OpenAI API. Ver enlace al código
    • La mayoría de los proyectos claw tienen esta clase de estructura tipo wrapper
  • Lo interesante de correr claw en un ESP32 no es la capacidad de cómputo, sino que siempre está encendido y casi no requiere mantenimiento
    Yo corro pipelines de automatización en un servidor Linux, y el mayor problema no es la lógica de IA sino la administración del host. Actualizaciones, OOM, reinicios, etc.
    Si el ESP32 hace de proxy para la API en la nube y maneja localmente la orquestación de herramientas, puede ser incluso un destino de despliegue más estable para loops de agente simples

    • Me pregunto qué sistema operativo tiene instalado y cómo se manejan las actualizaciones
    • Totalmente de acuerdo. Un microcontrolador es básicamente un host con autorrecuperación: no hay gestor de paquetes, ni actualizaciones de kernel, ni configuración de cgroups. Si se reinicia, siempre vuelve al mismo estado. En cambio, en Linux es normal vivir depurando cosas como “algo se rompió después de la actualización periódica de apt”
    • ¿Pero en Linux no se puede simplificar también? Yo opero varios servidores Apache y funcionan bien con solo tocarlos cuando llegan al EOL
    • Pero así agregas más puntos de fallo. El servidor en la nube, internet, la conexión inalámbrica... si falla cualquiera de esos, ya hay problema. No es un mal enfoque, pero no reduce los problemas
  • ¿Alguien puede explicar desde la perspectiva de ingeniería qué pasa con el ADC (convertidor analógico-digital) del SoC ESP?
    Gente con experiencia dice que es complicado, pero también he oído que, si lo sabes manejar, puede rendir al nivel de los chips STM
    El ESP32 era uno de los únicos chips importantes que usaban su propia ISA, y después cambió a RISC-V

    • El ADC del ESP32 tiene especificaciones definidas de forma muy laxa. Si ese “know-how” incluye calibración precisa o caracterización, cosas difíciles de hacer en producción, entonces probablemente ahí está la respuesta
    • La ISA anterior del ESP32 estaba basada en IP adquirida de Tensilica
    • El ADC del ESP32 no es para audio de alta precisión, sino para control de entradas simples. Del tipo conectar un potenciómetro para recibir entrada física. Si quieres valores estables, tienes que promediar varias muestras. Para monitorear voltajes que cambian lentamente, sirve bastante bien
  • ¿Habrá una versión colaborativa de claw? Algo como una versión self-hosted que pueda usar una familia, por ejemplo
    Escuché que OpenClaw tiene perfiles, pero me pregunto si soporta chats personales y chats compartidos al mismo tiempo

    • Yo mismo hice algo parecido. Un bot self-hosted basado en Signal, con soporte para chats grupales
      Últimamente le agregué una función de automatización de compras del súper: crea una lista preliminar basada en pedidos anteriores, la familia la edita, y luego el agente arma el carrito con herramientas de navegador. El pago sigue siendo manual, pero ya casi está terminado. Algo así probablemente salga como open source pronto
  • Tengo unos ESP32 y unas pantallas OLED pequeñas, y estoy pensando en hacer con eso un Tamagotchi inteligente. ¿Alguna otra idea?

    • Yo hice algo parecido, pero al final todo termina en escribir una máquina de estados. El LLM no decide bien por sí solo cosas como “cuándo debería comer”. Al final sigues agregando variables y reglas hasta perder el rumbo
    • Está genial. ¿De casualidad es la versión con pantalla ultrapequeña de 0.46 pulgadas? Esa se puede usar de formas muy divertidas
  • Pensándolo bien, OpenClaw es como el ROS (Robot Operating System) del mundo de los agentes de IA
    Define cómo interactúan nodos distribuidos y tiene una estructura para combinar varios nodos funcionales en un sistema más grande

    • Pero, ¿de verdad existe una especificación o protocolo así? A mí me parece más una plataforma con varias integraciones montadas encima. Lo usé como una semana y esa fue mi impresión
  • Soy un hombre simple. Veo ESP32 y doy upvote de inmediato

  • ¿Alguna recomendación de agente estilo claw liviano para Linux? No necesito contenedores ni sandbox

    • Yo uso picoclaw
    • Si solo quieres WhatsApp y chat web, yo uso mi frontend web encima de piclaw. Es una webapp accesible por Tailscale
    • zeroclaw también podría valer la pena
  • Qué patrón tan viejo ver de nuevo

    bash <(curl foo.sh)
    

    Normalmente se usa

    curl foo.sh | bash
    

    pero ambos son riesgosos en términos de seguridad. En su lugar recomiendo esto

    curl foo.sh | tee /tmp/foo.sh | bash
    bash -c "$(curl foo.sh)"
    curl foo.sh -o /tmp/foo.sh && bash $_
    

    Yo prefiero la última opción

    • He oído que guardar en un archivo temporal y luego ejecutar es mejor que pasar curl directo a bash. Pero al final el problema de confianza es el mismo. Si no lees el código tú mismo, nunca es totalmente seguro
    • Si quieres hacerlo un poco más seguro
      t=$(mktemp) && [ -w $t ] && curl foo.sh -o $t && echo "$t ..." | sha256sum -c - && bash $t
      
      conviene agregar verificación de hash
    • Si quieres ser realmente meticuloso, también puedes escribirlo de forma independiente del shell
  • En realidad, estos proyectos claw tienen una estructura bastante simple. Básicamente basta con darle al LLM permiso para hacer llamadas a APIs

    • Lo que me sorprendió con todo el furor de OpenClaw es la cantidad de gente que ni siquiera entiende conceptos básicos de computación. Como si nunca hubieran mirado fuera de una carpeta node_modules
    • Yo he estado desarrollando un claw últimamente, y decir que “no tiene mucho” es como ver un pedazo de triplay con cuatro ruedas y decir que un auto no tiene mucho. Hacer un asistente personal de verdad es bastante más complejo
    • Si todo el mundo termina corriendo agentes personales 24/7, podría hacer falta muchísimos más recursos de cómputo de lo esperado. Claro, no sabemos si eso realmente vaya a pasar
    • Programar es igual. Es como decir “solo estás tecleando en un teclado”
    • Al final, pronto veremos qué pasa cuando le das una galleta a un ratón