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.
Documentação • Início Rápido • Twitter / X
GoClaw é um gateway de IA multi-agente que conecta LLMs às suas ferramentas, canais e dados — implantado como um único binário Go sem dependências de tempo de execução. Ele orquestra equipes de agentes e delegação entre agentes em mais de 20 provedores de LLM com isolamento multi-tenant completo.
Um port em Go do OpenClaw com segurança aprimorada, PostgreSQL multi-tenant e observabilidade de nível de produção.
🌐 Idiomas: 🇺🇸 English · 🇨🇳 简体中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇻🇳 Tiếng Việt · 🇪🇸 Español · 🇧🇷 Português · 🇫🇷 Français · 🇩🇪 Deutsch · 🇷🇺 Русский
- Equipes de Agentes e Orquestração — Equipes com quadros de tarefas compartilhados, delegação entre agentes (síncrona/assíncrona) e descoberta híbrida de agentes
- PostgreSQL Multi-Tenant — Workspaces por usuário, arquivos de contexto por usuário, chaves de API criptografadas (AES-256-GCM), sessões isoladas
- Binário Único — Binário Go estático de ~25 MB, sem runtime Node.js, inicialização em <1s, roda em um VPS de $5
- Segurança de Produção — Sistema de permissões de 5 camadas (autenticação do gateway → política global de ferramentas → por agente → por canal → somente proprietário) mais limitação de taxa, detecção de injeção de prompt, proteção SSRF, padrões de negação de shell e criptografia AES-256-GCM
- 20+ Provedores de LLM — Anthropic (HTTP+SSE nativo com cache de prompt), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP e qualquer endpoint compatível com OpenAI
- 7 Canais de Mensagens — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp
- Extended Thinking — Modo de raciocínio por provedor (tokens de orçamento Anthropic, esforço de raciocínio OpenAI, orçamento de raciocínio DashScope) com suporte a streaming
- Heartbeat — Check-ins periódicos de agentes via listas de verificação HEARTBEAT.md com supressão quando OK, horários ativos, lógica de repetição e entrega por canal
- Agendamento e Cron — Expressões
at,everye cron para tarefas automatizadas de agentes com concorrência baseada em lanes - Observabilidade — Rastreamento integrado de chamadas LLM com spans e métricas de cache de prompt, exportação opcional OpenTelemetry OTLP
| OpenClaw | ZeroClaw | PicoClaw | GoClaw | |
|---|---|---|---|---|
| Linguagem | TypeScript | Rust | Go | Go |
| Tamanho do binário | 28 MB + Node.js | 3.4 MB | ~8 MB | ~25 MB (base) / ~36 MB (+ OTel) |
| Imagem Docker | — | — | — | ~50 MB (Alpine) |
| RAM (inativo) | > 1 GB | < 5 MB | < 10 MB | ~35 MB |
| Inicialização | > 5 s | < 10 ms | < 1 s | < 1 s |
| Hardware alvo | $599+ Mac Mini | $10 edge | $10 edge | $5 VPS+ |
| Funcionalidade | OpenClaw | ZeroClaw | PicoClaw | GoClaw |
|---|---|---|---|---|
| Multi-tenant (PostgreSQL) | — | — | — | ✅ |
| Integração MCP | — (usa ACP) | — | — | ✅ (stdio/SSE/streamable-http) |
| Equipes de agentes | — | — | — | ✅ Quadro de tarefas + caixa de entrada |
| Segurança reforçada | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Básica (restrição de workspace, negação de exec) | ✅ Defesa em 5 camadas |
| Observabilidade OTel | ✅ (extensão opcional) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (build tag opcional) |
| Cache de prompt | — | — | — | ✅ Anthropic + OpenAI-compat |
| Grafo de conhecimento | — | — | — | ✅ Extração LLM + travessia |
| Sistema de skills | ✅ Embeddings/semântico | ✅ SKILL.md + TOML | ✅ Básico | ✅ BM25 + pgvector híbrido |
| Agendador baseado em lanes | ✅ | Concorrência limitada | — | ✅ (main/subagent/team/cron) |
| Canais de mensagens | 37+ | 15+ | 10+ | 7+ |
| Aplicativos complementares | macOS, iOS, Android | Python SDK | — | Painel web |
| Live Canvas / Voz | ✅ (A2UI + TTS/STT) | — | Transcrição de voz | TTS (4 provedores) |
| Provedores de LLM | 10+ | 8 nativos + 29 compat | 13+ | 20+ |
| Workspaces por usuário | ✅ (baseado em arquivos) | — | — | ✅ (PostgreSQL) |
| Segredos criptografados | — (somente variáveis de ambiente) | ✅ ChaCha20-Poly1305 | — (JSON em texto simples) | ✅ AES-256-GCM no banco de dados |
Pré-requisitos: Go 1.26+, PostgreSQL 18 com pgvector, Docker (opcional)
git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw
make build
./goclaw onboard # Assistente de configuração interativo
source .env.local && ./goclaw# Gerar .env com segredos gerados automaticamente
chmod +x prepare-env.sh && ./prepare-env.sh
# Adicione pelo menos uma GOCLAW_*_API_KEY ao .env, depois:
make up
# Painel Web em http://localhost:18790
# Verificação de saúde: curl http://localhost:18790/healthQuando as variáveis de ambiente GOCLAW_*_API_KEY estão definidas, o gateway é configurado automaticamente sem prompts interativos — detecta o provedor, executa migrações e popula os dados padrão.
Para variantes de build (OTel, Tailscale, Redis), tags de imagem Docker e sobreposições de compose, consulte o Guia de Implantação.
GoClaw suporta equipes de agentes e delegação entre agentes — cada agente roda com sua própria identidade, ferramentas, provedor de LLM e arquivos de contexto.
| Modo | Como funciona | Melhor para |
|---|---|---|
| Síncrono | O Agente A pergunta ao Agente B e aguarda a resposta | Consultas rápidas, verificação de fatos |
| Assíncrono | O Agente A pergunta ao Agente B e segue em frente. B anuncia depois | Tarefas longas, relatórios, análises aprofundadas |
Os agentes se comunicam por meio de links de permissão explícitos com controle de direção (outbound, inbound, bidirectional) e limites de concorrência tanto no nível por link quanto por agente.
- Quadro de tarefas compartilhado — Criar, reivindicar, concluir e pesquisar tarefas com dependências
blocked_by - Caixa de entrada da equipe — Mensagens diretas entre pares e transmissões
- Ferramentas:
team_taskspara gerenciamento de tarefas,team_messagepara caixa de entrada
Para detalhes de delegação, links de permissão e controle de concorrência, consulte a documentação de Equipes de Agentes.
| Ferramenta | Grupo | Descrição |
|---|---|---|
read_file |
fs | Ler conteúdo de arquivos (com roteamento de FS virtual) |
write_file |
fs | Escrever/criar arquivos |
edit_file |
fs | Aplicar edições pontuais em arquivos existentes |
list_files |
fs | Listar conteúdo de diretórios |
search |
fs | Pesquisar conteúdo de arquivos por padrão |
glob |
fs | Encontrar arquivos por padrão glob |
exec |
runtime | Executar comandos shell (com fluxo de aprovação) |
web_search |
web | Pesquisar na web (Brave, DuckDuckGo) |
web_fetch |
web | Buscar e analisar conteúdo da web |
memory_search |
memory | Pesquisar memória de longo prazo (FTS + vector) |
memory_get |
memory | Recuperar entradas de memória |
skill_search |
— | Pesquisar skills (BM25 + embedding híbrido) |
knowledge_graph_search |
memory | Pesquisar entidades e percorrer relações do grafo de conhecimento |
create_image |
media | Geração de imagens (DashScope, MiniMax) |
create_audio |
media | Geração de áudio (OpenAI, ElevenLabs, MiniMax, Suno) |
create_video |
media | Geração de vídeo (MiniMax, Veo) |
read_document |
media | Leitura de documentos (Gemini File API, cadeia de provedores) |
read_image |
media | Análise de imagens |
read_audio |
media | Transcrição e análise de áudio |
read_video |
media | Análise de vídeo |
message |
messaging | Enviar mensagens para canais |
tts |
— | Síntese de texto para fala (Text-to-Speech) |
spawn |
— | Iniciar um subagente |
subagents |
sessions | Controlar subagentes em execução |
team_tasks |
teams | Quadro de tarefas compartilhado (listar, criar, reivindicar, concluir, pesquisar) |
team_message |
teams | Caixa de entrada da equipe (enviar, transmitir, ler) |
sessions_list |
sessions | Listar sessões ativas |
sessions_history |
sessions | Ver histórico de sessões |
sessions_send |
sessions | Enviar mensagem para uma sessão |
sessions_spawn |
sessions | Iniciar uma nova sessão |
session_status |
sessions | Verificar status da sessão |
cron |
automation | Agendar e gerenciar jobs cron |
gateway |
automation | Administração do gateway |
browser |
ui | Automação de navegador (navegar, clicar, digitar, capturar tela) |
announce_queue |
automation | Anúncio assíncrono de resultados (para delegações assíncronas) |
Documentação completa em docs.goclaw.sh — ou navegue pelo código-fonte em goclaw-docs/
| Seção | Tópicos |
|---|---|
| Primeiros Passos | Instalação, Início Rápido, Configuração, Tour do Painel Web |
| Conceitos Fundamentais | Loop do Agente, Sessões, Ferramentas, Memória, Multi-Tenancy |
| Agentes | Criação de Agentes, Arquivos de Contexto, Personalidade, Compartilhamento e Acesso |
| Provedores | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 mais |
| Canais | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket |
| Equipes de Agentes | Equipes, Quadro de Tarefas, Mensagens, Delegação e Transferência |
| Avançado | Ferramentas Personalizadas, MCP, Skills, Cron, Sandbox, Hooks, RBAC |
| Implantação | Docker Compose, Banco de Dados, Segurança, Observabilidade, Tailscale |
| Referência | Comandos CLI, REST API, Protocolo WebSocket, Variáveis de Ambiente |
go test ./... # Testes unitários
go test -v ./tests/integration/ -timeout 120s # Testes de integração (requer gateway em execução)Consulte CHANGELOG.md para o status detalhado das funcionalidades, incluindo o que foi testado em produção e o que ainda está em andamento.
GoClaw foi construído sobre o projeto original OpenClaw. Somos gratos pela arquitetura e visão que inspiraram este port em Go.
MIT



