Enterprise AI Agent Platform
Multi-agent AI gateway built in Go. 20+ LLM providers. 7 channels. Multi-tenant PostgreSQL.
Single binary. Production-tested. Agents that orchestrate for you.
Documentation • Démarrage rapide • Twitter / X
GoClaw est une passerelle IA multi-agents qui connecte les LLMs à vos outils, canaux et données — déployée comme un binaire Go unique sans dépendances d'exécution. Elle orchestre des équipes d'agents et la délégation inter-agents auprès de plus de 20 fournisseurs LLM avec une isolation multi-tenant complète.
Un portage Go de OpenClaw avec une sécurité renforcée, PostgreSQL multi-tenant, et une observabilité de niveau production.
🌐 Langues : 🇺🇸 English · 🇨🇳 简体中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇻🇳 Tiếng Việt · 🇪🇸 Español · 🇧🇷 Português · 🇫🇷 Français · 🇩🇪 Deutsch · 🇷🇺 Русский
- Équipes d'agents et orchestration — Équipes avec tableaux de tâches partagés, délégation inter-agents (sync/async), et découverte hybride d'agents
- PostgreSQL multi-tenant — Espaces de travail par utilisateur, fichiers de contexte par utilisateur, clés API chiffrées (AES-256-GCM), sessions isolées
- Binaire unique — Binaire Go statique de ~25 Mo, sans runtime Node.js, démarrage en <1 s, fonctionne sur un VPS à 5 $
- Sécurité de niveau production — Système de permissions à 5 couches (auth passerelle → politique d'outils globale → par agent → par canal → propriétaire uniquement) plus limitation de débit, détection d'injection de prompt, protection SSRF, motifs de refus shell, et chiffrement AES-256-GCM
- Plus de 20 fournisseurs LLM — Anthropic (HTTP+SSE natif avec mise en cache des prompts), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, et tout endpoint compatible OpenAI
- 7 canaux de messagerie — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp
- Extended Thinking — Mode de réflexion par fournisseur (jetons budget Anthropic, effort de raisonnement OpenAI, budget de réflexion DashScope) avec support du streaming
- Heartbeat — Vérifications périodiques des agents via des listes de contrôle HEARTBEAT.md avec suppression en cas de succès, heures actives, logique de réessai, et livraison par canal
- Planification et Cron — Expressions
at,every, et cron pour les tâches d'agents automatisées avec concurrence par voie - Observabilité — Traçage intégré des appels LLM avec spans et métriques de cache de prompts, export OpenTelemetry OTLP optionnel
| OpenClaw | ZeroClaw | PicoClaw | GoClaw | |
|---|---|---|---|---|
| Langage | TypeScript | Rust | Go | Go |
| Taille du binaire | 28 Mo + Node.js | 3,4 Mo | ~8 Mo | ~25 Mo (base) / ~36 Mo (+ OTel) |
| Image Docker | — | — | — | ~50 Mo (Alpine) |
| RAM (inactif) | > 1 Go | < 5 Mo | < 10 Mo | ~35 Mo |
| Démarrage | > 5 s | < 10 ms | < 1 s | < 1 s |
| Matériel cible | Mac Mini à 599 $+ | Edge à 10 $ | Edge à 10 $ | VPS à 5 $+ |
| Fonctionnalité | OpenClaw | ZeroClaw | PicoClaw | GoClaw |
|---|---|---|---|---|
| Multi-tenant (PostgreSQL) | — | — | — | ✅ |
| Intégration MCP | — (utilise ACP) | — | — | ✅ (stdio/SSE/streamable-http) |
| Équipes d'agents | — | — | — | ✅ Tableau de tâches + boîte aux lettres |
| Renforcement de la sécurité | ✅ (SSRF, traversée de chemin, injection) | ✅ (sandbox, limite de débit, injection, appairage) | Basique (restriction d'espace de travail, refus exec) | ✅ Défense à 5 couches |
| Observabilité OTel | ✅ (extension opt-in) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (balise de build opt-in) |
| Mise en cache des prompts | — | — | — | ✅ Anthropic + OpenAI-compat |
| Graphe de connaissances | — | — | — | ✅ Extraction LLM + traversal |
| Système de compétences | ✅ Embeddings/sémantique | ✅ SKILL.md + TOML | ✅ Basique | ✅ BM25 + pgvector hybride |
| Planificateur par voie | ✅ | Concurrence bornée | — | ✅ (main/subagent/team/cron) |
| Canaux de messagerie | 37+ | 15+ | 10+ | 7+ |
| Applications compagnons | macOS, iOS, Android | SDK Python | — | Tableau de bord web |
| Canvas en direct / Voix | ✅ (A2UI + TTS/STT) | — | Transcription vocale | TTS (4 fournisseurs) |
| Fournisseurs LLM | 10+ | 8 natifs + 29 compat | 13+ | 20+ |
| Espaces de travail par utilisateur | ✅ (basé sur fichiers) | — | — | ✅ (PostgreSQL) |
| Secrets chiffrés | — (variables d'env uniquement) | ✅ ChaCha20-Poly1305 | — (JSON en clair) | ✅ AES-256-GCM en base de données |
Prérequis : Go 1.26+, PostgreSQL 18 avec pgvector, Docker (optionnel)
git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw
make build
./goclaw onboard # Assistant de configuration interactif
source .env.local && ./goclaw# Générer .env avec des secrets auto-générés
chmod +x prepare-env.sh && ./prepare-env.sh
# Ajouter au moins une GOCLAW_*_API_KEY dans .env, puis :
make up
# Tableau de bord web sur http://localhost:18790
# Vérification de santé : curl http://localhost:18790/healthLorsque les variables d'environnement GOCLAW_*_API_KEY sont définies, la passerelle s'auto-configure sans invites interactives — détecte le fournisseur, exécute les migrations, et initialise les données par défaut.
Pour les variantes de build (OTel, Tailscale, Redis), les tags d'images Docker, et les overlays compose, voir le Guide de déploiement.
GoClaw prend en charge les équipes d'agents et la délégation inter-agents — chaque agent s'exécute avec sa propre identité, ses outils, son fournisseur LLM, et ses fichiers de contexte.
| Mode | Fonctionnement | Idéal pour |
|---|---|---|
| Sync | L'agent A demande à l'agent B et attend la réponse | Recherches rapides, vérifications de faits |
| Async | L'agent A demande à l'agent B et continue. B annonce plus tard | Tâches longues, rapports, analyses approfondies |
Les agents communiquent via des liens de permission explicites avec contrôle de direction (outbound, inbound, bidirectional) et limites de concurrence au niveau de chaque lien et de chaque agent.
- Tableau de tâches partagé — Créer, revendiquer, compléter, rechercher des tâches avec des dépendances
blocked_by - Boîte aux lettres d'équipe — Messagerie directe entre pairs et diffusions
- Outils :
team_taskspour la gestion des tâches,team_messagepour la boîte aux lettres
Pour les détails sur la délégation, les liens de permission, et le contrôle de concurrence, voir la documentation des équipes d'agents.
| Outil | Groupe | Description |
|---|---|---|
read_file |
fs | Lire le contenu des fichiers (avec routage FS virtuel) |
write_file |
fs | Écrire/créer des fichiers |
edit_file |
fs | Appliquer des modifications ciblées aux fichiers existants |
list_files |
fs | Lister le contenu d'un répertoire |
search |
fs | Rechercher le contenu des fichiers par motif |
glob |
fs | Trouver des fichiers par motif glob |
exec |
runtime | Exécuter des commandes shell (avec flux d'approbation) |
web_search |
web | Rechercher sur le web (Brave, DuckDuckGo) |
web_fetch |
web | Récupérer et analyser le contenu web |
memory_search |
memory | Rechercher dans la mémoire à long terme (FTS + vecteur) |
memory_get |
memory | Récupérer des entrées de mémoire |
skill_search |
— | Rechercher des compétences (BM25 + hybride d'embeddings) |
knowledge_graph_search |
memory | Rechercher des entités et traverser les relations du graphe de connaissances |
create_image |
media | Génération d'images (DashScope, MiniMax) |
create_audio |
media | Génération audio (OpenAI, ElevenLabs, MiniMax, Suno) |
create_video |
media | Génération vidéo (MiniMax, Veo) |
read_document |
media | Lecture de documents (API Fichiers Gemini, chaîne de fournisseurs) |
read_image |
media | Analyse d'images |
read_audio |
media | Transcription et analyse audio |
read_video |
media | Analyse vidéo |
message |
messaging | Envoyer des messages aux canaux |
tts |
— | Synthèse texte-parole |
spawn |
— | Lancer un sous-agent |
subagents |
sessions | Contrôler les sous-agents en cours d'exécution |
team_tasks |
teams | Tableau de tâches partagé (lister, créer, revendiquer, compléter, rechercher) |
team_message |
teams | Boîte aux lettres d'équipe (envoyer, diffuser, lire) |
sessions_list |
sessions | Lister les sessions actives |
sessions_history |
sessions | Afficher l'historique des sessions |
sessions_send |
sessions | Envoyer un message à une session |
sessions_spawn |
sessions | Lancer une nouvelle session |
session_status |
sessions | Vérifier le statut d'une session |
cron |
automation | Planifier et gérer les tâches cron |
gateway |
automation | Administration de la passerelle |
browser |
ui | Automatisation du navigateur (naviguer, cliquer, saisir, capture d'écran) |
announce_queue |
automation | Annonce de résultats asynchrones (pour les délégations asynchrones) |
Documentation complète sur docs.goclaw.sh — ou consultez les sources dans goclaw-docs/
| Section | Sujets |
|---|---|
| Premiers pas | Installation, Démarrage rapide, Configuration, Visite du tableau de bord web |
| Concepts fondamentaux | Boucle d'agent, Sessions, Outils, Mémoire, Multi-tenant |
| Agents | Créer des agents, Fichiers de contexte, Personnalité, Partage et accès |
| Fournisseurs | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 autres |
| Canaux | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket |
| Équipes d'agents | Équipes, Tableau de tâches, Messagerie, Délégation et transfert |
| Avancé | Outils personnalisés, MCP, Compétences, Cron, Sandbox, Hooks, RBAC |
| Déploiement | Docker Compose, Base de données, Sécurité, Observabilité, Tailscale |
| Référence | Commandes CLI, API REST, Protocole WebSocket, Variables d'environnement |
go test ./... # Tests unitaires
go test -v ./tests/integration/ -timeout 120s # Tests d'intégration (nécessite une passerelle en cours d'exécution)Voir CHANGELOG.md pour le statut détaillé des fonctionnalités, y compris ce qui a été testé en production et ce qui est encore en cours.
GoClaw est construit sur le projet original OpenClaw. Nous sommes reconnaissants pour l'architecture et la vision qui ont inspiré ce portage Go.
MIT



