nullclaw - Assistant IA autonome ultra-léger implémenté en Zig
(github.com/nullclaw)- Fonctionne comme un binaire statique (678 Ko), sans dépendance à un runtime, une VM ou un framework
- Moins de 1 Mo de mémoire, temps de démarrage inférieur à 2 ms, prise en charge de tous les environnements CPU comme ARM, x86 et RISC-V
- Architecture entièrement autonome, fonctionnant comme un exécutable unique sans service externe
- Prise en charge intégrée de plus de 50 fournisseurs d’IA, 19 canaux, 35 outils et 10 moteurs de mémoire
- Intégration des principaux modèles comme OpenAI, Anthropic, Gemini, Ollama et Groq
- Prise en charge de divers canaux de messagerie comme Telegram, Discord, Slack, Signal et Nostr
- Système de mémoire hybride basé sur SQLite intégré (FTS5 + recherche de similarité vectorielle)
- Conception axée sur la sécurité
- Isolation sandbox basée sur Landlock, Firejail, Bubblewrap et Docker
- Chiffrement ChaCha20-Poly1305, authentification par code d’appairage, limitation du périmètre du système de fichiers local
- Contrôle d’accès basé sur des tunnels (Cloudflare, Tailscale, ngrok, etc.)
- Architecture modulaire
- Tous les sous-systèmes sont construits autour d’une interface vtable et peuvent être remplacés
- Les éléments comme Provider, Channel, Tool, Memory, Runtime et Sandbox sont remplaçables uniquement via le fichier de configuration
- Prise en charge optionnelle de l’exécution avec Docker, WASM et le runtime natif
- Performances
- Environ 1 Mo de RAM utilisée, démarrage en moins de 8 ms sur un cœur edge à 0,8 GHz
- Plus de 5 300 tests, 230 fichiers source, 0 dépendance (hors libc)
- Structure ultra-légère pouvant fonctionner même sur du matériel à 5 $
- Flux d’exploitation centré sur le CLI
- Configuration des clés API et du Provider avec
nullclaw onboard - Exécution du mode interactif avec
nullclaw agent - Lancement du runtime gateway avec
nullclaw gateway - Commandes de diagnostic et d’exploitation comme
nullclaw doctor,status,channel start
- Configuration des clés API et du Provider avec
- Gateway API
- Fournit des endpoints REST comme
/pair,/webhook,/a2aet/health - Prend en charge l’envoi/réception de messages et la gestion des tâches via A2A JSON-RPC
- Fournit des endpoints REST comme
- Paramètres de mémoire et d’autonomie
- Choix possible entre des backends comme SQLite, ClickHouse, PostgreSQL et Redis
- Fonctions intégrées de sauvegarde automatique, snapshots et recherche hybride
- Niveau d’autonomie (
supervised,full) et périmètre des commandes autorisées configurables
- Extensibilité web et matérielle
- Intégration d’une interface navigateur via un WebChannel basé sur WebSocket
- Prise en charge du contrôle de périphériques matériels comme Arduino, Raspberry Pi et STM32
- Licence MIT
4 commentaires
On dirait qu'il y aura aussi voidclaw.
Après nanoclaw, picoclaw et zeroclaw, voilà donc nullclaw.
Quitte à coder avec l’IA de toute façon, autant le faire dès le départ en Rust ou en Zig… mais dès qu’un truc sort, ça finit toujours comme ça..
Les écosystèmes Rust et Zig s’élargissent de plus en plus.
Je me demande encore combien de temps JavaScript restera pertinent pour l’IA.