GoClaw Multi-Tenant Agent Gateway
A self-hosted Go gateway for securely running, coordinating, and observing multi-agent teams.
Per-dimension scores and reasoning
Evidence shows security features like 5-layer permission system, RBAC, encrypted API keys (AES-256-GCM), SSRF protection, prompt injection detection, but implementation details are not shown in provided files, so some criteria score low. User confirmation exists (e.g., exec tool requires approval) but not detailed. Data flow transparency mentioned (tracing, OpenTelemetry) but lacks detailed docs. Sensitive data handling has encryption and isolation but no key management details. Dependency security has go.sum and CI but no vulnerability scanning evidence. External effects have sandbox and approval but not detailed. Rollback has update mechanism but no rollback strategy. Source attribution acknowledges OpenClaw but no full dependency provenance.
Self-consistency is good, README and CI config align, but no detailed error handling docs. Dependency availability has go.mod and go.sum but no mirrors or backups. Failure messages mentioned but no concrete examples.
Audience and scenarios clear (multi-tenant AI agent platform), capability boundaries described (tool categories, permissions), trigger precision mentioned (webhook signatures) but not detailed. Environment fit has Docker, binary, desktop, but no detailed configuration guide.
Information architecture clear (README, docs links), install notes detailed (Docker, source), naming stability has version tags but no API stability guarantee. Examples and FAQ provided but no FAQ. Known limitations mentioned (e.g., Postgres port conflict) but not complete list. License is CC BY-NC 4.0, non-commercial may limit use. Changelog exists but not detailed. Maintenance responsibility mentioned (GitHub Actions) but no clear maintainer info.
Output usability has CLI, Webhook, Web UI, but no output format examples. Marginal value has unique features (multi-tenancy, self-evolution) but no comparison with competitors. Cost-benefit has single binary, low resource usage, but no performance benchmarks.
Claim traceability has README and docs links but no implementation code. Cross-source corroboration has CI and tests but no independent verification. Fact-inference separation mentioned (e.g., production tested) but not detailed.
- License is CC BY-NC 4.0, non-commercial restriction may affect commercial deployment.
- Publisher identity unverified, treat with caution.
- Many dependencies, supply chain security should be monitored.
- Security claims are extensive but static review cannot verify actual implementation.
What does this agent do, and when should you use it?
GoClaw is a self-hosted, Go-based multi-tenant AI agent platform delivered as a gateway with an embedded web dashboard. Its adapter layer connects more than 20 LLM providers, while Telegram, Discord, Slack, Zalo, Feishu/Lark, WhatsApp, and WebSocket provide interaction channels. Agents have separate identities, tools, model providers, and context files, and can coordinate through task boards, messaging, and synchronous or asynchronous delegation. The standard server uses PostgreSQL and pgvector for memory and knowledge features, alongside RBAC, encrypted API keys, and permission controls. It can run from source or Docker Compose; GoClaw Lite is a separate local desktop edition built with Wails, React, and SQLite.
A request moves through the documented eight-stage pipeline: context, history, prompt, think, act, observe, memory, and summarize. GoClaw can invoke filesystem, exec, browser, web_search, web_fetch, memory, media, skills, team, and cron tools, while session summarization, knowledge-graph extraction, and dreaming promotion run asynchronously through domain events. Delegated agents exchange files in an isolated delegation workspace, and validated output is published to the caller's .delegations/<delegation-id>/ directory. External systems can invoke /v1/webhooks/llm with Bearer or HMAC authentication for sync or async work, and operators can inspect calls with goclaw traces commands.
- A product team assigning research, execution, and review work across several agents can use task boards, Agent Links, and sync or async delegation.
- A SaaS operator serving separate customers from one agent installation can use per-user workspaces, session isolation, context files, RBAC, and encrypted keys.
- A support or operations team using Telegram, Discord, Slack, Feishu/Lark, or WhatsApp can route those channels through one gateway.
- An engineering team that needs event-driven AI actions from another system can call
/v1/webhooks/llmwith Bearer or HMAC authentication. - A knowledge-heavy team that needs durable conversation context and linked documents can use working, episodic, and semantic memory with wikilinks and FTS/pgvector search.
- An individual who wants a small local agent workspace without Docker or PostgreSQL can use the GoClaw Lite desktop edition.
What are this agent's strengths and limitations?
- It unifies more than 20 providers behind one adapter interface, with documented Anthropic native HTTP+SSE, OpenAI-compatible endpoints, Codex, and Claude CLI support.
- The documented tenancy model includes per-user workspaces, context files, isolated sessions, RBAC, and AES-256-GCM encryption for API keys.
- Team orchestration has concrete mechanics: task boards, messaging, sync/async delegation, isolated delegation workspaces, and published
.delegationsoutputs. - Operations support is substantial: a single binary, Docker Compose migrations, built-in tracing, and optional OpenTelemetry OTLP export and Jaeger.
- The standard server has meaningful prerequisites: Go 1.26+ plus PostgreSQL 18 with pgvector; Docker is optional deployment tooling, not a replacement for the database.
- Its broad surface area—permissions, channels, provider adapters, tools, memory, and orchestration—creates a sizable configuration burden before production use.
- Lite has explicit limits: up to five agents and one five-member team, with no channels, knowledge graph, RBAC, or multi-tenancy.
- Repository metadata says NOASSERTION while the README identifies CC BY-NC 4.0, so commercial adopters should resolve the applicable license before use.
- Claims about binary size, startup time, and production testing are not accompanied here by benchmark methodology or detailed test evidence.
How do you install or deploy this agent?
For the standard server from source, install Go 1.26+, PostgreSQL 18, and pgvector, then run:
git clone -b main https://github.com/nextlevelbuilder/goclaw.git && cd goclaw
make build
./goclaw onboard
source .env.local && ./goclawFor Docker deployment:
chmod +x prepare-env.sh && ./prepare-env.shSet at least one GOCLAW_*_API_KEY in .env, then run make up. The embedded dashboard is at http://localhost:18790; verify it with curl http://localhost:18790/health. Docker is optional, but the standard server still documents PostgreSQL with pgvector as a prerequisite.
How do you use this agent?
After onboarding, or after setting at least one GOCLAW_*_API_KEY, start the gateway with ./goclaw or make up. Use the web dashboard to manage agents, providers, MCP servers, skills, and team tasks, then interact through a configured channel. Operators can inspect failures with goclaw traces list --status error. To trigger a synchronous external invocation, POST JSON such as {"input":"Summarize today metrics","mode":"sync"} to /v1/webhooks/llm using either the webhook's Bearer credential or its HMAC authentication parameters.
How does this agent compare with similar options?
The repository documents GoClaw Lite and the standard server as distinct choices. Lite uses local SQLite and FTS5 with no Docker or PostgreSQL, but caps usage at five agents and one team; the standard server uses PostgreSQL and pgvector and adds unlimited agents and teams, channels, knowledge graph support, RBAC, and multi-tenancy.
FAQ
Am I locked into one model provider?
GOCLAW_*_API_KEY.What is isolated in the multi-tenant setup?
Can another application trigger an agent run?
/v1/webhooks/llm supports Bearer authentication and HMAC signatures, with synchronous and asynchronous modes.