- Add internal/webui/ package with //go:build embedui tag for optional SPA embedding (handler.go serves static files with SPA fallback) - Add internal/version/ shared semver comparison (DRY: extracted from gateway/update_check.go and updater/updater.go) - Enhance UpdateChecker: release notes, ETag caching, filter lite-v* tags - Add web UI build stage to Dockerfile with ENABLE_EMBEDUI build arg - Simplify CI: 7 Docker variants → 4 (base, latest, full, otel) - Add SHA256 checksums job to release workflow - Add Makefile build-full target (embeds web UI in Go binary) - Default make up now embeds web UI (no separate nginx needed) - Add WITH_WEB_NGINX=1 flag for optional nginx reverse proxy - Update README + 30 translated READMEs: make up, port 18790 - Update docker-compose comments and prepare-env.sh - About dialog: show release notes with markdown rendering - Health card: amber badge for available updates BREAKING: Default Docker setup no longer requires selfservice overlay. Web dashboard served at :18790 (same port as API).
18 KiB
GoClaw
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ție • Pornire Rapidă • Twitter / X
GoClaw este un gateway AI multi-agent care conectează LLM-uri la instrumentele, canalele și datele tale — implementat ca un singur binar Go fără dependențe de rulare. Orchestrează echipe de agenți și delegare inter-agent prin 20+ furnizori LLM cu izolare completă multi-tenant.
Un port Go al OpenClaw cu securitate îmbunătățită, PostgreSQL multi-tenant și observabilitate la nivel de producție.
🌐 Limbi: 🇺🇸 English · 🇨🇳 简体中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇻🇳 Tiếng Việt · 🇵🇭 Tagalog · 🇪🇸 Español · 🇧🇷 Português · 🇮🇹 Italiano · 🇩🇪 Deutsch · 🇫🇷 Français · 🇸🇦 العربية · 🇮🇳 हिन्दी · 🇷🇺 Русский · 🇧🇩 বাংলা · 🇮🇱 עברית · 🇵🇱 Polski · 🇨🇿 Čeština · 🇳🇱 Nederlands · 🇹🇷 Türkçe · 🇺🇦 Українська · 🇮🇩 Bahasa Indonesia · 🇹🇭 ไทย · 🇵🇰 اردو · 🇷🇴 Română · 🇸🇪 Svenska · 🇬🇷 Ελληνικά · 🇭🇺 Magyar · 🇫🇮 Suomi · 🇩🇰 Dansk · 🇳🇴 Norsk
Ce Îl Diferențiază
- Echipe de Agenți și Orchestrare — Echipe cu panouri de sarcini partajate, delegare inter-agent (sincron/asincron) și descoperire hibridă a agenților
- PostgreSQL Multi-Tenant — Spații de lucru per utilizator, fișiere de context per utilizator, chei API criptate (AES-256-GCM), sesiuni izolate
- Binar Unic — Binar Go static de ~25 MB, fără Node.js runtime, pornire în <1s, rulează pe un VPS de $5
- Securitate la Nivel de Producție — Sistem de permisiuni în 5 straturi (autentificare gateway → politică globală instrumente → per-agent → per-canal → doar proprietar), plus limitare rată, detectare injecție prompturi, protecție SSRF, tipare de refuzare comenzi shell și criptare AES-256-GCM
- 20+ Furnizori LLM — Anthropic (HTTP+SSE nativ cu cache prompturi), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP și orice endpoint compatibil OpenAI
- 7 Canale de Mesagerie — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp
- Extended Thinking — Mod de gândire per furnizor (tokeni buget Anthropic, efort de raționament OpenAI, buget de gândire DashScope) cu suport streaming
- Heartbeat — Verificări periodice ale agenților prin liste de verificare HEARTBEAT.md cu suprimare la OK, ore active, logică de reîncercare și livrare pe canal
- Programare și Cron — Expresii
at,everyși cron pentru sarcini automate ale agenților cu concurență bazată pe benzi - Observabilitate — Urmărire integrată a apelurilor LLM cu intervale și metrici cache prompturi, export OTLP OpenTelemetry opțional
Ecosistemul Claw
| OpenClaw | ZeroClaw | PicoClaw | GoClaw | |
|---|---|---|---|---|
| Limbaj | TypeScript | Rust | Go | Go |
| Dimensiune binar | 28 MB + Node.js | 3.4 MB | ~8 MB | ~25 MB (de bază) / ~36 MB (+ OTel) |
| Imagine Docker | — | — | — | ~50 MB (Alpine) |
| RAM (inactiv) | > 1 GB | < 5 MB | < 10 MB | ~35 MB |
| Pornire | > 5 s | < 10 ms | < 1 s | < 1 s |
| Hardware țintă | Mac Mini $599+ | edge $10 | edge $10 | VPS $5+ |
| Funcționalitate | OpenClaw | ZeroClaw | PicoClaw | GoClaw |
|---|---|---|---|---|
| Multi-tenant (PostgreSQL) | — | — | — | ✅ |
| Integrare MCP | — (folosește ACP) | — | — | ✅ (stdio/SSE/streamable-http) |
| Echipe de agenți | — | — | — | ✅ Panou sarcini + cutie poștală |
| Întărire securitate | ✅ (SSRF, traversare cale, injecție) | ✅ (sandbox, limitare rată, injecție, asociere) | De bază (restricție spațiu lucru, refuz exec) | ✅ Apărare în 5 straturi |
| Observabilitate OTel | ✅ (extensie opțională) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (etichetă build opțională) |
| Cache prompturi | — | — | — | ✅ Anthropic + compat OpenAI |
| Graf de cunoaștere | — | — | — | ✅ Extragere LLM + traversare |
| Sistem skill-uri | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ De bază | ✅ BM25 + hibrid pgvector |
| Programator bazat pe benzi | ✅ | Concurență limitată | — | ✅ (main/subagent/team/cron) |
| Canale de mesagerie | 37+ | 15+ | 10+ | 7+ |
| Aplicații companion | macOS, iOS, Android | Python SDK | — | Tablou de bord web |
| Canvas Live / Voce | ✅ (A2UI + TTS/STT) | — | Transcriere voce | TTS (4 furnizori) |
| Furnizori LLM | 10+ | 8 nativi + 29 compat | 13+ | 20+ |
| Spații de lucru per utilizator | ✅ (bazat pe fișiere) | — | — | ✅ (PostgreSQL) |
| Secrete criptate | — (doar variabile env) | ✅ ChaCha20-Poly1305 | — (JSON text simplu) | ✅ AES-256-GCM în BD |
Arhitectură
Pornire Rapidă
Condiții prealabile: Go 1.26+, PostgreSQL 18 cu pgvector, Docker (opțional)
Din Sursă
git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw
make build
./goclaw onboard # Asistent interactiv de configurare
source .env.local && ./goclaw
Cu Docker
# Generează .env cu secrete auto-generate
chmod +x prepare-env.sh && ./prepare-env.sh
# Adaugă cel puțin un GOCLAW_*_API_KEY în .env, apoi:
make up
# Tablou de bord web la http://localhost:18790
# Verificare stare: curl http://localhost:18790/health
Când variabilele de mediu GOCLAW_*_API_KEY sunt setate, gateway-ul se configurează automat fără prompturi interactive — detectează furnizorul, rulează migrările și inițializează datele implicite.
Pentru variante de build (OTel, Tailscale, Redis), etichete imagini Docker și suprapuneri compose, consultați Ghidul de Implementare.
Orchestrare Multi-Agent
GoClaw suportă echipe de agenți și delegare inter-agent — fiecare agent rulează cu propria identitate, instrumente, furnizor LLM și fișiere de context.
Delegare Agent
| Mod | Cum funcționează | Ideal pentru |
|---|---|---|
| Sincron | Agentul A întreabă Agentul B și așteaptă răspunsul | Căutări rapide, verificări fapte |
| Asincron | Agentul A întreabă Agentul B și continuă. B anunță mai târziu | Sarcini lungi, rapoarte, analize aprofundate |
Agenții comunică prin linkuri de permisiune explicite cu control direcțional (outbound, inbound, bidirectional) și limite de concurență atât la nivel de link cât și la nivel de agent.
Echipe de Agenți
- Panou de sarcini partajat — Creează, revendică, finalizează, caută sarcini cu dependențe
blocked_by - Cutie poștală echipă — Mesagerie directă peer-to-peer și transmisii
- Instrumente:
team_taskspentru gestionarea sarcinilor,team_messagepentru cutia poștală
Pentru detalii despre delegare, linkuri de permisiune și control concurență, consultați documentația Echipe de Agenți.
Instrumente Integrate
| Instrument | Grup | Descriere |
|---|---|---|
read_file |
fs | Citește conținutul fișierelor (cu rutare FS virtuală) |
write_file |
fs | Scrie/creează fișiere |
edit_file |
fs | Aplică modificări țintite fișierelor existente |
list_files |
fs | Listează conținutul directorului |
search |
fs | Caută conținut fișiere după tipar |
glob |
fs | Găsește fișiere după tipar glob |
exec |
runtime | Execută comenzi shell (cu flux de aprobare) |
web_search |
web | Caută pe web (Brave, DuckDuckGo) |
web_fetch |
web | Preia și parsează conținut web |
memory_search |
memory | Caută în memoria pe termen lung (FTS + vector) |
memory_get |
memory | Recuperează intrări din memorie |
skill_search |
— | Caută skill-uri (hibrid BM25 + embedding) |
knowledge_graph_search |
memory | Caută entități și traversează relații în graful de cunoaștere |
create_image |
media | Generare imagini (DashScope, MiniMax) |
create_audio |
media | Generare audio (OpenAI, ElevenLabs, MiniMax, Suno) |
create_video |
media | Generare video (MiniMax, Veo) |
read_document |
media | Citire documente (Gemini File API, lanț furnizori) |
read_image |
media | Analiză imagini |
read_audio |
media | Transcriere și analiză audio |
read_video |
media | Analiză video |
message |
messaging | Trimite mesaje pe canale |
tts |
— | Sinteză Text-to-Speech |
spawn |
— | Lansează un subagent |
subagents |
sessions | Controlează subagent-urile active |
team_tasks |
teams | Panou sarcini partajat (listare, creare, revendicare, finalizare, căutare) |
team_message |
teams | Cutie poștală echipă (trimitere, transmisie, citire) |
sessions_list |
sessions | Listează sesiunile active |
sessions_history |
sessions | Vizualizează istoricul sesiunilor |
sessions_send |
sessions | Trimite mesaj unei sesiuni |
sessions_spawn |
sessions | Lansează o sesiune nouă |
session_status |
sessions | Verifică starea sesiunii |
cron |
automation | Programează și gestionează joburi cron |
gateway |
automation | Administrare gateway |
browser |
ui | Automatizare browser (navigare, click, tastare, captură ecran) |
announce_queue |
automation | Anunț rezultat asincron (pentru delegări asincrone) |
Documentație
Documentație completă la docs.goclaw.sh — sau parcurge sursa în goclaw-docs/
| Secțiune | Subiecte |
|---|---|
| Începere | Instalare, Pornire Rapidă, Configurare, Tur Tablou de Bord Web |
| Concepte de Bază | Bucla Agent, Sesiuni, Instrumente, Memorie, Multi-Tenant |
| Agenți | Creare Agenți, Fișiere Context, Personalitate, Partajare și Acces |
| Furnizori | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 alții |
| Canale | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket |
| Echipe de Agenți | Echipe, Panou Sarcini, Mesagerie, Delegare și Handoff |
| Avansat | Instrumente Personalizate, MCP, Skill-uri, Cron, Sandbox, Hook-uri, RBAC |
| Implementare | Docker Compose, Bază de Date, Securitate, Observabilitate, Tailscale |
| Referință | Comenzi CLI, REST API, Protocol WebSocket, Variabile de Mediu |
Testare
go test ./... # Teste unitare
go test -v ./tests/integration/ -timeout 120s # Teste de integrare (necesită gateway activ)
Starea Proiectului
Consultați CHANGELOG.md pentru starea detaliată a funcționalităților, inclusiv ce a fost testat în producție și ce este încă în desfășurare.
Mulțumiri
GoClaw este construit pe baza proiectului original OpenClaw. Suntem recunoscători pentru arhitectura și viziunea care au inspirat acest port Go.
Licență
MIT



