ClamBot : Agent IA Exécute du Code Généré par LLM dans un Bac à Sable WASM pour la Sécurité

Ce que fait ClamBot
ClamBot est un framework d'agent IA qui aborde les préoccupations de sécurité des frameworks d'agents existants en exécutant tout code généré par LLM dans un bac à sable WebAssembly au lieu d'utiliser des appels exec() ou de sous-processus. Le créateur l'a construit après avoir essayé des frameworks qui exécutent du code arbitraire directement sur la machine hôte, citant des exemples comme LangChain ayant une CVE pour cette approche, AutoGen utilisant des sous-processus, et SWE-Agent exécutant des commandes bash depuis le modèle.
Implémentation technique
ClamBot est construit sur amla-sandbox, un bac à sable WASM qui utilise QuickJS dans Wasmtime. Le LLM écrit du code JavaScript qui s'exécute dans un bac à sable isolé en mémoire avec un accès réseau nul. Chaque appel d'outil (HTTP, système de fichiers, cron) doit passer par une porte d'approbation en Python. Aucun Docker ou VM n'est requis - il s'exécute comme un seul binaire.
Fonctionnalités clés
- Sécurité du bac à sable : Tout le code s'exécute en WASM - ne peut pas toucher la mémoire hôte ou le réseau
- Porte d'approbation : Porte d'approbation avec empreinte SHA-256 sur chaque appel d'outil avec des modèles pré-approuvés (par exemple, "autoriser web_fetch pour api.coinbase.com")
- Réutilisation des clams : Les scripts réussis sont sauvegardés sous forme de "clams" et peuvent être réutilisés, réduisant les coûts d'API pour les requêtes répétées
- Support multi-fournisseurs : OpenRouter, Anthropic, OpenAI, Gemini, DeepSeek, Groq, Ollama
- Intégration Telegram : Bot Telegram avec boutons d'approbation en ligne
- Fonctionnalités supplémentaires : Mémoire persistante, planification cron, protection SSRF qui bloque les IP privées, les secrets n'apparaissent jamais dans les logs/arguments d'outils/traces
Exemple de flux de travail
L'utilisateur demande : "quels sont les plus gros mouvements sur binance ?" Le bac à sable exécute du JavaScript → fait une requête http vers l'API Binance → passe par la porte d'approbation → renvoie le résultat. Le bot répond avec les 10 plus gros mouvements sur Binance par changement sur 24h.
Pour commencer
bash git clone https://github.com/clamguy/clambot.git
cd clambot
uv run clambot onboard
uv run clambot agentStack et échelle
Le projet est construit avec Python + QuickJS/Wasmtime, contient environ 10 000 lignes de code, et a été inspiré par OpenClaw et nanobot. Le créateur l'a construit parce qu'il voulait "un agent IA auquel je pourrais réellement faire confiance sur mon serveur".
📖 Read the full source: r/openclaw
👀 See Also

Portage de l'Autoresearch de Karpathy sur le Neural Engine d'Apple pour une meilleure efficacité énergétique par watt
Un prototype combine le projet autoresearch d'Andrej Karpathy avec les performances rétro-ingéniérées du Neural Engine d'Apple, visant un meilleur débit par watt par rapport aux API officielles. Le projet est construit sur des dépôts GitHub existants et reconnaît les contributions de plusieurs développeurs.

angular-grab : Outil d'extraction de contexte de composants Angular pour agents IA
angular-grab est un outil réservé aux développeurs qui vous permet de pointer sur n'importe quel élément d'interface utilisateur dans un serveur de développement Angular, d'appuyer sur Cmd+C et de copier la pile d'appels complète des composants avec les chemins de fichiers et le HTML dans votre presse-papiers pour coller dans des agents d'IA.

Artifactr : Outil CLI local-first pour gérer les artefacts des agents d'IA de codage
Artifactr est un outil CLI gratuit et open-source pour gérer les artefacts LLM comme les compétences, commandes et définitions d'agents. Il stocke les fichiers dans des coffres portables sans connexion réseau et prend en charge la synchronisation automatique via des liens symboliques.

Clawdex : Un répertoire pour suivre les dérivés et forks d'OpenClaw
Clawdex est un répertoire listant 18 projets liés à OpenClaw répartis en trois niveaux, avec des données sur les étoiles, le langage et les étiquettes de catégorie. Le projet est basé sur les PR, nécessitant que les contributeurs forkent le dépôt, ajoutent un fichier YAML dans /src/data/projects/ et ouvrent une pull request.