Installation et mise en route

Le déploiement ne nécessite qu’un seul binaire statique de 25 Mo, installé dans ~/.local/bin via

curl -fsSL https://meclaw.ai/install.sh | sh
. La première exécution charge le binaire depuis le disque froid et dure environ 40 s ; les relances suivantes se font en moins d’une seconde. Après l’installation, l’utilisateur clone le dépôt correspondant à la version du binaire :
git clone --depth 1 --branch "v$(meclaw --version | cut -d' ' -f2)" https://github.com/mmeyerlein/meclaw && cd meclaw
. Un fichier .env fournit la clé d’API OpenRouter et le modèle LLM (ex. openai/gpt-4o-mini), indispensable pour que le troisième pas fonctionne.

Architecture du substrate

Meclaw transforme un arbre de répertoires en une colonie d’acteurs : chaque dossier représente une cellule, son fichier config.json décrit le comportement, et les liens entre dossiers sont les routes que les messages empruntent. Aucun autre composant n’est installé ; le système repose exclusivement sur le binaire Rust et le stockage de fichiers, chaque entité disposant d’un sandbox isolé (souvent implémenté avec SQLite) pour persister son état. Cette approche « tout‑fichier » rend la topologie du réseau d’agents diffable avec les outils classiques ls, grep, diff ou git.

Mécanisme de croissance et d’interaction

Après le lancement du daemon (meclaw --daemon --api 127.0.0.1:7777), la colonie accepte des mutations HTTP. Une simple requête POST ajoute de nouveaux nœuds et arêtes :

curl -s -X POST 127.0.0.1:7777/colony/mutations \
     -H 'Content-Type: application/json' -d @examples/meclaw-os/grow.json
. Aucun redémarrage n’est requis ; le système applique la mutation en temps réel, créant par exemple une porte, un pare‑feu ou un agent conversationnel à partir de modèles pré‑définis. La communication avec l’assistant s’effectue également via HTTP :
curl -s -X POST 127.0.0.1:7777/messages -H 'Content-Type: application/json' \
     -d '{"target": "/door", "headers": {"channel": "chat-1"}, "body": {"messages": [{"origin": "user", "type": "text", "text": "Say hello in one short sentence."}]}}'
. La réponse n’est pas renvoyée directement mais enregistrée dans le journal de la colonie, consultable avec
curl -s '127.0.0.1:7777/colony/trace?limit=200' | jq -r ...
, ce qui garantit traçabilité et auditabilité.

Analyse des limites et perspectives

Le modèle de fichiers offre une transparence exceptionnelle, mais il impose une dépendance forte à la latence du système de fichiers et à la capacité du disque à gérer de nombreuses petites bases SQLite. L’absence d’API SDK ou de plugin rend l’intégration avec des environnements externes plus lourde, chaque interaction devant passer par HTTP ou manipulation de fichiers. De plus, la sécurité repose sur l’isolation du sandbox ; une mauvaise configuration du répertoire ou une fuite de la clé d’API OpenRouter expose le système à des appels LLM non autorisés. Enfin, la scalabilité est limitée par le fait qu’un seul processus Rust orchestre toutes les cellules ; bien que le modèle soit expérimental, il pourra nécessiter une architecture distribuée (ex. plusieurs binaires synchronisés) pour supporter des colonies de grande taille. Malgré ces contraintes, meclaw démontre qu’une architecture purement déclarative, basée sur le système de fichiers, peut remplacer les boucles de contrôle traditionnelles des frameworks d’agents, offrant ainsi une nouvelle voie pour la construction d’écosystèmes d’assistants autonomes.