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.

DokumentaatioPikaopasTwitter / X

Go PostgreSQL Docker WebSocket OpenTelemetry Anthropic OpenAI License: MIT

**GoClaw** on moniagentin AI-yhdyskäytävä, joka yhdistää LLM:t työkaluihisi, kanaviin ja tietoihin — käytetään yksittäisenä Go-binäärinä ilman ajonaikaisriippuvuuksia. Se orkestroi agenttiryhmiä ja agenttien välistä delegointia yli 20 LLM-tarjoajan kautta täydellä monivuokraajan eristyksellä. Go-portti [OpenClaw](https://github.com/openclaw/openclaw)-projektista, jossa on parannettu turvallisuus, monivuokraaja-PostgreSQL ja tuotantotason observoitavuus. 🌐 **Kielet:** [🇺🇸 English](../README.md) · [🇨🇳 简体中文](README.zh-CN.md) · [🇯🇵 日本語](README.ja.md) · [🇰🇷 한국어](README.ko.md) · [🇻🇳 Tiếng Việt](README.vi.md) · [🇵🇭 Tagalog](README.tl.md) · [🇪🇸 Español](README.es.md) · [🇧🇷 Português](README.pt.md) · [🇮🇹 Italiano](README.it.md) · [🇩🇪 Deutsch](README.de.md) · [🇫🇷 Français](README.fr.md) · [🇸🇦 العربية](README.ar.md) · [🇮🇳 हिन्दी](README.hi.md) · [🇷🇺 Русский](README.ru.md) · [🇧🇩 বাংলা](README.bn.md) · [🇮🇱 עברית](README.he.md) · [🇵🇱 Polski](README.pl.md) · [🇨🇿 Čeština](README.cs.md) · [🇳🇱 Nederlands](README.nl.md) · [🇹🇷 Türkçe](README.tr.md) · [🇺🇦 Українська](README.uk.md) · [🇮🇩 Bahasa Indonesia](README.id.md) · [🇹🇭 ไทย](README.th.md) · [🇵🇰 اردو](README.ur.md) · [🇷🇴 Română](README.ro.md) · [🇸🇪 Svenska](README.sv.md) · [🇬🇷 Ελληνικά](README.el.md) · [🇭🇺 Magyar](README.hu.md) · [🇫🇮 Suomi](README.fi.md) · [🇩🇰 Dansk](README.da.md) · [🇳🇴 Norsk](README.nb.md) ## Mikä tekee siitä erilaisen - **Agenttiryhmät ja orkestrointi** — Tiimit jaetuilla tehtävälaudoilla, agenttien välinen delegointi (synkroninen/asynkroninen) ja hybridin agenttien löytäminen - **Monivuokraaja-PostgreSQL** — Käyttäjäkohtaiset työtilat, käyttäjäkohtaiset kontekstitiedostot, salatut API-avaimet (AES-256-GCM), eristetyt sessiot - **Yksittäinen binääri** — ~25 MB staattinen Go-binääri, ei Node.js-ajonaikaa, alle 1 s käynnistys, toimii 5 dollarin VPS:llä - **Tuotantoturvallisuus** — 5-kerroksinen käyttöoikeusjärjestelmä (yhdyskäytävätodennus → globaali työkalukäytäntö → agenttikohtainen → kanavakohtainen → vain omistajalle) sekä nopeusrajoitus, kehotteen injektioiden havaitseminen, SSRF-suojaus, komennon estokuviot ja AES-256-GCM-salaus - **20+ LLM-tarjoajaa** — Anthropic (natiivi HTTP+SSE kehotteen välimuistilla), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP ja mikä tahansa OpenAI-yhteensopiva päätepiste - **7 viestintäkanavaa** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp - **Extended Thinking** — Tarjoajakohtainen ajattelutila (Anthropic budjettitokenit, OpenAI päättelyponnistus, DashScope ajattelubudjetti) suoratoistotuella - **Heartbeat** — Säännölliset agenttien tarkistukset HEARTBEAT.md-tarkistuslistojen kautta, joissa on OK:n yhteydessä estäminen, aktiiviset tunnit, uudelleenyrityslogiikka ja kanavajakelu - **Ajastus ja Cron** — `at`-, `every`- ja cron-lausekkeet automaattisille agenttitehtäville kaistapohjaisen samanaikaisuuden kanssa - **Observoitavuus** — Sisäänrakennettu LLM-kutsujen jäljitys väleillä ja kehotteen välimuistimittareilla, valinnainen OpenTelemetry OTLP-vienti ## Claw-ekosysteemi | | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | | --------------- | --------------- | -------- | -------- | --------------------------------------- | | Kieli | TypeScript | Rust | Go | **Go** | | Binäärikoko | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (perus) / **~36 MB** (+ OTel) | | Docker-kuva | — | — | — | **~50 MB** (Alpine) | | RAM (jouten) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | | Käynnistys | > 5 s | < 10 ms | < 1 s | **< 1 s** | | Kohdealusta | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | | Ominaisuus | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | | -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | | Monivuokraaja (PostgreSQL) | — | — | — | ✅ | | MCP-integraatio | — (käyttää ACP:ta) | — | — | ✅ (stdio/SSE/streamable-http) | | Agenttiryhmät | — | — | — | ✅ Tehtävätaulu + postilaatikko | | Turvallisuuden kovennos | ✅ (SSRF, polun läpikulku, injektio) | ✅ (hiekkalaatikko, nopeusrajoitus, injektio, parittaminen) | Perus (työtilan rajoitus, suorituksen esto) | ✅ 5-kerroksinen puolustus | | OTel-observoitavuus | ✅ (valinnainen laajennus) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (valinnainen rakennustagi) | | Kehotteen välimuisti | — | — | — | ✅ Anthropic + OpenAI-compat | | Tietoverkko | — | — | — | ✅ LLM-poiminta + läpikulku | | Taitojärjestelmä | ✅ Upotukset/semanttinen | ✅ SKILL.md + TOML | ✅ Perus | ✅ BM25 + pgvector hybriidi | | Kaistapohjainen ajastin | ✅ | Rajoitettu samanaikaisuus | — | ✅ (main/subagent/team/cron) | | Viestintäkanavat | 37+ | 15+ | 10+ | 7+ | | Kumppanisovellukset | macOS, iOS, Android | Python SDK | — | Web-koontinäyttö | | Live Canvas / Ääni | ✅ (A2UI + TTS/STT) | — | Äänen transkriptio | TTS (4 tarjoajaa) | | LLM-tarjoajat | 10+ | 8 natiivi + 29 yhteensopiva | 13+ | **20+** | | Käyttäjäkohtaiset työtilat | ✅ (tiedostopohjainen) | — | — | ✅ (PostgreSQL) | | Salatut salaisuudet | — (vain ympäristömuuttujat) | ✅ ChaCha20-Poly1305 | — (pelkkä teksti JSON) | ✅ AES-256-GCM tietokannassa | ## Arkkitehtuuri

GoClaw Architecture

## Pikaopas **Vaatimukset:** Go 1.26+, PostgreSQL 18 pgvectorilla, Docker (valinnainen) ### Lähdekoodista ```bash git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw make build ./goclaw onboard # Interaktiivinen asennusohjaaja source .env.local && ./goclaw ``` ### Dockerilla ```bash # Luo .env automaattisesti generoiduilla salaisuuksilla chmod +x prepare-env.sh && ./prepare-env.sh # Lisää vähintään yksi GOCLAW_*_API_KEY tiedostoon .env, sitten: make up # Web-koontinäyttö osoitteessa http://localhost:18790 # Terveystarkistus: curl http://localhost:18790/health ``` Kun `GOCLAW_*_API_KEY`-ympäristömuuttujat on asetettu, yhdyskäytävä käynnistyy automaattisesti ilman interaktiivisia kehotteita — tunnistaa tarjoajan, ajaa migraatiot ja alustaa oletusdata. > Rakennusvarianteista (OTel, Tailscale, Redis), Docker-kuvatageista ja compose-päällekkäisyyksistä, katso [Käyttöönotto-opas](https://docs.goclaw.sh/#deploy-docker-compose). ## Moniagentin orkestrointi GoClaw tukee agenttiryhmiä ja agenttien välistä delegointia — jokainen agentti toimii omalla identiteetillään, työkaluilla, LLM-tarjoajalla ja kontekstitiedostoilla. ### Agentin delegointi

Agent Delegation

| Tila | Toimintaperiaate | Parhaiten sopii | |------|-----------------|-----------------| | **Synkroninen** | Agentti A pyytää agenttia B ja **odottaa** vastausta | Nopeat tiedonhaut, faktojen tarkistus | | **Asynkroninen** | Agentti A pyytää agenttia B ja **jatkaa eteenpäin**. B ilmoittaa myöhemmin | Pitkät tehtävät, raportit, syvä analyysi | Agentit kommunikoivat eksplisiittisten **käyttöoikeuslinkkien** kautta suuntakontrollilla (`outbound`, `inbound`, `bidirectional`) ja samanaikaisuusrajoituksilla sekä linkkikohtaisella että agenttikohtaisella tasolla. ### Agenttiryhmät

Agent Teams Workflow

- **Jaettu tehtävätaulu** — Tehtävien luominen, varaaminen, viimeistely ja haku `blocked_by`-riippuvuuksilla - **Tiimin postilaatikko** — Suora vertaisviestintä ja lähetykset - **Työkalut**: `team_tasks` tehtävähallintaan, `team_message` postilaatikolle > Delegoinnin yksityiskohdista, käyttöoikeuslinkeistä ja samanaikaisuuden hallinnasta, katso [Agenttiryhmien dokumentaatio](https://docs.goclaw.sh/#teams-what-are-teams). ## Sisäänrakennetut työkalut | Työkalu | Ryhmä | Kuvaus | | ------------------ | ------------- | ------------------------------------------------------------ | | `read_file` | fs | Lue tiedoston sisältö (virtuaalisen tiedostojärjestelmän reitityksellä) | | `write_file` | fs | Kirjoita/luo tiedostoja | | `edit_file` | fs | Tee kohdennettuja muokkauksia olemassa oleviin tiedostoihin | | `list_files` | fs | Listaa hakemiston sisältö | | `search` | fs | Etsi tiedostojen sisältöä kuvion mukaan | | `glob` | fs | Etsi tiedostoja glob-kuvion mukaan | | `exec` | runtime | Suorita komentotulkin komentoja (hyväksymistyönkululla) | | `web_search` | web | Etsi verkosta (Brave, DuckDuckGo) | | `web_fetch` | web | Nouda ja jäsennä verkkosisältöä | | `memory_search` | memory | Etsi pitkäaikaisesta muistista (FTS + vektori) | | `memory_get` | memory | Nouda muistikirjauksia | | `skill_search` | — | Etsi taitoja (BM25 + upotushybriidi) | | `knowledge_graph_search` | memory | Etsi entiteettejä ja liiku tietoverkon suhteiden läpi | | `create_image` | media | Kuvan luominen (DashScope, MiniMax) | | `create_audio` | media | Äänen luominen (OpenAI, ElevenLabs, MiniMax, Suno) | | `create_video` | media | Videon luominen (MiniMax, Veo) | | `read_document` | media | Dokumentin lukeminen (Gemini File API, tarjoajaketju) | | `read_image` | media | Kuvan analysointi | | `read_audio` | media | Äänen transkriptio ja analysointi | | `read_video` | media | Videon analysointi | | `message` | messaging | Lähetä viestejä kanaville | | `tts` | — | Teksti puheeksi -synteesi | | `spawn` | — | Käynnistä aliagentti | | `subagents` | sessions | Hallitse käynnissä olevia aliagentteja | | `team_tasks` | teams | Jaettu tehtävätaulu (listaa, luo, varaa, viimeistele, etsi) | | `team_message` | teams | Tiimin postilaatikko (lähetä, lähetä kaikille, lue) | | `sessions_list` | sessions | Listaa aktiiviset sessiot | | `sessions_history` | sessions | Tarkastele session historiaa | | `sessions_send` | sessions | Lähetä viesti sessiolle | | `sessions_spawn` | sessions | Käynnistä uusi sessio | | `session_status` | sessions | Tarkista session tila | | `cron` | automation | Ajoita ja hallinnoi cron-töitä | | `gateway` | automation | Yhdyskäytävän hallinta | | `browser` | ui | Selaimen automaatio (navigoi, klikkaa, kirjoita, kuvakaappaus) | | `announce_queue` | automation | Asynkroninen tulosten ilmoittaminen (asynkronisille delegoinneille) | ## Dokumentaatio Täydellinen dokumentaatio osoitteessa **[docs.goclaw.sh](https://docs.goclaw.sh)** — tai selaa lähdekoodia [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs)-kansiossa. | Osio | Aiheet | |------|--------| | [Aloittaminen](https://docs.goclaw.sh/#what-is-goclaw) | Asennus, Pikaopas, Konfigurointi, Web-koontinäytön esittely | | [Peruskäsitteet](https://docs.goclaw.sh/#how-goclaw-works) | Agenttisilmukka, Sessiot, Työkalut, Muisti, Monivuokraajuus | | [Agentit](https://docs.goclaw.sh/#creating-agents) | Agenttien luominen, Kontekstitiedostot, Persoonallisuus, Jakaminen ja käyttöoikeudet | | [Tarjoajat](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 muuta | | [Kanavat](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | | [Agenttiryhmät](https://docs.goclaw.sh/#teams-what-are-teams) | Tiimit, Tehtävätaulu, Viestintä, Delegointi ja luovutus | | [Edistyneet](https://docs.goclaw.sh/#custom-tools) | Mukautetut työkalut, MCP, Taidot, Cron, Hiekkalaatikko, Koukut, RBAC | | [Käyttöönotto](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Tietokanta, Turvallisuus, Observoitavuus, Tailscale | | [Viite](https://docs.goclaw.sh/#cli-commands) | CLI-komennot, REST API, WebSocket-protokolla, Ympäristömuuttujat | ## Testaus ```bash go test ./... # Yksikkötestit go test -v ./tests/integration/ -timeout 120s # Integraatiotestit (vaatii käynnissä olevan yhdyskäytävän) ``` ## Projektin tila Katso [CHANGELOG.md](CHANGELOG.md) yksityiskohtainen ominaisuuksien tila, mukaan lukien mitä on testattu tuotannossa ja mitä on vielä kesken. ## Tunnustukset GoClaw on rakennettu alkuperäisen [OpenClaw](https://github.com/openclaw/openclaw)-projektin pohjalta. Olemme kiitollisia arkkitehtuurista ja visiosta, joka inspiroi tätä Go-porttia. ## Lisenssi MIT