TinyClaw : équipes d'agents IA pour Discord, WhatsApp et Telegram

TinyClaw : un cadre d’équipe IA multi‑agent

1. Qu’est‑ce que TinyClaw ?

TinyClaw est un outil communautaire sous licence MIT qui transforme un petit nombre de fournisseurs d’IA (Claude, OpenAI, etc.) en une équipe d’agents. Chaque agent fonctionne dans son propre espace de travail isolé, conserve son propre historique de conversation et peut déléguer du travail à ses collègues grâce à un système de commandes simple basé sur des préfixes. Le nom TinyClaw reflète l’idée que le code petit peut toujours gérer une collaboration complexe.

Concepts clés : - Agent – une instance IA unique avec un rôle défini. - Équipe – un groupe d’agents qui se chaînent ou se divisent lors du traitement d’une requête. - Canal – le lieu où les agents reçoivent des messages (Discord, WhatsApp, Telegram, heartbeat).

Tout le travail lourd est effectué par le CLI et des fichiers de configuration JSON simples, vous permettant d’exécuter TinyClaw sur macOS, Linux ou WSL‑2 Windows.

2. Fonctionnalités principales

Fonctionnalité Description
Multi‑agent Exécuter des dizaines d’agents simultanément, chacun avec sa propre invite et son fournisseur.
Multi‑équipe Organiser les agents en équipes – une peut être un « leader », ou vous pouvez diviser le travail entre plusieurs coéquipiers.
Multi‑canal Connecter Discord, WhatsApp et Telegram. Le même utilisateur peut communiquer avec le même agent depuis n’importe quelle plateforme.
Observation d’équipe Tableau de bord TUI en temps réel qui visualise le flux de messages entre agents et équipes.
Traitement parallèle Les agents traitent les messages entrants en concurrence, tout en préservant l’ordre par agent.
Sessions persistantes Les conversations sont enregistrées sur le disque ; redémarrer TinyClaw et il reprend là où il s’était arrêté.
File‑based queue Des fichiers JSON atomiques signifient aucune condition de concurrence – parfait pour un système multi‑agent.
Heartbeat Prompts programmés « check‑in » pour chaque agent afin de maintenir le système actif et de déceler les tâches en attente.
Sélection dynamique du fournisseur Bascule entre Anthropic Claude, OpenAI Codex et d’autres fournisseurs sans rompre les Conditions d’utilisation.
Installation facile Script à une ligne qui détecte votre environnement et configure tout.

3. Vue d’ensemble de l’architecture

L’architecture de TinyClaw est volontairement simple, ce qui facilite le débogage ou l’extension :

  1. Canaux – Les bots écoutent les messages entrants et écrivent un fichier JSON dans ~/.tinyclaw/queue/incoming/.
  2. Traiteur de file – Un chien de garde qui déplace chaque fichier vers processing/, puis le délègue à l’agent approprié.
  3. Agents – Chaque agent s’exécute dans son propre répertoire isolé sous ~/tinyclaw-workspace/<agent_id>/. L’agent utilise le CLI du fournisseur configuré (la commande claude d’Anthropic ou codex d’OpenAI).
  4. Persistance – Conversations et état de l’agent vivent dans le répertoire de travail. À l’arrêt, la file basée sur fichier est vidée, mais les logs restent.
  5. Visualisation – La commande tinyclaw team visualize <id> ouvre une interface de style curses qui affiche l’historique des messages en temps réel et l’état des agents.

Ce flux rend le système déterministe tout en permettant un débit élevé.

4. Guide de démarrage rapide

Voici un guide pas à pas qui lance une instance TinyClaw en quelques minutes.

Prérequis – macOS/Linux/WSL2 avec Node v18+, tmux, jq, un Bash 4.0+ (macOS : brew install bash), Claude Code CLI et Codex CLI.

4.1 Installation à une ligne (recommandée)

curl -fsSL https://raw.githubusercontent.com/jlia0/tinyclaw/main/scripts/remote-install.sh | bash
Le script : - Détecte votre OS. - Installe les dépendances manquantes. - Clone le dépôt, installe les paquets npm, et copie les scripts binaires vers ~/.local/bin/. - Vous interroge sur les éléments optionnels.

4.2 Construction manuelle à partir de la source

git clone https://github.com/jlia0/tinyclaw.git
cd tinyclaw
npm install
./scripts/install.sh

4.3 Première exécution & Assistant de configuration

tinyclaw start   # Démarre la session Tmux et l’assistant interactif
L’assistant vous guide à travers : - Sélection du canal – activez Discord, WhatsApp ou Telegram. - Tokens de bot – collez les tokens pour chaque canal activé. - Création d’espace de travail – nommez le répertoire racine. - Définition d’agent – choisissez un nom d’assistant principal, le fournisseur et le modèle. - Heartbeat – définissez la fréquence à laquelle les agents vérifient les nouvelles tâches.

Une fois terminé, TinyClaw démarre son démon et vous pouvez interagir à partir de n’importe quel canal connecté.

5. Configuration des agents et des équipes

Les paramètres d'agent et d'équipe sont stockés dans ~/.tinyclaw/settings.json.

5.1 Exemple de configuration

{
  "channels": {
    "enabled": ["discord", "telegram", "whatsapp"],
    "discord": { "bot_token": "YOUR_DISCORD_TOKEN" },
    "telegram": { "bot_token": "YOUR_TELEGRAM_TOKEN" },
    "whatsapp": {}
  },
  "workspace": {
    "path": "/Users/me/tinyclaw-workspace",
    "name": "tinyclaw-workspace"
  },
  "agents": {
    "assistant": {
      "name": "Assistant",
      "provider": "anthropic",
      "model": "sonnet",
      "working_directory": "/Users/me/tinyclaw-workspace/assistant"
    },
    "coder": {
      "name": "Code Assistant",
      "provider": "anthropic",
      "model": "sonnet",
      "working_directory": "/Users/me/tinyclaw-workspace/coder"
    }
  },
  "teams": {
    "dev": {
      "name": "Development Team",
      "agents": ["coder", "reviewer"],
      "leader_agent": "coder"
    }
  },
  "monitoring": {
    "heartbeat_interval": 3600
  }
}
  • Chaque répertoire d'agent contient son propre .claude/, heartbeat.md et les modèles AGENTS.md.
  • Les équipes peuvent chaîner ou se diviser ; l’agent leader reçoit la requête d’origine.

5.2 Ajouter un nouvel agent

tinyclaw agent add
L’utilitaire vous guide à travers une invite pour définir le nom, le fournisseur, le modèle et le dossier de travail. Après l’ajout, vous pouvez lister l’ensemble avec tinyclaw agent list.

5.3 Supprimer des agents & équipes

tinyclaw agent remove coder
tinyclaw team remove dev
N’oubliez pas de supprimer l’espace de travail associé si vous souhaitez libérer de l’espace disque.

6. Guides d’installation des canaux

  • Discord – Créez un bot dans le portail développeur, activez l’« Intent de contenu de message », puis collez le token.
  • Telegram – Utilisez BotFather pour créer un bot et récupérer son token.
  • WhatsApp – Après le démarrage, scannez le QR code qui apparaît dans le terminal.

Consultez le répertoire docs pour des captures d’écran complètes et des instructions détaillées.

7. Utilisation du CLI

Le CLI de TinyClaw propose des dizaines de commandes. Voici les plus courantes : | Commande | Objectif | |----------|----------| | tinyclaw start/stop/restart | Contrôler le démon. | | tinyclaw status | Afficher les processus et agents en cours. | | tinyclaw setup | Relancer l’assistant pour changer la configuration. | | tinyclaw logs <type> | Visualiser les logs (discord, whatsapp, queue, etc.). | | tinyclaw attach | Attacher à la session Tmux en cours. | | tinyclaw agent list | Voir la liste des agents configurés. | | tinyclaw team visualize <id> | Ouvrir le tableau de bord en temps réel. | | tinyclaw update | Mettre à jour automatiquement depuis GitHub. |

7.1 Commandes in‑chat

Lorsqu’un utilisateur envoie un message via un canal, les préfixes suivants s’appliquent : - @agent_id <msg> – envoie le message à un agent spécifique. - @team_id <msg> – redirige vers l’agent leader de l’équipe. - /agent et /team – affiche la liste des agents ou équipes disponibles.

Un message sans préfixe est envoyé à l’agent par défaut.

8. Fonctions avancées

8.1 Surveillance du Heartbeat

Les agents peuvent être programmés pour exécuter des « check‑ins » de routine en modifiant ~/tinyclaw-workspace/<agent_id>/heartbeat.md. L’invite par défaut est :

Check for:
1. Pending tasks
2. Errors
3. Unread messages
Take action if needed.

8.2 Appariement des expéditeurs

Pour éviter les spams, TinyClaw génère un code d’appariement sur le premier message d’un expéditeur inconnu. Le code doit être approuvé via tinyclaw pairing approve <code>.

8.3 Visualisation d’équipe

Exécuter tinyclaw team visualize dev ouvre une interface curses qui montre les messages en attente de chaque agent en temps réel, facilitant le débogage et l’observation des échanges IA.

9. Cas d’utilisation

  1. Assistant IA personnel – Rappelle‑vous, gère votre liste de tâches et programme des événements.
  2. Pipeline de revue de code – @coder corrige un bug, @reviewer vérifie le style, puis le résultat est renvoyé à l’utilisateur.
  3. Générateur de documentation – @writer crée des docs API à partir des commentaires de code.
  4. Présence multi‑canal – Une conversation accessible depuis Discord, WhatsApp ou Telegram simultanément.

10. Communauté et contribution

TinyClaw est ouvert aux contributions. Le dépôt principal sur GitHub compte 2.2k étoiles et 318 forks. Canaux communautaires : - Discord – https://discord.com/invite/jH6AcEChuD - Issues GitHub – signalez des bugs ou proposez des fonctionnalités.

Le projet suit un flux de travail CI simple : les tests s’exécutent à chaque PR, et le processus de release est automatisé via GitHub Actions. Les nouveaux contributeurs peuvent commencer par choisir des issues ouvertes ou ajouter de la documentation.

11. Licence & Crédits

Licence MIT. TinyClaw s’inspire d’OpenClaw et utilise Claude Code et Codex CLIs, ainsi que les bibliothèques Node populaires : discord.js, whatsapp-web.js, node-telegram-bot-api.

12. Conclusion

TinyClaw propose un environnement plug‑and‑play pour expérimenter avec une orchestration sophistiquée d’agents sans le poids d’une stack massive. Sa faible empreinte masque un riche ensemble de fonctionnalités permettant aux développeurs de créer des flux de travail centrés sur la conversation, d’intégrer plusieurs modèles IA, et de surveiller les conversations d’agents en temps réel. Essayez‑le dès aujourd’hui – avec une installation à une ligne, vous disposerez d’un assistant IA multi‑équipe, multi‑plateforme, opérationnel en quelques minutes. Bon hacking!

Original Article: Voir l’original

Partager cet article