Skip to content

Latest commit

 

History

History
248 lines (200 loc) · 17.7 KB

File metadata and controls

248 lines (200 loc) · 17.7 KB

GoClaw

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.

DokumentasyonMabilis na SimulaTwitter / X

Go PostgreSQL Docker WebSocket OpenTelemetry Anthropic OpenAI License: MIT

Ang GoClaw ay isang multi-agent AI gateway na nagkokonekta ng mga LLM sa iyong mga kasangkapan, channel, at datos — na inilunsad bilang isang Go binary na walang runtime dependencies. Inooorkestra nito ang mga agent team at inter-agent delegation sa 20+ LLM provider na may ganap na multi-tenant isolation.

Isang Go port ng OpenClaw na may pinahusay na seguridad, multi-tenant PostgreSQL, at production-grade observability.

🌐 Mga Wika: 🇺🇸 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

Ano ang Nagpapaiba Rito

  • Mga Agent Team at Orkestrasyon — Mga team na may pinagsamang task board, inter-agent delegation (sync/async), at hybrid agent discovery
  • Multi-Tenant PostgreSQL — Bawat user ay may sariling workspace, context file, naka-encrypt na API key (AES-256-GCM), at nakahiwalay na session
  • Iisang Binary — ~25 MB static Go binary, walang Node.js runtime, <1s na pagsisimula, tumatakbo sa $5 VPS
  • Seguridad sa Produksyon — 5-layer na sistema ng pahintulot (gateway auth → global tool policy → per-agent → per-channel → owner-only) kasama ang rate limiting, pagtuklas ng prompt injection, proteksyon sa SSRF, shell deny patterns, at AES-256-GCM encryption
  • 20+ LLM Provider — Anthropic (native HTTP+SSE na may prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, at anumang OpenAI-compatible na endpoint
  • 7 Messaging Channel — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp
  • Extended Thinking — Bawat provider ay may thinking mode (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) na may suporta sa streaming
  • Heartbeat — Pana-panahong pag-check-in ng agent sa pamamagitan ng HEARTBEAT.md checklist na may suppress-on-OK, aktibong oras, retry logic, at paghahatid sa channel
  • Pag-iskedyul at Cronat, every, at cron expressions para sa mga automated na gawain ng agent na may lane-based na concurrency
  • Observability — Built-in na LLM call tracing na may mga span at prompt cache metrics, opsyonal na OpenTelemetry OTLP export

Claw Ecosystem

OpenClaw ZeroClaw PicoClaw GoClaw
Wika TypeScript Rust Go Go
Laki ng binary 28 MB + Node.js 3.4 MB ~8 MB ~25 MB (base) / ~36 MB (+ OTel)
Docker image ~50 MB (Alpine)
RAM (walang gawa) > 1 GB < 5 MB < 10 MB ~35 MB
Pagsisimula > 5 s < 10 ms < 1 s < 1 s
Target hardware $599+ Mac Mini $10 edge $10 edge $5 VPS+
Tampok OpenClaw ZeroClaw PicoClaw GoClaw
Multi-tenant (PostgreSQL)
MCP integration — (gumagamit ng ACP) ✅ (stdio/SSE/streamable-http)
Mga agent team ✅ Task board + mailbox
Pagpapatibay ng seguridad ✅ (SSRF, path traversal, injection) ✅ (sandbox, rate limit, injection, pairing) Basic (workspace restrict, exec deny) ✅ 5-layer defense
OTel observability ✅ (opt-in extension) ✅ (Prometheus + OTLP) ✅ OTLP (opt-in build tag)
Prompt caching ✅ Anthropic + OpenAI-compat
Knowledge graph ✅ LLM extraction + traversal
Sistema ng skill ✅ Embeddings/semantic ✅ SKILL.md + TOML ✅ Basic ✅ BM25 + pgvector hybrid
Lane-based scheduler Bounded concurrency ✅ (main/subagent/team/cron)
Mga messaging channel 37+ 15+ 10+ 7+
Mga kasama na app macOS, iOS, Android Python SDK Web dashboard
Live Canvas / Boses ✅ (A2UI + TTS/STT) Voice transcription TTS (4 provider)
Mga LLM provider 10+ 8 native + 29 compat 13+ 20+
Bawat user ay may workspace ✅ (file-based) ✅ (PostgreSQL)
Naka-encrypt na lihim — (env vars lamang) ✅ ChaCha20-Poly1305 — (plaintext JSON) ✅ AES-256-GCM sa DB

Arkitektura

GoClaw Architecture

Mabilis na Simula

Mga Kinakailangan: Go 1.26+, PostgreSQL 18 na may pgvector, Docker (opsyonal)

Mula sa Source

git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw
make build
./goclaw onboard        # Interactive setup wizard
source .env.local && ./goclaw

Gamit ang Docker

# Gumawa ng .env na may auto-generated na mga lihim
chmod +x prepare-env.sh && ./prepare-env.sh

# Magdagdag ng kahit isang GOCLAW_*_API_KEY sa .env, pagkatapos:
make up

# Web Dashboard sa http://localhost:18790
# Health check: curl http://localhost:18790/health

Kapag nakatakda ang mga environment variable na GOCLAW_*_API_KEY, ang gateway ay awtomatikong mag-onboard nang walang interactive na mga tanong — nakikita ang provider, nagpapatakbo ng mga migration, at naglalagay ng default na datos.

Para sa mga variant ng build (OTel, Tailscale, Redis), mga Docker image tag, at compose overlay, tingnan ang Gabay sa Deployment.

Multi-Agent Orkestrasyon

Sinusuportahan ng GoClaw ang mga agent team at inter-agent delegation — ang bawat agent ay tumatakbo gamit ang sariling pagkakakilanlan, kasangkapan, LLM provider, at context file.

Delegasyon ng Agent

Agent Delegation

Mode Paano gumagana Pinakamainam para sa
Sync Ang Agent A ay nagtatanong sa Agent B at naghihintay ng sagot Mabilis na paghahanap, pagtitiyak ng katotohanan
Async Ang Agent A ay nagtatanong sa Agent B at nagpapatuloy. Ang B ay mag-aanunsyo sa ibang pagkakataon Matagal na gawain, ulat, malalim na pagsusuri

Ang mga agent ay nakikipag-ugnayan sa pamamagitan ng malinaw na mga link ng pahintulot na may kontrol sa direksyon (outbound, inbound, bidirectional) at mga limitasyon sa concurrency sa antas ng bawat link at bawat agent.

Mga Agent Team

Agent Teams Workflow

  • Pinagsamang task board — Lumikha, mag-claim, kumpletuhin, at maghanap ng mga gawain na may mga dependency na blocked_by
  • Mailbox ng team — Direktang peer-to-peer na pagmemensahe at mga broadcast
  • Mga Kasangkapan: team_tasks para sa pamamahala ng gawain, team_message para sa mailbox

Para sa mga detalye ng delegasyon, mga link ng pahintulot, at kontrol ng concurrency, tingnan ang dokumentasyon ng Mga Agent Team.

Mga Built-in na Kasangkapan

Kasangkapan Grupo Paglalarawan
read_file fs Basahin ang nilalaman ng file (na may virtual FS routing)
write_file fs Sumulat/lumikha ng mga file
edit_file fs Mag-apply ng mga targeted na pagbabago sa mga kasalukuyang file
list_files fs Ilista ang mga nilalaman ng direktoryo
search fs Maghanap ng nilalaman ng file ayon sa pattern
glob fs Hanapin ang mga file ayon sa glob pattern
exec runtime Mag-execute ng mga shell command (na may approval workflow)
web_search web Maghanap sa web (Brave, DuckDuckGo)
web_fetch web I-fetch at i-parse ang nilalaman ng web
memory_search memory Maghanap sa pangmatagalang memorya (FTS + vector)
memory_get memory Kunin ang mga entry sa memorya
skill_search Maghanap ng mga skill (BM25 + embedding hybrid)
knowledge_graph_search memory Maghanap ng mga entity at dumaan sa mga relasyon ng knowledge graph
create_image media Paglikha ng imahe (DashScope, MiniMax)
create_audio media Paglikha ng audio (OpenAI, ElevenLabs, MiniMax, Suno)
create_video media Paglikha ng video (MiniMax, Veo)
read_document media Pagbabasa ng dokumento (Gemini File API, provider chain)
read_image media Pagsusuri ng imahe
read_audio media Pag-transcribe at pagsusuri ng audio
read_video media Pagsusuri ng video
message messaging Magpadala ng mga mensahe sa mga channel
tts Text-to-Speech synthesis
spawn Mag-spawn ng subagent
subagents sessions Kontrolin ang mga tumatakbong subagent
team_tasks teams Pinagsamang task board (ilista, lumikha, mag-claim, kumpletuhin, maghanap)
team_message teams Mailbox ng team (magpadala, mag-broadcast, magbasa)
sessions_list sessions Ilista ang mga aktibong session
sessions_history sessions Tingnan ang kasaysayan ng session
sessions_send sessions Magpadala ng mensahe sa isang session
sessions_spawn sessions Mag-spawn ng bagong session
session_status sessions Suriin ang katayuan ng session
cron automation Mag-iskedyul at pamahalaan ang mga cron job
gateway automation Pangangasiwa ng gateway
browser ui Awtomatikong paggamit ng browser (mag-navigate, mag-click, mag-type, screenshot)
announce_queue automation Pag-aanunsyo ng async na resulta (para sa mga async na delegasyon)

Dokumentasyon

Buong dokumentasyon sa docs.goclaw.sh — o i-browse ang source sa goclaw-docs/

Seksyon Mga Paksa
Pagsisimula Pag-install, Mabilis na Simula, Konfiguraksyon, Pagsasaliksik sa Web Dashboard
Mga Pangunahing Konsepto Agent Loop, Mga Session, Mga Kasangkapan, Memorya, Multi-Tenancy
Mga Agent Paglikha ng Mga Agent, Mga Context File, Personalidad, Pagbabahagi at Access
Mga Provider Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 pa
Mga Channel Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket
Mga Agent Team Mga Team, Task Board, Pagmemensahe, Delegasyon at Handoff
Advanced Mga Custom na Kasangkapan, MCP, Mga Skill, Cron, Sandbox, Hooks, RBAC
Deployment Docker Compose, Database, Seguridad, Observability, Tailscale
Sanggunian Mga CLI Command, REST API, WebSocket Protocol, Mga Environment Variable

Pagsusuri

go test ./...                                    # Mga unit test
go test -v ./tests/integration/ -timeout 120s    # Mga integration test (nangangailangan ng tumatakbong gateway)

Katayuan ng Proyekto

Tingnan ang CHANGELOG.md para sa detalyadong katayuan ng mga tampok kasama ang kung ano na ang nasubok sa produksyon at kung ano pa ang isinasagawa.

Mga Pagkilala

Ang GoClaw ay itinayo batay sa orihinal na proyektong OpenClaw. Nagpapasalamat kami sa arkitektura at bisyon na nagbigay-inspirasyon sa Go port na ito.

Lisensya

MIT