- Assistant IA ultra-léger fonctionnant sur une carte ESP32, avec une taille totale de firmware limitée à moins de 888 KiB
- Écrit en C, il permet de combiner en langage naturel le contrôle GPIO, la planification (
cron), la mémoire persistante et des outils personnalisés
- L’image complète, incluant Wi-Fi, TLS/chiffrement et bundle de certificats, tient dans 888 KiB, tandis que le code de l’application lui-même représente environ 25 KB
- Prend en charge l’intégration avec Telegram et le chat via relais web, ainsi qu’avec les principaux fournisseurs de LLM comme Anthropic, OpenAI et OpenRouter
- Testé sur les cartes ESP32-C3/S3/C6, publié en open source (licence MIT), avec un bon potentiel pour les expérimentations IA embarquées et l’extensibilité
Aperçu du projet
- zclaw est un assistant IA personnel pour ESP32, conçu avec pour objectif de maintenir la taille totale du firmware sous 888 KiB
- Le firmware inclut la logique zclaw, le runtime ESP-IDF/FreeRTOS, ainsi que le Wi-Fi, TLS et le bundle de certificats
- Le code de l’application lui-même ne représente qu’environ 25 KB, soit à peu près 4 % de l’image complète
- Écrit en C, il prend en charge la composition d’outils via des commandes en langage naturel, ainsi que le contrôle GPIO et des fonctions de planification
- Avec la formule « Fun to use, fun to hack on », le projet met l’accent sur l’expérimentation côté développeur et l’extensibilité
Fonctionnalités principales
- Interface de chat disponible via Telegram ou un relais web
- Prise en charge d’une planification sensible au fuseau horaire :
daily, periodic, once, etc., pour des tâches récurrentes ou ponctuelles
- Extension des capacités grâce à des outils intégrés et personnalisés
- Contrôle en lecture/écriture des GPIO et protections intégrées comme
gpio_read_all
- Fonction de mémoire persistante après redémarrage
- Choix de persona possible :
neutral, friendly, technical, witty
- Intégration avec des fournisseurs de LLM : Anthropic, OpenAI, OpenRouter
Prise en charge matérielle
- Plateformes testées : ESP32-C3, ESP32-S3, ESP32-C6
- D’autres variantes ESP32 peuvent aussi fonctionner avec une configuration manuelle
- Carte recommandée : Seeed XIAO ESP32-C3
- Scripts fournis pour une boucle locale de développement et de bidouillage
build.sh, flash.sh, provision-dev.sh, monitor.sh, etc.
Installation et configuration
- Commande de bootstrap en une ligne pour macOS/Linux
bootstrap.sh clone le dépôt puis exécute install.sh
- Le flash en mode sécurisé (
--flash-mode secure) permet de stocker des identifiants chiffrés
- Les identifiants Wi-Fi et LLM se configurent avec
provision.sh
- Limites par défaut des appels LLM : 100 par heure, 1000 par jour (modifiables à la compilation)
- Un script de test (
web-relay.sh) permet de vérifier la réponse de l’appareil
Licence et informations du dépôt
- Licence MIT
- Site de documentation officiel : zclaw.dev
Aucun commentaire pour le moment.