diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..4b03c2a02 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,49 @@ +# Changelog + +All notable changes to GoClaw are documented here. For full documentation, see [docs.goclaw.sh](https://docs.goclaw.sh). + +## Project Status + +### Implemented & Tested in Production + +- **Agent management & configuration** — Create, update, delete agents via API and web dashboard. Agent types (`open` / `predefined`), agent routing, and lazy resolution all tested. +- **Telegram channel** — Full integration tested: message handling, streaming responses, rich formatting (HTML, tables, code blocks), reactions, media, chunked long messages. +- **Seed data & bootstrapping** — Auto-onboard, DB seeding, migration pipeline tested end-to-end. +- **User-scope & content files** — Per-user context files (`user_context_files`), agent-level context files (`agent_context_files`), virtual FS interceptors, per-user seeding (`SeedUserFiles`), and user-agent profile tracking all implemented and tested. +- **Core built-in tools** — File system tools (`read_file`, `write_file`, `edit_file`, `list_files`, `search`, `glob`), shell execution (`exec`), web tools (`web_search`, `web_fetch`), and session management tools tested in real agent loops. +- **Memory system** — Long-term memory with pgvector hybrid search (FTS + vector) implemented and tested with real conversations. +- **Agent loop** — Think-act-observe cycle, tool use, session history, auto-summarization, and subagent spawning tested in production. +- **WebSocket RPC protocol (v3)** — Connect handshake, chat streaming, event push all tested with web dashboard and integration tests. +- **Store layer (PostgreSQL)** — All PG stores (sessions, agents, providers, skills, cron, pairing, tracing, memory, teams) implemented and running. +- **Browser automation** — Rod/CDP integration for headless Chrome, tested in production agent workflows. +- **Lane-based scheduler** — Main/subagent/team/cron lane isolation with concurrent execution tested. Group chats support up to 3 concurrent agent runs per session with adaptive throttle and deferred session writes for history isolation. +- **Security hardening** — Rate limiting, prompt injection detection, CORS, shell deny patterns, SSRF protection, credential scrubbing all implemented and verified. +- **Web dashboard** — Channel management, agent management, pairing approval, traces & spans viewer, skills, MCP, cron, sessions, teams, and config pages all implemented and working. +- **Prompt caching** — Anthropic (explicit `cache_control`), OpenAI/MiniMax/OpenRouter (automatic). Cache metrics tracked in trace spans and displayed in web dashboard. +- **Agent delegation** — Inter-agent task delegation with permission links, sync/async modes, per-user restrictions, concurrency limits, and hybrid agent search. Tested in production. +- **Agent teams** — Team creation with lead/member roles, shared task board (create, claim, complete, search, blocked_by dependencies), team mailbox (send, broadcast, read). Tested in production. +- **Evaluate loop** — Generator-evaluator feedback cycles with configurable max rounds and pass criteria. Tested in production. +- **Delegation history** — Queryable audit trail of inter-agent delegations. Tested in production. +- **Skill system** — BM25 search, ZIP upload, SKILL.md parsing, and embedding hybrid search. Tested in production. +- **MCP integration** — stdio, SSE, and streamable-http transports with per-agent/per-user grants. Tested in production. +- **Cron scheduling** — `at`, `every`, and cron expression scheduling. Tested in production. +- **Docker sandbox** — Isolated code execution in containers. Tested in production. +- **Text-to-Speech** — OpenAI, ElevenLabs, Edge, MiniMax providers. Tested in production. +- **HTTP API** — `/v1/chat/completions`, `/v1/agents`, `/v1/skills`, etc. Tested in production. Interactive Swagger UI at `/docs`. +- **API key management** — Multi-key auth with RBAC scopes, SHA-256 hashed storage, show-once pattern, optional expiry, revocation. HTTP + WebSocket CRUD. Web UI for management. +- **Hooks system** — Event-driven hooks with command evaluators (shell exit code) and agent evaluators (delegate to reviewer). Blocking gates with auto-retry and recursion-safe evaluation. +- **Media tools** — `create_image` (DashScope, MiniMax), `create_audio` (OpenAI, ElevenLabs, MiniMax, Suno), `create_video` (MiniMax, Veo), `read_document` (Gemini File API), `read_image`, `read_audio`, `read_video`. Persistent media storage with lazy-loaded MediaRef. +- **Additional provider modes** — Claude CLI (Anthropic via stdio + MCP bridge), Codex (OpenAI gpt-5.3-codex via OAuth). +- **Knowledge graph** — LLM-powered entity extraction, graph traversal, force-directed visualization, and `knowledge_graph_search` agent tool. +- **Memory management** — Admin dashboard for memory documents (CRUD, semantic search, chunk/embedding details, bulk re-indexing). +- **Persistent pending messages** — Channel messages persisted to PostgreSQL with auto-compaction (LLM summarization) and monitoring dashboard. +- **Heartbeat system** — Periodic agent check-ins via HEARTBEAT.md checklists with suppress-on-OK, active hours, retry logic, and channel delivery. + +### Implemented but Not Fully Tested + +- **Slack** — Channel integration implemented, not yet validated with real users. +- **Other messaging channels** — Discord, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp channel adapters are implemented but have not been tested end-to-end in production. Only Telegram has been validated with real users. +- **OpenTelemetry export** — OTLP gRPC/HTTP exporter implemented (build-tag gated). In-app tracing works; external OTel export not validated in production. +- **Tailscale integration** — tsnet listener implemented (build-tag gated). Not tested in a real deployment. +- **Redis cache** — Optional distributed cache backend (build-tag gated). Not tested in production. +- **Browser pairing** — Pairing code flow implemented with CLI and web UI approval. Basic flow tested but not validated at scale. diff --git a/README.md b/README.md index f3ad44a37..3e877496c 100644 --- a/README.md +++ b/README.md @@ -2,28 +2,81 @@ GoClaw

-# GoClaw +

GoClaw

-[![Go](https://img.shields.io/badge/Go_1.26-00ADD8?style=flat-square&logo=go&logoColor=white)](https://go.dev/) [![PostgreSQL](https://img.shields.io/badge/PostgreSQL_18-316192?style=flat-square&logo=postgresql&logoColor=white)](https://www.postgresql.org/) [![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white)](https://www.docker.com/) [![WebSocket](https://img.shields.io/badge/WebSocket-010101?style=flat-square&logo=socket.io&logoColor=white)](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket) [![OpenTelemetry](https://img.shields.io/badge/OpenTelemetry-000000?style=flat-square&logo=opentelemetry&logoColor=white)](https://opentelemetry.io/) [![Anthropic](https://img.shields.io/badge/Anthropic-191919?style=flat-square&logo=anthropic&logoColor=white)](https://www.anthropic.com/) [![OpenAI](https://img.shields.io/badge/OpenAI_Compatible-412991?style=flat-square&logo=openai&logoColor=white)](https://openai.com/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow?style=flat-square)](LICENSE) +

Enterprise AI Agent Platform

-**GoClaw** is a multi-agent AI gateway that connects LLMs to your tools, channels, and data — deployed as a single Go binary with zero runtime dependencies. It orchestrates agent teams and inter-agent delegation across 13+ LLM providers with full multi-tenant isolation. +

+Multi-agent AI gateway built in Go. 20+ LLM providers. 7 channels. Multi-tenant PostgreSQL.
+Single binary. Production-tested. Agents that orchestrate for you. +

+ +

+ Documentation • + Quick Start • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

A Go port of [OpenClaw](https://github.com/openclaw/openclaw) with enhanced security, multi-tenant PostgreSQL, and production-grade observability. +🌐 **Languages:** +[🇨🇳 简体中文](_readmes/README.zh-CN.md) · +[🇯🇵 日本語](_readmes/README.ja.md) · +[🇰🇷 한국어](_readmes/README.ko.md) · +[🇻🇳 Tiếng Việt](_readmes/README.vi.md) · +[🇵🇭 Tagalog](_readmes/README.tl.md) · +[🇪🇸 Español](_readmes/README.es.md) · +[🇧🇷 Português](_readmes/README.pt.md) · +[🇮🇹 Italiano](_readmes/README.it.md) · +[🇩🇪 Deutsch](_readmes/README.de.md) · +[🇫🇷 Français](_readmes/README.fr.md) · +[🇸🇦 العربية](_readmes/README.ar.md) · +[🇮🇳 हिन्दी](_readmes/README.hi.md) · +[🇷🇺 Русский](_readmes/README.ru.md) · +[🇧🇩 বাংলা](_readmes/README.bn.md) · +[🇮🇱 עברית](_readmes/README.he.md) · +[🇵🇱 Polski](_readmes/README.pl.md) · +[🇨🇿 Čeština](_readmes/README.cs.md) · +[🇳🇱 Nederlands](_readmes/README.nl.md) · +[🇹🇷 Türkçe](_readmes/README.tr.md) · +[🇺🇦 Українська](_readmes/README.uk.md) · +[🇮🇩 Bahasa Indonesia](_readmes/README.id.md) · +[🇹🇭 ไทย](_readmes/README.th.md) · +[🇵🇰 اردو](_readmes/README.ur.md) · +[🇷🇴 Română](_readmes/README.ro.md) · +[🇸🇪 Svenska](_readmes/README.sv.md) · +[🇬🇷 Ελληνικά](_readmes/README.el.md) · +[🇭🇺 Magyar](_readmes/README.hu.md) · +[🇫🇮 Suomi](_readmes/README.fi.md) · +[🇩🇰 Dansk](_readmes/README.da.md) · +[🇳🇴 Norsk](_readmes/README.nb.md) + ## What Makes It Different - **Agent Teams & Orchestration** — Teams with shared task boards, inter-agent delegation (sync/async), and hybrid agent discovery -- **Multi-Tenant PostgreSQL** — Per-user workspaces, per-user context files, encrypted API keys (AES-256-GCM), isolated sessions — the only Claw project with DB-native multi-tenancy +- **Multi-Tenant PostgreSQL** — Per-user workspaces, per-user context files, encrypted API keys (AES-256-GCM), isolated sessions - **Single Binary** — ~25 MB static Go binary, no Node.js runtime, <1s startup, runs on a $5 VPS -- **Production Security** — 5-layer defense: rate limiting, prompt injection detection, SSRF protection, shell deny patterns, AES-256-GCM encryption -- **13+ LLM Providers** — Anthropic (native HTTP+SSE with prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope (Qwen), Bailian Coding + Claude CLI (stdio + MCP bridge), Codex (gpt-5.3-codex via OAuth) -- **7 Messaging Channels** — Telegram (forum topics, STT), Discord, Slack, Zalo OA, Zalo Personal (DM + groups), Feishu/Lark (streaming cards, media), WhatsApp with `/stop` and `/stopall` commands +- **Production Security** — 5-layer permission system (gateway auth → global tool policy → per-agent → per-channel → owner-only) plus rate limiting, prompt injection detection, SSRF protection, shell deny patterns, and AES-256-GCM encryption +- **20+ LLM Providers** — Anthropic (native HTTP+SSE with prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, and any OpenAI-compatible endpoint +- **7 Messaging Channels** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp - **Extended Thinking** — Per-provider thinking mode (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) with streaming support +- **Heartbeat System** — Periodic agent check-ins via HEARTBEAT.md checklists with suppress-on-OK, active hours, retry logic, and channel delivery +- **Scheduling & Cron** — `at`, `every`, and cron expressions for automated agent tasks with lane-based concurrency +- **Observability** — Built-in LLM call tracing with spans and prompt cache metrics, optional OpenTelemetry OTLP export ## Claw Ecosystem -**Resource Footprint:** - | | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | | --------------- | --------------- | -------- | -------- | --------------------------------------- | | Language | TypeScript | Rust | Go | **Go** | @@ -33,8 +86,6 @@ A Go port of [OpenClaw](https://github.com/openclaw/openclaw) with enhanced secu | Startup | > 5 s | < 10 ms | < 1 s | **< 1 s** | | Target hardware | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | -**Feature Matrix:** - | Feature | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | | -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | | Multi-tenant (PostgreSQL) | — | — | — | ✅ | @@ -45,728 +96,79 @@ A Go port of [OpenClaw](https://github.com/openclaw/openclaw) with enhanced secu | Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | | Knowledge graph | — | — | — | ✅ LLM extraction + traversal | | Skill system | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ Basic | ✅ BM25 + pgvector hybrid | -| Lane-based scheduler | ✅ | Bounded concurrency | — | ✅ (main/subagent/team/cron + concurrent group runs) | +| Lane-based scheduler | ✅ | Bounded concurrency | — | ✅ (main/subagent/team/cron) | | Messaging channels | 37+ | 15+ | 10+ | 7+ | | Companion apps | macOS, iOS, Android | Python SDK | — | Web dashboard | | Live Canvas / Voice | ✅ (A2UI + TTS/STT) | — | Voice transcription | TTS (4 providers) | -| LLM providers | 10+ | 8 native + 29 compat | 13+ | **13+** | +| LLM providers | 10+ | 8 native + 29 compat | 13+ | **20+** | | Per-user workspaces | ✅ (file-based) | — | — | ✅ (PostgreSQL) | | Encrypted secrets | — (env vars only) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM in DB | -> **GoClaw unique strengths:** Only project with multi-tenant PostgreSQL, agent teams, hooks system, knowledge graph, and MCP protocol support. - ## Architecture -```mermaid -graph TB - subgraph Clients - WEB["Web Dashboard
(React SPA)"] - TG["Telegram"] - DC["Discord"] - SL["Slack"] - FS["Feishu/Lark"] - ZL["Zalo OA"] - ZLP["Zalo Personal"] - API["HTTP API"] - end - - subgraph Gateway["GoClaw Gateway"] - direction TB - WS["WebSocket RPC"] & REST["HTTP Server"] & CM["Channel Manager"] - WS & REST & CM --> BUS["Message Bus"] - BUS --> SCHED["Lane-based Scheduler
main · subagent · team · cron"] - SCHED --> ROUTER["Agent Router"] - ROUTER --> LOOP["Agent Loop
think → act → observe"] - LOOP --> TOOLS["Tool Registry
fs · exec · web · memory · team · mcp · custom"] - LOOP --> LLM["LLM Providers
Anthropic (native + prompt caching) · OpenAI-compat (12+)"] - end - - subgraph Storage - PG["PostgreSQL 18 + pgvector
(multi-tenant)"] - end - - WEB --> WS - TG & DC & SL & FS & ZL & ZLP --> CM - API --> REST - LOOP --> PG -``` - -## Multi-Agent Orchestration - -GoClaw supports four orchestration patterns for agent collaboration, all managed through explicit permission links. - -### Agent Delegation - -> **Note:** The standalone `delegate` tool has been removed. Delegation is now managed through agent teams — leads create tasks on the shared board and spawn members explicitly. The patterns below describe the conceptual model; see [Agent Teams](#agent-teams) for current tooling. - -Agent delegation enables named agents to delegate tasks to other agents — each running with its own identity, tools, LLM provider, and context files. Unlike subagents (anonymous clones of the parent), delegation targets are fully independent agents. - -```mermaid -flowchart TD - USER((User)) -->|"Research competitor pricing"| SUPPORT - - subgraph TEAM["Agent Team"] - SUPPORT["Support Bot
(Claude Haiku)"] - RESEARCH["Research Bot
(GPT-4)"] - WRITER["Content Writer
(Claude Sonnet)"] - BILLING["Billing Bot
(Gemini)"] - end - - SUPPORT -->|"sync: wait for answer"| RESEARCH - RESEARCH -->|"result"| SUPPORT - SUPPORT -->|"async: don't wait"| WRITER - WRITER -.->|"announce when done"| SUPPORT - SUPPORT -.-x|"no link"| BILLING - - SUPPORT -->|"final answer"| USER - - style USER fill:#e1f5fe - style SUPPORT fill:#fff3e0 - style RESEARCH fill:#e8f5e9 - style WRITER fill:#f3e5f5 - style BILLING fill:#ffebee -``` - -| Mode | How it works | Best for | -|------|-------------|----------| -| **Sync** | Agent A asks Agent B and **waits** for the answer | Quick lookups, fact checks | -| **Async** | Agent A asks Agent B and **moves on**. B announces the result later | Long tasks, reports, deep analysis | - -**Permission Links** — Agents communicate through explicit **agent links** with access control: - -```bash -# One-way: support-bot can delegate TO research-bot -agents.links.create { - "sourceAgent": "support-bot", - "targetAgent": "research-bot", - "direction": "outbound", - "maxConcurrent": 3 -} - -# Bidirectional: both agents can delegate to each other -agents.links.create { - "sourceAgent": "support-bot", - "targetAgent": "content-writer", - "direction": "bidirectional" -} -``` - -| Direction | Meaning | -|-----------|---------| -| `outbound` | Source can delegate TO target | -| `inbound` | Target can delegate TO source | -| `bidirectional` | Both agents can delegate to each other | - -**Concurrency Control** — Two layers prevent any agent from being overwhelmed: - -| Layer | Config | Example | -|-------|--------|---------| -| **Per-link** | `agent_links.max_concurrent` | support → research: max 3 | -| **Per-agent** | `agents.other_config.max_delegation_load` | research-bot: max 5 total | - -**Per-User Restrictions** — The `settings` JSONB on agent links supports per-user deny/allow lists. - -**Agent Discovery** — Each agent has a `frontmatter` field for discovery. With ≤15 targets, auto-generated `AGENTS.md` is injected into context. Delegation uses subagent spawning for larger target sets. - -
-Delegation vs Subagents - -| Aspect | Subagents | Agent Delegation | -|--------|-----------|-----------------| -| Target | Anonymous clone of parent | Named agent with own identity | -| Provider/Model | Inherited from parent | Target's own configuration | -| Tools | Parent's tools minus deny list | Target's own tool registry + policy | -| Context files | Simplified system prompt | Target's own SOUL.md, IDENTITY.md, etc. | -| Session | Shared with parent | Isolated (fresh per delegation) | -| Permission | Depth-based limits only | Explicit `agent_links` with direction | -| User control | None | Per-user deny/allow via settings JSONB | -| Concurrency | Global + per-parent limits | Per-link + per-target-agent limits | - -
- -### Agent Teams - -Teams enable coordinated multi-agent workflows with a shared task board and peer-to-peer messaging. - -```mermaid -flowchart TD - USER((User)) -->|message| LEAD - - subgraph TEAM["Agent Team"] - LEAD["Lead Agent
(orchestrator)"] - A1["Specialist A"] - A2["Specialist B"] - A3["Specialist C"] - end - - subgraph BOARD["Shared Task Board"] - T1["Task 1: pending"] - T2["Task 2: in_progress
owner: A1"] - T3["Task 3: blocked_by T2"] - end - - subgraph MAIL["Team Mailbox"] - M1["A1 → LEAD: status update"] - M2["LEAD → ALL: broadcast"] - end - - LEAD -->|"create tasks"| BOARD - A1 -->|"claim"| T2 - T2 -.->|"auto-unblocks"| T3 - A1 -->|"send message"| MAIL - LEAD -->|"broadcast"| MAIL - LEAD -->|final answer| USER - - style USER fill:#e1f5fe - style LEAD fill:#fff3e0 - style A1 fill:#e8f5e9 - style A2 fill:#e8f5e9 - style A3 fill:#e8f5e9 -``` - -- **Team roles** — Lead agent orchestrates work, member agents execute tasks -- **Shared task board** — Create, claim, complete, search tasks with `blocked_by` dependencies. Atomic claiming prevents double-assignment -- **Team mailbox** — Direct peer-to-peer messaging (send, broadcast, read unread) -- **Tools**: `team_tasks` for task management, `team_message` for mailbox - -## Features - -### LLM Providers -- **13+ providers** — OpenRouter, Anthropic, OpenAI, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope (Qwen), Bailian Coding, and any OpenAI-compatible endpoint -- **Anthropic native** — Direct HTTP+SSE integration with prompt caching (`cache_control`) for ~90% cost reduction on repeated prefixes. Also supports Claude CLI mode (stdio + MCP bridge with session management) -- **OpenAI-compatible** — Automatic prompt caching for OpenAI, MiniMax, OpenRouter (cache metrics tracked in traces). Also supports Codex mode (gpt-5.3-codex via OAuth with "phase" metadata) -- **Extended thinking** — Per-provider thinking mode: Anthropic (budget tokens), OpenAI-compat (reasoning effort), DashScope (thinking budget) with streaming support - -### Agent Orchestration -- **Agent loop** — Think-act-observe cycle with tool use, session history, and auto-summarization -- **Subagents** — Spawn child agents with different models for parallel task execution -- **Agent delegation** — Sync/async inter-agent task delegation with permission links, concurrency limits, and per-user restrictions -- **Agent teams** — Shared task boards with dependencies, team mailbox, and coordinated multi-agent workflows -- **Delegation history** — Queryable audit trail of all inter-agent delegations -- **Concurrent execution** — Lane-based scheduler (main/subagent/team/cron), adaptive throttle for group chats - -### Tools & Integrations -- **60+ built-in tools** — File system, shell exec, web search/fetch, memory, browser automation, TTS, and more -- **MCP integration** — Connect external MCP servers via stdio, SSE, or streamable-http with per-agent/per-user grants -- **Hooks system** — Event-driven hooks with command evaluators (shell exit code) and agent evaluators (delegate to reviewer) for output validation - -### Messaging Channels -- **Telegram** — Full integration with streaming, rich formatting (HTML, tables, code blocks), reactions, media, forum topics (per-topic config and session isolation), speech-to-text, bot commands, group file writer restrictions -- **Slack** — Channel integration with bot commands -- **Feishu/Lark** — Streaming card updates, media attachments (images/files), mention resolution, topic session mode -- **Zalo OA** — Official Account integration for DM conversations -- **Zalo Personal** — Unofficial reverse-engineered protocol supporting DM + group messages with restrictive default policies -- **Discord, WhatsApp** — Channel adapters with `/stop` and `/stopall` commands -- **Persistent pending messages** — Group chat messages persisted to PostgreSQL with auto-compaction (LLM summarization) when queues exceed threshold - -### Knowledge & Memory -- **Skills** — SKILL.md-based knowledge base with BM25 + embedding hybrid search (pgvector) -- **Long-term memory** — pgvector hybrid search (full-text + vector similarity) with admin dashboard for CRUD, search, and bulk re-indexing -- **Knowledge graph** — LLM-powered entity/relationship extraction from memory, graph traversal (recursive CTE, max depth 3), and force-directed visualization. Agent tool: `knowledge_graph_search` - -### Infrastructure -- **Cron scheduling** — `at`, `every`, and cron expression syntax for scheduled agent tasks -- **Browser automation** — Headless Chrome via Rod for web interaction -- **Text-to-Speech** — OpenAI, ElevenLabs, Edge, MiniMax providers -- **Docker sandbox** — Isolated code execution in containers -- **Tracing** — LLM call tracing with cache metrics, span metadata, and optional OpenTelemetry OTLP export -- **Tailscale** — Optional VPN mesh listener for secure remote access (build-tag gated) - -### Security -- **Rate limiting** — Token bucket per user/IP, configurable RPM -- **API key management** — Multi-key auth with RBAC scopes (`admin`, `read`, `write`, `approvals`, `pairing`), SHA-256 hashed storage, optional expiry, revocation -- **Prompt injection detection** — 6-pattern regex scanner (detection-only, never blocks) -- **Credential scrubbing** — Auto-redact API keys, tokens, passwords from tool outputs -- **Shell deny patterns** — Blocks `curl|sh`, reverse shells, `eval $()`, `base64|sh` -- **SSRF protection** — DNS pinning, blocked private IPs, blocked hosts -- **AES-256-GCM** — Encrypted provider API keys in database -- **Browser pairing** — Token-free browser auth with admin-approved pairing codes - -### Web Dashboard -- Agent management, traces & spans viewer, skills, teams, MCP servers, pairing approval, memory management (CRUD + search + chunking), knowledge graph (table + force-directed visualization), pending messages dashboard, API key management, and interactive API documentation (Swagger UI) +

+ GoClaw Architecture +

## Quick Start -```bash -git clone https://github.com/nextlevelbuilder/goclaw.git -cd goclaw -``` +**Prerequisites:** Go 1.26+, PostgreSQL 18 with pgvector, Docker (optional) ### From Source ```bash -# Build +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw make build - -# Interactive setup wizard -./goclaw onboard - -# Start the gateway +./goclaw onboard # Interactive setup wizard source .env.local && ./goclaw ``` ### With Docker -**1. Prepare environment:** - -```bash -# Generate .env with auto-generated secrets (GOCLAW_ENCRYPTION_KEY, GOCLAW_GATEWAY_TOKEN) -chmod +x prepare-env.sh -./prepare-env.sh -``` - -The script creates `.env` from `.env.example`, auto-generates `GOCLAW_ENCRYPTION_KEY` and `GOCLAW_GATEWAY_TOKEN`, and checks for a provider API key. Add at least one `GOCLAW_*_API_KEY` to `.env` before starting. - -**2. Start services:** - -```bash -# Recommended: Gateway + Web Dashboard (http://localhost:3000) -# Pull pre-built images: -docker compose -f docker-compose.yml -f docker-compose.postgres.yml -f docker-compose.selfservice.yml up -d - -# Or build from source: -docker compose -f docker-compose.yml -f docker-compose.postgres.yml -f docker-compose.selfservice.yml up -d --build - -# Without dashboard -docker compose -f docker-compose.yml -f docker-compose.postgres.yml up -d - -# + OpenTelemetry tracing (Jaeger at http://localhost:16686) -docker compose -f docker-compose.yml -f docker-compose.postgres.yml -f docker-compose.otel.yml up -d --build - -# + Tailscale (secure remote access) -docker compose -f docker-compose.yml -f docker-compose.postgres.yml -f docker-compose.tailscale.yml up -d --build -``` - -When `GOCLAW_*_API_KEY` environment variables are set, the gateway **auto-onboards** without interactive prompts — it detects the provider, generates a gateway token, connects to Postgres, runs migrations, and seeds default data. - -**Auto-onboard detects** the first available API key in priority order: OpenRouter → Anthropic → OpenAI → Groq → DeepSeek → Gemini → Mistral → xAI → MiniMax → Cohere → Perplexity. Override with `GOCLAW_PROVIDER` and `GOCLAW_MODEL`. Memory is auto-enabled with embedding support if an OpenAI, OpenRouter, or Gemini key is detected. - -**Minimum `.env`:** - -```bash -GOCLAW_OPENROUTER_API_KEY=sk-or-your-key # Required: at least one provider key -GOCLAW_GATEWAY_TOKEN=... # Auto-generated by prepare-env.sh -GOCLAW_ENCRYPTION_KEY=... # Auto-generated by prepare-env.sh -# GOCLAW_PROVIDER=openrouter # Optional: override default provider -# GOCLAW_MODEL=anthropic/claude-sonnet-4 # Optional: override default model -# POSTGRES_PASSWORD=your-secure-password # Optional: defaults to "goclaw" -``` - -## Deployment - -GoClaw requires PostgreSQL with pgvector. Designed for multi-user and multi-tenant deployments with **per-user isolation** — each user gets their own context files, session history, and workspace. - -```bash -# Set up database -export GOCLAW_POSTGRES_DSN="postgres://user:pass@localhost:5432/goclaw?sslmode=disable" -export GOCLAW_ENCRYPTION_KEY=$(openssl rand -hex 32) - -# Run database upgrade (schema migrations + data hooks) -./goclaw upgrade - -# Start gateway -./goclaw -``` - -**Features:** - -- Per-user context files and workspaces (`user_context_files` table) -- Agent types: `open` (per-user workspace) vs `predefined` (shared context) -- Agent teams, delegation -- LLM call tracing with spans and prompt cache metrics -- MCP server integration with per-agent and per-user access grants -- Embedding-based skill search (hybrid BM25 + pgvector) -- Web dashboard for agents, traces, skills, teams, and MCP servers -- API key encryption (AES-256-GCM) - -## Installation - -### Prerequisites - -- Go 1.26+ -- PostgreSQL 18 with pgvector -- Docker (optional, for sandbox and containerized deployment) - -### Build - -```bash -# Production build (~25MB binary, static, stripped symbols) -CGO_ENABLED=0 go build -ldflags="-s -w" -o goclaw . - -# With OpenTelemetry support (~36MB binary) -CGO_ENABLED=0 go build -ldflags="-s -w" -tags otel -o goclaw . - -# With Tailscale support (~54MB binary) -CGO_ENABLED=0 go build -ldflags="-s -w" -tags tsnet -o goclaw . - -# With Redis cache backend -CGO_ENABLED=0 go build -ldflags="-s -w" -tags redis -o goclaw . - -# With both OTel + Tailscale -CGO_ENABLED=0 go build -ldflags="-s -w" -tags "otel,tsnet" -o goclaw . -``` - -**Binary size comparison across the Claw ecosystem:** - -| Build | Binary Size | Docker Image | Notes | -| ------------------------ | ----------- | ------------ | ----------------------------------------- | -| **GoClaw** (base) | ~25 MB | ~50 MB | `CGO_ENABLED=0 go build -ldflags="-s -w"` | -| **GoClaw** (+ OTel) | ~36 MB | ~60 MB | Add `-tags otel` for OTLP export | -| **GoClaw** (+ Tailscale) | ~54 MB | ~75 MB | Add `-tags tsnet` for Tailscale listener | -| **GoClaw** (+ both) | ~65 MB | ~85 MB | `-tags "otel,tsnet"` | -| PicoClaw | ~8 MB | — | Single Go binary | -| ZeroClaw | 3.4 MB | — | Minimal Rust binary | -| OpenClaw | 28 MB | — | + ~390 MB Node.js runtime required | - -> Optional features are gated behind build tags to avoid binary bloat. OTel adds ~11 MB (gRPC + protobuf). Tailscale adds ~20 MB (tsnet + WireGuard). The base build includes in-app tracing backed by PostgreSQL and localhost-only access. - -### Docker Images (Pre-built) - -Pre-built multi-arch images (linux/amd64 + linux/arm64) are published to **GHCR** and **Docker Hub** on every release: - -```bash -# GHCR (recommended) -docker pull ghcr.io/nextlevelbuilder/goclaw:latest - -# Docker Hub -docker pull digitop/goclaw:latest -``` - -**Available tags:** - -| Tag | Description | -| ---------- | -------------------------------------- | -| `latest` | Base image (~50 MB Alpine) | -| `node` | + Node.js runtime for JS tools | -| `python` | + Python runtime for Python tools | -| `full` | + Node.js + Python + all bundled skills | -| `otel` | + OpenTelemetry tracing support | -| `tsnet` | + Tailscale VPN mesh listener | -| `redis` | + Redis cache backend | - -Semver tags are also available: `1.0.0`, `1.0`, etc. (e.g. `ghcr.io/nextlevelbuilder/goclaw:1.0.0-python`). - -**Web Dashboard:** - -```bash -docker pull ghcr.io/nextlevelbuilder/goclaw-web:latest -docker pull digitop/goclaw-web:latest -``` - -### Docker Build (from source) - -```bash -# Standard image (~50MB Alpine) -docker build -t goclaw . - -# With OpenTelemetry (~60MB) -docker build --build-arg ENABLE_OTEL=true -t goclaw:otel . - -# With Tailscale (~75MB) -docker build --build-arg ENABLE_TSNET=true -t goclaw:tsnet . - -# With both OTel + Tailscale (~85MB) -docker build --build-arg ENABLE_OTEL=true --build-arg ENABLE_TSNET=true -t goclaw:full . -``` - -## Configuration - -### Setup Wizard - ```bash -./goclaw onboard -``` - -The wizard configures: provider, model, gateway port, channels, memory, browser, TTS, and tracing. It generates `config.json` (no secrets) and `.env.local` (secrets only). - -### Auto-Onboard (Docker / CI) - -When `GOCLAW_*_API_KEY` environment variables are set, the gateway automatically configures itself without interactive prompts. It retries Postgres connection (up to 5 attempts), runs migrations, and seeds default data. - -### Environment Variables - -
-Provider API Keys (set at least one) - -| Variable | Provider | -| --------------------------- | ------------------------ | -| `GOCLAW_OPENROUTER_API_KEY` | OpenRouter (recommended) | -| `GOCLAW_ANTHROPIC_API_KEY` | Anthropic Claude | -| `GOCLAW_OPENAI_API_KEY` | OpenAI | -| `GOCLAW_GROQ_API_KEY` | Groq | -| `GOCLAW_DEEPSEEK_API_KEY` | DeepSeek | -| `GOCLAW_GEMINI_API_KEY` | Google Gemini | -| `GOCLAW_MISTRAL_API_KEY` | Mistral AI | -| `GOCLAW_XAI_API_KEY` | xAI Grok | -| `GOCLAW_MINIMAX_API_KEY` | MiniMax | -| `GOCLAW_COHERE_API_KEY` | Cohere | -| `GOCLAW_PERPLEXITY_API_KEY` | Perplexity | -| `GOCLAW_DASHSCOPE_API_KEY` | DashScope (Qwen) | -| `GOCLAW_BAILIAN_API_KEY` | Bailian Coding | - -
- -
-Gateway & Application - -| Variable | Description | Default | -| ------------------------- | -------------------------------- | ---------------------------- | -| `GOCLAW_CONFIG` | Config file path | `config.json` | -| `GOCLAW_GATEWAY_TOKEN` | API authentication token | (generated) | -| `GOCLAW_HOST` | Server bind address | `0.0.0.0` | -| `GOCLAW_PORT` | Server port | `18790` | -| `GOCLAW_PROVIDER` | Default LLM provider | `anthropic` | -| `GOCLAW_MODEL` | Default model | `claude-sonnet-4-5-20250929` | -| `GOCLAW_WORKSPACE` | Agent workspace directory | `~/.goclaw/workspace` | -| `GOCLAW_DATA_DIR` | Data storage directory | `~/.goclaw/data` | -| `GOCLAW_SESSIONS_STORAGE` | Sessions storage path | `~/.goclaw/sessions` | -| `GOCLAW_SKILLS_DIR` | Skills directory | `~/.goclaw/skills` | -| `GOCLAW_OWNER_IDS` | Admin user IDs (comma-separated) — owners can manage **all** agents regardless of ownership and are used as default owner for auto-seeded resources | | - -
- -
-Database - -| Variable | Description | -| ----------------------- | -------------------------------------- | -| `GOCLAW_POSTGRES_DSN` | PostgreSQL connection string | -| `GOCLAW_ENCRYPTION_KEY` | AES-256-GCM key for API key encryption | -| `GOCLAW_MIGRATIONS_DIR` | Path to migration files | - -
- -
-Messaging Channels - -| Variable | Description | -| ---------------------------------- | ----------------------------- | -| `GOCLAW_TELEGRAM_TOKEN` | Telegram bot token | -| `GOCLAW_ZALO_TOKEN` | Zalo access token | -| `GOCLAW_FEISHU_APP_ID` | Feishu/Lark app ID | -| `GOCLAW_FEISHU_APP_SECRET` | Feishu/Lark app secret | -| `GOCLAW_FEISHU_ENCRYPT_KEY` | Feishu message encryption key | -| `GOCLAW_FEISHU_VERIFICATION_TOKEN` | Feishu verification token | - -
- -
-Scheduler Lanes - -| Variable | Description | Default | -| ---------------------- | ---------------------------- | ------- | -| `GOCLAW_LANE_MAIN` | Main lane concurrency | `30` | -| `GOCLAW_LANE_SUBAGENT` | Subagent lane concurrency | `50` | -| `GOCLAW_LANE_TEAM` | Team lane concurrency | `100` | -| `GOCLAW_LANE_CRON` | Cron lane concurrency | `30` | - -
- -
-Tailscale (requires build tag tsnet) - -| Variable | Description | Default | -| ----------------------- | --------------------------------------------- | ---------- | -| `GOCLAW_TSNET_HOSTNAME` | Tailscale device name (e.g. `goclaw-gateway`) | (disabled) | -| `GOCLAW_TSNET_AUTH_KEY` | Tailscale auth key | | -| `GOCLAW_TSNET_DIR` | Persistent state directory | OS default | - -
- -
-Telemetry (requires build tag otel) - -| Variable | Description | Default | -| ------------------------------- | --------------------------- | ---------------- | -| `GOCLAW_TELEMETRY_ENABLED` | Enable OTel export | `false` | -| `GOCLAW_TELEMETRY_ENDPOINT` | OTLP endpoint | | -| `GOCLAW_TELEMETRY_PROTOCOL` | `grpc` or `http` | `grpc` | -| `GOCLAW_TELEMETRY_INSECURE` | Skip TLS verification | `false` | -| `GOCLAW_TELEMETRY_SERVICE_NAME` | Service name in traces | `goclaw-gateway` | -| `GOCLAW_TRACE_VERBOSE` | Log full LLM input in spans | `0` | - -
- -
-TTS (Text-to-Speech) - -| Variable | Description | -| ------------------------------- | ------------------- | -| `GOCLAW_TTS_OPENAI_API_KEY` | OpenAI TTS API key | -| `GOCLAW_TTS_ELEVENLABS_API_KEY` | ElevenLabs API key | -| `GOCLAW_TTS_MINIMAX_API_KEY` | MiniMax TTS API key | -| `GOCLAW_TTS_MINIMAX_GROUP_ID` | MiniMax group ID | - -
- -## CLI Commands - -``` -goclaw Start gateway (default command) -goclaw onboard Interactive setup wizard -goclaw version Print version and protocol info -goclaw doctor System health check (includes schema status) - -goclaw upgrade Upgrade database schema and run data hooks -goclaw upgrade --status Show current vs required schema version -goclaw upgrade --dry-run Preview pending changes without applying - -goclaw agent list List configured agents -goclaw agent chat Chat with an agent -goclaw agent add Add a new agent -goclaw agent delete Delete an agent - -goclaw migrate up Apply all pending migrations -goclaw migrate down Roll back migrations -goclaw migrate version Show current migration version -goclaw migrate force N Force set migration version -goclaw migrate goto N Migrate to specific version -goclaw migrate drop Drop all tables (dangerous) - -goclaw config show Show current configuration -goclaw config path Show config file path -goclaw config validate Validate configuration - -goclaw sessions list List active sessions -goclaw sessions delete Delete a session -goclaw sessions reset Reset session history - -goclaw cron list List scheduled jobs -goclaw cron delete Delete a job -goclaw cron toggle Enable/disable a job - -goclaw skills list List available skills -goclaw skills show Show skill details -``` - -**Adding core skills:** - -Place a skill folder inside `skills/` (local dev) or `/app/bundled-skills/` (Docker image). Each folder must contain a `SKILL.md` with YAML frontmatter (`name`, `description`, `slug`). Folders prefixed with `_` are treated as shared code, not skills. - -On server startup, the seeder automatically discovers all skill folders, upserts them into the database, and runs an async dependency check. No environment variable needed — the seeder falls back to `skills/` in local dev and `/app/bundled-skills` in Docker. - -``` - -goclaw models List AI models and providers -goclaw channels List messaging channels - -goclaw pairing approve Approve a pairing code -goclaw pairing list List paired devices -goclaw pairing revoke Revoke a pairing -``` - -**Flags:** - -``` ---config, -c Path to config file (default: config.json) ---verbose, -v Enable debug logging -``` - -## API - -Interactive API documentation is available at `/docs` (Swagger UI) when the gateway is running. The OpenAPI 3.0 spec is served at `/v1/openapi.json`. - -| Documentation | Description | -|---------------|-------------| -| [HTTP REST API](docs/18-http-api.md) | 130+ HTTP endpoints — chat completions, agents, skills, providers, MCP, memory, knowledge graph, channels, traces, usage, storage, API keys | -| [WebSocket RPC](docs/19-websocket-rpc.md) | 64+ RPC methods — chat, agents, config, sessions, cron, teams, pairing, delegations, approvals | -| [API Keys & Auth](docs/20-api-keys-auth.md) | Authentication model, RBAC scopes, API key management, security design | -| [Gateway Protocol](docs/04-gateway-protocol.md) | WebSocket wire protocol (v3), frame format, connection lifecycle | - -## Docker Compose - -Composable files for different deployment scenarios: - -| File | Purpose | -| -------------------------------- | -------------------------------------------------- | -| `docker-compose.yml` | Base service definition | -| `docker-compose.postgres.yml` | PostgreSQL (pgvector/pgvector:pg18) | -| `docker-compose.upgrade.yml` | One-shot database upgrade service | -| `docker-compose.selfservice.yml` | Web dashboard UI (nginx + React SPA) | -| `docker-compose.browser.yml` | Headless Chrome for browser automation | -| `docker-compose.sandbox.yml` | Docker-based code execution sandbox | -| `docker-compose.otel.yml` | OpenTelemetry + Jaeger tracing | -| `docker-compose.redis.yml` | Redis cache backend (build-tag gated) | -| `docker-compose.tailscale.yml` | Tailscale VPN mesh listener | - -### Examples - -```bash -# Prepare .env (auto-generates secrets, prompts for API key) +# Generate .env with auto-generated secrets chmod +x prepare-env.sh && ./prepare-env.sh -# Using pre-built images (no --build flag): -docker compose -f docker-compose.yml -f docker-compose.postgres.yml up -d - -# Managed + Web Dashboard (http://localhost:3000) -docker compose -f docker-compose.yml \ - -f docker-compose.postgres.yml \ +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ -f docker-compose.selfservice.yml up -d -# Managed + Web Dashboard + OpenTelemetry (Jaeger UI at http://localhost:16686) -docker compose -f docker-compose.yml \ - -f docker-compose.postgres.yml \ - -f docker-compose.selfservice.yml \ - -f docker-compose.otel.yml up -d --build - -# Managed + Tailscale (secure remote access via VPN mesh) -docker compose -f docker-compose.yml \ - -f docker-compose.postgres.yml \ - -f docker-compose.tailscale.yml up -d --build - -# Check health -curl http://localhost:18790/health +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health ``` -> **Note:** Omit `--build` to use pre-built images from GHCR. Add `--build` to build from source. Overlays that require build args (otel, tsnet, redis, sandbox) need `--build`. - -### Upgrading (Docker Compose) - -**Simple upgrade** — pull the latest images and restart. The entrypoint automatically runs `goclaw upgrade` (schema migrations + data hooks) before starting: - -```bash -# Using pre-built images (recommended): -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.selfservice.yml pull -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.selfservice.yml up -d +When `GOCLAW_*_API_KEY` environment variables are set, the gateway auto-onboards without interactive prompts — detects provider, runs migrations, and seeds default data. -# Or build from source: -git pull -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.selfservice.yml up -d --build -``` +> For build variants (OTel, Tailscale, Redis), Docker image tags, and compose overlays, see the [Deployment Guide](https://docs.goclaw.sh/#deploy-docker-compose). -Replace the compose files with whichever overlays you use (e.g. add `-f docker-compose.otel.yml` for OTel). +## Multi-Agent Orchestration -**Explicit upgrade** — if you want to preview changes or run the upgrade separately before restarting: +GoClaw supports agent teams and inter-agent delegation — each agent runs with its own identity, tools, LLM provider, and context files. -```bash -# Check current schema status -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.upgrade.yml run --rm upgrade --status +### Agent Delegation -# Preview pending changes (dry-run) -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.upgrade.yml run --rm upgrade --dry-run +

+ Agent Delegation +

-# Apply upgrade (schema migrations + data hooks), then remove container -docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ - -f docker-compose.upgrade.yml run --rm upgrade +| Mode | How it works | Best for | +|------|-------------|----------| +| **Sync** | Agent A asks Agent B and **waits** for the answer | Quick lookups, fact checks | +| **Async** | Agent A asks Agent B and **moves on**. B announces later | Long tasks, reports, deep analysis | -# Then rebuild and restart the gateway with the new image -docker compose -f docker-compose.yml -f docker-compose.postgres.yml up -d --build -``` +Agents communicate through explicit **permission links** with direction control (`outbound`, `inbound`, `bidirectional`) and concurrency limits at both per-link and per-agent levels. -### Environment File (.env) +### Agent Teams -Use the `prepare-env.sh` script to generate `.env` with auto-generated secrets: +

+ Agent Teams Workflow +

-```bash -./prepare-env.sh -``` +- **Shared task board** — Create, claim, complete, search tasks with `blocked_by` dependencies +- **Team mailbox** — Direct peer-to-peer messaging and broadcasts +- **Tools**: `team_tasks` for task management, `team_message` for mailbox -This creates `.env` with `GOCLAW_ENCRYPTION_KEY` and `GOCLAW_GATEWAY_TOKEN` pre-filled. You only need to add your provider API key. See `.env.example` for all available variables. +> For delegation details, permission links, and concurrency control, see the [Agent Teams docs](https://docs.goclaw.sh/#teams-what-are-teams). ## Built-in Tools @@ -796,7 +198,6 @@ This creates `.env` with `GOCLAW_ENCRYPTION_KEY` and `GOCLAW_GATEWAY_TOKEN` pre- | `tts` | — | Text-to-Speech synthesis | | `spawn` | — | Spawn a subagent | | `subagents` | sessions | Control running subagents | -| ~~`delegate`~~ | orchestration | ~~Delegate tasks to other agents~~ (removed — use `team_tasks`) | | `team_tasks` | teams | Shared task board (list, create, claim, complete, search) | | `team_message` | teams | Team mailbox (send, broadcast, read) | | `sessions_list` | sessions | List active sessions | @@ -809,135 +210,32 @@ This creates `.env` with `GOCLAW_ENCRYPTION_KEY` and `GOCLAW_GATEWAY_TOKEN` pre- | `browser` | ui | Browser automation (navigate, click, type, screenshot) | | `announce_queue` | automation | Async result announcement (for async delegations) | -## Browser Pairing +## Documentation -Browser clients can authenticate without pre-shared tokens using a pairing code flow: +Full documentation at **[docs.goclaw.sh](https://docs.goclaw.sh)** — or browse the source in [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) -1. User opens the web dashboard and enters their User ID -2. Clicks "Request Access (Pairing)" — gateway generates an 8-character code -3. Code is displayed in the browser UI -4. An admin approves the code via CLI (`goclaw pairing approve XXXX`) or the web UI -5. Browser automatically detects approval and gains operator-level access -6. On subsequent visits, the browser reconnects automatically using the stored pairing (no re-approval needed) - -**Revoking access:** - -```bash -# List paired devices -goclaw pairing list - -# Revoke a specific pairing -goclaw pairing revoke -``` - -After revocation, the browser falls back to the pairing flow on next visit. - -## Tailscale (Remote Access) - -GoClaw supports an optional [Tailscale](https://tailscale.com) listener for secure remote access via VPN mesh. The Tailscale listener runs alongside the main gateway, serving the same routes on both listeners. - -**Build-tag gated:** The `tsnet` dependency (~20 MB) is only compiled when building with `-tags tsnet`. The default binary is unaffected. - -```bash -# Build with Tailscale support -go build -tags tsnet -o goclaw . - -# Configure via environment variables -export GOCLAW_TSNET_HOSTNAME=goclaw-gateway -export GOCLAW_TSNET_AUTH_KEY=tskey-auth-xxxxx - -# Start — both localhost:18790 and Tailscale listener are active -./goclaw -``` - -When Tailscale is enabled and the gateway is still bound to `0.0.0.0`, a log suggestion recommends switching to `127.0.0.1` for localhost-only + Tailscale access: - -``` -GOCLAW_HOST=127.0.0.1 ./goclaw -``` - -This keeps the gateway inaccessible from the LAN while remaining reachable via Tailscale from any device on your tailnet. - -**Docker:** - -```bash -docker compose -f docker-compose.yml \ - -f docker-compose.postgres.yml \ - -f docker-compose.tailscale.yml up -d -``` - -Requires `GOCLAW_TSNET_AUTH_KEY` in your `.env` file. Tailscale state is persisted in a `tsnet-state` Docker volume. - -## Security - -- **Transport**: WebSocket CORS validation, 512KB message limit, 1MB HTTP body limit, timing-safe token auth -- **API key management**: Multi-key auth with 5 RBAC scopes, SHA-256 hashed storage, optional expiry, revocation, show-once pattern. See [API Keys & Auth](docs/20-api-keys-auth.md) -- **Rate limiting**: Token bucket per user/IP, configurable RPM -- **Prompt injection**: Input guard with 6 pattern detection (detection-only, never blocks) -- **Shell security**: Deny patterns for `curl|sh`, `wget|sh`, reverse shells, `eval`, `base64|sh` -- **Network**: SSRF protection with blocked hosts + private IP + DNS pinning -- **File system**: Path traversal prevention, workspace restriction -- **Encryption**: AES-256-GCM for provider API keys in database -- **Browser pairing**: Token-free browser auth with admin approval (pairing codes, auto-reconnect) -- **Tailscale**: Optional VPN mesh listener for secure remote access (build-tag gated) +| Section | Topics | +|---------|--------| +| [Getting Started](https://docs.goclaw.sh/#what-is-goclaw) | Installation, Quick Start, Configuration, Web Dashboard Tour | +| [Core Concepts](https://docs.goclaw.sh/#how-goclaw-works) | Agent Loop, Sessions, Tools, Memory, Multi-Tenancy | +| [Agents](https://docs.goclaw.sh/#creating-agents) | Creating Agents, Context Files, Personality, Sharing & Access | +| [Providers](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 more | +| [Channels](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agent Teams](https://docs.goclaw.sh/#teams-what-are-teams) | Teams, Task Board, Messaging, Delegation & Handoff | +| [Advanced](https://docs.goclaw.sh/#custom-tools) | Custom Tools, MCP, Skills, Cron, Sandbox, Hooks, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Security, Observability, Tailscale | +| [Reference](https://docs.goclaw.sh/#cli-commands) | CLI Commands, REST API, WebSocket Protocol, Environment Variables | ## Testing ```bash -# Unit tests -go test ./... - -# Integration tests (requires running gateway) -go test -v -run 'TestHealthHTTP|TestConnectHandshake' ./tests/integration/ - -# Full integration (requires API key) -GOCLAW_OPENROUTER_API_KEY=sk-or-xxx go test -v ./tests/integration/ -timeout 120s +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) ``` ## Project Status -### Implemented & Tested in Production - -- **Agent management & configuration** — Create, update, delete agents via API and web dashboard. Agent types (`open` / `predefined`), agent routing, and lazy resolution all tested. -- **Telegram channel** — Full integration tested: message handling, streaming responses, rich formatting (HTML, tables, code blocks), reactions, media, chunked long messages. -- **Seed data & bootstrapping** — Auto-onboard, DB seeding, migration pipeline tested end-to-end. -- **User-scope & content files** — Per-user context files (`user_context_files`), agent-level context files (`agent_context_files`), virtual FS interceptors, per-user seeding (`SeedUserFiles`), and user-agent profile tracking all implemented and tested. -- **Core built-in tools** — File system tools (`read_file`, `write_file`, `edit_file`, `list_files`, `search`, `glob`), shell execution (`exec`), web tools (`web_search`, `web_fetch`), and session management tools tested in real agent loops. -- **Memory system** — Long-term memory with pgvector hybrid search (FTS + vector) implemented and tested with real conversations. -- **Agent loop** — Think-act-observe cycle, tool use, session history, auto-summarization, and subagent spawning tested in production. -- **WebSocket RPC protocol (v3)** — Connect handshake, chat streaming, event push all tested with web dashboard and integration tests. -- **Store layer (PostgreSQL)** — All PG stores (sessions, agents, providers, skills, cron, pairing, tracing, memory, teams) implemented and running. -- **Browser automation** — Rod/CDP integration for headless Chrome, tested in production agent workflows. -- **Lane-based scheduler** — Main/subagent/team/cron lane isolation with concurrent execution tested. Group chats support up to 3 concurrent agent runs per session with adaptive throttle and deferred session writes for history isolation. -- **Security hardening** — Rate limiting, prompt injection detection, CORS, shell deny patterns, SSRF protection, credential scrubbing all implemented and verified. -- **Web dashboard** — Channel management, agent management, pairing approval, traces & spans viewer, skills, MCP, cron, sessions, teams, and config pages all implemented and working. -- **Prompt caching** — Anthropic (explicit `cache_control`), OpenAI/MiniMax/OpenRouter (automatic). Cache metrics tracked in trace spans and displayed in web dashboard. -- **Agent delegation** — Inter-agent task delegation with permission links, sync/async modes, per-user restrictions, concurrency limits, and hybrid agent search. Tested in production. -- **Agent teams** — Team creation with lead/member roles, shared task board (create, claim, complete, search, blocked_by dependencies), team mailbox (send, broadcast, read). Tested in production. -- **Evaluate loop** — Generator-evaluator feedback cycles with configurable max rounds and pass criteria. Tested in production. -- **Delegation history** — Queryable audit trail of inter-agent delegations. Tested in production. -- **Skill system** — BM25 search, ZIP upload, SKILL.md parsing, and embedding hybrid search. Tested in production. -- **MCP integration** — stdio, SSE, and streamable-http transports with per-agent/per-user grants. Tested in production. -- **Cron scheduling** — `at`, `every`, and cron expression scheduling. Tested in production. -- **Docker sandbox** — Isolated code execution in containers. Tested in production. -- **Text-to-Speech** — OpenAI, ElevenLabs, Edge, MiniMax providers. Tested in production. -- **HTTP API** — `/v1/chat/completions`, `/v1/agents`, `/v1/skills`, etc. Tested in production. Interactive Swagger UI at `/docs`. -- **API key management** — Multi-key auth with RBAC scopes, SHA-256 hashed storage, show-once pattern, optional expiry, revocation. HTTP + WebSocket CRUD. Web UI for management. -- **Hooks system** — Event-driven hooks with command evaluators (shell exit code) and agent evaluators (delegate to reviewer). Blocking gates with auto-retry and recursion-safe evaluation. -- **Media tools** — `create_image` (DashScope, MiniMax), `create_audio` (OpenAI, ElevenLabs, MiniMax, Suno), `create_video` (MiniMax, Veo), `read_document` (Gemini File API), `read_image`, `read_audio`, `read_video`. Persistent media storage with lazy-loaded MediaRef. -- **Additional provider modes** — Claude CLI (Anthropic via stdio + MCP bridge), Codex (OpenAI gpt-5.3-codex via OAuth). -- **Knowledge graph** — LLM-powered entity extraction, graph traversal, force-directed visualization, and `knowledge_graph_search` agent tool. -- **Memory management** — Admin dashboard for memory documents (CRUD, semantic search, chunk/embedding details, bulk re-indexing). -- **Persistent pending messages** — Channel messages persisted to PostgreSQL with auto-compaction (LLM summarization) and monitoring dashboard. - -### Implemented but Not Fully Tested - -- **Slack** — Channel integration implemented, not yet validated with real users. -- **Other messaging channels** — Discord, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp channel adapters are implemented but have not been tested end-to-end in production. Only Telegram has been validated with real users. -- **OpenTelemetry export** — OTLP gRPC/HTTP exporter implemented (build-tag gated). In-app tracing works; external OTel export not validated in production. -- **Tailscale integration** — tsnet listener implemented (build-tag gated). Not tested in a real deployment. -- **Redis cache** — Optional distributed cache backend (build-tag gated). Not tested in production. -- **Browser pairing** — Pairing code flow implemented with CLI and web UI approval. Basic flow tested but not validated at scale. +See [CHANGELOG.md](CHANGELOG.md) for detailed feature status including what's been tested in production and what's still in progress. ## Acknowledgments diff --git a/_readmes/README.ar.md b/_readmes/README.ar.md new file mode 100644 index 000000000..a1c049d05 --- /dev/null +++ b/_readmes/README.ar.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ التوثيق • + البدء السريع • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** هو بوابة ذكاء اصطناعي متعددة الوكلاء تربط نماذج اللغة الكبيرة بأدواتك وقنواتك وبياناتك — يُنشر كملف Go ثنائي واحد بدون أي تبعيات وقت تشغيل. يُنسّق فرق الوكلاء والتفويض بين الوكلاء عبر أكثر من 20 مزوّد نماذج لغوية مع عزل كامل لمتعددي المستأجرين. + +منفذ Go من [OpenClaw](https://github.com/openclaw/openclaw) مع أمان محسّن، وPostgreSQL متعدد المستأجرين، وإمكانية رصد وإنتاجية متميزة. + +🌐 **اللغات:** +[🇺🇸 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) + +## ما الذي يميّزه + +- **فرق الوكلاء والتنسيق** — فرق ذات لوحات مهام مشتركة، وتفويض بين الوكلاء (متزامن/غير متزامن)، واكتشاف هجين للوكلاء +- **PostgreSQL متعدد المستأجرين** — مساحات عمل لكل مستخدم، وملفات سياق لكل مستخدم، ومفاتيح API مشفّرة (AES-256-GCM)، وجلسات معزولة +- **ملف ثنائي واحد** — ملف Go ثابت بحجم ~25 ميغابايت، بدون Node.js، بدء تشغيل أقل من ثانية، يعمل على خادم VPS بـ5 دولارات +- **أمان للإنتاج** — نظام أذونات من 5 طبقات (مصادقة البوابة ← سياسة الأداة العالمية ← لكل وكيل ← لكل قناة ← للمالك فقط) بالإضافة إلى تحديد المعدل، وكشف حقن البرومبت، وحماية SSRF، وأنماط رفض Shell، وتشفير AES-256-GCM +- **أكثر من 20 مزوّد نماذج لغوية** — Anthropic (HTTP+SSE أصلي مع تخزين مؤقت للبرومبت)، OpenAI، OpenRouter، Groq، DeepSeek، Gemini، Mistral، xAI، MiniMax، Cohere، Perplexity، DashScope، Bailian، Zai، Ollama، Ollama Cloud، Claude CLI، Codex، ACP، وأي نقطة نهاية متوافقة مع OpenAI +- **7 قنوات مراسلة** — Telegram، Discord، Slack، Zalo OA، Zalo Personal، Feishu/Lark، WhatsApp +- **Extended Thinking** — وضع تفكير لكل مزوّد (رموز ميزانية Anthropic، جهد استدلال OpenAI، ميزانية تفكير DashScope) مع دعم البث +- **Heartbeat** — فحوصات دورية للوكيل عبر قوائم مراجعة HEARTBEAT.md مع كبت عند النجاح، وساعات نشطة، ومنطق إعادة المحاولة، وتسليم القناة +- **الجدولة والكرون** — تعبيرات `at` و`every` والكرون للمهام الآلية للوكيل مع تزامن قائم على المسارات +- **إمكانية الرصد** — تتبع مدمج لاستدعاءات نموذج اللغة الكبيرة مع spans ومقاييس ذاكرة التخزين المؤقت للبرومبت، وتصدير اختياري عبر OpenTelemetry OTLP + +## نظام بيئة Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| اللغة | TypeScript | Rust | Go | **Go** | +| حجم الملف الثنائي | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (أساسي) / **~36 MB** (+ OTel) | +| صورة Docker | — | — | — | **~50 MB** (Alpine) | +| الذاكرة (خامل) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| بدء التشغيل | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| العتاد المستهدف | Mac Mini بـ599 دولار+ | حافة 10 دولار | حافة 10 دولار | **VPS بـ5 دولار+** | + +| الميزة | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| متعدد المستأجرين (PostgreSQL) | — | — | — | ✅ | +| تكامل MCP | — (يستخدم ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| فرق الوكلاء | — | — | — | ✅ لوحة مهام + صندوق بريد | +| تصليب الأمان | ✅ (SSRF، اجتياز المسار، الحقن) | ✅ (صندوق حماية، تحديد المعدل، الحقن، الإقران) | أساسي (تقييد مساحة العمل، رفض التنفيذ) | ✅ دفاع من 5 طبقات | +| إمكانية الرصد OTel | ✅ (امتداد اختياري) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (علامة بناء اختيارية) | +| التخزين المؤقت للبرومبت | — | — | — | ✅ Anthropic + متوافق OpenAI | +| الرسم البياني للمعرفة | — | — | — | ✅ استخراج نموذج اللغة + اجتياز | +| نظام المهارات | ✅ تضمينات/دلالية | ✅ SKILL.md + TOML | ✅ أساسي | ✅ BM25 + pgvector هجين | +| جدولة قائمة على المسارات | ✅ | تزامن محدود | — | ✅ (رئيسي/وكيل فرعي/فريق/كرون) | +| قنوات المراسلة | 37+ | 15+ | 10+ | 7+ | +| التطبيقات المرافقة | macOS، iOS، Android | Python SDK | — | لوحة تحكم ويب | +| Canvas الحي / الصوت | ✅ (A2UI + TTS/STT) | — | نسخ صوتي | TTS (4 مزودين) | +| مزودو نماذج اللغة الكبيرة | 10+ | 8 أصلي + 29 متوافق | 13+ | **20+** | +| مساحات عمل لكل مستخدم | ✅ (قائمة على الملفات) | — | — | ✅ (PostgreSQL) | +| الأسرار المشفّرة | — (متغيرات البيئة فقط) | ✅ ChaCha20-Poly1305 | — (JSON نص عادي) | ✅ AES-256-GCM في قاعدة البيانات | + +## المعمارية + +

+ GoClaw Architecture +

+ +## البدء السريع + +**المتطلبات الأساسية:** Go 1.26+، PostgreSQL 18 مع pgvector، Docker (اختياري) + +### من المصدر + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # معالج إعداد تفاعلي +source .env.local && ./goclaw +``` + +### مع Docker + +```bash +# توليد .env مع أسرار مولّدة تلقائياً +chmod +x prepare-env.sh && ./prepare-env.sh + +# أضف على الأقل مفتاح GOCLAW_*_API_KEY إلى .env، ثم: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# لوحة تحكم الويب على http://localhost:3000 +# فحص الصحة: curl http://localhost:18790/health +``` + +عند تعيين متغيرات البيئة `GOCLAW_*_API_KEY`، تعمل البوابة على الإعداد التلقائي بدون مطالبات تفاعلية — تكتشف المزوّد، وتشغّل الترحيلات، وتزرع البيانات الافتراضية. + +> لاختلافات البناء (OTel، Tailscale، Redis)، وعلامات صور Docker، والتراكبات المُركّبة، راجع [دليل النشر](https://docs.goclaw.sh/#deploy-docker-compose). + +## تنسيق متعدد الوكلاء + +يدعم GoClaw فرق الوكلاء والتفويض بين الوكلاء — يعمل كل وكيل بهويته الخاصة وأدواته ومزوّد نماذج اللغة الكبيرة وملفات السياق. + +### تفويض الوكيل + +

+ Agent Delegation +

+ +| الوضع | كيف يعمل | الأنسب لـ | +|------|-------------|----------| +| **متزامن** | الوكيل A يسأل الوكيل B و**ينتظر** الإجابة | البحثات السريعة، التحقق من الحقائق | +| **غير متزامن** | الوكيل A يسأل الوكيل B و**يكمل عمله**. يُعلن B لاحقاً | المهام الطويلة، التقارير، التحليل العميق | + +يتواصل الوكلاء عبر **روابط الأذونات** الصريحة مع التحكم في الاتجاه (`outbound`، `inbound`، `bidirectional`) وحدود التزامن على مستوى الرابط والوكيل. + +### فرق الوكلاء + +

+ Agent Teams Workflow +

+ +- **لوحة المهام المشتركة** — إنشاء المهام، والمطالبة بها، وإكمالها، والبحث فيها مع تبعيات `blocked_by` +- **صندوق بريد الفريق** — رسائل مباشرة من نظير إلى نظير وبث جماعي +- **الأدوات**: `team_tasks` لإدارة المهام، و`team_message` لصندوق البريد + +> للاطلاع على تفاصيل التفويض وروابط الأذونات والتحكم في التزامن، راجع [توثيق فرق الوكلاء](https://docs.goclaw.sh/#teams-what-are-teams). + +## الأدوات المدمجة + +| الأداة | المجموعة | الوصف | +| -------------------- | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | قراءة محتويات الملفات (مع توجيه نظام الملفات الافتراضي) | +| `write_file` | fs | كتابة/إنشاء الملفات | +| `edit_file` | fs | تطبيق تعديلات محددة على الملفات الموجودة | +| `list_files` | fs | عرض محتويات الدليل | +| `search` | fs | البحث في محتويات الملفات بنمط معين | +| `glob` | fs | البحث عن الملفات بنمط glob | +| `exec` | runtime | تنفيذ أوامر Shell (مع سير عمل الموافقة) | +| `web_search` | web | البحث على الويب (Brave، DuckDuckGo) | +| `web_fetch` | web | جلب محتوى الويب وتحليله | +| `memory_search` | memory | البحث في الذاكرة طويلة المدى (FTS + متجه) | +| `memory_get` | memory | استرجاع مدخلات الذاكرة | +| `skill_search` | — | البحث في المهارات (BM25 + تضمين هجين) | +| `knowledge_graph_search` | memory | البحث في الكيانات واجتياز علاقات الرسم البياني للمعرفة | +| `create_image` | media | توليد الصور (DashScope، MiniMax) | +| `create_audio` | media | توليد الصوت (OpenAI، ElevenLabs، MiniMax، Suno) | +| `create_video` | media | توليد الفيديو (MiniMax، Veo) | +| `read_document` | media | قراءة المستندات (Gemini File API، سلسلة المزودين) | +| `read_image` | media | تحليل الصور | +| `read_audio` | media | نسخ الصوت وتحليله | +| `read_video` | media | تحليل الفيديو | +| `message` | messaging | إرسال رسائل إلى القنوات | +| `tts` | — | تحويل النص إلى كلام | +| `spawn` | — | إطلاق وكيل فرعي | +| `subagents` | sessions | التحكم في الوكلاء الفرعية الجارية | +| `team_tasks` | teams | لوحة المهام المشتركة (قائمة، إنشاء، مطالبة، إكمال، بحث) | +| `team_message` | teams | صندوق بريد الفريق (إرسال، بث، قراءة) | +| `sessions_list` | sessions | عرض الجلسات النشطة | +| `sessions_history` | sessions | عرض تاريخ الجلسة | +| `sessions_send` | sessions | إرسال رسالة إلى جلسة | +| `sessions_spawn` | sessions | إطلاق جلسة جديدة | +| `session_status` | sessions | فحص حالة الجلسة | +| `cron` | automation | جدولة وإدارة وظائف الكرون | +| `gateway` | automation | إدارة البوابة | +| `browser` | ui | أتمتة المتصفح (تصفح، نقر، كتابة، لقطة شاشة) | +| `announce_queue` | automation | إعلان النتائج غير المتزامنة (للتفويضات غير المتزامنة) | + +## التوثيق + +التوثيق الكامل على **[docs.goclaw.sh](https://docs.goclaw.sh)** — أو تصفّح المصدر في [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| القسم | المواضيع | +|---------|--------| +| [البدء](https://docs.goclaw.sh/#what-is-goclaw) | التثبيت، البدء السريع، الإعداد، جولة لوحة تحكم الويب | +| [المفاهيم الأساسية](https://docs.goclaw.sh/#how-goclaw-works) | حلقة الوكيل، الجلسات، الأدوات، الذاكرة، متعددية المستأجرين | +| [الوكلاء](https://docs.goclaw.sh/#creating-agents) | إنشاء الوكلاء، ملفات السياق، الشخصية، المشاركة والوصول | +| [المزودون](https://docs.goclaw.sh/#providers-overview) | Anthropic، OpenAI، OpenRouter، Gemini، DeepSeek، +15 المزيد | +| [القنوات](https://docs.goclaw.sh/#channels-overview) | Telegram، Discord، Slack، Feishu، Zalo، WhatsApp، WebSocket | +| [فرق الوكلاء](https://docs.goclaw.sh/#teams-what-are-teams) | الفرق، لوحة المهام، المراسلة، التفويض والتسليم | +| [متقدم](https://docs.goclaw.sh/#custom-tools) | الأدوات المخصصة، MCP، المهارات، الكرون، صندوق الحماية، الخطافات، RBAC | +| [النشر](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose، قاعدة البيانات، الأمان، إمكانية الرصد، Tailscale | +| [المرجع](https://docs.goclaw.sh/#cli-commands) | أوامر CLI، REST API، بروتوكول WebSocket، متغيرات البيئة | + +## الاختبار + +```bash +go test ./... # اختبارات الوحدة +go test -v ./tests/integration/ -timeout 120s # اختبارات التكامل (تتطلب بوابة قيد التشغيل) +``` + +## حالة المشروع + +راجع [CHANGELOG.md](CHANGELOG.md) للاطلاع على حالة الميزات التفصيلية بما في ذلك ما تم اختباره في الإنتاج وما لا يزال قيد التطوير. + +## شكر وتقدير + +بُني GoClaw على مشروع [OpenClaw](https://github.com/openclaw/openclaw) الأصلي. نحن ممتنون للمعمارية والرؤية التي ألهمت هذا المنفذ بلغة Go. + +## الرخصة + +MIT diff --git a/_readmes/README.bn.md b/_readmes/README.bn.md new file mode 100644 index 000000000..aa0254bb1 --- /dev/null +++ b/_readmes/README.bn.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ ডকুমেন্টেশন • + দ্রুত শুরু • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** হলো একটি মাল্টি-এজেন্ট AI গেটওয়ে যা LLM-কে আপনার টুলস, চ্যানেল এবং ডেটার সাথে সংযুক্ত করে — একটি একক Go বাইনারি হিসেবে স্থাপন করা হয়, কোনো রানটাইম নির্ভরতা ছাড়াই। এটি ২০+ LLM প্রদানকারীর মাধ্যমে সম্পূর্ণ মাল্টি-টেন্যান্ট আইসোলেশন সহ এজেন্ট টিম এবং ইন্টার-এজেন্ট ডেলিগেশন পরিচালনা করে। + +[OpenClaw](https://github.com/openclaw/openclaw)-এর একটি Go পোর্ট, উন্নত নিরাপত্তা, মাল্টি-টেন্যান্ট PostgreSQL এবং প্রোডাকশন-গ্রেড পর্যবেক্ষণযোগ্যতা সহ। + +🌐 **Languages:** +[🇺🇸 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) + +## যা এটিকে আলাদা করে + +- **এজেন্ট টিম ও অর্কেস্ট্রেশন** — শেয়ারড টাস্ক বোর্ড, ইন্টার-এজেন্ট ডেলিগেশন (সিঙ্ক/অ্যাসিঙ্ক), এবং হাইব্রিড এজেন্ট ডিসকভারি সহ টিম +- **মাল্টি-টেন্যান্ট PostgreSQL** — প্রতি-ব্যবহারকারী ওয়ার্কস্পেস, প্রতি-ব্যবহারকারী কনটেক্সট ফাইল, এনক্রিপ্টেড API কী (AES-256-GCM), বিচ্ছিন্ন সেশন +- **একক বাইনারি** — ~২৫ MB স্ট্যাটিক Go বাইনারি, কোনো Node.js রানটাইম নেই, <১ সেকেন্ড স্টার্টআপ, $৫-এর VPS-এও চলে +- **প্রোডাকশন নিরাপত্তা** — ৫-স্তরের অনুমতি ব্যবস্থা (gateway auth → গ্লোবাল টুল পলিসি → প্রতি-এজেন্ট → প্রতি-চ্যানেল → মালিক-কেবল) এবং রেট লিমিটিং, প্রম্পট ইনজেকশন ডিটেকশন, SSRF সুরক্ষা, শেল ডিনাই প্যাটার্ন, এবং AES-256-GCM এনক্রিপশন +- **২০+ LLM প্রদানকারী** — Anthropic (নেটিভ HTTP+SSE প্রম্পট ক্যাশিং সহ), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, এবং যেকোনো OpenAI-কম্প্যাটিবল এন্ডপয়েন্ট +- **৭টি মেসেজিং চ্যানেল** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — প্রতি-প্রদানকারী থিংকিং মোড (Anthropic বাজেট টোকেন, OpenAI রিজনিং এফোর্ট, DashScope থিংকিং বাজেট) স্ট্রিমিং সাপোর্ট সহ +- **Heartbeat** — HEARTBEAT.md চেকলিস্টের মাধ্যমে পর্যায়ক্রমিক এজেন্ট চেক-ইন, suppress-on-OK, সক্রিয় ঘণ্টা, রিট্রি লজিক এবং চ্যানেল ডেলিভারি সহ +- **শিডিউলিং ও ক্রন** — স্বয়ংক্রিয় এজেন্ট টাস্কের জন্য `at`, `every`, এবং ক্রন এক্সপ্রেশন, লেন-ভিত্তিক কনকারেন্সি সহ +- **পর্যবেক্ষণযোগ্যতা** — স্প্যান এবং প্রম্পট ক্যাশ মেট্রিক্স সহ বিল্ট-ইন LLM কল ট্রেসিং, ঐচ্ছিক OpenTelemetry OTLP এক্সপোর্ট + +## Claw ইকোসিস্টেম + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| ভাষা | TypeScript | Rust | Go | **Go** | +| বাইনারি সাইজ | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (বেস) / **~36 MB** (+ OTel) | +| Docker ইমেজ | — | — | — | **~50 MB** (Alpine) | +| RAM (আইডল) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| স্টার্টআপ | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| লক্ষ্য হার্ডওয়্যার | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| ফিচার | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| মাল্টি-টেন্যান্ট (PostgreSQL) | — | — | — | ✅ | +| MCP ইন্টিগ্রেশন | — (ACP ব্যবহার করে) | — | — | ✅ (stdio/SSE/streamable-http) | +| এজেন্ট টিম | — | — | — | ✅ টাস্ক বোর্ড + মেলবক্স | +| নিরাপত্তা হার্ডেনিং | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | বেসিক (workspace restrict, exec deny) | ✅ ৫-স্তরের প্রতিরক্ষা | +| OTel পর্যবেক্ষণযোগ্যতা | ✅ (opt-in extension) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| প্রম্পট ক্যাশিং | — | — | — | ✅ Anthropic + OpenAI-compat | +| নলেজ গ্রাফ | — | — | — | ✅ LLM এক্সট্রাকশন + ট্র্যাভার্সাল | +| স্কিল সিস্টেম | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ বেসিক | ✅ BM25 + pgvector হাইব্রিড | +| লেন-ভিত্তিক শিডিউলার | ✅ | বাউন্ডেড কনকারেন্সি | — | ✅ (main/subagent/team/cron) | +| মেসেজিং চ্যানেল | ৩৭+ | ১৫+ | ১০+ | ৭+ | +| কম্প্যানিয়ন অ্যাপ | macOS, iOS, Android | Python SDK | — | ওয়েব ড্যাশবোর্ড | +| লাইভ ক্যানভাস / ভয়েস | ✅ (A2UI + TTS/STT) | — | ভয়েস ট্রান্সক্রিপশন | TTS (৪ প্রদানকারী) | +| LLM প্রদানকারী | ১০+ | ৮ নেটিভ + ২৯ কম্প্যাট | ১৩+ | **২০+** | +| প্রতি-ব্যবহারকারী ওয়ার্কস্পেস | ✅ (ফাইল-ভিত্তিক) | — | — | ✅ (PostgreSQL) | +| এনক্রিপ্টেড সিক্রেট | — (শুধুমাত্র env vars) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM in DB | + +## আর্কিটেকচার + +

+ GoClaw Architecture +

+ +## দ্রুত শুরু + +**পূর্বশর্ত:** Go 1.26+, pgvector সহ PostgreSQL 18, Docker (ঐচ্ছিক) + +### সোর্স থেকে + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Docker-এর সাথে + +```bash +# Generate .env with auto-generated secrets +chmod +x prepare-env.sh && ./prepare-env.sh + +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +`GOCLAW_*_API_KEY` এনভায়রনমেন্ট ভেরিয়েবল সেট করা থাকলে, গেটওয়ে ইন্টারেক্টিভ প্রম্পট ছাড়াই স্বয়ংক্রিয়ভাবে অনবোর্ড হয় — প্রদানকারী সনাক্ত করে, মাইগ্রেশন চালায়, এবং ডিফল্ট ডেটা সিড করে। + +> বিল্ড ভেরিয়েন্ট (OTel, Tailscale, Redis), Docker ইমেজ ট্যাগ এবং কম্পোজ ওভারলের জন্য, [ডেপ্লয়মেন্ট গাইড](https://docs.goclaw.sh/#deploy-docker-compose) দেখুন। + +## মাল্টি-এজেন্ট অর্কেস্ট্রেশন + +GoClaw এজেন্ট টিম এবং ইন্টার-এজেন্ট ডেলিগেশন সাপোর্ট করে — প্রতিটি এজেন্ট তার নিজস্ব পরিচয়, টুলস, LLM প্রদানকারী এবং কনটেক্সট ফাইল নিয়ে চলে। + +### এজেন্ট ডেলিগেশন + +

+ Agent Delegation +

+ +| মোড | কীভাবে কাজ করে | কোন ক্ষেত্রে সেরা | +|------|-------------|----------| +| **Sync** | এজেন্ট A, এজেন্ট B-কে জিজ্ঞেস করে এবং উত্তরের জন্য **অপেক্ষা করে** | দ্রুত লুকআপ, তথ্য যাচাই | +| **Async** | এজেন্ট A, এজেন্ট B-কে জিজ্ঞেস করে এবং **এগিয়ে যায়**। B পরে ঘোষণা করে | দীর্ঘ কাজ, রিপোর্ট, গভীর বিশ্লেষণ | + +এজেন্টরা দিকনির্দেশ নিয়ন্ত্রণ (`outbound`, `inbound`, `bidirectional`) এবং প্রতি-লিংক ও প্রতি-এজেন্ট স্তরে কনকারেন্সি সীমা সহ স্পষ্ট **অনুমতি লিংক**-এর মাধ্যমে যোগাযোগ করে। + +### এজেন্ট টিম + +

+ Agent Teams Workflow +

+ +- **শেয়ারড টাস্ক বোর্ড** — `blocked_by` ডিপেন্ডেন্সি সহ টাস্ক তৈরি, দাবি, সম্পন্ন ও অনুসন্ধান করুন +- **টিম মেলবক্স** — ডাইরেক্ট পিয়ার-টু-পিয়ার মেসেজিং এবং ব্রডকাস্ট +- **টুলস**: টাস্ক ম্যানেজমেন্টের জন্য `team_tasks`, মেলবক্সের জন্য `team_message` + +> ডেলিগেশনের বিস্তারিত, অনুমতি লিংক এবং কনকারেন্সি নিয়ন্ত্রণের জন্য, [এজেন্ট টিম ডকস](https://docs.goclaw.sh/#teams-what-are-teams) দেখুন। + +## বিল্ট-ইন টুলস + +| টুল | গ্রুপ | বিবরণ | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | ফাইলের বিষয়বস্তু পড়ুন (ভার্চুয়াল FS রাউটিং সহ) | +| `write_file` | fs | ফাইল লিখুন/তৈরি করুন | +| `edit_file` | fs | বিদ্যমান ফাইলে লক্ষ্যভিত্তিক সম্পাদনা প্রয়োগ করুন | +| `list_files` | fs | ডিরেক্টরির বিষয়বস্তু তালিকাভুক্ত করুন | +| `search` | fs | প্যাটার্ন অনুযায়ী ফাইলের বিষয়বস্তু অনুসন্ধান করুন | +| `glob` | fs | glob প্যাটার্ন দ্বারা ফাইল খুঁজুন | +| `exec` | runtime | শেল কমান্ড চালান (অনুমোদন ওয়ার্কফ্লো সহ) | +| `web_search` | web | ওয়েব অনুসন্ধান করুন (Brave, DuckDuckGo) | +| `web_fetch` | web | ওয়েব কনটেন্ট ফেচ ও পার্স করুন | +| `memory_search` | memory | দীর্ঘমেয়াদী মেমরি অনুসন্ধান করুন (FTS + vector) | +| `memory_get` | memory | মেমরি এন্ট্রি পুনরুদ্ধার করুন | +| `skill_search` | — | স্কিল অনুসন্ধান করুন (BM25 + embedding হাইব্রিড) | +| `knowledge_graph_search` | memory | এন্টিটি অনুসন্ধান করুন এবং নলেজ গ্রাফ সম্পর্ক ট্র্যাভার্স করুন | +| `create_image` | media | ছবি তৈরি (DashScope, MiniMax) | +| `create_audio` | media | অডিও তৈরি (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | ভিডিও তৈরি (MiniMax, Veo) | +| `read_document` | media | ডকুমেন্ট পড়া (Gemini File API, প্রদানকারী চেইন) | +| `read_image` | media | ছবি বিশ্লেষণ | +| `read_audio` | media | অডিও ট্রান্সক্রিপশন ও বিশ্লেষণ | +| `read_video` | media | ভিডিও বিশ্লেষণ | +| `message` | messaging | চ্যানেলে বার্তা পাঠান | +| `tts` | — | Text-to-Speech সংশ্লেষণ | +| `spawn` | — | একটি সাবএজেন্ট স্পন করুন | +| `subagents` | sessions | চলমান সাবএজেন্ট নিয়ন্ত্রণ করুন | +| `team_tasks` | teams | শেয়ারড টাস্ক বোর্ড (তালিকা, তৈরি, দাবি, সম্পন্ন, অনুসন্ধান) | +| `team_message` | teams | টিম মেলবক্স (পাঠান, ব্রডকাস্ট, পড়ুন) | +| `sessions_list` | sessions | সক্রিয় সেশনের তালিকা | +| `sessions_history` | sessions | সেশন ইতিহাস দেখুন | +| `sessions_send` | sessions | একটি সেশনে বার্তা পাঠান | +| `sessions_spawn` | sessions | একটি নতুন সেশন স্পন করুন | +| `session_status` | sessions | সেশনের অবস্থা পরীক্ষা করুন | +| `cron` | automation | ক্রন জব শিডিউল ও পরিচালনা করুন | +| `gateway` | automation | গেটওয়ে প্রশাসন | +| `browser` | ui | ব্রাউজার অটোমেশন (navigate, click, type, screenshot) | +| `announce_queue` | automation | অ্যাসিঙ্ক ফলাফল ঘোষণা (অ্যাসিঙ্ক ডেলিগেশনের জন্য) | + +## ডকুমেন্টেশন + +সম্পূর্ণ ডকুমেন্টেশন **[docs.goclaw.sh](https://docs.goclaw.sh)**-এ পাওয়া যাবে — অথবা [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs)-এ সোর্স ব্রাউজ করুন। + +| বিভাগ | বিষয়বস্তু | +|---------|--------| +| [শুরু করা](https://docs.goclaw.sh/#what-is-goclaw) | ইনস্টলেশন, দ্রুত শুরু, কনফিগারেশন, ওয়েব ড্যাশবোর্ড ট্যুর | +| [মূল ধারণাসমূহ](https://docs.goclaw.sh/#how-goclaw-works) | এজেন্ট লুপ, সেশন, টুলস, মেমরি, মাল্টি-টেন্যান্সি | +| [এজেন্ট](https://docs.goclaw.sh/#creating-agents) | এজেন্ট তৈরি, কনটেক্সট ফাইল, ব্যক্তিত্ব, শেয়ারিং ও অ্যাক্সেস | +| [প্রদানকারী](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +১৫ আরও | +| [চ্যানেল](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [এজেন্ট টিম](https://docs.goclaw.sh/#teams-what-are-teams) | টিম, টাস্ক বোর্ড, মেসেজিং, ডেলিগেশন ও হ্যান্ডঅফ | +| [উন্নত](https://docs.goclaw.sh/#custom-tools) | কাস্টম টুলস, MCP, স্কিল, ক্রন, স্যান্ডবক্স, হুকস, RBAC | +| [ডেপ্লয়মেন্ট](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, ডেটাবেস, নিরাপত্তা, পর্যবেক্ষণযোগ্যতা, Tailscale | +| [রেফারেন্স](https://docs.goclaw.sh/#cli-commands) | CLI কমান্ড, REST API, WebSocket প্রোটোকল, এনভায়রনমেন্ট ভেরিয়েবল | + +## পরীক্ষা + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) +``` + +## প্রকল্পের অবস্থা + +বিস্তারিত ফিচার স্ট্যাটাসের জন্য [CHANGELOG.md](CHANGELOG.md) দেখুন — প্রোডাকশনে কী পরীক্ষিত হয়েছে এবং কী এখনও চলমান তা সহ। + +## কৃতজ্ঞতা + +GoClaw মূল [OpenClaw](https://github.com/openclaw/openclaw) প্রকল্পের উপর ভিত্তি করে তৈরি। এই Go পোর্টকে অনুপ্রাণিত করা আর্কিটেকচার ও দৃষ্টিভঙ্গির জন্য আমরা কৃতজ্ঞ। + +## লাইসেন্স + +MIT diff --git a/_readmes/README.cs.md b/_readmes/README.cs.md new file mode 100644 index 000000000..9ecb90dfb --- /dev/null +++ b/_readmes/README.cs.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentace • + Rychlý start • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** je multi-agentní AI gateway, která propojuje LLM s vašimi nástroji, kanály a daty — nasazena jako jediný Go binární soubor bez runtime závislostí. Orchestruje týmy agentů a delegování mezi agenty napříč 20+ poskytovateli LLM s plnou multi-tenant izolací. + +Go port projektu [OpenClaw](https://github.com/openclaw/openclaw) s vylepšeným zabezpečením, multi-tenant PostgreSQL a produkční pozorovatelností. + +🌐 **Jazyky:** +[🇺🇸 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) + +## Co ho odlišuje + +- **Týmy agentů a orchestrace** — Týmy se sdílenými nástěnkami úkolů, delegováním mezi agenty (synchronní/asynchronní) a hybridním vyhledáváním agentů +- **Multi-tenant PostgreSQL** — Pracovní prostory pro každého uživatele, kontextové soubory pro každého uživatele, šifrované API klíče (AES-256-GCM), izolované relace +- **Jediný binární soubor** — ~25 MB statický Go binární soubor, bez Node.js runtime, <1 s spuštění, běží na VPS za $5 +- **Produkční bezpečnost** — 5vrstvý systém oprávnění (autentizace gateway → globální politika nástrojů → na agenta → na kanál → pouze vlastník) plus omezení rychlosti, detekce injekce promptů, ochrana SSRF, vzory zamítnutí shellu a šifrování AES-256-GCM +- **20+ poskytovatelů LLM** — Anthropic (nativní HTTP+SSE s cachováním promptů), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP a libovolný OpenAI-kompatibilní endpoint +- **7 komunikačních kanálů** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Režim myšlení pro každého poskytovatele (Anthropic tokeny rozpočtu, OpenAI effort uvažování, DashScope rozpočet myšlení) s podporou streamování +- **Heartbeat** — Pravidelné kontroly agentů prostřednictvím kontrolních seznamů HEARTBEAT.md s potlačením při OK, aktivními hodinami, logikou opakování a doručením do kanálu +- **Plánování a Cron** — Výrazy `at`, `every` a cron pro automatizované úlohy agentů s souběžností na základě pruhů +- **Pozorovatelnost** — Vestavěné trasování volání LLM se spany a metrikami cache promptů, volitelný export OpenTelemetry OTLP + +## Ekosystém Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Jazyk | TypeScript | Rust | Go | **Go** | +| Velikost binárního souboru | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (základ) / **~36 MB** (+ OTel) | +| Docker image | — | — | — | **~50 MB** (Alpine) | +| RAM (nečinnost) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Spuštění | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Cílový hardware | Mac Mini od $599+ | edge za $10 | edge za $10 | **VPS od $5+** | + +| Funkce | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Integrace MCP | — (používá ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Týmy agentů | — | — | — | ✅ Nástěnka úkolů + schránka | +| Posílení bezpečnosti | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, omezení rychlosti, injection, párování) | Základní (omezení workspace, zamítnutí exec) | ✅ 5vrstvá obrana | +| Pozorovatelnost OTel | ✅ (volitelné rozšíření) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (volitelný build tag) | +| Cachování promptů | — | — | — | ✅ Anthropic + OpenAI-compat | +| Znalostní graf | — | — | — | ✅ Extrakce LLM + procházení | +| Systém dovedností | ✅ Embeddings/sémantické | ✅ SKILL.md + TOML | ✅ Základní | ✅ BM25 + pgvector hybrid | +| Plánovač na základě pruhů | ✅ | Omezená souběžnost | — | ✅ (main/subagent/team/cron) | +| Komunikační kanály | 37+ | 15+ | 10+ | 7+ | +| Doprovodné aplikace | macOS, iOS, Android | Python SDK | — | Webový dashboard | +| Live Canvas / Hlas | ✅ (A2UI + TTS/STT) | — | Přepis hlasu | TTS (4 poskytovatelé) | +| Poskytovatelé LLM | 10+ | 8 nativních + 29 compat | 13+ | **20+** | +| Pracovní prostory na uživatele | ✅ (souborové) | — | — | ✅ (PostgreSQL) | +| Šifrovaná tajemství | — (pouze env proměnné) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM v DB | + +## Architektura + +

+ GoClaw Architecture +

+ +## Rychlý start + +**Předpoklady:** Go 1.26+, PostgreSQL 18 s pgvector, Docker (volitelně) + +### Ze zdrojového kódu + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktivní průvodce nastavením +source .env.local && ./goclaw +``` + +### S Docker + +```bash +# Vygenerovat .env s automaticky generovanými tajemstvími +chmod +x prepare-env.sh && ./prepare-env.sh + +# Přidat alespoň jeden GOCLAW_*_API_KEY do .env, poté: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Webový dashboard na http://localhost:3000 +# Kontrola stavu: curl http://localhost:18790/health +``` + +Pokud jsou nastaveny proměnné prostředí `GOCLAW_*_API_KEY`, gateway se automaticky inicializuje bez interaktivních výzev — detekuje poskytovatele, spustí migrace a naplní výchozí data. + +> Pro varianty sestavení (OTel, Tailscale, Redis), tagy Docker image a překrytí compose viz [Průvodce nasazením](https://docs.goclaw.sh/#deploy-docker-compose). + +## Multi-agentní orchestrace + +GoClaw podporuje týmy agentů a delegování mezi agenty — každý agent běží s vlastní identitou, nástroji, poskytovatelem LLM a kontextovými soubory. + +### Delegování agentů + +

+ Agent Delegation +

+ +| Režim | Jak funguje | Nejvhodnejší pro | +|-------|-------------|------------------| +| **Synchronní** | Agent A se zeptá Agenta B a **čeká** na odpověď | Rychlé vyhledávání, ověření faktů | +| **Asynchronní** | Agent A se zeptá Agenta B a **pokračuje dál**. B oznámí výsledek později | Dlouhé úkoly, zprávy, hloubková analýza | + +Agenti komunikují prostřednictvím explicitních **odkazů oprávnění** s řízením směru (`outbound`, `inbound`, `bidirectional`) a limity souběžnosti na úrovni odkazu i agenta. + +### Týmy agentů + +

+ Agent Teams Workflow +

+ +- **Sdílená nástěnka úkolů** — Vytváření, přiřazování, dokončování a vyhledávání úkolů se závislostmi `blocked_by` +- **Týmová schránka** — Přímé zprávy mezi peer agenty a broadcasty +- **Nástroje**: `team_tasks` pro správu úkolů, `team_message` pro schránku + +> Podrobnosti o delegování, odkazech oprávnění a řízení souběžnosti viz [dokumentace Týmů agentů](https://docs.goclaw.sh/#teams-what-are-teams). + +## Vestavěné nástroje + +| Nástroj | Skupina | Popis | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Čtení obsahu souborů (s virtuálním FS routingem) | +| `write_file` | fs | Zápis/vytváření souborů | +| `edit_file` | fs | Cílené úpravy existujících souborů | +| `list_files` | fs | Výpis obsahu adresáře | +| `search` | fs | Vyhledávání obsahu souborů podle vzoru | +| `glob` | fs | Vyhledávání souborů podle glob vzoru | +| `exec` | runtime | Spouštění příkazů shellu (s workflow schválení) | +| `web_search` | web | Vyhledávání na webu (Brave, DuckDuckGo) | +| `web_fetch` | web | Stahování a parsování webového obsahu | +| `memory_search` | memory | Vyhledávání v dlouhodobé paměti (FTS + vector) | +| `memory_get` | memory | Načítání záznamů paměti | +| `skill_search` | — | Vyhledávání dovedností (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | Vyhledávání entit a procházení vztahů ve znalostním grafu | +| `create_image` | media | Generování obrázků (DashScope, MiniMax) | +| `create_audio` | media | Generování zvuku (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Generování videa (MiniMax, Veo) | +| `read_document` | media | Čtení dokumentů (Gemini File API, řetěz poskytovatelů) | +| `read_image` | media | Analýza obrázků | +| `read_audio` | media | Přepis a analýza zvuku | +| `read_video` | media | Analýza videa | +| `message` | messaging | Odesílání zpráv do kanálů | +| `tts` | — | Syntéza textu na řeč | +| `spawn` | — | Spuštění subagenta | +| `subagents` | sessions | Řízení běžících subagentů | +| `team_tasks` | teams | Sdílená nástěnka úkolů (seznam, vytvoření, přiřazení, dokončení, vyhledávání) | +| `team_message` | teams | Týmová schránka (odeslání, broadcast, čtení) | +| `sessions_list` | sessions | Výpis aktivních relací | +| `sessions_history` | sessions | Zobrazení historie relací | +| `sessions_send` | sessions | Odeslání zprávy do relace | +| `sessions_spawn` | sessions | Spuštění nové relace | +| `session_status` | sessions | Kontrola stavu relace | +| `cron` | automation | Plánování a správa cron úloh | +| `gateway` | automation | Správa gateway | +| `browser` | ui | Automatizace prohlížeče (navigace, klikání, psaní, screenshot) | +| `announce_queue` | automation | Oznámení asynchronních výsledků (pro asynchronní delegování) | + +## Dokumentace + +Úplná dokumentace na **[docs.goclaw.sh](https://docs.goclaw.sh)** — nebo procházejte zdroj v [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sekce | Témata | +|-------|--------| +| [Začínáme](https://docs.goclaw.sh/#what-is-goclaw) | Instalace, Rychlý start, Konfigurace, Prohlídka webového dashboardu | +| [Základní koncepty](https://docs.goclaw.sh/#how-goclaw-works) | Smyčka agenta, Relace, Nástroje, Paměť, Multi-tenancy | +| [Agenti](https://docs.goclaw.sh/#creating-agents) | Vytváření agentů, Kontextové soubory, Osobnost, Sdílení a přístup | +| [Poskytovatelé](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 dalších | +| [Kanály](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Týmy agentů](https://docs.goclaw.sh/#teams-what-are-teams) | Týmy, Nástěnka úkolů, Zasílání zpráv, Delegování a předání | +| [Pokročilé](https://docs.goclaw.sh/#custom-tools) | Vlastní nástroje, MCP, Dovednosti, Cron, Sandbox, Háky, RBAC | +| [Nasazení](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Databáze, Bezpečnost, Pozorovatelnost, Tailscale | +| [Reference](https://docs.goclaw.sh/#cli-commands) | Příkazy CLI, REST API, WebSocket protokol, Proměnné prostředí | + +## Testování + +```bash +go test ./... # Jednotkové testy +go test -v ./tests/integration/ -timeout 120s # Integrační testy (vyžaduje běžící gateway) +``` + +## Stav projektu + +Podrobný stav funkcí včetně toho, co bylo otestováno v produkci a co je stále ve vývoji, viz [CHANGELOG.md](CHANGELOG.md). + +## Poděkování + +GoClaw je postaven na původním projektu [OpenClaw](https://github.com/openclaw/openclaw). Jsme vděčni za architekturu a vizi, která inspirovala tento Go port. + +## Licence + +MIT diff --git a/_readmes/README.da.md b/_readmes/README.da.md new file mode 100644 index 000000000..4fcf13247 --- /dev/null +++ b/_readmes/README.da.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentation • + Hurtig Start • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** er en multi-agent AI-gateway, der forbinder LLM'er til dine værktøjer, kanaler og data — deployeret som en enkelt Go-binær uden runtime-afhængigheder. Den orkestrerer agent-teams og inter-agent-delegering på tværs af 20+ LLM-udbydere med fuld multi-tenant-isolation. + +En Go-port af [OpenClaw](https://github.com/openclaw/openclaw) med forbedret sikkerhed, multi-tenant PostgreSQL og produktionsklar observabilitet. + +🌐 **Sprog:** +[🇺🇸 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) + +## Hvad Gør Det Anderledes + +- **Agent-teams og orkestrering** — Teams med delte opgavetavler, inter-agent-delegering (synkron/asynkron) og hybrid agent-opdagelse +- **Multi-tenant PostgreSQL** — Per-bruger arbejdsrum, per-bruger kontekstfiler, krypterede API-nøgler (AES-256-GCM), isolerede sessioner +- **Enkelt binær** — ~25 MB statisk Go-binær, ingen Node.js-runtime, <1s opstartstid, kører på en $5 VPS +- **Produktionssikkerhed** — 5-lags tilladelsessystem (gateway-godkendelse → global værktøjspolitik → per-agent → per-kanal → kun ejere) plus hastighedsbegrænsning, prompt-injektionsdetektering, SSRF-beskyttelse, shell-nægtelsesmønstre og AES-256-GCM-kryptering +- **20+ LLM-udbydere** — Anthropic (native HTTP+SSE med prompt-caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP og ethvert OpenAI-kompatibelt endpoint +- **7 beskedkanaler** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Per-udbyder tænkningstilstand (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) med streaming-understøttelse +- **Heartbeat** — Periodiske agent-check-ins via HEARTBEAT.md-tjeklister med undertrykkelse-ved-OK, aktive timer, genforsøgslogik og kanal-levering +- **Planlægning og Cron** — `at`, `every` og cron-udtryk til automatiserede agentopgaver med bane-baseret samtidighed +- **Observabilitet** — Indbygget LLM-opkaldssporing med spans og prompt-cache-metrikker, valgfri OpenTelemetry OTLP-eksport + +## Claw-økosystemet + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Sprog | TypeScript | Rust | Go | **Go** | +| Binær størrelse | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (basis) / **~36 MB** (+ OTel) | +| Docker-image | — | — | — | **~50 MB** (Alpine) | +| RAM (inaktiv) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Opstart | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Målhardware | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Funktion | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| MCP-integration | — (bruger ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agent-teams | — | — | — | ✅ Opgavetavle + postkasse | +| Sikkerhedshærdning | ✅ (SSRF, stiovergang, injektion) | ✅ (sandkasse, hastighedsbegrænsning, injektion, parring) | Grundlæggende (arbejdsrum-begrænsning, exec-nægtelse) | ✅ 5-lags forsvar | +| OTel-observabilitet | ✅ (opt-in udvidelse) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| Prompt-caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Videngraf | — | — | — | ✅ LLM-udtrækning + gennemgang | +| Skill-system | ✅ Embeddings/semantisk | ✅ SKILL.md + TOML | ✅ Grundlæggende | ✅ BM25 + pgvector hybrid | +| Bane-baseret planlægger | ✅ | Begrænset samtidighed | — | ✅ (main/subagent/team/cron) | +| Beskedkanaler | 37+ | 15+ | 10+ | 7+ | +| Ledsager-apps | macOS, iOS, Android | Python SDK | — | Web-dashboard | +| Live Canvas / Voice | ✅ (A2UI + TTS/STT) | — | Stemmeskrivning | TTS (4 udbydere) | +| LLM-udbydere | 10+ | 8 native + 29 compat | 13+ | **20+** | +| Per-bruger arbejdsrum | ✅ (filbaseret) | — | — | ✅ (PostgreSQL) | +| Krypterede hemmeligheder | — (kun env-variabler) | ✅ ChaCha20-Poly1305 | — (klartekst JSON) | ✅ AES-256-GCM i DB | + +## Arkitektur + +

+ GoClaw Architecture +

+ +## Hurtig Start + +**Forudsætninger:** Go 1.26+, PostgreSQL 18 med pgvector, Docker (valgfrit) + +### Fra Kildekode + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktiv opsætningsguide +source .env.local && ./goclaw +``` + +### Med Docker + +```bash +# Generer .env med auto-genererede hemmeligheder +chmod +x prepare-env.sh && ./prepare-env.sh + +# Tilføj mindst én GOCLAW_*_API_KEY til .env, derefter: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard på http://localhost:3000 +# Sundhedstjek: curl http://localhost:18790/health +``` + +Når `GOCLAW_*_API_KEY`-miljøvariabler er sat, onboarder gatewayen automatisk uden interaktive prompter — registrerer udbyder, kører migrationer og seeder standarddata. + +> For build-varianter (OTel, Tailscale, Redis), Docker-image-tags og compose-overlays, se [Deployeringsguide](https://docs.goclaw.sh/#deploy-docker-compose). + +## Multi-Agent-orkestrering + +GoClaw understøtter agent-teams og inter-agent-delegering — hver agent kører med sin egen identitet, værktøjer, LLM-udbyder og kontekstfiler. + +### Agent-delegering + +

+ Agent Delegation +

+ +| Tilstand | Sådan fungerer det | Bedst til | +|----------|--------------------|-----------| +| **Synkron** | Agent A spørger Agent B og **venter** på svaret | Hurtige opslag, faktakontrol | +| **Asynkron** | Agent A spørger Agent B og **fortsætter**. B annoncerer senere | Lange opgaver, rapporter, dybdegående analyse | + +Agenter kommunikerer via eksplicitte **tilladelseslinks** med retningskontrol (`outbound`, `inbound`, `bidirectional`) og samtidige begrænsninger på både per-link- og per-agent-niveau. + +### Agent-teams + +

+ Agent Teams Workflow +

+ +- **Delt opgavetavle** — Opret, påkræv, afslut og søg opgaver med `blocked_by`-afhængigheder +- **Team-postkasse** — Direkte peer-to-peer-beskeder og broadcasts +- **Værktøjer**: `team_tasks` til opgavestyring, `team_message` til postkassen + +> For delegationsdetaljer, tilladelseslinks og samtidige begrænsninger, se [Agent Teams-dokumentationen](https://docs.goclaw.sh/#teams-what-are-teams). + +## Indbyggede Værktøjer + +| Værktøj | Gruppe | Beskrivelse | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Læs filindhold (med virtuel FS-routing) | +| `write_file` | fs | Skriv/opret filer | +| `edit_file` | fs | Anvend målrettede redigeringer på eksisterende filer | +| `list_files` | fs | Vis mappeindhold | +| `search` | fs | Søg filindhold efter mønster | +| `glob` | fs | Find filer med glob-mønster | +| `exec` | runtime | Udfør shell-kommandoer (med godkendelsesworkflow) | +| `web_search` | web | Søg på nettet (Brave, DuckDuckGo) | +| `web_fetch` | web | Hent og fortolk webindhold | +| `memory_search` | memory | Søg i langtidshukommelse (FTS + vector) | +| `memory_get` | memory | Hent hukommelsesposter | +| `skill_search` | — | Søg skills (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | Søg entiteter og gennemgå videngraf-relationer | +| `create_image` | media | Billedgenerering (DashScope, MiniMax) | +| `create_audio` | media | Lydgenerering (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Videogenerering (MiniMax, Veo) | +| `read_document` | media | Dokumentlæsning (Gemini File API, udbyderchain) | +| `read_image` | media | Billedanalyse | +| `read_audio` | media | Lydtransskription og -analyse | +| `read_video` | media | Videoanalyse | +| `message` | messaging | Send beskeder til kanaler | +| `tts` | — | Text-to-Speech-syntese | +| `spawn` | — | Opret en subagent | +| `subagents` | sessions | Styr kørende subagenter | +| `team_tasks` | teams | Delt opgavetavle (vis, opret, påkræv, afslut, søg) | +| `team_message` | teams | Team-postkasse (send, broadcast, læs) | +| `sessions_list` | sessions | Vis aktive sessioner | +| `sessions_history` | sessions | Vis sessionshistorik | +| `sessions_send` | sessions | Send besked til en session | +| `sessions_spawn` | sessions | Opret en ny session | +| `session_status` | sessions | Tjek sessionsstatus | +| `cron` | automation | Planlæg og administrer cron-job | +| `gateway` | automation | Gateway-administration | +| `browser` | ui | Browser-automatisering (naviger, klik, skriv, skærmbillede) | +| `announce_queue` | automation | Asynkron resultatannoncering (til asynkrone delegeringer) | + +## Dokumentation + +Fuld dokumentation på **[docs.goclaw.sh](https://docs.goclaw.sh)** — eller gennemse kilden i [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sektion | Emner | +|---------|-------| +| [Kom i gang](https://docs.goclaw.sh/#what-is-goclaw) | Installation, Hurtig Start, Konfiguration, Web Dashboard-rundvisning | +| [Kernebegreber](https://docs.goclaw.sh/#how-goclaw-works) | Agent Loop, Sessioner, Værktøjer, Hukommelse, Multi-Tenancy | +| [Agenter](https://docs.goclaw.sh/#creating-agents) | Opret agenter, Kontekstfiler, Personlighed, Deling og adgang | +| [Udbydere](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 flere | +| [Kanaler](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agent-teams](https://docs.goclaw.sh/#teams-what-are-teams) | Teams, Opgavetavle, Beskeder, Delegering og overdragelse | +| [Avanceret](https://docs.goclaw.sh/#custom-tools) | Brugerdefinerede værktøjer, MCP, Skills, Cron, Sandkasse, Hooks, RBAC | +| [Deployering](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Sikkerhed, Observabilitet, Tailscale | +| [Reference](https://docs.goclaw.sh/#cli-commands) | CLI-kommandoer, REST API, WebSocket-protokol, Miljøvariabler | + +## Test + +```bash +go test ./... # Enhedstests +go test -v ./tests/integration/ -timeout 120s # Integrationstests (kræver kørende gateway) +``` + +## Projektstatus + +Se [CHANGELOG.md](CHANGELOG.md) for detaljeret funktionsstatus, herunder hvad der er testet i produktion, og hvad der stadig er under udvikling. + +## Anerkendelser + +GoClaw er bygget på det originale [OpenClaw](https://github.com/openclaw/openclaw)-projekt. Vi er taknemmelige for den arkitektur og vision, der inspirerede denne Go-port. + +## Licens + +MIT diff --git a/_readmes/README.de.md b/_readmes/README.de.md new file mode 100644 index 000000000..941c4c5ef --- /dev/null +++ b/_readmes/README.de.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Dokumentation • + Schnellstart • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** ist ein Multi-Agenten-KI-Gateway, das LLMs mit Ihren Tools, Kanälen und Daten verbindet — als einzelne Go-Binary ohne Laufzeitabhängigkeiten bereitgestellt. Es orchestriert Agenten-Teams und agenten-übergreifende Delegation über 20+ LLM-Anbieter mit vollständiger Mandantenisolierung. + +Ein Go-Port von [OpenClaw](https://github.com/openclaw/openclaw) mit verbesserter Sicherheit, mandantenfähigem PostgreSQL und produktionsreifer Beobachtbarkeit. + +🌐 **Sprachen:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## Was es besonders macht + +- **Agenten-Teams & Orchestrierung** — Teams mit gemeinsamen Aufgaben-Boards, agenten-übergreifender Delegation (synchron/asynchron) und hybrider Agenten-Erkennung +- **Mandantenfähiges PostgreSQL** — Arbeitsbereiche pro Benutzer, Kontextdateien pro Benutzer, verschlüsselte API-Schlüssel (AES-256-GCM), isolierte Sitzungen +- **Single Binary** — ~25 MB statische Go-Binary, kein Node.js-Laufzeit, <1s Startzeit, läuft auf einem $5-VPS +- **Produktionssicherheit** — 5-schichtiges Berechtigungssystem (Gateway-Auth → globale Tool-Richtlinie → pro Agent → pro Kanal → nur Eigentümer) plus Rate Limiting, Prompt-Injection-Erkennung, SSRF-Schutz, Shell-Verweigerungsmuster und AES-256-GCM-Verschlüsselung +- **20+ LLM-Anbieter** — Anthropic (natives HTTP+SSE mit Prompt-Caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP und jeder OpenAI-kompatible Endpunkt +- **7 Messaging-Kanäle** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Anbieter-spezifischer Denkmodus (Anthropic Budget-Tokens, OpenAI Reasoning Effort, DashScope Thinking Budget) mit Streaming-Unterstützung +- **Heartbeat** — Regelmäßige Agenten-Check-ins über HEARTBEAT.md-Checklisten mit Unterdrückung bei OK, aktiven Stunden, Wiederholungslogik und Kanal-Zustellung +- **Planung & Cron** — `at`-, `every`- und Cron-Ausdrücke für automatisierte Agenten-Aufgaben mit spurbasierter Nebenläufigkeit +- **Beobachtbarkeit** — Integriertes LLM-Aufruf-Tracing mit Spans und Prompt-Cache-Metriken, optionaler OpenTelemetry OTLP-Export + +## Das Claw-Ökosystem + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Sprache | TypeScript | Rust | Go | **Go** | +| Binary-Größe | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (Basis) / **~36 MB** (+ OTel) | +| Docker-Image | — | — | — | **~50 MB** (Alpine) | +| RAM (inaktiv) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Startzeit | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Zielhardware | $599+ Mac Mini | $10 Edge | $10 Edge | **$5 VPS+** | + +| Funktion | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Mandantenfähig (PostgreSQL)| — | — | — | ✅ | +| MCP-Integration | — (verwendet ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agenten-Teams | — | — | — | ✅ Task Board + Postfach | +| Sicherheitshärtung | ✅ (SSRF, Pfad-Traversal, Injection) | ✅ (Sandbox, Rate Limit, Injection, Pairing) | Grundlegend (Arbeitsbereich, Exec-Sperre) | ✅ 5-schichtige Verteidigung | +| OTel-Beobachtbarkeit | ✅ (optionale Erweiterung) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (optionaler Build-Tag) | +| Prompt-Caching | — | — | — | ✅ Anthropic + OpenAI-kompatibel | +| Wissensgraph | — | — | — | ✅ LLM-Extraktion + Traversierung | +| Skill-System | ✅ Embeddings/Semantisch | ✅ SKILL.md + TOML | ✅ Grundlegend | ✅ BM25 + pgvector Hybrid | +| Spurbasierter Scheduler | ✅ | Begrenzte Nebenläufigkeit | — | ✅ (main/subagent/team/cron) | +| Messaging-Kanäle | 37+ | 15+ | 10+ | 7+ | +| Begleit-Apps | macOS, iOS, Android | Python SDK | — | Web-Dashboard | +| Live Canvas / Sprache | ✅ (A2UI + TTS/STT) | — | Sprach-Transkription | TTS (4 Anbieter) | +| LLM-Anbieter | 10+ | 8 nativ + 29 kompatibel | 13+ | **20+** | +| Arbeitsbereiche pro Nutzer | ✅ (dateibasiert) | — | — | ✅ (PostgreSQL) | +| Verschlüsselte Geheimnisse | — (nur Umgebungsvariablen) | ✅ ChaCha20-Poly1305 | — (Klartext-JSON) | ✅ AES-256-GCM in DB | + +## Architektur + +

+ GoClaw Architecture +

+ +## Schnellstart + +**Voraussetzungen:** Go 1.26+, PostgreSQL 18 mit pgvector, Docker (optional) + +### Aus dem Quellcode + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktiver Einrichtungsassistent +source .env.local && ./goclaw +``` + +### Mit Docker + +```bash +# .env mit automatisch generierten Geheimnissen erstellen +chmod +x prepare-env.sh && ./prepare-env.sh + +# Mindestens einen GOCLAW_*_API_KEY in .env hinzufügen, dann: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web-Dashboard unter http://localhost:3000 +# Health-Check: curl http://localhost:18790/health +``` + +Wenn `GOCLAW_*_API_KEY`-Umgebungsvariablen gesetzt sind, führt das Gateway das Onboarding automatisch ohne interaktive Eingaben durch — erkennt den Anbieter, führt Migrationen aus und befüllt Standarddaten. + +> Für Build-Varianten (OTel, Tailscale, Redis), Docker-Image-Tags und Compose-Overlays, siehe den [Deployment-Leitfaden](https://docs.goclaw.sh/#deploy-docker-compose). + +## Multi-Agenten-Orchestrierung + +GoClaw unterstützt Agenten-Teams und agenten-übergreifende Delegation — jeder Agent läuft mit seiner eigenen Identität, Tools, LLM-Anbieter und Kontextdateien. + +### Agenten-Delegation + +

+ Agent Delegation +

+ +| Modus | Funktionsweise | Geeignet für | +|-------|----------------|--------------| +| **Synchron** | Agent A fragt Agent B und **wartet** auf die Antwort | Schnelle Abfragen, Faktenprüfungen | +| **Asynchron** | Agent A fragt Agent B und **macht weiter**. B kündigt das Ergebnis später an | Lange Aufgaben, Berichte, Tiefenanalysen | + +Agenten kommunizieren über explizite **Berechtigungslinks** mit Richtungssteuerung (`outbound`, `inbound`, `bidirectional`) und Nebenläufigkeitslimits auf Link- und Agenten-Ebene. + +### Agenten-Teams + +

+ Agent Teams Workflow +

+ +- **Gemeinsames Aufgaben-Board** — Aufgaben erstellen, beanspruchen, abschließen und durchsuchen mit `blocked_by`-Abhängigkeiten +- **Team-Postfach** — Direkte Peer-to-Peer-Nachrichten und Broadcasts +- **Tools**: `team_tasks` für Aufgabenverwaltung, `team_message` für das Postfach + +> Für Details zu Delegation, Berechtigungslinks und Nebenläufigkeitskontrolle, siehe die [Agenten-Teams-Dokumentation](https://docs.goclaw.sh/#teams-what-are-teams). + +## Integrierte Tools + +| Tool | Gruppe | Beschreibung | +| ------------------ | ------------- | ------------------------------------------------------------- | +| `read_file` | fs | Dateiinhalt lesen (mit virtuellem FS-Routing) | +| `write_file` | fs | Dateien schreiben/erstellen | +| `edit_file` | fs | Gezielte Bearbeitungen an vorhandenen Dateien vornehmen | +| `list_files` | fs | Verzeichnisinhalt auflisten | +| `search` | fs | Dateiinhalt nach Muster durchsuchen | +| `glob` | fs | Dateien nach Glob-Muster suchen | +| `exec` | runtime | Shell-Befehle ausführen (mit Genehmigungsworkflow) | +| `web_search` | web | Im Web suchen (Brave, DuckDuckGo) | +| `web_fetch` | web | Webinhalt abrufen und parsen | +| `memory_search` | memory | Langzeitgedächtnis durchsuchen (FTS + Vektor) | +| `memory_get` | memory | Gedächtniseinträge abrufen | +| `skill_search` | — | Skills durchsuchen (BM25 + Embedding-Hybrid) | +| `knowledge_graph_search` | memory | Entitäten suchen und Wissensgraph-Beziehungen traversieren | +| `create_image` | media | Bildgenerierung (DashScope, MiniMax) | +| `create_audio` | media | Audiogenerierung (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Videogenerierung (MiniMax, Veo) | +| `read_document` | media | Dokumente lesen (Gemini File API, Anbieter-Kette) | +| `read_image` | media | Bildanalyse | +| `read_audio` | media | Audio-Transkription und -Analyse | +| `read_video` | media | Videoanalyse | +| `message` | messaging | Nachrichten an Kanäle senden | +| `tts` | — | Text-to-Speech-Synthese | +| `spawn` | — | Einen Subagenten starten | +| `subagents` | sessions | Laufende Subagenten steuern | +| `team_tasks` | teams | Gemeinsames Aufgaben-Board (auflisten, erstellen, beanspruchen, abschließen, suchen) | +| `team_message` | teams | Team-Postfach (senden, broadcast, lesen) | +| `sessions_list` | sessions | Aktive Sitzungen auflisten | +| `sessions_history` | sessions | Sitzungsverlauf anzeigen | +| `sessions_send` | sessions | Nachricht an eine Sitzung senden | +| `sessions_spawn` | sessions | Eine neue Sitzung starten | +| `session_status` | sessions | Sitzungsstatus prüfen | +| `cron` | automation | Cron-Jobs planen und verwalten | +| `gateway` | automation | Gateway-Administration | +| `browser` | ui | Browser-Automatisierung (navigieren, klicken, tippen, Screenshot) | +| `announce_queue` | automation | Asynchrone Ergebnisankündigung (für asynchrone Delegationen) | + +## Dokumentation + +Vollständige Dokumentation unter **[docs.goclaw.sh](https://docs.goclaw.sh)** — oder den Quellcode unter [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) durchsuchen. + +| Abschnitt | Themen | +|-----------|--------| +| [Erste Schritte](https://docs.goclaw.sh/#what-is-goclaw) | Installation, Schnellstart, Konfiguration, Web-Dashboard-Tour | +| [Grundkonzepte](https://docs.goclaw.sh/#how-goclaw-works) | Agenten-Loop, Sitzungen, Tools, Gedächtnis, Mandantenfähigkeit | +| [Agenten](https://docs.goclaw.sh/#creating-agents) | Agenten erstellen, Kontextdateien, Persönlichkeit, Teilen & Zugriff | +| [Anbieter](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 weitere | +| [Kanäle](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agenten-Teams](https://docs.goclaw.sh/#teams-what-are-teams) | Teams, Aufgaben-Board, Messaging, Delegation & Übergabe | +| [Erweitert](https://docs.goclaw.sh/#custom-tools) | Benutzerdefinierte Tools, MCP, Skills, Cron, Sandbox, Hooks, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Datenbank, Sicherheit, Beobachtbarkeit, Tailscale | +| [Referenz](https://docs.goclaw.sh/#cli-commands) | CLI-Befehle, REST-API, WebSocket-Protokoll, Umgebungsvariablen | + +## Testen + +```bash +go test ./... # Unit-Tests +go test -v ./tests/integration/ -timeout 120s # Integrationstests (erfordert laufendes Gateway) +``` + +## Projektstatus + +Siehe [CHANGELOG.md](CHANGELOG.md) für detaillierten Funktionsstatus, einschließlich was in der Produktion getestet wurde und was noch in Bearbeitung ist. + +## Danksagungen + +GoClaw basiert auf dem ursprünglichen [OpenClaw](https://github.com/openclaw/openclaw)-Projekt. Wir sind dankbar für die Architektur und Vision, die diesen Go-Port inspiriert hat. + +## Lizenz + +MIT diff --git a/_readmes/README.el.md b/_readmes/README.el.md new file mode 100644 index 000000000..13744e371 --- /dev/null +++ b/_readmes/README.el.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Τεκμηρίωση • + Γρήγορη Εκκίνηση • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +Το **GoClaw** είναι μια πύλη AI πολλαπλών πρακτόρων που συνδέει τα LLM με τα εργαλεία, τα κανάλια και τα δεδομένα σας — αναπτύσσεται ως ένα μονό δυαδικό αρχείο Go χωρίς εξαρτήσεις χρόνου εκτέλεσης. Ενορχηστρώνει ομάδες πρακτόρων και ανάθεση μεταξύ πρακτόρων σε 20+ παρόχους LLM με πλήρη απομόνωση πολλαπλών μισθωτών. + +Μια μεταφορά σε Go του [OpenClaw](https://github.com/openclaw/openclaw) με ενισχυμένη ασφάλεια, PostgreSQL πολλαπλών μισθωτών και παρατηρησιμότητα παραγωγικού επιπέδου. + +🌐 **Γλώσσες:** +[🇺🇸 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) + +## Τι το Κάνει Διαφορετικό + +- **Ομάδες Πρακτόρων & Ενορχήστρωση** — Ομάδες με κοινόχρηστους πίνακες εργασιών, ανάθεση μεταξύ πρακτόρων (σύγχρονη/ασύγχρονη), και υβριδική ανακάλυψη πρακτόρων +- **PostgreSQL Πολλαπλών Μισθωτών** — Χώροι εργασίας ανά χρήστη, αρχεία περιβάλλοντος ανά χρήστη, κρυπτογραφημένα κλειδιά API (AES-256-GCM), απομονωμένες συνεδρίες +- **Μονό Δυαδικό Αρχείο** — ~25 MB στατικό δυαδικό αρχείο Go, χωρίς χρόνο εκτέλεσης Node.js, εκκίνηση <1s, τρέχει σε VPS $5 +- **Ασφάλεια Παραγωγικού Επιπέδου** — Σύστημα αδειών 5 επιπέδων (πιστοποίηση πύλης → παγκόσμια πολιτική εργαλείων → ανά πράκτορα → ανά κανάλι → μόνο ιδιοκτήτης) συν περιορισμό ρυθμού, ανίχνευση έγχυσης εντολών, προστασία SSRF, μοτίβα απόρριψης κελύφους, και κρυπτογράφηση AES-256-GCM +- **20+ Πάροχοι LLM** — Anthropic (εγγενές HTTP+SSE με προσωρινή αποθήκευση εντολών), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, και οποιοδήποτε συμβατό σημείο τελικό OpenAI +- **7 Κανάλια Ανταλλαγής Μηνυμάτων** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Λειτουργία σκέψης ανά πάροχο (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) με υποστήριξη ροής +- **Heartbeat** — Περιοδικές ενημερώσεις πρακτόρων μέσω λιστών ελέγχου HEARTBEAT.md με αναστολή-σε-OK, ενεργές ώρες, λογική επανάληψης, και παράδοση στο κανάλι +- **Χρονοδρομολόγηση & Cron** — Εκφράσεις `at`, `every`, και cron για αυτοματοποιημένες εργασίες πρακτόρων με ταυτόχρονη εκτέλεση βάσει λωρίδων +- **Παρατηρησιμότητα** — Ενσωματωμένη ανίχνευση κλήσεων LLM με χρονικά διαστήματα και μετρικές κρυφής μνήμης εντολών, προαιρετική εξαγωγή OpenTelemetry OTLP + +## Οικοσύστημα Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Γλώσσα | TypeScript | Rust | Go | **Go** | +| Μέγεθος δυαδικού | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (βάση) / **~36 MB** (+ OTel) | +| Docker image | — | — | — | **~50 MB** (Alpine) | +| RAM (αδρανές) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Εκκίνηση | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Στοχευόμενο υλικό | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Χαρακτηριστικό | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Πολλαπλοί μισθωτές (PostgreSQL) | — | — | — | ✅ | +| Ενσωμάτωση MCP | — (χρησιμοποιεί ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Ομάδες πρακτόρων | — | — | — | ✅ Task board + mailbox | +| Ενίσχυση ασφάλειας | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Βασική (workspace restrict, exec deny) | ✅ Άμυνα 5 επιπέδων | +| Παρατηρησιμότητα OTel | ✅ (προαιρετική επέκταση) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (προαιρετική ετικέτα κατασκευής) | +| Κρυφή μνήμη εντολών | — | — | — | ✅ Anthropic + OpenAI-compat | +| Γράφος γνώσης | — | — | — | ✅ Εξαγωγή LLM + διάσχιση | +| Σύστημα δεξιοτήτων | ✅ Embeddings/σημασιολογικό | ✅ SKILL.md + TOML | ✅ Βασικό | ✅ BM25 + pgvector υβριδικό | +| Χρονοδρομολογητής βάσει λωρίδων | ✅ | Περιορισμένη ταυτόχρονη εκτέλεση | — | ✅ (main/subagent/team/cron) | +| Κανάλια ανταλλαγής μηνυμάτων | 37+ | 15+ | 10+ | 7+ | +| Συνοδευτικές εφαρμογές | macOS, iOS, Android | Python SDK | — | Web dashboard | +| Live Canvas / Φωνή | ✅ (A2UI + TTS/STT) | — | Μεταγραφή φωνής | TTS (4 πάροχοι) | +| Πάροχοι LLM | 10+ | 8 εγγενείς + 29 συμβατοί | 13+ | **20+** | +| Χώροι εργασίας ανά χρήστη | ✅ (βάσει αρχείων) | — | — | ✅ (PostgreSQL) | +| Κρυπτογραφημένα μυστικά | — (μόνο μεταβλητές περιβάλλοντος) | ✅ ChaCha20-Poly1305 | — (απλό κείμενο JSON) | ✅ AES-256-GCM σε DB | + +## Αρχιτεκτονική + +

+ GoClaw Architecture +

+ +## Γρήγορη Εκκίνηση + +**Προαπαιτούμενα:** Go 1.26+, PostgreSQL 18 με pgvector, Docker (προαιρετικά) + +### Από Πηγαίο Κώδικα + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Με Docker + +```bash +# Generate .env with auto-generated secrets +chmod +x prepare-env.sh && ./prepare-env.sh + +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +Όταν ορίζονται μεταβλητές περιβάλλοντος `GOCLAW_*_API_KEY`, η πύλη ενσωματώνεται αυτόματα χωρίς διαδραστικές ερωτήσεις — ανιχνεύει τον πάροχο, εκτελεί μεταναστεύσεις, και εισάγει προεπιλεγμένα δεδομένα. + +> Για παραλλαγές κατασκευής (OTel, Tailscale, Redis), ετικέτες Docker image, και επικαλύψεις compose, δείτε τον [Οδηγό Ανάπτυξης](https://docs.goclaw.sh/#deploy-docker-compose). + +## Ενορχήστρωση Πολλαπλών Πρακτόρων + +Το GoClaw υποστηρίζει ομάδες πρακτόρων και ανάθεση μεταξύ πρακτόρων — κάθε πράκτορας εκτελείται με τη δική του ταυτότητα, εργαλεία, πάροχο LLM, και αρχεία περιβάλλοντος. + +### Ανάθεση Πράκτορα + +

+ Agent Delegation +

+ +| Λειτουργία | Πώς λειτουργεί | Καλύτερο για | +|------------|---------------|--------------| +| **Σύγχρονη** | Ο Πράκτορας Α ρωτά τον Πράκτορα Β και **αναμένει** την απάντηση | Γρήγορες αναζητήσεις, επαλήθευση γεγονότων | +| **Ασύγχρονη** | Ο Πράκτορας Α ρωτά τον Πράκτορα Β και **συνεχίζει**. Ο Β ανακοινώνει αργότερα | Μακρές εργασίες, αναφορές, βαθιά ανάλυση | + +Οι πράκτορες επικοινωνούν μέσω ρητών **συνδέσμων αδειών** με έλεγχο κατεύθυνσης (`outbound`, `inbound`, `bidirectional`) και ορίων ταυτόχρονης εκτέλεσης τόσο σε επίπεδο ανά σύνδεσμο όσο και ανά πράκτορα. + +### Ομάδες Πρακτόρων + +

+ Agent Teams Workflow +

+ +- **Κοινόχρηστος πίνακας εργασιών** — Δημιουργία, ανάληψη, ολοκλήρωση, αναζήτηση εργασιών με εξαρτήσεις `blocked_by` +- **Ταχυδρομείο ομάδας** — Άμεση ανταλλαγή μηνυμάτων μεταξύ ομότιμων και εκπομπές +- **Εργαλεία**: `team_tasks` για διαχείριση εργασιών, `team_message` για ταχυδρομείο + +> Για λεπτομέρειες ανάθεσης, συνδέσμους αδειών, και έλεγχο ταυτόχρονης εκτέλεσης, δείτε την [τεκμηρίωση Ομάδων Πρακτόρων](https://docs.goclaw.sh/#teams-what-are-teams). + +## Ενσωματωμένα Εργαλεία + +| Εργαλείο | Ομάδα | Περιγραφή | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Ανάγνωση περιεχομένου αρχείου (με δρομολόγηση εικονικού FS) | +| `write_file` | fs | Εγγραφή/δημιουργία αρχείων | +| `edit_file` | fs | Εφαρμογή στοχευμένων επεξεργασιών σε υπάρχοντα αρχεία | +| `list_files` | fs | Λίστα περιεχομένων καταλόγου | +| `search` | fs | Αναζήτηση περιεχομένου αρχείων με μοτίβο | +| `glob` | fs | Εύρεση αρχείων με μοτίβο glob | +| `exec` | runtime | Εκτέλεση εντολών κελύφους (με ροή εγκρίσεων) | +| `web_search` | web | Αναζήτηση στον ιστό (Brave, DuckDuckGo) | +| `web_fetch` | web | Ανάκτηση και ανάλυση περιεχομένου ιστού | +| `memory_search` | memory | Αναζήτηση μακροπρόθεσμης μνήμης (FTS + vector) | +| `memory_get` | memory | Ανάκτηση καταχωρήσεων μνήμης | +| `skill_search` | — | Αναζήτηση δεξιοτήτων (υβριδικό BM25 + embedding) | +| `knowledge_graph_search` | memory | Αναζήτηση οντοτήτων και διάσχιση σχέσεων γράφου γνώσης | +| `create_image` | media | Δημιουργία εικόνας (DashScope, MiniMax) | +| `create_audio` | media | Δημιουργία ήχου (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Δημιουργία βίντεο (MiniMax, Veo) | +| `read_document` | media | Ανάγνωση εγγράφου (Gemini File API, αλυσίδα παρόχων) | +| `read_image` | media | Ανάλυση εικόνας | +| `read_audio` | media | Μεταγραφή και ανάλυση ήχου | +| `read_video` | media | Ανάλυση βίντεο | +| `message` | messaging | Αποστολή μηνυμάτων σε κανάλια | +| `tts` | — | Σύνθεση κειμένου-σε-ομιλία | +| `spawn` | — | Δημιουργία υποπράκτορα | +| `subagents` | sessions | Έλεγχος τρεχόντων υποπρακτόρων | +| `team_tasks` | teams | Κοινόχρηστος πίνακας εργασιών (λίστα, δημιουργία, ανάληψη, ολοκλήρωση, αναζήτηση) | +| `team_message` | teams | Ταχυδρομείο ομάδας (αποστολή, εκπομπή, ανάγνωση) | +| `sessions_list` | sessions | Λίστα ενεργών συνεδριών | +| `sessions_history` | sessions | Προβολή ιστορικού συνεδριών | +| `sessions_send` | sessions | Αποστολή μηνύματος σε συνεδρία | +| `sessions_spawn` | sessions | Δημιουργία νέας συνεδρίας | +| `session_status` | sessions | Έλεγχος κατάστασης συνεδρίας | +| `cron` | automation | Χρονοδρομολόγηση και διαχείριση εργασιών cron | +| `gateway` | automation | Διαχείριση πύλης | +| `browser` | ui | Αυτοματισμός προγράμματος περιήγησης (πλοήγηση, κλικ, πληκτρολόγηση, στιγμιότυπο) | +| `announce_queue` | automation | Ασύγχρονη ανακοίνωση αποτελεσμάτων (για ασύγχρονες αναθέσεις) | + +## Τεκμηρίωση + +Πλήρης τεκμηρίωση στο **[docs.goclaw.sh](https://docs.goclaw.sh)** — ή περιηγηθείτε στην πηγή στο [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Ενότητα | Θέματα | +|---------|--------| +| [Ξεκινώντας](https://docs.goclaw.sh/#what-is-goclaw) | Εγκατάσταση, Γρήγορη Εκκίνηση, Διαμόρφωση, Περιήγηση Web Dashboard | +| [Βασικές Έννοιες](https://docs.goclaw.sh/#how-goclaw-works) | Βρόχος Πράκτορα, Συνεδρίες, Εργαλεία, Μνήμη, Πολλαπλή Ενοικίαση | +| [Πράκτορες](https://docs.goclaw.sh/#creating-agents) | Δημιουργία Πρακτόρων, Αρχεία Περιβάλλοντος, Προσωπικότητα, Κοινοποίηση & Πρόσβαση | +| [Πάροχοι](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 ακόμα | +| [Κανάλια](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Ομάδες Πρακτόρων](https://docs.goclaw.sh/#teams-what-are-teams) | Ομάδες, Πίνακας Εργασιών, Ανταλλαγή Μηνυμάτων, Ανάθεση & Παράδοση | +| [Προχωρημένα](https://docs.goclaw.sh/#custom-tools) | Προσαρμοσμένα Εργαλεία, MCP, Δεξιότητες, Cron, Sandbox, Hooks, RBAC | +| [Ανάπτυξη](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Βάση Δεδομένων, Ασφάλεια, Παρατηρησιμότητα, Tailscale | +| [Αναφορά](https://docs.goclaw.sh/#cli-commands) | Εντολές CLI, REST API, WebSocket Protocol, Μεταβλητές Περιβάλλοντος | + +## Δοκιμές + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) +``` + +## Κατάσταση Έργου + +Δείτε το [CHANGELOG.md](CHANGELOG.md) για λεπτομερή κατάσταση χαρακτηριστικών, συμπεριλαμβανομένου του τι έχει δοκιμαστεί σε παραγωγή και τι βρίσκεται ακόμα σε εξέλιξη. + +## Αναγνωρίσεις + +Το GoClaw κατασκευάστηκε πάνω στο αρχικό έργο [OpenClaw](https://github.com/openclaw/openclaw). Είμαστε ευγνώμονες για την αρχιτεκτονική και το όραμα που ενέπνευσε αυτή τη μεταφορά σε Go. + +## Άδεια Χρήσης + +MIT diff --git a/_readmes/README.es.md b/_readmes/README.es.md new file mode 100644 index 000000000..c38f602f7 --- /dev/null +++ b/_readmes/README.es.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Documentación • + Inicio Rápido • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** es una pasarela de agentes de IA multi-agente que conecta LLMs a tus herramientas, canales y datos — desplegada como un único binario Go sin dependencias de tiempo de ejecución. Orquesta equipos de agentes y delegación inter-agente entre más de 20 proveedores de LLM con total aislamiento multi-tenant. + +Un port en Go de [OpenClaw](https://github.com/openclaw/openclaw) con seguridad mejorada, PostgreSQL multi-tenant y observabilidad de nivel productivo. + +🌐 **Idiomas:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## Qué lo Hace Diferente + +- **Equipos de Agentes y Orquestación** — Equipos con tableros de tareas compartidos, delegación inter-agente (síncrona/asíncrona) y descubrimiento híbrido de agentes +- **PostgreSQL Multi-Tenant** — Espacios de trabajo por usuario, archivos de contexto por usuario, claves API cifradas (AES-256-GCM), sesiones aisladas +- **Binario Único** — Binario estático Go de ~25 MB, sin tiempo de ejecución Node.js, inicio en <1s, funciona en un VPS de $5 +- **Seguridad de Producción** — Sistema de permisos de 5 capas (autenticación de pasarela → política global de herramientas → por agente → por canal → solo propietario) más limitación de velocidad, detección de inyección de prompts, protección SSRF, patrones de denegación de shell y cifrado AES-256-GCM +- **Más de 20 Proveedores de LLM** — Anthropic (HTTP+SSE nativo con caché de prompts), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP y cualquier endpoint compatible con OpenAI +- **7 Canales de Mensajería** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Modo de pensamiento por proveedor (tokens de presupuesto Anthropic, esfuerzo de razonamiento OpenAI, presupuesto de pensamiento DashScope) con soporte de streaming +- **Heartbeat** — Verificaciones periódicas de agentes mediante listas de verificación HEARTBEAT.md con supresión en OK, horas activas, lógica de reintento y entrega por canal +- **Programación y Cron** — Expresiones `at`, `every` y cron para tareas automatizadas de agentes con concurrencia basada en carriles +- **Observabilidad** — Trazado integrado de llamadas LLM con tramos y métricas de caché de prompts, exportación opcional OpenTelemetry OTLP + +## Ecosistema Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Lenguaje | TypeScript | Rust | Go | **Go** | +| Tamaño binario | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Imagen Docker | — | — | — | **~50 MB** (Alpine) | +| RAM (inactivo) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Inicio | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Hardware objetivo | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Característica | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ------------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Integración MCP | — (usa ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Equipos de agentes | — | — | — | ✅ Tablero de tareas + buzón | +| Seguridad reforzada | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Básica (workspace restrict, exec deny) | ✅ Defensa de 5 capas | +| Observabilidad OTel | ✅ (extensión opt-in) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (build tag opt-in) | +| Caché de prompts | — | — | — | ✅ Anthropic + OpenAI-compat | +| Grafo de conocimiento | — | — | — | ✅ Extracción LLM + traversal | +| Sistema de habilidades | ✅ Embeddings/semántico | ✅ SKILL.md + TOML | ✅ Básico | ✅ BM25 + pgvector híbrido | +| Programador por carriles | ✅ | Concurrencia acotada | — | ✅ (main/subagent/team/cron) | +| Canales de mensajería | 37+ | 15+ | 10+ | 7+ | +| Aplicaciones complementarias | macOS, iOS, Android | Python SDK | — | Panel web | +| Live Canvas / Voz | ✅ (A2UI + TTS/STT) | — | Transcripción de voz | TTS (4 proveedores) | +| Proveedores LLM | 10+ | 8 nativo + 29 compat | 13+ | **20+** | +| Espacios de trabajo por usuario | ✅ (basado en archivos) | — | — | ✅ (PostgreSQL) | +| Secretos cifrados | — (solo vars de entorno) | ✅ ChaCha20-Poly1305 | — (JSON en texto plano) | ✅ AES-256-GCM en BD | + +## Arquitectura + +

+ GoClaw Architecture +

+ +## Inicio Rápido + +**Requisitos previos:** Go 1.26+, PostgreSQL 18 con pgvector, Docker (opcional) + +### Desde el Código Fuente + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Asistente de configuración interactivo +source .env.local && ./goclaw +``` + +### Con Docker + +```bash +# Generar .env con secretos auto-generados +chmod +x prepare-env.sh && ./prepare-env.sh + +# Añade al menos una GOCLAW_*_API_KEY al .env, luego: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Panel web en http://localhost:3000 +# Verificación de estado: curl http://localhost:18790/health +``` + +Cuando las variables de entorno `GOCLAW_*_API_KEY` están configuradas, la pasarela se incorpora automáticamente sin prompts interactivos — detecta el proveedor, ejecuta migraciones e inicializa los datos por defecto. + +> Para variantes de compilación (OTel, Tailscale, Redis), etiquetas de imagen Docker y superposiciones de compose, consulta la [Guía de Despliegue](https://docs.goclaw.sh/#deploy-docker-compose). + +## Orquestación Multi-Agente + +GoClaw admite equipos de agentes y delegación inter-agente — cada agente se ejecuta con su propia identidad, herramientas, proveedor LLM y archivos de contexto. + +### Delegación de Agentes + +

+ Agent Delegation +

+ +| Modo | Cómo funciona | Ideal para | +|------|---------------|------------| +| **Sync** | El Agente A pregunta al Agente B y **espera** la respuesta | Consultas rápidas, verificación de datos | +| **Async** | El Agente A pregunta al Agente B y **continúa**. B anuncia después | Tareas largas, informes, análisis profundo | + +Los agentes se comunican a través de **enlaces de permisos** explícitos con control de dirección (`outbound`, `inbound`, `bidirectional`) y límites de concurrencia tanto a nivel de enlace como de agente. + +### Equipos de Agentes + +

+ Agent Teams Workflow +

+ +- **Tablero de tareas compartido** — Crear, reclamar, completar y buscar tareas con dependencias `blocked_by` +- **Buzón del equipo** — Mensajería directa entre pares y transmisiones +- **Herramientas**: `team_tasks` para gestión de tareas, `team_message` para el buzón + +> Para detalles de delegación, enlaces de permisos y control de concurrencia, consulta la [documentación de Equipos de Agentes](https://docs.goclaw.sh/#teams-what-are-teams). + +## Herramientas Integradas + +| Herramienta | Grupo | Descripción | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Leer contenido de archivos (con enrutamiento de FS virtual) | +| `write_file` | fs | Escribir/crear archivos | +| `edit_file` | fs | Aplicar ediciones específicas a archivos existentes | +| `list_files` | fs | Listar contenido de directorios | +| `search` | fs | Buscar contenido de archivos por patrón | +| `glob` | fs | Encontrar archivos por patrón glob | +| `exec` | runtime | Ejecutar comandos de shell (con flujo de aprobación) | +| `web_search` | web | Buscar en la web (Brave, DuckDuckGo) | +| `web_fetch` | web | Obtener y analizar contenido web | +| `memory_search` | memory | Buscar en memoria a largo plazo (FTS + vector) | +| `memory_get` | memory | Recuperar entradas de memoria | +| `skill_search` | — | Buscar habilidades (híbrido BM25 + embedding) | +| `knowledge_graph_search` | memory | Buscar entidades y recorrer relaciones del grafo de conocimiento | +| `create_image` | media | Generación de imágenes (DashScope, MiniMax) | +| `create_audio` | media | Generación de audio (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Generación de video (MiniMax, Veo) | +| `read_document` | media | Lectura de documentos (Gemini File API, cadena de proveedores) | +| `read_image` | media | Análisis de imágenes | +| `read_audio` | media | Transcripción y análisis de audio | +| `read_video` | media | Análisis de video | +| `message` | messaging | Enviar mensajes a canales | +| `tts` | — | Síntesis de texto a voz | +| `spawn` | — | Lanzar un subagente | +| `subagents` | sessions | Controlar subagentes en ejecución | +| `team_tasks` | teams | Tablero de tareas compartido (listar, crear, reclamar, completar, buscar) | +| `team_message` | teams | Buzón del equipo (enviar, transmitir, leer) | +| `sessions_list` | sessions | Listar sesiones activas | +| `sessions_history` | sessions | Ver historial de sesiones | +| `sessions_send` | sessions | Enviar mensaje a una sesión | +| `sessions_spawn` | sessions | Lanzar una nueva sesión | +| `session_status` | sessions | Verificar estado de sesión | +| `cron` | automation | Programar y gestionar tareas cron | +| `gateway` | automation | Administración de la pasarela | +| `browser` | ui | Automatización de navegador (navegar, hacer clic, escribir, captura de pantalla) | +| `announce_queue` | automation | Anuncio asíncrono de resultados (para delegaciones asíncronas) | + +## Documentación + +Documentación completa en **[docs.goclaw.sh](https://docs.goclaw.sh)** — o navega el código fuente en [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sección | Temas | +|---------|-------| +| [Primeros Pasos](https://docs.goclaw.sh/#what-is-goclaw) | Instalación, Inicio Rápido, Configuración, Tour del Panel Web | +| [Conceptos Fundamentales](https://docs.goclaw.sh/#how-goclaw-works) | Bucle de Agente, Sesiones, Herramientas, Memoria, Multi-Tenancy | +| [Agentes](https://docs.goclaw.sh/#creating-agents) | Crear Agentes, Archivos de Contexto, Personalidad, Compartir y Acceso | +| [Proveedores](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 más | +| [Canales](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Equipos de Agentes](https://docs.goclaw.sh/#teams-what-are-teams) | Equipos, Tablero de Tareas, Mensajería, Delegación y Traspaso | +| [Avanzado](https://docs.goclaw.sh/#custom-tools) | Herramientas Personalizadas, MCP, Habilidades, Cron, Sandbox, Hooks, RBAC | +| [Despliegue](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Base de Datos, Seguridad, Observabilidad, Tailscale | +| [Referencia](https://docs.goclaw.sh/#cli-commands) | Comandos CLI, API REST, Protocolo WebSocket, Variables de Entorno | + +## Pruebas + +```bash +go test ./... # Pruebas unitarias +go test -v ./tests/integration/ -timeout 120s # Pruebas de integración (requiere pasarela en ejecución) +``` + +## Estado del Proyecto + +Consulta [CHANGELOG.md](CHANGELOG.md) para el estado detallado de las características, incluyendo qué se ha probado en producción y qué está aún en progreso. + +## Agradecimientos + +GoClaw está construido sobre el proyecto original [OpenClaw](https://github.com/openclaw/openclaw). Agradecemos la arquitectura y visión que inspiró este port en Go. + +## Licencia + +MIT diff --git a/_readmes/README.fi.md b/_readmes/README.fi.md new file mode 100644 index 000000000..0c4a2ad38 --- /dev/null +++ b/_readmes/README.fi.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentaatio • + Pikaopas • + Twitter / 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: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web-koontinäyttö osoitteessa http://localhost:3000 +# 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 diff --git a/_readmes/README.fr.md b/_readmes/README.fr.md new file mode 100644 index 000000000..9b4f8afe7 --- /dev/null +++ b/_readmes/README.fr.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Documentation • + Démarrage rapide • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** est une passerelle IA multi-agents qui connecte les LLMs à vos outils, canaux et données — déployée comme un binaire Go unique sans dépendances d'exécution. Elle orchestre des équipes d'agents et la délégation inter-agents auprès de plus de 20 fournisseurs LLM avec une isolation multi-tenant complète. + +Un portage Go de [OpenClaw](https://github.com/openclaw/openclaw) avec une sécurité renforcée, PostgreSQL multi-tenant, et une observabilité de niveau production. + +🌐 **Langues :** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## Ce qui le différencie + +- **Équipes d'agents et orchestration** — Équipes avec tableaux de tâches partagés, délégation inter-agents (sync/async), et découverte hybride d'agents +- **PostgreSQL multi-tenant** — Espaces de travail par utilisateur, fichiers de contexte par utilisateur, clés API chiffrées (AES-256-GCM), sessions isolées +- **Binaire unique** — Binaire Go statique de ~25 Mo, sans runtime Node.js, démarrage en <1 s, fonctionne sur un VPS à 5 $ +- **Sécurité de niveau production** — Système de permissions à 5 couches (auth passerelle → politique d'outils globale → par agent → par canal → propriétaire uniquement) plus limitation de débit, détection d'injection de prompt, protection SSRF, motifs de refus shell, et chiffrement AES-256-GCM +- **Plus de 20 fournisseurs LLM** — Anthropic (HTTP+SSE natif avec mise en cache des prompts), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, et tout endpoint compatible OpenAI +- **7 canaux de messagerie** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Mode de réflexion par fournisseur (jetons budget Anthropic, effort de raisonnement OpenAI, budget de réflexion DashScope) avec support du streaming +- **Heartbeat** — Vérifications périodiques des agents via des listes de contrôle HEARTBEAT.md avec suppression en cas de succès, heures actives, logique de réessai, et livraison par canal +- **Planification et Cron** — Expressions `at`, `every`, et cron pour les tâches d'agents automatisées avec concurrence par voie +- **Observabilité** — Traçage intégré des appels LLM avec spans et métriques de cache de prompts, export OpenTelemetry OTLP optionnel + +## L'écosystème Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Langage | TypeScript | Rust | Go | **Go** | +| Taille du binaire | 28 Mo + Node.js | 3,4 Mo | ~8 Mo | **~25 Mo** (base) / **~36 Mo** (+ OTel) | +| Image Docker | — | — | — | **~50 Mo** (Alpine) | +| RAM (inactif) | > 1 Go | < 5 Mo | < 10 Mo | **~35 Mo** | +| Démarrage | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Matériel cible | Mac Mini à 599 $+ | Edge à 10 $ | Edge à 10 $ | **VPS à 5 $+** | + +| Fonctionnalité | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Intégration MCP | — (utilise ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Équipes d'agents | — | — | — | ✅ Tableau de tâches + boîte aux lettres | +| Renforcement de la sécurité | ✅ (SSRF, traversée de chemin, injection) | ✅ (sandbox, limite de débit, injection, appairage) | Basique (restriction d'espace de travail, refus exec) | ✅ Défense à 5 couches | +| Observabilité OTel | ✅ (extension opt-in) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (balise de build opt-in) | +| Mise en cache des prompts | — | — | — | ✅ Anthropic + OpenAI-compat | +| Graphe de connaissances | — | — | — | ✅ Extraction LLM + traversal | +| Système de compétences | ✅ Embeddings/sémantique | ✅ SKILL.md + TOML | ✅ Basique | ✅ BM25 + pgvector hybride | +| Planificateur par voie | ✅ | Concurrence bornée | — | ✅ (main/subagent/team/cron) | +| Canaux de messagerie | 37+ | 15+ | 10+ | 7+ | +| Applications compagnons | macOS, iOS, Android | SDK Python | — | Tableau de bord web | +| Canvas en direct / Voix | ✅ (A2UI + TTS/STT) | — | Transcription vocale | TTS (4 fournisseurs) | +| Fournisseurs LLM | 10+ | 8 natifs + 29 compat | 13+ | **20+** | +| Espaces de travail par utilisateur | ✅ (basé sur fichiers) | — | — | ✅ (PostgreSQL) | +| Secrets chiffrés | — (variables d'env uniquement) | ✅ ChaCha20-Poly1305 | — (JSON en clair) | ✅ AES-256-GCM en base de données | + +## Architecture + +

+ GoClaw Architecture +

+ +## Démarrage rapide + +**Prérequis :** Go 1.26+, PostgreSQL 18 avec pgvector, Docker (optionnel) + +### Depuis les sources + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Assistant de configuration interactif +source .env.local && ./goclaw +``` + +### Avec Docker + +```bash +# Générer .env avec des secrets auto-générés +chmod +x prepare-env.sh && ./prepare-env.sh + +# Ajouter au moins une GOCLAW_*_API_KEY dans .env, puis : +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Tableau de bord web sur http://localhost:3000 +# Vérification de santé : curl http://localhost:18790/health +``` + +Lorsque les variables d'environnement `GOCLAW_*_API_KEY` sont définies, la passerelle s'auto-configure sans invites interactives — détecte le fournisseur, exécute les migrations, et initialise les données par défaut. + +> Pour les variantes de build (OTel, Tailscale, Redis), les tags d'images Docker, et les overlays compose, voir le [Guide de déploiement](https://docs.goclaw.sh/#deploy-docker-compose). + +## Orchestration multi-agents + +GoClaw prend en charge les équipes d'agents et la délégation inter-agents — chaque agent s'exécute avec sa propre identité, ses outils, son fournisseur LLM, et ses fichiers de contexte. + +### Délégation d'agents + +

+ Agent Delegation +

+ +| Mode | Fonctionnement | Idéal pour | +|------|-------------|----------| +| **Sync** | L'agent A demande à l'agent B et **attend** la réponse | Recherches rapides, vérifications de faits | +| **Async** | L'agent A demande à l'agent B et **continue**. B annonce plus tard | Tâches longues, rapports, analyses approfondies | + +Les agents communiquent via des **liens de permission** explicites avec contrôle de direction (`outbound`, `inbound`, `bidirectional`) et limites de concurrence au niveau de chaque lien et de chaque agent. + +### Équipes d'agents + +

+ Agent Teams Workflow +

+ +- **Tableau de tâches partagé** — Créer, revendiquer, compléter, rechercher des tâches avec des dépendances `blocked_by` +- **Boîte aux lettres d'équipe** — Messagerie directe entre pairs et diffusions +- **Outils** : `team_tasks` pour la gestion des tâches, `team_message` pour la boîte aux lettres + +> Pour les détails sur la délégation, les liens de permission, et le contrôle de concurrence, voir la [documentation des équipes d'agents](https://docs.goclaw.sh/#teams-what-are-teams). + +## Outils intégrés + +| Outil | Groupe | Description | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Lire le contenu des fichiers (avec routage FS virtuel) | +| `write_file` | fs | Écrire/créer des fichiers | +| `edit_file` | fs | Appliquer des modifications ciblées aux fichiers existants | +| `list_files` | fs | Lister le contenu d'un répertoire | +| `search` | fs | Rechercher le contenu des fichiers par motif | +| `glob` | fs | Trouver des fichiers par motif glob | +| `exec` | runtime | Exécuter des commandes shell (avec flux d'approbation) | +| `web_search` | web | Rechercher sur le web (Brave, DuckDuckGo) | +| `web_fetch` | web | Récupérer et analyser le contenu web | +| `memory_search` | memory | Rechercher dans la mémoire à long terme (FTS + vecteur) | +| `memory_get` | memory | Récupérer des entrées de mémoire | +| `skill_search` | — | Rechercher des compétences (BM25 + hybride d'embeddings) | +| `knowledge_graph_search` | memory | Rechercher des entités et traverser les relations du graphe de connaissances | +| `create_image` | media | Génération d'images (DashScope, MiniMax) | +| `create_audio` | media | Génération audio (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Génération vidéo (MiniMax, Veo) | +| `read_document` | media | Lecture de documents (API Fichiers Gemini, chaîne de fournisseurs) | +| `read_image` | media | Analyse d'images | +| `read_audio` | media | Transcription et analyse audio | +| `read_video` | media | Analyse vidéo | +| `message` | messaging | Envoyer des messages aux canaux | +| `tts` | — | Synthèse texte-parole | +| `spawn` | — | Lancer un sous-agent | +| `subagents` | sessions | Contrôler les sous-agents en cours d'exécution | +| `team_tasks` | teams | Tableau de tâches partagé (lister, créer, revendiquer, compléter, rechercher) | +| `team_message` | teams | Boîte aux lettres d'équipe (envoyer, diffuser, lire) | +| `sessions_list` | sessions | Lister les sessions actives | +| `sessions_history` | sessions | Afficher l'historique des sessions | +| `sessions_send` | sessions | Envoyer un message à une session | +| `sessions_spawn` | sessions | Lancer une nouvelle session | +| `session_status` | sessions | Vérifier le statut d'une session | +| `cron` | automation | Planifier et gérer les tâches cron | +| `gateway` | automation | Administration de la passerelle | +| `browser` | ui | Automatisation du navigateur (naviguer, cliquer, saisir, capture d'écran) | +| `announce_queue` | automation | Annonce de résultats asynchrones (pour les délégations asynchrones) | + +## Documentation + +Documentation complète sur **[docs.goclaw.sh](https://docs.goclaw.sh)** — ou consultez les sources dans [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Section | Sujets | +|---------|--------| +| [Premiers pas](https://docs.goclaw.sh/#what-is-goclaw) | Installation, Démarrage rapide, Configuration, Visite du tableau de bord web | +| [Concepts fondamentaux](https://docs.goclaw.sh/#how-goclaw-works) | Boucle d'agent, Sessions, Outils, Mémoire, Multi-tenant | +| [Agents](https://docs.goclaw.sh/#creating-agents) | Créer des agents, Fichiers de contexte, Personnalité, Partage et accès | +| [Fournisseurs](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 autres | +| [Canaux](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Équipes d'agents](https://docs.goclaw.sh/#teams-what-are-teams) | Équipes, Tableau de tâches, Messagerie, Délégation et transfert | +| [Avancé](https://docs.goclaw.sh/#custom-tools) | Outils personnalisés, MCP, Compétences, Cron, Sandbox, Hooks, RBAC | +| [Déploiement](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Base de données, Sécurité, Observabilité, Tailscale | +| [Référence](https://docs.goclaw.sh/#cli-commands) | Commandes CLI, API REST, Protocole WebSocket, Variables d'environnement | + +## Tests + +```bash +go test ./... # Tests unitaires +go test -v ./tests/integration/ -timeout 120s # Tests d'intégration (nécessite une passerelle en cours d'exécution) +``` + +## Statut du projet + +Voir [CHANGELOG.md](CHANGELOG.md) pour le statut détaillé des fonctionnalités, y compris ce qui a été testé en production et ce qui est encore en cours. + +## Remerciements + +GoClaw est construit sur le projet original [OpenClaw](https://github.com/openclaw/openclaw). Nous sommes reconnaissants pour l'architecture et la vision qui ont inspiré ce portage Go. + +## Licence + +MIT diff --git a/_readmes/README.he.md b/_readmes/README.he.md new file mode 100644 index 000000000..d58f6df16 --- /dev/null +++ b/_readmes/README.he.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ תיעוד • + התחלה מהירה • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** הוא שער AI רב-סוכנים המחבר מודלי שפה גדולים לכלים, לערוצים ולנתונים שלך — פרוס כקובץ בינארי יחיד של Go ללא תלויות ריצה. הוא מתזמר צוותי סוכנים ואת הברת המשימות בין סוכנים אצל מעל 20 ספקי LLM עם בידוד מרובה-דיירים מלא. + +פורט Go של [OpenClaw](https://github.com/openclaw/openclaw) עם אבטחה משופרת, PostgreSQL מרובה-דיירים ויכולות תצפית ברמת ייצור. + +🌐 **שפות:** +[🇺🇸 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) + +## מה מבדיל אותו + +- **צוותי סוכנים ותזמור** — צוותים עם לוחות משימות משותפים, האברת משימות בין סוכנים (סינכרונית/אסינכרונית) וגילוי סוכנים היברידי +- **PostgreSQL מרובה-דיירים** — סביבות עבודה פר-משתמש, קבצי הקשר פר-משתמש, מפתחות API מוצפנים (AES-256-GCM), סשנים מבודדים +- **קובץ בינארי יחיד** — קובץ בינארי סטטי של Go בגודל ~25 MB, ללא Node.js runtime, הפעלה תוך פחות מ-1 שנייה, רץ על VPS בעלות $5 +- **אבטחת ייצור** — מערכת הרשאות 5 שכבות (אימות שער ← מדיניות כלים גלובלית ← פר-סוכן ← פר-ערוץ ← בעלים בלבד) בתוספת הגבלת קצב, זיהוי הזרקת פרומפטים, הגנת SSRF, דפוסי דחיית מעטפת והצפנת AES-256-GCM +- **מעל 20 ספקי LLM** — Anthropic (HTTP+SSE מקורי עם שמירת פרומפטים), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP וכל נקודת קצה תואמת OpenAI +- **7 ערוצי הודעות** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — מצב חשיבה פר-ספק (תקציב טוקנים של Anthropic, מאמץ חשיבה של OpenAI, תקציב חשיבה של DashScope) עם תמיכה בסטרימינג +- **Heartbeat** — בדיקות מצב תקופתיות של סוכנים דרך רשימות HEARTBEAT.md עם הדחקה-בהצלחה, שעות פעילות, לוגיקת ניסיון חוזר ומשלוח לערוצים +- **תזמון ו-Cron** — ביטויי `at`, `every` ו-cron למשימות סוכן אוטומטיות עם מקביליות מבוססת-נתיב +- **תצפית** — מעקב שיחות LLM מובנה עם spans ומדדי מטמון פרומפטים, ייצוא אופציונלי של OpenTelemetry OTLP + +## מערכת האקולוגית של Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| שפה | TypeScript | Rust | Go | **Go** | +| גודל קובץ בינארי | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (בסיס) / **~36 MB** (+ OTel) | +| תמונת Docker | — | — | — | **~50 MB** (Alpine) | +| RAM (במנוחה) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| הפעלה | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| חומרת יעד | Mac Mini $599+ | קצה $10 | קצה $10 | **VPS $5+** | + +| תכונה | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| מרובה-דיירים (PostgreSQL) | — | — | — | ✅ | +| שילוב MCP | — (משתמש ב-ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| צוותי סוכנים | — | — | — | ✅ לוח משימות + תיבת דואר | +| הקשחת אבטחה | ✅ (SSRF, מעבר נתיב, הזרקה) | ✅ (ארגז חול, הגבלת קצב, הזרקה, צימוד) | בסיסי (הגבלת סביבת עבודה, חסימת exec) | ✅ הגנה 5 שכבות | +| תצפית OTel | ✅ (הרחבה אופציונלית) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (תג בנייה אופציונלי) | +| שמירת פרומפטים | — | — | — | ✅ Anthropic + תואם-OpenAI | +| גרף ידע | — | — | — | ✅ חילוץ LLM + מעבר גרף | +| מערכת מיומנויות | ✅ הטמעות/סמנטי | ✅ SKILL.md + TOML | ✅ בסיסי | ✅ BM25 + pgvector היברידי | +| מתזמן מבוסס-נתיב | ✅ | מקביליות מוגבלת | — | ✅ (main/subagent/team/cron) | +| ערוצי הודעות | 37+ | 15+ | 10+ | 7+ | +| אפליקציות נלוות | macOS, iOS, Android | Python SDK | — | לוח בקרה ווב | +| Canvas חי / קול | ✅ (A2UI + TTS/STT) | — | תמלול קולי | TTS (4 ספקים) | +| ספקי LLM | 10+ | 8 מקורי + 29 תואם | 13+ | **20+** | +| סביבות עבודה פר-משתמש | ✅ (מבוסס-קבצים) | — | — | ✅ (PostgreSQL) | +| סודות מוצפנים | — (משתני סביבה בלבד) | ✅ ChaCha20-Poly1305 | — (JSON טקסט פשוט) | ✅ AES-256-GCM במסד הנתונים | + +## ארכיטקטורה + +

+ GoClaw Architecture +

+ +## התחלה מהירה + +**דרישות מוקדמות:** Go 1.26+, PostgreSQL 18 עם pgvector, Docker (אופציונלי) + +### מהמקור + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # אשף הגדרה אינטראקטיבי +source .env.local && ./goclaw +``` + +### עם Docker + +```bash +# יצירת .env עם סודות שנוצרו אוטומטית +chmod +x prepare-env.sh && ./prepare-env.sh + +# הוסף לפחות GOCLAW_*_API_KEY אחד ל-.env, ואז: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# לוח הבקרה הווב בכתובת http://localhost:3000 +# בדיקת תקינות: curl http://localhost:18790/health +``` + +כאשר משתני הסביבה `GOCLAW_*_API_KEY` מוגדרים, השער מגדיר את עצמו אוטומטית ללא פרומפטים אינטראקטיביים — מזהה ספק, מריץ מיגרציות ומזרע נתוני ברירת מחדל. + +> לגרסאות בנייה (OTel, Tailscale, Redis), תגי תמונת Docker ושכבות compose, ראה את [מדריך הפריסה](https://docs.goclaw.sh/#deploy-docker-compose). + +## תזמור רב-סוכנים + +GoClaw תומך בצוותי סוכנים ובהאברת משימות בין סוכנים — כל סוכן רץ עם הזהות, הכלים, ספק ה-LLM וקבצי ההקשר שלו. + +### האברת משימות בין סוכנים + +

+ Agent Delegation +

+ +| מצב | איך זה עובד | הכי מתאים ל | +|------|-------------|----------| +| **סינכרוני** | סוכן א' מבקש מסוכן ב' ו**ממתין** לתשובה | בדיקות מהירות, אימות עובדות | +| **אסינכרוני** | סוכן א' מבקש מסוכן ב' ו**ממשיך**. ב' מכריז מאוחר יותר | משימות ארוכות, דוחות, ניתוח מעמיק | + +סוכנים מתקשרים דרך **קישורי הרשאה** מפורשים עם בקרת כיוון (`outbound`, `inbound`, `bidirectional`) ומגבלות מקביליות ברמת הקישור וברמת הסוכן. + +### צוותי סוכנים + +

+ Agent Teams Workflow +

+ +- **לוח משימות משותף** — יצירה, תפיסה, השלמה וחיפוש משימות עם תלויות `blocked_by` +- **תיבת דואר של הצוות** — הודעות ישירות עמית-לעמית ושידורים +- **כלים**: `team_tasks` לניהול משימות, `team_message` לתיבת הדואר + +> לפרטי האברה, קישורי הרשאה ובקרת מקביליות, ראה את [תיעוד צוותי סוכנים](https://docs.goclaw.sh/#teams-what-are-teams). + +## כלים מובנים + +| כלי | קבוצה | תיאור | +| ------------------ | ------------- | ------------------------------------------------------------- | +| `read_file` | fs | קריאת תוכן קבצים (עם ניתוב FS וירטואלי) | +| `write_file` | fs | כתיבה/יצירת קבצים | +| `edit_file` | fs | החלת עריכות ממוקדות על קבצים קיימים | +| `list_files` | fs | רישום תוכן ספריה | +| `search` | fs | חיפוש תוכן קבצים לפי דפוס | +| `glob` | fs | מציאת קבצים לפי דפוס glob | +| `exec` | runtime | הרצת פקודות מעטפת (עם תהליך אישור) | +| `web_search` | web | חיפוש ברשת (Brave, DuckDuckGo) | +| `web_fetch` | web | שליפה וניתוח תוכן ווב | +| `memory_search` | memory | חיפוש בזיכרון לטווח ארוך (FTS + וקטור) | +| `memory_get` | memory | אחזור רשומות זיכרון | +| `skill_search` | — | חיפוש מיומנויות (BM25 + הטמעה היברידית) | +| `knowledge_graph_search` | memory | חיפוש ישויות ומעבר קשרי גרף ידע | +| `create_image` | media | יצירת תמונות (DashScope, MiniMax) | +| `create_audio` | media | יצירת שמע (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | יצירת וידאו (MiniMax, Veo) | +| `read_document` | media | קריאת מסמכים (Gemini File API, שרשרת ספקים) | +| `read_image` | media | ניתוח תמונות | +| `read_audio` | media | תמלול וניתוח שמע | +| `read_video` | media | ניתוח וידאו | +| `message` | messaging | שליחת הודעות לערוצים | +| `tts` | — | סינתזת Text-to-Speech | +| `spawn` | — | הפעלת תת-סוכן | +| `subagents` | sessions | שליטה בתת-סוכנים פעילים | +| `team_tasks` | teams | לוח משימות משותף (רשימה, יצירה, תפיסה, השלמה, חיפוש) | +| `team_message` | teams | תיבת דואר צוות (שליחה, שידור, קריאה) | +| `sessions_list` | sessions | רישום סשנים פעילים | +| `sessions_history` | sessions | צפייה בהיסטוריית סשנים | +| `sessions_send` | sessions | שליחת הודעה לסשן | +| `sessions_spawn` | sessions | הפעלת סשן חדש | +| `session_status` | sessions | בדיקת מצב סשן | +| `cron` | automation | תזמון וניהול משימות cron | +| `gateway` | automation | ניהול שער | +| `browser` | ui | אוטומציה בדפדפן (ניווט, לחיצה, הקלדה, צילום מסך) | +| `announce_queue` | automation | הכרזת תוצאות אסינכרוניות (להאברות אסינכרוניות) | + +## תיעוד + +תיעוד מלא בכתובת **[docs.goclaw.sh](https://docs.goclaw.sh)** — או עיין במקור ב-[`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| קטע | נושאים | +|---------|--------| +| [תחילת עבודה](https://docs.goclaw.sh/#what-is-goclaw) | התקנה, התחלה מהירה, הגדרה, סיור בלוח הבקרה הווב | +| [מושגי יסוד](https://docs.goclaw.sh/#how-goclaw-works) | לולאת סוכן, סשנים, כלים, זיכרון, מרובה-דיירות | +| [סוכנים](https://docs.goclaw.sh/#creating-agents) | יצירת סוכנים, קבצי הקשר, אישיות, שיתוף וגישה | +| [ספקים](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 נוספים | +| [ערוצים](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [צוותי סוכנים](https://docs.goclaw.sh/#teams-what-are-teams) | צוותים, לוח משימות, הודעות, האברה והעברה | +| [מתקדם](https://docs.goclaw.sh/#custom-tools) | כלים מותאמים, MCP, מיומנויות, Cron, ארגז חול, Hooks, RBAC | +| [פריסה](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, מסד נתונים, אבטחה, תצפית, Tailscale | +| [עיון](https://docs.goclaw.sh/#cli-commands) | פקודות CLI, REST API, פרוטוקול WebSocket, משתני סביבה | + +## בדיקות + +```bash +go test ./... # בדיקות יחידה +go test -v ./tests/integration/ -timeout 120s # בדיקות אינטגרציה (דורש שער פעיל) +``` + +## מצב הפרויקט + +ראה את [CHANGELOG.md](CHANGELOG.md) למצב תכונות מפורט כולל מה נבדק בייצור ומה עדיין בתהליך. + +## תודות + +GoClaw בנוי על בסיס הפרויקט המקורי [OpenClaw](https://github.com/openclaw/openclaw). אנו אסירי תודה על הארכיטקטורה והחזון שהשרה פורט Go זה. + +## רישיון + +MIT diff --git a/_readmes/README.hi.md b/_readmes/README.hi.md new file mode 100644 index 000000000..6ee2e92bd --- /dev/null +++ b/_readmes/README.hi.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ दस्तावेज़ीकरण • + त्वरित प्रारंभ • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** एक मल्टी-एजेंट AI गेटवे है जो LLMs को आपके टूल्स, चैनलों और डेटा से जोड़ता है — एक सिंगल Go बाइनरी के रूप में तैनात, बिना किसी रनटाइम निर्भरता के। यह 20+ LLM प्रदाताओं के साथ पूर्ण मल्टी-टेनेंट आइसोलेशन के साथ एजेंट टीमों और इंटर-एजेंट डेलीगेशन को ऑर्केस्ट्रेट करता है। + +[OpenClaw](https://github.com/openclaw/openclaw) का एक Go पोर्ट, जिसमें उन्नत सुरक्षा, मल्टी-टेनेंट PostgreSQL और प्रोडक्शन-ग्रेड ऑब्ज़र्वेबिलिटी है। + +🌐 **Languages:** +[🇺🇸 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) + +## यह क्या अलग बनाता है + +- **एजेंट टीमें और ऑर्केस्ट्रेशन** — साझा टास्क बोर्ड, इंटर-एजेंट डेलीगेशन (sync/async), और हाइब्रिड एजेंट डिस्कवरी के साथ टीमें +- **मल्टी-टेनेंट PostgreSQL** — प्रति-उपयोगकर्ता वर्कस्पेस, प्रति-उपयोगकर्ता कॉन्टेक्स्ट फ़ाइलें, एन्क्रिप्टेड API कुंजियाँ (AES-256-GCM), आइसोलेटेड सेशन +- **सिंगल बाइनरी** — ~25 MB स्टेटिक Go बाइनरी, कोई Node.js रनटाइम नहीं, <1s स्टार्टअप, $5 VPS पर चलती है +- **प्रोडक्शन सुरक्षा** — 5-लेयर परमिशन सिस्टम (gateway auth → global tool policy → per-agent → per-channel → owner-only) के साथ रेट लिमिटिंग, प्रॉम्प्ट इंजेक्शन डिटेक्शन, SSRF प्रोटेक्शन, शेल डेनाय पैटर्न, और AES-256-GCM एन्क्रिप्शन +- **20+ LLM प्रदाता** — Anthropic (नेटिव HTTP+SSE विथ प्रॉम्प्ट कैशिंग), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, और कोई भी OpenAI-compatible एंडपॉइंट +- **7 मैसेजिंग चैनल** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — प्रति-प्रदाता थिंकिंग मोड (Anthropic बजट टोकन, OpenAI रीज़निंग एफर्ट, DashScope थिंकिंग बजट) स्ट्रीमिंग सपोर्ट के साथ +- **Heartbeat** — HEARTBEAT.md चेकलिस्ट के माध्यम से आवधिक एजेंट चेक-इन, suppress-on-OK, सक्रिय घंटे, रिट्री लॉजिक और चैनल डिलीवरी के साथ +- **शेड्यूलिंग और Cron** — स्वचालित एजेंट कार्यों के लिए `at`, `every`, और cron एक्सप्रेशन, लेन-आधारित कंकरेंसी के साथ +- **ऑब्ज़र्वेबिलिटी** — स्पैन और प्रॉम्प्ट कैश मेट्रिक्स के साथ बिल्ट-इन LLM कॉल ट्रेसिंग, वैकल्पिक OpenTelemetry OTLP एक्सपोर्ट + +## Claw इकोसिस्टम + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| भाषा | TypeScript | Rust | Go | **Go** | +| बाइनरी आकार | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Docker इमेज | — | — | — | **~50 MB** (Alpine) | +| RAM (निष्क्रिय) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| स्टार्टअप | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| लक्ष्य हार्डवेयर | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| फीचर | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| मल्टी-टेनेंट (PostgreSQL) | — | — | — | ✅ | +| MCP इंटीग्रेशन | — (uses ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| एजेंट टीमें | — | — | — | ✅ Task board + mailbox | +| सुरक्षा हार्डनिंग | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Basic (workspace restrict, exec deny) | ✅ 5-layer defense | +| OTel ऑब्ज़र्वेबिलिटी | ✅ (opt-in extension) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| प्रॉम्प्ट कैशिंग | — | — | — | ✅ Anthropic + OpenAI-compat | +| नॉलेज ग्राफ | — | — | — | ✅ LLM extraction + traversal | +| स्किल सिस्टम | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ Basic | ✅ BM25 + pgvector hybrid | +| लेन-आधारित शेड्यूलर | ✅ | Bounded concurrency | — | ✅ (main/subagent/team/cron) | +| मैसेजिंग चैनल | 37+ | 15+ | 10+ | 7+ | +| कम्पेनियन ऐप्स | macOS, iOS, Android | Python SDK | — | Web dashboard | +| लाइव कैनवास / वॉइस | ✅ (A2UI + TTS/STT) | — | Voice transcription | TTS (4 providers) | +| LLM प्रदाता | 10+ | 8 native + 29 compat | 13+ | **20+** | +| प्रति-उपयोगकर्ता वर्कस्पेस | ✅ (file-based) | — | — | ✅ (PostgreSQL) | +| एन्क्रिप्टेड सीक्रेट्स | — (env vars only) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM in DB | + +## आर्किटेक्चर + +

+ GoClaw Architecture +

+ +## त्वरित प्रारंभ + +**पूर्व-आवश्यकताएँ:** Go 1.26+, PostgreSQL 18 with pgvector, Docker (वैकल्पिक) + +### सोर्स से + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Docker के साथ + +```bash +# Generate .env with auto-generated secrets +chmod +x prepare-env.sh && ./prepare-env.sh + +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +जब `GOCLAW_*_API_KEY` एनवायरनमेंट वेरिएबल सेट हों, तो गेटवे इंटरएक्टिव प्रॉम्प्ट के बिना स्वत: ऑनबोर्ड हो जाता है — प्रदाता का पता लगाता है, माइग्रेशन चलाता है, और डिफ़ॉल्ट डेटा सीड करता है। + +> बिल्ड वेरिएंट (OTel, Tailscale, Redis), Docker इमेज टैग, और compose ओवरले के लिए, [Deployment Guide](https://docs.goclaw.sh/#deploy-docker-compose) देखें। + +## मल्टी-एजेंट ऑर्केस्ट्रेशन + +GoClaw एजेंट टीमों और इंटर-एजेंट डेलीगेशन का समर्थन करता है — प्रत्येक एजेंट अपनी पहचान, टूल्स, LLM प्रदाता, और कॉन्टेक्स्ट फ़ाइलों के साथ चलता है। + +### एजेंट डेलीगेशन + +

+ Agent Delegation +

+ +| मोड | यह कैसे काम करता है | किसके लिए सबसे अच्छा | +|------|-------------|----------| +| **Sync** | एजेंट A, एजेंट B से पूछता है और उत्तर की **प्रतीक्षा करता है** | त्वरित खोज, तथ्य जाँच | +| **Async** | एजेंट A, एजेंट B से पूछता है और **आगे बढ़ जाता है**। B बाद में घोषणा करता है | लंबे कार्य, रिपोर्ट, गहन विश्लेषण | + +एजेंट स्पष्ट **परमिशन लिंक** के माध्यम से संवाद करते हैं, जिसमें दिशा नियंत्रण (`outbound`, `inbound`, `bidirectional`) और प्रति-लिंक तथा प्रति-एजेंट दोनों स्तरों पर कंकरेंसी सीमाएँ होती हैं। + +### एजेंट टीमें + +

+ Agent Teams Workflow +

+ +- **साझा टास्क बोर्ड** — `blocked_by` निर्भरताओं के साथ टास्क बनाएं, क्लेम करें, पूरा करें, खोजें +- **टीम मेलबॉक्स** — सीधे पीयर-टू-पीयर मैसेजिंग और ब्रॉडकास्ट +- **टूल्स**: टास्क मैनेजमेंट के लिए `team_tasks`, मेलबॉक्स के लिए `team_message` + +> डेलीगेशन विवरण, परमिशन लिंक, और कंकरेंसी कंट्रोल के लिए, [Agent Teams docs](https://docs.goclaw.sh/#teams-what-are-teams) देखें। + +## बिल्ट-इन टूल्स + +| टूल | समूह | विवरण | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | फ़ाइल सामग्री पढ़ें (virtual FS routing के साथ) | +| `write_file` | fs | फ़ाइलें लिखें/बनाएं | +| `edit_file` | fs | मौजूदा फ़ाइलों में लक्षित संपादन लागू करें | +| `list_files` | fs | डायरेक्टरी सामग्री सूचीबद्ध करें | +| `search` | fs | पैटर्न द्वारा फ़ाइल सामग्री खोजें | +| `glob` | fs | glob पैटर्न द्वारा फ़ाइलें खोजें | +| `exec` | runtime | शेल कमांड चलाएं (approval workflow के साथ) | +| `web_search` | web | वेब खोजें (Brave, DuckDuckGo) | +| `web_fetch` | web | वेब सामग्री फेच और पार्स करें | +| `memory_search` | memory | दीर्घकालिक मेमोरी खोजें (FTS + vector) | +| `memory_get` | memory | मेमोरी एंट्री प्राप्त करें | +| `skill_search` | — | स्किल खोजें (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | एंटिटी खोजें और नॉलेज ग्राफ संबंध ट्रैवर्स करें | +| `create_image` | media | इमेज जेनरेशन (DashScope, MiniMax) | +| `create_audio` | media | ऑडियो जेनरेशन (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | वीडियो जेनरेशन (MiniMax, Veo) | +| `read_document` | media | दस्तावेज़ पढ़ना (Gemini File API, provider chain) | +| `read_image` | media | इमेज विश्लेषण | +| `read_audio` | media | ऑडियो ट्रांसक्रिप्शन और विश्लेषण | +| `read_video` | media | वीडियो विश्लेषण | +| `message` | messaging | चैनलों पर संदेश भेजें | +| `tts` | — | Text-to-Speech सिंथेसिस | +| `spawn` | — | एक सबएजेंट स्पॉन करें | +| `subagents` | sessions | चल रहे सबएजेंट नियंत्रित करें | +| `team_tasks` | teams | साझा टास्क बोर्ड (list, create, claim, complete, search) | +| `team_message` | teams | टीम मेलबॉक्स (send, broadcast, read) | +| `sessions_list` | sessions | सक्रिय सेशन सूचीबद्ध करें | +| `sessions_history` | sessions | सेशन इतिहास देखें | +| `sessions_send` | sessions | किसी सेशन पर संदेश भेजें | +| `sessions_spawn` | sessions | एक नया सेशन स्पॉन करें | +| `session_status` | sessions | सेशन स्थिति जाँचें | +| `cron` | automation | cron जॉब शेड्यूल और प्रबंधित करें | +| `gateway` | automation | गेटवे प्रशासन | +| `browser` | ui | ब्राउज़र ऑटोमेशन (navigate, click, type, screenshot) | +| `announce_queue` | automation | असिंक्रोनस परिणाम घोषणा (async delegations के लिए) | + +## दस्तावेज़ीकरण + +पूर्ण दस्तावेज़ीकरण **[docs.goclaw.sh](https://docs.goclaw.sh)** पर — या [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) में सोर्स ब्राउज़ करें। + +| अनुभाग | विषय | +|---------|--------| +| [Getting Started](https://docs.goclaw.sh/#what-is-goclaw) | इंस्टॉलेशन, त्वरित प्रारंभ, कॉन्फ़िगरेशन, Web Dashboard टूर | +| [Core Concepts](https://docs.goclaw.sh/#how-goclaw-works) | एजेंट लूप, सेशन, टूल्स, मेमोरी, मल्टी-टेनेंसी | +| [Agents](https://docs.goclaw.sh/#creating-agents) | एजेंट बनाना, कॉन्टेक्स्ट फ़ाइलें, व्यक्तित्व, शेयरिंग और एक्सेस | +| [Providers](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 और | +| [Channels](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agent Teams](https://docs.goclaw.sh/#teams-what-are-teams) | टीमें, टास्क बोर्ड, मैसेजिंग, डेलीगेशन और हैंडऑफ | +| [Advanced](https://docs.goclaw.sh/#custom-tools) | कस्टम टूल्स, MCP, स्किल्स, Cron, सैंडबॉक्स, हुक, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, डेटाबेस, सुरक्षा, ऑब्ज़र्वेबिलिटी, Tailscale | +| [Reference](https://docs.goclaw.sh/#cli-commands) | CLI कमांड, REST API, WebSocket प्रोटोकॉल, एनवायरनमेंट वेरिएबल | + +## परीक्षण + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) +``` + +## प्रोजेक्ट स्थिति + +विस्तृत फीचर स्थिति के लिए [CHANGELOG.md](CHANGELOG.md) देखें, जिसमें शामिल है कि प्रोडक्शन में क्या परीक्षण किया गया है और क्या अभी भी प्रगति में है। + +## आभार + +GoClaw मूल [OpenClaw](https://github.com/openclaw/openclaw) प्रोजेक्ट पर निर्मित है। हम उस आर्किटेक्चर और दृष्टिकोण के आभारी हैं जिसने इस Go पोर्ट को प्रेरित किया। + +## लाइसेंस + +MIT diff --git a/_readmes/README.hu.md b/_readmes/README.hu.md new file mode 100644 index 000000000..ce68450ec --- /dev/null +++ b/_readmes/README.hu.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentáció • + Gyors kezdés • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +A **GoClaw** egy többügynökös AI átjáró, amely összeköti az LLM-eket az eszközeiddel, csatornáiddal és adataiddal — egyetlen Go binárisként telepítve, futásidejű függőségek nélkül. Ügynökcsapatokat és ügynökök közötti delegálást vezényel több mint 20 LLM-szolgáltatón keresztül, teljes többbérlős izolációval. + +Az [OpenClaw](https://github.com/openclaw/openclaw) Go portja, fokozott biztonsággal, többbérlős PostgreSQL-lel és éles környezetre alkalmas megfigyelhetőséggel. + +🌐 **Nyelvek:** +[🇺🇸 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) + +## Mi teszi egyedülállóvá + +- **Ügynökcsapatok és vezénylés** — Megosztott feladattáblával rendelkező csapatok, ügynökök közötti delegálás (szinkron/aszinkron) és hibrid ügynökfelderítés +- **Többbérlős PostgreSQL** — Felhasználónkénti munkaterületek, felhasználónkénti kontextfájlok, titkosított API-kulcsok (AES-256-GCM), izolált munkamenetek +- **Egyetlen bináris** — ~25 MB statikus Go bináris, nincs Node.js futtatókörnyezet, <1 mp indulási idő, fut egy $5-os VPS-en +- **Éles szintű biztonság** — 5 rétegű jogosultságrendszer (átjáró hitelesítés → globális eszközszabályzat → ügynökönkénti → csatornánkénti → csak tulajdonos) plusz sebességkorlátozás, prompt injection felismerés, SSRF védelem, shell tiltási minták és AES-256-GCM titkosítás +- **20+ LLM-szolgáltató** — Anthropic (natív HTTP+SSE prompt gyorsítótárazással), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP és bármilyen OpenAI-kompatibilis végpont +- **7 üzenetküldő csatorna** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Szolgáltatónkénti gondolkodási mód (Anthropic budget tokenek, OpenAI reasoning effort, DashScope thinking budget) streamelési támogatással +- **Heartbeat** — Rendszeres ügynök-bejelentkezések HEARTBEAT.md ellenőrzőlistákon keresztül, OK esetén elnémítással, aktív órákkal, újrapróbálkozási logikával és csatornán keresztüli kézbesítéssel +- **Ütemezés és Cron** — `at`, `every` és cron kifejezések automatizált ügynökfeladatokhoz, sávon alapuló párhuzamossággal +- **Megfigyelhetőség** — Beépített LLM-hívás nyomkövetés spanekkel és prompt gyorsítótár metrikákkal, opcionális OpenTelemetry OTLP exporttal + +## Claw Ökoszisztéma + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Nyelv | TypeScript | Rust | Go | **Go** | +| Bináris méret | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (alap) / **~36 MB** (+ OTel) | +| Docker image | — | — | — | **~50 MB** (Alpine) | +| RAM (tétlen) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Indulás | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Célhardver | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Funkció | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Többbérlős (PostgreSQL) | — | — | — | ✅ | +| MCP integráció | — (ACP-t használ) | — | — | ✅ (stdio/SSE/streamable-http) | +| Ügynökcsapatok | — | — | — | ✅ Feladattábla + postaláda | +| Biztonsági megerősítés | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Alapszintű (workspace korlát, exec tiltás) | ✅ 5 rétegű védelem | +| OTel megfigyelhetőség | ✅ (opt-in bővítmény) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| Prompt gyorsítótárazás | — | — | — | ✅ Anthropic + OpenAI-compat | +| Tudásgráf | — | — | — | ✅ LLM kinyerés + bejárás | +| Skill rendszer | ✅ Embeddings/szemantikus | ✅ SKILL.md + TOML | ✅ Alapszintű | ✅ BM25 + pgvector hibrid | +| Sáv alapú ütemező | ✅ | Korlátozott párhuzamosság | — | ✅ (main/subagent/team/cron) | +| Üzenetküldő csatornák | 37+ | 15+ | 10+ | 7+ | +| Kísérő alkalmazások | macOS, iOS, Android | Python SDK | — | Webes irányítópult | +| Live Canvas / Hang | ✅ (A2UI + TTS/STT) | — | Hangtranszkripció | TTS (4 szolgáltató) | +| LLM-szolgáltatók | 10+ | 8 natív + 29 kompatibilis | 13+ | **20+** | +| Felhasználónkénti munkaterület | ✅ (fájl alapú) | — | — | ✅ (PostgreSQL) | +| Titkosított titkok | — (csak env változók) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM az adatbázisban | + +## Architektúra + +

+ GoClaw Architecture +

+ +## Gyors kezdés + +**Előfeltételek:** Go 1.26+, PostgreSQL 18 pgvectorrel, Docker (opcionális) + +### Forrásból + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktív telepítő varázsló +source .env.local && ./goclaw +``` + +### Docker segítségével + +```bash +# .env generálása automatikusan generált titkokkal +chmod +x prepare-env.sh && ./prepare-env.sh + +# Adj meg legalább egy GOCLAW_*_API_KEY értéket a .env fájlban, majd: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Webes irányítópult: http://localhost:3000 +# Állapotfelmérés: curl http://localhost:18790/health +``` + +Ha a `GOCLAW_*_API_KEY` környezeti változók be vannak állítva, az átjáró interaktív prompt nélkül automatikusan elvégzi az onboardingot — felismeri a szolgáltatót, futtatja a migrációkat és feltölti az alapértelmezett adatokat. + +> A build-változatokért (OTel, Tailscale, Redis), Docker image-címkékért és compose overlay-ekért lásd a [Telepítési útmutatót](https://docs.goclaw.sh/#deploy-docker-compose). + +## Többügynökös vezénylés + +A GoClaw támogatja az ügynökcsapatokat és az ügynökök közötti delegálást — minden ügynök saját identitással, eszközökkel, LLM-szolgáltatóval és kontextfájlokkal fut. + +### Ügynök delegálás + +

+ Agent Delegation +

+ +| Mód | Működése | Legjobb felhasználás | +|------|-------------|----------| +| **Szinkron** | Az A ügynök kérdez a B ügynöktől és **vár** a válaszra | Gyors keresések, tényellenőrzések | +| **Aszinkron** | Az A ügynök kérdez a B ügynöktől és **továbblép**. B később bejelenti az eredményt | Hosszú feladatok, jelentések, mélyanalízis | + +Az ügynökök explicit **jogosultsági kapcsolatokon** keresztül kommunikálnak, irányvezérléssel (`outbound`, `inbound`, `bidirectional`) és párhuzamossági korlátokkal mind kapcsolatonként, mind ügynökönként. + +### Ügynökcsapatok + +

+ Agent Teams Workflow +

+ +- **Megosztott feladattábla** — Feladatok létrehozása, igénylése, befejezése, keresése `blocked_by` függőségekkel +- **Csapat postaláda** — Közvetlen társak közötti üzenetküldés és körüzenet +- **Eszközök**: `team_tasks` feladatkezeléshez, `team_message` postaládához + +> A delegálás részleteiért, jogosultsági kapcsolatokért és párhuzamossági vezérlésért lásd az [Ügynökcsapatok dokumentációt](https://docs.goclaw.sh/#teams-what-are-teams). + +## Beépített eszközök + +| Eszköz | Csoport | Leírás | +| -------------------- | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Fájl tartalmának olvasása (virtuális FS útválasztással) | +| `write_file` | fs | Fájlok írása/létrehozása | +| `edit_file` | fs | Célzott szerkesztések alkalmazása meglévő fájlokon | +| `list_files` | fs | Könyvtár tartalmának listázása | +| `search` | fs | Fájltartalom keresése minta alapján | +| `glob` | fs | Fájlok keresése glob minta alapján | +| `exec` | runtime | Shell parancsok végrehajtása (jóváhagyási munkafolyamattal) | +| `web_search` | web | Webes keresés (Brave, DuckDuckGo) | +| `web_fetch` | web | Webes tartalom lekérése és feldolgozása | +| `memory_search` | memory | Hosszú távú memória keresése (FTS + vector) | +| `memory_get` | memory | Memóriabejegyzések lekérése | +| `skill_search` | — | Skillek keresése (BM25 + embedding hibrid) | +| `knowledge_graph_search` | memory | Entitások keresése és tudásgráf kapcsolatok bejárása | +| `create_image` | media | Képgenerálás (DashScope, MiniMax) | +| `create_audio` | media | Hanggenerálás (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Videógenerálás (MiniMax, Veo) | +| `read_document` | media | Dokumentum olvasása (Gemini File API, szolgáltató lánc) | +| `read_image` | media | Képelemzés | +| `read_audio` | media | Hangátirat és hanganalízis | +| `read_video` | media | Videóelemzés | +| `message` | messaging | Üzenetek küldése csatornákra | +| `tts` | — | Szövegfelolvasás szintézis | +| `spawn` | — | Alügynök indítása | +| `subagents` | sessions | Futó alügynökök vezérlése | +| `team_tasks` | teams | Megosztott feladattábla (listázás, létrehozás, igénylés, befejezés, keresés) | +| `team_message` | teams | Csapat postaláda (küldés, körüzenet, olvasás) | +| `sessions_list` | sessions | Aktív munkamenetek listázása | +| `sessions_history` | sessions | Munkamenet előzmények megtekintése | +| `sessions_send` | sessions | Üzenet küldése egy munkamenetbe | +| `sessions_spawn` | sessions | Új munkamenet indítása | +| `session_status` | sessions | Munkamenet állapotának ellenőrzése | +| `cron` | automation | Cron feladatok ütemezése és kezelése | +| `gateway` | automation | Átjáró adminisztráció | +| `browser` | ui | Böngésző automatizálás (navigálás, kattintás, gépelés, képernyőkép) | +| `announce_queue` | automation | Aszinkron eredmény bejelentés (aszinkron delegáláshoz) | + +## Dokumentáció + +A teljes dokumentáció elérhető a **[docs.goclaw.sh](https://docs.goclaw.sh)** oldalon — vagy böngéssz a forrásban itt: [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Szakasz | Témák | +|---------|--------| +| [Kezdő lépések](https://docs.goclaw.sh/#what-is-goclaw) | Telepítés, Gyors kezdés, Konfiguráció, Webes irányítópult bemutató | +| [Alapfogalmak](https://docs.goclaw.sh/#how-goclaw-works) | Ügynök hurok, Munkamenetek, Eszközök, Memória, Többbérlősség | +| [Ügynökök](https://docs.goclaw.sh/#creating-agents) | Ügynökök létrehozása, Kontextfájlok, Személyiség, Megosztás és hozzáférés | +| [Szolgáltatók](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 további | +| [Csatornák](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Ügynökcsapatok](https://docs.goclaw.sh/#teams-what-are-teams) | Csapatok, Feladattábla, Üzenetküldés, Delegálás és átadás | +| [Haladó](https://docs.goclaw.sh/#custom-tools) | Egyéni eszközök, MCP, Skillek, Cron, Sandbox, Horgok, RBAC | +| [Telepítés](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Adatbázis, Biztonság, Megfigyelhetőség, Tailscale | +| [Hivatkozás](https://docs.goclaw.sh/#cli-commands) | CLI parancsok, REST API, WebSocket protokoll, Környezeti változók | + +## Tesztelés + +```bash +go test ./... # Egységtesztek +go test -v ./tests/integration/ -timeout 120s # Integrációs tesztek (futó átjárót igényel) +``` + +## Projekt állapota + +Részletes funkció-állapotért, beleértve azt, hogy mi lett tesztelve éles környezetben és mi van még folyamatban, lásd a [CHANGELOG.md](CHANGELOG.md) fájlt. + +## Köszönetnyilvánítás + +A GoClaw az eredeti [OpenClaw](https://github.com/openclaw/openclaw) projektre épül. Hálásak vagyunk az architektúráért és a vízióért, amely ezt a Go portot ihlette. + +## Licenc + +MIT diff --git a/_readmes/README.id.md b/_readmes/README.id.md new file mode 100644 index 000000000..6146e9cdf --- /dev/null +++ b/_readmes/README.id.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentasi • + Mulai Cepat • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** adalah gateway AI multi-agen yang menghubungkan LLM ke alat, saluran, dan data Anda — dideploy sebagai satu binary Go tanpa dependensi runtime. GoClaw mengorkestasi tim agen dan delegasi antar-agen ke lebih dari 20 penyedia LLM dengan isolasi multi-tenant penuh. + +Merupakan port Go dari [OpenClaw](https://github.com/openclaw/openclaw) dengan keamanan yang ditingkatkan, PostgreSQL multi-tenant, dan observabilitas kelas produksi. + +🌐 **Bahasa:** +[🇺🇸 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) + +## Apa yang Membuatnya Berbeda + +- **Tim Agen & Orkestrasi** — Tim dengan papan tugas bersama, delegasi antar-agen (sinkron/asinkron), dan penemuan agen hybrid +- **PostgreSQL Multi-Tenant** — Ruang kerja per-pengguna, file konteks per-pengguna, kunci API terenkripsi (AES-256-GCM), sesi terisolasi +- **Satu Binary** — Binary Go statis ~25 MB, tanpa runtime Node.js, startup <1 detik, berjalan di VPS $5 +- **Keamanan Produksi** — Sistem izin 5 lapisan (autentikasi gateway → kebijakan alat global → per-agen → per-saluran → hanya-pemilik) ditambah pembatasan laju, deteksi injeksi prompt, perlindungan SSRF, pola penolakan shell, dan enkripsi AES-256-GCM +- **20+ Penyedia LLM** — Anthropic (HTTP+SSE native dengan prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, dan endpoint kompatibel OpenAI lainnya +- **7 Saluran Pesan** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Mode berpikir per-penyedia (token anggaran Anthropic, upaya penalaran OpenAI, anggaran berpikir DashScope) dengan dukungan streaming +- **Heartbeat** — Pemeriksaan berkala agen melalui daftar periksa HEARTBEAT.md dengan suppress-on-OK, jam aktif, logika percobaan ulang, dan pengiriman saluran +- **Penjadwalan & Cron** — Ekspresi `at`, `every`, dan cron untuk tugas agen otomatis dengan konkurensi berbasis jalur +- **Observabilitas** — Pelacakan panggilan LLM bawaan dengan span dan metrik cache prompt, ekspor OpenTelemetry OTLP opsional + +## Ekosistem Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Bahasa | TypeScript | Rust | Go | **Go** | +| Ukuran binary | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (dasar) / **~36 MB** (+ OTel) | +| Image Docker | — | — | — | **~50 MB** (Alpine) | +| RAM (idle) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Startup | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Target hardware | Mac Mini $599+ | edge $10 | edge $10 | **VPS $5+** | + +| Fitur | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Integrasi MCP | — (menggunakan ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Tim agen | — | — | — | ✅ Papan tugas + kotak surat | +| Penguatan keamanan | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Dasar (workspace restrict, exec deny) | ✅ Pertahanan 5 lapisan | +| Observabilitas OTel | ✅ (ekstensi opsional) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (build tag opsional) | +| Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Graf pengetahuan | — | — | — | ✅ Ekstraksi LLM + traversal | +| Sistem skill | ✅ Embeddings/semantik | ✅ SKILL.md + TOML | ✅ Dasar | ✅ BM25 + pgvector hybrid | +| Penjadwal berbasis jalur | ✅ | Konkurensi terbatas | — | ✅ (main/subagent/team/cron) | +| Saluran pesan | 37+ | 15+ | 10+ | 7+ | +| Aplikasi pendamping | macOS, iOS, Android | Python SDK | — | Dasbor Web | +| Live Canvas / Suara | ✅ (A2UI + TTS/STT) | — | Transkripsi suara | TTS (4 penyedia) | +| Penyedia LLM | 10+ | 8 native + 29 compat | 13+ | **20+** | +| Ruang kerja per-pengguna | ✅ (berbasis file) | — | — | ✅ (PostgreSQL) | +| Rahasia terenkripsi | — (hanya env vars) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM di DB | + +## Arsitektur + +

+ GoClaw Architecture +

+ +## Mulai Cepat + +**Prasyarat:** Go 1.26+, PostgreSQL 18 dengan pgvector, Docker (opsional) + +### Dari Kode Sumber + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Wizard pengaturan interaktif +source .env.local && ./goclaw +``` + +### Dengan Docker + +```bash +# Buat .env dengan rahasia yang di-generate otomatis +chmod +x prepare-env.sh && ./prepare-env.sh + +# Tambahkan minimal satu GOCLAW_*_API_KEY ke .env, lalu: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Dasbor Web di http://localhost:3000 +# Pemeriksaan kesehatan: curl http://localhost:18790/health +``` + +Ketika variabel lingkungan `GOCLAW_*_API_KEY` diatur, gateway akan melakukan onboard otomatis tanpa prompt interaktif — mendeteksi penyedia, menjalankan migrasi, dan menyemai data default. + +> Untuk varian build (OTel, Tailscale, Redis), tag image Docker, dan overlay compose, lihat [Panduan Deployment](https://docs.goclaw.sh/#deploy-docker-compose). + +## Orkestrasi Multi-Agen + +GoClaw mendukung tim agen dan delegasi antar-agen — setiap agen berjalan dengan identitas, alat, penyedia LLM, dan file konteks miliknya sendiri. + +### Delegasi Agen + +

+ Agent Delegation +

+ +| Mode | Cara kerjanya | Terbaik untuk | +|------|-------------|----------| +| **Sinkron** | Agen A bertanya ke Agen B dan **menunggu** jawabannya | Pencarian cepat, pengecekan fakta | +| **Asinkron** | Agen A bertanya ke Agen B dan **melanjutkan**. B mengumumkan nanti | Tugas panjang, laporan, analisis mendalam | + +Agen berkomunikasi melalui **tautan izin** eksplisit dengan kontrol arah (`outbound`, `inbound`, `bidirectional`) dan batas konkurensi di tingkat per-tautan maupun per-agen. + +### Tim Agen + +

+ Agent Teams Workflow +

+ +- **Papan tugas bersama** — Buat, klaim, selesaikan, cari tugas dengan dependensi `blocked_by` +- **Kotak surat tim** — Pesan langsung antar-sesama dan siaran +- **Alat**: `team_tasks` untuk manajemen tugas, `team_message` untuk kotak surat + +> Untuk detail delegasi, tautan izin, dan kontrol konkurensi, lihat [dokumentasi Tim Agen](https://docs.goclaw.sh/#teams-what-are-teams). + +## Alat Bawaan + +| Alat | Grup | Deskripsi | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Membaca isi file (dengan routing FS virtual) | +| `write_file` | fs | Menulis/membuat file | +| `edit_file` | fs | Menerapkan pengeditan terarah pada file yang ada | +| `list_files` | fs | Menampilkan isi direktori | +| `search` | fs | Mencari isi file berdasarkan pola | +| `glob` | fs | Menemukan file berdasarkan pola glob | +| `exec` | runtime | Menjalankan perintah shell (dengan alur persetujuan) | +| `web_search` | web | Mencari di web (Brave, DuckDuckGo) | +| `web_fetch` | web | Mengambil dan memparse konten web | +| `memory_search` | memory | Mencari memori jangka panjang (FTS + vector) | +| `memory_get` | memory | Mengambil entri memori | +| `skill_search` | — | Mencari skill (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | Mencari entitas dan menelusuri relasi graf pengetahuan | +| `create_image` | media | Pembuatan gambar (DashScope, MiniMax) | +| `create_audio` | media | Pembuatan audio (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Pembuatan video (MiniMax, Veo) | +| `read_document` | media | Pembacaan dokumen (Gemini File API, rantai penyedia) | +| `read_image` | media | Analisis gambar | +| `read_audio` | media | Transkripsi dan analisis audio | +| `read_video` | media | Analisis video | +| `message` | messaging | Mengirim pesan ke saluran | +| `tts` | — | Sintesis Text-to-Speech | +| `spawn` | — | Menjalankan subagen | +| `subagents` | sessions | Mengendalikan subagen yang berjalan | +| `team_tasks` | teams | Papan tugas bersama (list, buat, klaim, selesaikan, cari) | +| `team_message` | teams | Kotak surat tim (kirim, siaran, baca) | +| `sessions_list` | sessions | Menampilkan sesi aktif | +| `sessions_history` | sessions | Melihat riwayat sesi | +| `sessions_send` | sessions | Mengirim pesan ke sesi | +| `sessions_spawn` | sessions | Menjalankan sesi baru | +| `session_status` | sessions | Memeriksa status sesi | +| `cron` | automation | Menjadwalkan dan mengelola cron job | +| `gateway` | automation | Administrasi gateway | +| `browser` | ui | Otomasi browser (navigasi, klik, ketik, screenshot) | +| `announce_queue` | automation | Pengumuman hasil asinkron (untuk delegasi asinkron) | + +## Dokumentasi + +Dokumentasi lengkap di **[docs.goclaw.sh](https://docs.goclaw.sh)** — atau jelajahi sumbernya di [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Bagian | Topik | +|---------|--------| +| [Memulai](https://docs.goclaw.sh/#what-is-goclaw) | Instalasi, Mulai Cepat, Konfigurasi, Tur Dasbor Web | +| [Konsep Inti](https://docs.goclaw.sh/#how-goclaw-works) | Loop Agen, Sesi, Alat, Memori, Multi-Tenancy | +| [Agen](https://docs.goclaw.sh/#creating-agents) | Membuat Agen, File Konteks, Kepribadian, Berbagi & Akses | +| [Penyedia](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 lainnya | +| [Saluran](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Tim Agen](https://docs.goclaw.sh/#teams-what-are-teams) | Tim, Papan Tugas, Pesan, Delegasi & Handoff | +| [Lanjutan](https://docs.goclaw.sh/#custom-tools) | Alat Kustom, MCP, Skill, Cron, Sandbox, Hook, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Keamanan, Observabilitas, Tailscale | +| [Referensi](https://docs.goclaw.sh/#cli-commands) | Perintah CLI, REST API, Protokol WebSocket, Variabel Lingkungan | + +## Pengujian + +```bash +go test ./... # Tes unit +go test -v ./tests/integration/ -timeout 120s # Tes integrasi (memerlukan gateway yang berjalan) +``` + +## Status Proyek + +Lihat [CHANGELOG.md](CHANGELOG.md) untuk status fitur terperinci termasuk apa yang telah diuji di produksi dan apa yang masih dalam proses. + +## Ucapan Terima Kasih + +GoClaw dibangun di atas proyek [OpenClaw](https://github.com/openclaw/openclaw) yang asli. Kami berterima kasih atas arsitektur dan visi yang menginspirasi port Go ini. + +## Lisensi + +MIT diff --git a/_readmes/README.it.md b/_readmes/README.it.md new file mode 100644 index 000000000..88daae511 --- /dev/null +++ b/_readmes/README.it.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Documentazione • + Avvio Rapido • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** è un gateway AI multi-agente che connette gli LLM ai tuoi strumenti, canali e dati — distribuito come singolo binario Go senza dipendenze runtime. Orchestra team di agenti e deleghe inter-agente su 20+ provider LLM con completo isolamento multi-tenant. + +Un port Go di [OpenClaw](https://github.com/openclaw/openclaw) con sicurezza migliorata, PostgreSQL multi-tenant e osservabilità di livello produzione. + +🌐 **Lingue:** +[🇺🇸 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) + +## Cosa lo Rende Diverso + +- **Team di Agenti e Orchestrazione** — Team con bacheche delle attività condivise, delega inter-agente (sincrona/asincrona) e scoperta ibrida degli agenti +- **PostgreSQL Multi-Tenant** — Workspace per utente, file di contesto per utente, chiavi API cifrate (AES-256-GCM), sessioni isolate +- **Binario Singolo** — ~25 MB binario Go statico, nessun runtime Node.js, avvio in <1s, funziona su un VPS da $5 +- **Sicurezza di Produzione** — Sistema di permessi a 5 livelli (autenticazione gateway → policy globale degli strumenti → per-agente → per-canale → solo proprietario) più limitazione della frequenza, rilevamento di prompt injection, protezione SSRF, pattern di blocco shell e cifratura AES-256-GCM +- **20+ Provider LLM** — Anthropic (HTTP+SSE nativo con caching dei prompt), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP e qualsiasi endpoint compatibile con OpenAI +- **7 Canali di Messaggistica** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Modalità di pensiero per provider (token di budget Anthropic, sforzo di ragionamento OpenAI, budget di pensiero DashScope) con supporto allo streaming +- **Heartbeat** — Check-in periodici degli agenti tramite checklist HEARTBEAT.md con soppressione in caso di OK, ore attive, logica di retry e consegna sul canale +- **Pianificazione e Cron** — Espressioni `at`, `every` e cron per attività automatizzate degli agenti con concorrenza basata su corsie +- **Osservabilità** — Tracciamento integrato delle chiamate LLM con span e metriche di cache dei prompt, esportazione OTLP OpenTelemetry opzionale + +## Ecosistema Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Linguaggio | TypeScript | Rust | Go | **Go** | +| Dimensione binario | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Immagine Docker | — | — | — | **~50 MB** (Alpine) | +| RAM (inattivo) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Avvio | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Hardware target | Mac Mini $599+ | edge $10 | edge $10 | **VPS $5+** | + +| Funzionalità | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ----------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Integrazione MCP | — (usa ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Team di agenti | — | — | — | ✅ Bacheca attività + mailbox | +| Sicurezza rafforzata | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Base (restrizione workspace, exec deny) | ✅ Difesa a 5 livelli | +| Osservabilità OTel | ✅ (estensione opzionale) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (tag build opzionale) | +| Caching dei prompt | — | — | — | ✅ Anthropic + OpenAI-compat | +| Grafo della conoscenza | — | — | — | ✅ Estrazione LLM + traversal | +| Sistema di skill | ✅ Embedding/semantico | ✅ SKILL.md + TOML | ✅ Base | ✅ BM25 + pgvector ibrido | +| Scheduler basato su corsie | ✅ | Concorrenza limitata | — | ✅ (main/subagent/team/cron) | +| Canali di messaggistica | 37+ | 15+ | 10+ | 7+ | +| App companion | macOS, iOS, Android | Python SDK | — | Dashboard web | +| Live Canvas / Voce | ✅ (A2UI + TTS/STT) | — | Trascrizione vocale | TTS (4 provider) | +| Provider LLM | 10+ | 8 nativi + 29 compat | 13+ | **20+** | +| Workspace per utente | ✅ (basato su file) | — | — | ✅ (PostgreSQL) | +| Segreti cifrati | — (solo variabili env) | ✅ ChaCha20-Poly1305 | — (JSON in chiaro) | ✅ AES-256-GCM nel DB | + +## Architettura + +

+ GoClaw Architecture +

+ +## Avvio Rapido + +**Prerequisiti:** Go 1.26+, PostgreSQL 18 con pgvector, Docker (opzionale) + +### Dal Sorgente + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Procedura guidata di configurazione interattiva +source .env.local && ./goclaw +``` + +### Con Docker + +```bash +# Genera .env con segreti auto-generati +chmod +x prepare-env.sh && ./prepare-env.sh + +# Aggiungi almeno un GOCLAW_*_API_KEY a .env, poi: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard su http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +Quando le variabili d'ambiente `GOCLAW_*_API_KEY` sono impostate, il gateway esegue l'onboarding automaticamente senza prompt interattivi — rileva il provider, esegue le migrazioni e inizializza i dati predefiniti. + +> Per varianti di build (OTel, Tailscale, Redis), tag immagini Docker e overlay compose, consulta la [Guida al Deployment](https://docs.goclaw.sh/#deploy-docker-compose). + +## Orchestrazione Multi-Agente + +GoClaw supporta team di agenti e delega inter-agente — ogni agente opera con la propria identità, strumenti, provider LLM e file di contesto. + +### Delega degli Agenti + +

+ Agent Delegation +

+ +| Modalità | Come funziona | Ideale per | +|----------|---------------|------------| +| **Sincrona** | L'agente A chiede all'agente B e **attende** la risposta | Ricerche rapide, verifiche di fatti | +| **Asincrona** | L'agente A chiede all'agente B e **prosegue**. B annuncia il risultato in seguito | Compiti lunghi, report, analisi approfondite | + +Gli agenti comunicano tramite **link di permesso** espliciti con controllo della direzione (`outbound`, `inbound`, `bidirectional`) e limiti di concorrenza sia a livello di link che di agente. + +### Team di Agenti + +

+ Agent Teams Workflow +

+ +- **Bacheca delle attività condivisa** — Crea, prendi in carico, completa e cerca attività con dipendenze `blocked_by` +- **Mailbox del team** — Messaggistica diretta tra pari e broadcast +- **Strumenti**: `team_tasks` per la gestione delle attività, `team_message` per la mailbox + +> Per i dettagli sulla delega, i link di permesso e il controllo della concorrenza, consulta la [documentazione sui Team di Agenti](https://docs.goclaw.sh/#teams-what-are-teams). + +## Strumenti Integrati + +| Strumento | Gruppo | Descrizione | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Legge il contenuto dei file (con routing FS virtuale) | +| `write_file` | fs | Scrive/crea file | +| `edit_file` | fs | Applica modifiche mirate a file esistenti | +| `list_files` | fs | Elenca il contenuto delle directory | +| `search` | fs | Cerca nel contenuto dei file per pattern | +| `glob` | fs | Trova file tramite pattern glob | +| `exec` | runtime | Esegue comandi shell (con flusso di approvazione) | +| `web_search` | web | Cerca sul web (Brave, DuckDuckGo) | +| `web_fetch` | web | Recupera e analizza contenuto web | +| `memory_search` | memory | Cerca nella memoria a lungo termine (FTS + vettoriale) | +| `memory_get` | memory | Recupera voci dalla memoria | +| `skill_search` | — | Cerca skill (ibrido BM25 + embedding) | +| `knowledge_graph_search` | memory | Cerca entità e attraversa relazioni nel grafo della conoscenza | +| `create_image` | media | Generazione di immagini (DashScope, MiniMax) | +| `create_audio` | media | Generazione audio (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Generazione video (MiniMax, Veo) | +| `read_document` | media | Lettura documenti (Gemini File API, catena provider) | +| `read_image` | media | Analisi di immagini | +| `read_audio` | media | Trascrizione e analisi audio | +| `read_video` | media | Analisi video | +| `message` | messaging | Invia messaggi ai canali | +| `tts` | — | Sintesi Text-to-Speech | +| `spawn` | — | Avvia un subagente | +| `subagents` | sessions | Controlla i subagenti in esecuzione | +| `team_tasks` | teams | Bacheca attività condivisa (elenca, crea, prendi in carico, completa, cerca) | +| `team_message` | teams | Mailbox del team (invia, broadcast, leggi) | +| `sessions_list` | sessions | Elenca le sessioni attive | +| `sessions_history` | sessions | Visualizza la cronologia delle sessioni | +| `sessions_send` | sessions | Invia un messaggio a una sessione | +| `sessions_spawn` | sessions | Avvia una nuova sessione | +| `session_status` | sessions | Controlla lo stato della sessione | +| `cron` | automation | Pianifica e gestisce job cron | +| `gateway` | automation | Amministrazione del gateway | +| `browser` | ui | Automazione del browser (naviga, clicca, digita, screenshot) | +| `announce_queue` | automation | Annuncio asincrono dei risultati (per deleghe asincrone) | + +## Documentazione + +Documentazione completa su **[docs.goclaw.sh](https://docs.goclaw.sh)** — oppure sfoglia il sorgente in [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sezione | Argomenti | +|---------|-----------| +| [Per Iniziare](https://docs.goclaw.sh/#what-is-goclaw) | Installazione, Avvio Rapido, Configurazione, Tour della Dashboard Web | +| [Concetti di Base](https://docs.goclaw.sh/#how-goclaw-works) | Loop degli Agenti, Sessioni, Strumenti, Memoria, Multi-Tenancy | +| [Agenti](https://docs.goclaw.sh/#creating-agents) | Creazione di Agenti, File di Contesto, Personalità, Condivisione e Accesso | +| [Provider](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 altri | +| [Canali](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Team di Agenti](https://docs.goclaw.sh/#teams-what-are-teams) | Team, Bacheca Attività, Messaggistica, Delega e Handoff | +| [Avanzato](https://docs.goclaw.sh/#custom-tools) | Strumenti Personalizzati, MCP, Skill, Cron, Sandbox, Hook, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Sicurezza, Osservabilità, Tailscale | +| [Riferimento](https://docs.goclaw.sh/#cli-commands) | Comandi CLI, REST API, Protocollo WebSocket, Variabili d'Ambiente | + +## Testing + +```bash +go test ./... # Unit test +go test -v ./tests/integration/ -timeout 120s # Integration test (richiede gateway in esecuzione) +``` + +## Stato del Progetto + +Consulta [CHANGELOG.md](CHANGELOG.md) per lo stato dettagliato delle funzionalità, incluso ciò che è stato testato in produzione e ciò che è ancora in corso. + +## Ringraziamenti + +GoClaw è costruito sul progetto originale [OpenClaw](https://github.com/openclaw/openclaw). Siamo grati per l'architettura e la visione che hanno ispirato questo port Go. + +## Licenza + +MIT diff --git a/_readmes/README.ja.md b/_readmes/README.ja.md new file mode 100644 index 000000000..d9b520815 --- /dev/null +++ b/_readmes/README.ja.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ ドキュメント • + クイックスタート • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** は、LLM をあなたのツール、チャンネル、データに接続するマルチエージェント AI ゲートウェイです。ランタイム依存ゼロの単一 Go バイナリとしてデプロイでき、20以上の LLM プロバイダにまたがるエージェントチームとエージェント間デリゲーションを、完全なマルチテナント分離のもとでオーケストレーションします。 + +セキュリティ強化、マルチテナント PostgreSQL、本番グレードのオブザーバビリティを備えた [OpenClaw](https://github.com/openclaw/openclaw) の Go 移植版です。 + +🌐 **Languages:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## 他との違い + +- **エージェントチームとオーケストレーション** — 共有タスクボード、エージェント間デリゲーション(同期/非同期)、ハイブリッドエージェントディスカバリを備えたチーム +- **マルチテナント PostgreSQL** — ユーザーごとのワークスペース、ユーザーごとのコンテキストファイル、暗号化された API キー(AES-256-GCM)、分離されたセッション +- **単一バイナリ** — 約 25 MB の静的 Go バイナリ、Node.js ランタイム不要、1秒未満で起動、$5 の VPS で動作 +- **本番グレードのセキュリティ** — 5層のパーミッションシステム(ゲートウェイ認証 → グローバルツールポリシー → エージェントごと → チャンネルごと → オーナー限定)に加え、レート制限、プロンプトインジェクション検出、SSRF 保護、シェル拒否パターン、AES-256-GCM 暗号化 +- **20以上の LLM プロバイダ** — Anthropic(プロンプトキャッシュ付きネイティブ HTTP+SSE)、OpenAI、OpenRouter、Groq、DeepSeek、Gemini、Mistral、xAI、MiniMax、Cohere、Perplexity、DashScope、Bailian、Zai、Ollama、Ollama Cloud、Claude CLI、Codex、ACP、および OpenAI 互換エンドポイント +- **7つのメッセージングチャンネル** — Telegram、Discord、Slack、Zalo OA、Zalo Personal、Feishu/Lark、WhatsApp +- **Extended Thinking** — プロバイダごとの思考モード(Anthropic バジェットトークン、OpenAI 推論努力度、DashScope 思考バジェット)とストリーミングサポート +- **Heartbeat** — HEARTBEAT.md チェックリストによる定期的なエージェントチェックイン、正常時の抑制、アクティブ時間、リトライロジック、チャンネル配信 +- **スケジューリングと Cron** — 自動化されたエージェントタスクのための `at`、`every`、cron 式、レーンベースの並列実行 +- **オブザーバビリティ** — スパンとプロンプトキャッシュメトリクスを使った LLM コールトレーシングを内蔵、オプションで OpenTelemetry OTLP エクスポート + +## Claw エコシステム + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| 言語 | TypeScript | Rust | Go | **Go** | +| バイナリサイズ | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Docker イメージ | — | — | — | **~50 MB** (Alpine) | +| RAM(アイドル) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| 起動時間 | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| 対象ハードウェア| $599+ Mac Mini | $10 エッジ| $10 エッジ| **$5 VPS+** | + +| 機能 | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| マルチテナント(PostgreSQL) | — | — | — | ✅ | +| MCP 統合 | — (uses ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| エージェントチーム | — | — | — | ✅ タスクボード + メールボックス | +| セキュリティ強化 | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Basic (workspace restrict, exec deny) | ✅ 5層防御 | +| OTel オブザーバビリティ | ✅ (opt-in extension) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| プロンプトキャッシュ | — | — | — | ✅ Anthropic + OpenAI-compat | +| ナレッジグラフ | — | — | — | ✅ LLM 抽出 + トラバーサル | +| スキルシステム | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ Basic | ✅ BM25 + pgvector ハイブリッド | +| レーンベーススケジューラ | ✅ | Bounded concurrency | — | ✅ (main/subagent/team/cron) | +| メッセージングチャンネル | 37+ | 15+ | 10+ | 7+ | +| コンパニオンアプリ | macOS, iOS, Android | Python SDK | — | Web ダッシュボード | +| ライブキャンバス / 音声 | ✅ (A2UI + TTS/STT) | — | Voice transcription | TTS (4 providers) | +| LLM プロバイダ | 10+ | 8 native + 29 compat | 13+ | **20+** | +| ユーザーごとのワークスペース | ✅ (file-based) | — | — | ✅ (PostgreSQL) | +| 暗号化されたシークレット | — (env vars only) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM in DB | + +## アーキテクチャ + +

+ GoClaw Architecture +

+ +## クイックスタート + +**前提条件:** Go 1.26+、pgvector 付き PostgreSQL 18、Docker(オプション) + +### ソースから + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Docker を使用する場合 + +```bash +# Generate .env with auto-generated secrets +chmod +x prepare-env.sh && ./prepare-env.sh + +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +`GOCLAW_*_API_KEY` 環境変数が設定されている場合、ゲートウェイはインタラクティブなプロンプトなしで自動オンボーディングを行います — プロバイダを検出し、マイグレーションを実行し、デフォルトデータをシードします。 + +> ビルドバリアント(OTel、Tailscale、Redis)、Docker イメージタグ、compose オーバーレイについては、[デプロイメントガイド](https://docs.goclaw.sh/#deploy-docker-compose)を参照してください。 + +## マルチエージェントオーケストレーション + +GoClaw はエージェントチームとエージェント間デリゲーションをサポートしており、各エージェントは独自のアイデンティティ、ツール、LLM プロバイダ、コンテキストファイルで動作します。 + +### エージェントデリゲーション + +

+ Agent Delegation +

+ +| モード | 動作方法 | 最適な用途 | +|--------|----------|------------| +| **同期(Sync)** | エージェント A がエージェント B に問い合わせ、回答を**待機する** | クイックルックアップ、ファクトチェック | +| **非同期(Async)** | エージェント A がエージェント B に問い合わせ、**処理を続ける**。B は後でアナウンス | 長時間タスク、レポート、詳細分析 | + +エージェントは、方向制御(`outbound`、`inbound`、`bidirectional`)とリンクごと・エージェントごとの並列実行制限を持つ明示的な**パーミッションリンク**を通じて通信します。 + +### エージェントチーム + +

+ Agent Teams Workflow +

+ +- **共有タスクボード** — `blocked_by` 依存関係を持つタスクの作成、クレーム、完了、検索 +- **チームメールボックス** — ピアツーピアの直接メッセージとブロードキャスト +- **ツール**: タスク管理用の `team_tasks`、メールボックス用の `team_message` + +> デリゲーションの詳細、パーミッションリンク、並列実行制御については、[エージェントチームのドキュメント](https://docs.goclaw.sh/#teams-what-are-teams)を参照してください。 + +## 組み込みツール + +| ツール | グループ | 説明 | +| -------------------- | ------------- | -------------------------------------------------------------- | +| `read_file` | fs | ファイルの内容を読む(仮想 FS ルーティング付き) | +| `write_file` | fs | ファイルの書き込み/作成 | +| `edit_file` | fs | 既存ファイルへのターゲット編集を適用 | +| `list_files` | fs | ディレクトリの内容を一覧表示 | +| `search` | fs | パターンでファイル内容を検索 | +| `glob` | fs | glob パターンでファイルを検索 | +| `exec` | runtime | シェルコマンドの実行(承認ワークフロー付き) | +| `web_search` | web | ウェブ検索(Brave、DuckDuckGo) | +| `web_fetch` | web | ウェブコンテンツの取得と解析 | +| `memory_search` | memory | 長期メモリの検索(FTS + ベクトル) | +| `memory_get` | memory | メモリエントリの取得 | +| `skill_search` | — | スキルの検索(BM25 + 埋め込みハイブリッド) | +| `knowledge_graph_search` | memory | エンティティを検索し、ナレッジグラフの関係をトラバース | +| `create_image` | media | 画像生成(DashScope、MiniMax) | +| `create_audio` | media | 音声生成(OpenAI、ElevenLabs、MiniMax、Suno) | +| `create_video` | media | 動画生成(MiniMax、Veo) | +| `read_document` | media | ドキュメントの読み取り(Gemini File API、プロバイダチェーン) | +| `read_image` | media | 画像分析 | +| `read_audio` | media | 音声の文字起こしと分析 | +| `read_video` | media | 動画分析 | +| `message` | messaging | チャンネルへのメッセージ送信 | +| `tts` | — | テキスト読み上げ(Text-to-Speech)合成 | +| `spawn` | — | サブエージェントの生成 | +| `subagents` | sessions | 実行中のサブエージェントを制御 | +| `team_tasks` | teams | 共有タスクボード(一覧表示、作成、クレーム、完了、検索) | +| `team_message` | teams | チームメールボックス(送信、ブロードキャスト、読み取り) | +| `sessions_list` | sessions | アクティブなセッションの一覧表示 | +| `sessions_history` | sessions | セッション履歴の表示 | +| `sessions_send` | sessions | セッションへのメッセージ送信 | +| `sessions_spawn` | sessions | 新しいセッションの生成 | +| `session_status` | sessions | セッションステータスの確認 | +| `cron` | automation | cron ジョブのスケジューリングと管理 | +| `gateway` | automation | ゲートウェイ管理 | +| `browser` | ui | ブラウザ自動化(ナビゲート、クリック、入力、スクリーンショット)| +| `announce_queue` | automation | 非同期結果のアナウンス(非同期デリゲーション用) | + +## ドキュメント + +完全なドキュメントは **[docs.goclaw.sh](https://docs.goclaw.sh)** で確認できます。またはソースを [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) で参照してください。 + +| セクション | トピック | +|------------|----------| +| [はじめに](https://docs.goclaw.sh/#what-is-goclaw) | インストール、クイックスタート、設定、Web ダッシュボードツアー | +| [コアコンセプト](https://docs.goclaw.sh/#how-goclaw-works) | エージェントループ、セッション、ツール、メモリ、マルチテナンシー | +| [エージェント](https://docs.goclaw.sh/#creating-agents) | エージェントの作成、コンテキストファイル、パーソナリティ、共有とアクセス | +| [プロバイダ](https://docs.goclaw.sh/#providers-overview) | Anthropic、OpenAI、OpenRouter、Gemini、DeepSeek、その他 15 以上 | +| [チャンネル](https://docs.goclaw.sh/#channels-overview) | Telegram、Discord、Slack、Feishu、Zalo、WhatsApp、WebSocket | +| [エージェントチーム](https://docs.goclaw.sh/#teams-what-are-teams) | チーム、タスクボード、メッセージング、デリゲーションとハンドオフ | +| [上級](https://docs.goclaw.sh/#custom-tools) | カスタムツール、MCP、スキル、Cron、サンドボックス、フック、RBAC | +| [デプロイメント](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose、データベース、セキュリティ、オブザーバビリティ、Tailscale | +| [リファレンス](https://docs.goclaw.sh/#cli-commands) | CLI コマンド、REST API、WebSocket プロトコル、環境変数 | + +## テスト + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) +``` + +## プロジェクトステータス + +本番環境でテスト済みの内容と進行中の内容を含む詳細な機能ステータスは [CHANGELOG.md](CHANGELOG.md) を参照してください。 + +## 謝辞 + +GoClaw はオリジナルの [OpenClaw](https://github.com/openclaw/openclaw) プロジェクトをベースに構築されています。この Go 移植版を着想させたアーキテクチャとビジョンに感謝します。 + +## ライセンス + +MIT diff --git a/_readmes/README.ko.md b/_readmes/README.ko.md new file mode 100644 index 000000000..44526fdeb --- /dev/null +++ b/_readmes/README.ko.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ 문서 • + 빠른 시작 • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw**는 LLM을 도구, 채널, 데이터에 연결하는 멀티 에이전트 AI 게이트웨이입니다 — 런타임 의존성 없이 단일 Go 바이너리로 배포됩니다. 20개 이상의 LLM 공급자에서 완전한 멀티 테넌트 격리와 함께 에이전트 팀과 에이전트 간 위임을 조율합니다. + +향상된 보안, 멀티 테넌트 PostgreSQL, 프로덕션 수준의 관측 가능성을 갖춘 [OpenClaw](https://github.com/openclaw/openclaw)의 Go 포트입니다. + +🌐 **Languages:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## 차별점 + +- **에이전트 팀 & 오케스트레이션** — 공유 태스크 보드, 에이전트 간 위임(동기/비동기), 하이브리드 에이전트 디스커버리를 갖춘 팀 +- **멀티 테넌트 PostgreSQL** — 사용자별 워크스페이스, 사용자별 컨텍스트 파일, 암호화된 API 키(AES-256-GCM), 격리된 세션 +- **단일 바이너리** — 약 25MB 정적 Go 바이너리, Node.js 런타임 불필요, 1초 미만 시작, $5 VPS에서 실행 가능 +- **프로덕션 보안** — 5계층 권한 시스템(게이트웨이 인증 → 전역 도구 정책 → 에이전트별 → 채널별 → 소유자 전용)과 속도 제한, 프롬프트 인젝션 감지, SSRF 보호, 셸 차단 패턴, AES-256-GCM 암호화 +- **20개 이상의 LLM 공급자** — Anthropic(네이티브 HTTP+SSE, 프롬프트 캐싱), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, 그리고 모든 OpenAI 호환 엔드포인트 +- **7개 메시징 채널** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — 공급자별 사고 모드(Anthropic 예산 토큰, OpenAI 추론 노력, DashScope 사고 예산)와 스트리밍 지원 +- **Heartbeat** — HEARTBEAT.md 체크리스트를 통한 주기적 에이전트 체크인(정상 시 억제, 활성 시간, 재시도 로직, 채널 전달) +- **스케줄링 & Cron** — 레인 기반 동시성으로 자동화된 에이전트 작업을 위한 `at`, `every`, cron 표현식 +- **관측 가능성** — 스팬과 프롬프트 캐시 메트릭이 포함된 내장 LLM 호출 추적, 선택적 OpenTelemetry OTLP 내보내기 + +## Claw 에코시스템 + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| 언어 | TypeScript | Rust | Go | **Go** | +| 바이너리 크기 | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (기본) / **~36 MB** (+ OTel) | +| Docker 이미지 | — | — | — | **~50 MB** (Alpine) | +| RAM (유휴) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| 시작 시간 | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| 대상 하드웨어 | $599+ Mac Mini | $10 엣지 | $10 엣지 | **$5 VPS+** | + +| 기능 | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| 멀티 테넌트 (PostgreSQL) | — | — | — | ✅ | +| MCP 통합 | — (ACP 사용) | — | — | ✅ (stdio/SSE/streamable-http) | +| 에이전트 팀 | — | — | — | ✅ 태스크 보드 + 메일박스 | +| 보안 강화 | ✅ (SSRF, 경로 순회, 인젝션) | ✅ (샌드박스, 속도 제한, 인젝션, 페어링) | 기본 (워크스페이스 제한, exec 차단) | ✅ 5계층 방어 | +| OTel 관측 가능성 | ✅ (옵트인 확장) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (옵트인 빌드 태그) | +| 프롬프트 캐싱 | — | — | — | ✅ Anthropic + OpenAI 호환 | +| 지식 그래프 | — | — | — | ✅ LLM 추출 + 순회 | +| 스킬 시스템 | ✅ 임베딩/시맨틱 | ✅ SKILL.md + TOML | ✅ 기본 | ✅ BM25 + pgvector 하이브리드 | +| 레인 기반 스케줄러 | ✅ | 제한된 동시성 | — | ✅ (main/subagent/team/cron) | +| 메시징 채널 | 37+ | 15+ | 10+ | 7+ | +| 동반 앱 | macOS, iOS, Android | Python SDK | — | 웹 대시보드 | +| 라이브 캔버스 / 음성 | ✅ (A2UI + TTS/STT) | — | 음성 전사 | TTS (4개 공급자) | +| LLM 공급자 | 10+ | 8 네이티브 + 29 호환 | 13+ | **20+** | +| 사용자별 워크스페이스 | ✅ (파일 기반) | — | — | ✅ (PostgreSQL) | +| 암호화된 시크릿 | — (환경 변수만) | ✅ ChaCha20-Poly1305 | — (평문 JSON) | ✅ DB의 AES-256-GCM | + +## 아키텍처 + +

+ GoClaw Architecture +

+ +## 빠른 시작 + +**사전 요구사항:** Go 1.26+, pgvector가 포함된 PostgreSQL 18, Docker (선택 사항) + +### 소스에서 빌드 + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Docker 사용 + +```bash +# Generate .env with auto-generated secrets +chmod +x prepare-env.sh && ./prepare-env.sh + +# Add at least one GOCLAW_*_API_KEY to .env, then: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard at http://localhost:3000 +# Health check: curl http://localhost:18790/health +``` + +`GOCLAW_*_API_KEY` 환경 변수가 설정되면, 게이트웨이는 대화형 프롬프트 없이 자동으로 온보딩됩니다 — 공급자를 감지하고, 마이그레이션을 실행하며, 기본 데이터를 시드합니다. + +> 빌드 변형(OTel, Tailscale, Redis), Docker 이미지 태그, compose 오버레이에 대해서는 [배포 가이드](https://docs.goclaw.sh/#deploy-docker-compose)를 참조하세요. + +## 멀티 에이전트 오케스트레이션 + +GoClaw는 에이전트 팀과 에이전트 간 위임을 지원합니다 — 각 에이전트는 자체 ID, 도구, LLM 공급자, 컨텍스트 파일로 실행됩니다. + +### 에이전트 위임 + +

+ Agent Delegation +

+ +| 모드 | 동작 방식 | 적합한 경우 | +|------|-------------|----------| +| **동기(Sync)** | 에이전트 A가 에이전트 B에게 요청하고 답변을 **기다림** | 빠른 조회, 사실 확인 | +| **비동기(Async)** | 에이전트 A가 에이전트 B에게 요청하고 **계속 진행**. B가 나중에 알림 | 장시간 작업, 보고서, 심층 분석 | + +에이전트는 방향 제어(`outbound`, `inbound`, `bidirectional`)와 링크별 및 에이전트별 동시성 제한이 있는 명시적인 **권한 링크**를 통해 통신합니다. + +### 에이전트 팀 + +

+ Agent Teams Workflow +

+ +- **공유 태스크 보드** — `blocked_by` 의존성이 있는 태스크 생성, 클레임, 완료, 검색 +- **팀 메일박스** — 직접 P2P 메시지 및 브로드캐스트 +- **도구**: 태스크 관리를 위한 `team_tasks`, 메일박스를 위한 `team_message` + +> 위임 세부 사항, 권한 링크, 동시성 제어에 대해서는 [에이전트 팀 문서](https://docs.goclaw.sh/#teams-what-are-teams)를 참조하세요. + +## 내장 도구 + +| 도구 | 그룹 | 설명 | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | 파일 내용 읽기 (가상 FS 라우팅 포함) | +| `write_file` | fs | 파일 쓰기/생성 | +| `edit_file` | fs | 기존 파일에 대상 편집 적용 | +| `list_files` | fs | 디렉토리 내용 나열 | +| `search` | fs | 패턴으로 파일 내용 검색 | +| `glob` | fs | glob 패턴으로 파일 찾기 | +| `exec` | runtime | 셸 명령 실행 (승인 워크플로우 포함) | +| `web_search` | web | 웹 검색 (Brave, DuckDuckGo) | +| `web_fetch` | web | 웹 콘텐츠 가져오기 및 파싱 | +| `memory_search` | memory | 장기 기억 검색 (FTS + 벡터) | +| `memory_get` | memory | 기억 항목 검색 | +| `skill_search` | — | 스킬 검색 (BM25 + 임베딩 하이브리드) | +| `knowledge_graph_search` | memory | 엔티티 검색 및 지식 그래프 관계 순회 | +| `create_image` | media | 이미지 생성 (DashScope, MiniMax) | +| `create_audio` | media | 오디오 생성 (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | 비디오 생성 (MiniMax, Veo) | +| `read_document` | media | 문서 읽기 (Gemini File API, 공급자 체인) | +| `read_image` | media | 이미지 분석 | +| `read_audio` | media | 오디오 전사 및 분석 | +| `read_video` | media | 비디오 분석 | +| `message` | messaging | 채널에 메시지 전송 | +| `tts` | — | Text-to-Speech 합성 | +| `spawn` | — | 서브에이전트 생성 | +| `subagents` | sessions | 실행 중인 서브에이전트 제어 | +| `team_tasks` | teams | 공유 태스크 보드 (나열, 생성, 클레임, 완료, 검색) | +| `team_message` | teams | 팀 메일박스 (전송, 브로드캐스트, 읽기) | +| `sessions_list` | sessions | 활성 세션 나열 | +| `sessions_history` | sessions | 세션 기록 보기 | +| `sessions_send` | sessions | 세션에 메시지 전송 | +| `sessions_spawn` | sessions | 새 세션 생성 | +| `session_status` | sessions | 세션 상태 확인 | +| `cron` | automation | cron 작업 스케줄링 및 관리 | +| `gateway` | automation | 게이트웨이 관리 | +| `browser` | ui | 브라우저 자동화 (탐색, 클릭, 타이핑, 스크린샷) | +| `announce_queue` | automation | 비동기 결과 알림 (비동기 위임용) | + +## 문서 + +전체 문서는 **[docs.goclaw.sh](https://docs.goclaw.sh)**에서 — 또는 [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs)의 소스를 탐색하세요. + +| 섹션 | 주제 | +|---------|--------| +| [시작하기](https://docs.goclaw.sh/#what-is-goclaw) | 설치, 빠른 시작, 구성, 웹 대시보드 둘러보기 | +| [핵심 개념](https://docs.goclaw.sh/#how-goclaw-works) | 에이전트 루프, 세션, 도구, 기억, 멀티 테넌시 | +| [에이전트](https://docs.goclaw.sh/#creating-agents) | 에이전트 생성, 컨텍스트 파일, 개성, 공유 & 접근 | +| [공급자](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15개 이상 | +| [채널](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [에이전트 팀](https://docs.goclaw.sh/#teams-what-are-teams) | 팀, 태스크 보드, 메시징, 위임 & 핸드오프 | +| [고급](https://docs.goclaw.sh/#custom-tools) | 커스텀 도구, MCP, 스킬, Cron, 샌드박스, 훅, RBAC | +| [배포](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, 데이터베이스, 보안, 관측 가능성, Tailscale | +| [레퍼런스](https://docs.goclaw.sh/#cli-commands) | CLI 명령, REST API, WebSocket 프로토콜, 환경 변수 | + +## 테스트 + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (requires running gateway) +``` + +## 프로젝트 상태 + +프로덕션에서 테스트된 내용과 진행 중인 내용을 포함한 상세 기능 상태는 [CHANGELOG.md](CHANGELOG.md)를 참조하세요. + +## 감사의 말 + +GoClaw는 원본 [OpenClaw](https://github.com/openclaw/openclaw) 프로젝트를 기반으로 만들어졌습니다. 이 Go 포트에 영감을 준 아키텍처와 비전에 감사드립니다. + +## 라이선스 + +MIT diff --git a/_readmes/README.nb.md b/_readmes/README.nb.md new file mode 100644 index 000000000..b919cccd7 --- /dev/null +++ b/_readmes/README.nb.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentasjon • + Hurtigstart • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** er en AI-gateway for flere agenter som kobler LLM-er til verktøyene, kanalene og dataene dine — distribuert som én enkelt Go-binærfil uten kjøretidsavhengigheter. Den orkestrerer agentteam og delegering mellom agenter på tvers av 20+ LLM-leverandører med full flerleietaker-isolasjon. + +En Go-port av [OpenClaw](https://github.com/openclaw/openclaw) med forbedret sikkerhet, flerleietaker PostgreSQL og produksjonsklar observerbarhet. + +🌐 **Språk:** +[🇺🇸 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) + +## Hva gjør det annerledes + +- **Agentteam og orkestrering** — Team med delte oppgavetavler, delegering mellom agenter (synkron/asynkron) og hybrid agentoppdagelse +- **Flerleietaker PostgreSQL** — Arbeidsområde per bruker, kontekstfiler per bruker, krypterte API-nøkler (AES-256-GCM), isolerte sesjoner +- **Én enkelt binærfil** — ~25 MB statisk Go-binær, ingen Node.js-kjøretid, <1s oppstartstid, kjører på en $5 VPS +- **Produksjonssikkerhet** — 5-lags tillatelsessystem (gateway-autentisering → global verktøypolicy → per agent → per kanal → kun eier) pluss hastighetsbegrensning, deteksjon av prompt-injeksjon, SSRF-beskyttelse, avvisningsmønstre for skall og AES-256-GCM-kryptering +- **20+ LLM-leverandører** — Anthropic (innebygd HTTP+SSE med prompt-mellomlagring), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP og ethvert OpenAI-kompatibelt endepunkt +- **7 meldingskanaler** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Tenkningsmodus per leverandør (Anthropic budsjett-tokens, OpenAI resonneringsintensitet, DashScope tenkningsbudsjett) med strømmestøtte +- **Heartbeat** — Periodiske agentsjekker via HEARTBEAT.md-sjekklister med undertrykking ved OK, aktive timer, logikk for nye forsøk og kanalleveranse +- **Planlegging og cron** — `at`-, `every`- og cron-uttrykk for automatiserte agentoppgaver med banebasert samtidighet +- **Observerbarhet** — Innebygd sporing av LLM-kall med spenn og måledata for prompt-mellomlagring, valgfri OpenTelemetry OTLP-eksport + +## Claw-økosystemet + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Språk | TypeScript | Rust | Go | **Go** | +| Binærstørrelse | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Docker-bilde | — | — | — | **~50 MB** (Alpine) | +| RAM (inaktiv) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Oppstart | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Målmaskinvare | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Funksjon | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Flerleietaker (PostgreSQL) | — | — | — | ✅ | +| MCP-integrasjon | — (bruker ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agentteam | — | — | — | ✅ Oppgavetavle + postboks | +| Sikkerhetsherdning | ✅ (SSRF, banetraversering, injeksjon) | ✅ (sandbox, hastighetsbegrensning, injeksjon, paring) | Grunnleggende (arbeidsområdebegrensning, exec-avvisning) | ✅ 5-lags forsvar | +| OTel-observerbarhet | ✅ (valgfri utvidelse) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (valgfritt build-tag) | +| Prompt-mellomlagring | — | — | — | ✅ Anthropic + OpenAI-compat | +| Kunnskapsgraf | — | — | — | ✅ LLM-uttrekk + traversering | +| Ferdighetssystem | ✅ Innbygging/semantisk | ✅ SKILL.md + TOML | ✅ Grunnleggende | ✅ BM25 + pgvector hybrid | +| Banebasert planlegger | ✅ | Begrenset samtidighet | — | ✅ (main/subagent/team/cron) | +| Meldingskanaler | 37+ | 15+ | 10+ | 7+ | +| Følgeapper | macOS, iOS, Android | Python SDK | — | Web-dashbord | +| Live Canvas / Tale | ✅ (A2UI + TTS/STT) | — | Taletranskripsjoner | TTS (4 leverandører) | +| LLM-leverandører | 10+ | 8 innebygde + 29 compat | 13+ | **20+** | +| Arbeidsområde per bruker | ✅ (filbasert) | — | — | ✅ (PostgreSQL) | +| Krypterte hemmeligheter | — (kun env-variabler) | ✅ ChaCha20-Poly1305 | — (ren JSON) | ✅ AES-256-GCM i DB | + +## Arkitektur + +

+ GoClaw Architecture +

+ +## Hurtigstart + +**Forutsetninger:** Go 1.26+, PostgreSQL 18 med pgvector, Docker (valgfritt) + +### Fra kildekode + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktiv oppsettsveiviser +source .env.local && ./goclaw +``` + +### Med Docker + +```bash +# Generer .env med automatisk genererte hemmeligheter +chmod +x prepare-env.sh && ./prepare-env.sh + +# Legg til minst én GOCLAW_*_API_KEY i .env, deretter: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web-dashbord på http://localhost:3000 +# Helsesjekk: curl http://localhost:18790/health +``` + +Når `GOCLAW_*_API_KEY`-miljøvariabler er satt, registrerer gatewayen seg automatisk uten interaktive spørsmål — oppdager leverandør, kjører migrasjoner og fyller inn standarddata. + +> For byggevarianter (OTel, Tailscale, Redis), Docker-bildekoder og compose-overlegg, se [Distribusjonsveiledningen](https://docs.goclaw.sh/#deploy-docker-compose). + +## Fler-agent-orkestrering + +GoClaw støtter agentteam og delegering mellom agenter — hver agent kjører med sin egen identitet, verktøy, LLM-leverandør og kontekstfiler. + +### Agentdelegering + +

+ Agent Delegation +

+ +| Modus | Slik fungerer det | Best for | +|-------|------------------|----------| +| **Synkron** | Agent A spør Agent B og **venter** på svar | Raske oppslag, faktasjekker | +| **Asynkron** | Agent A spør Agent B og **fortsetter**. B kunngjør senere | Lange oppgaver, rapporter, dybdeanalyse | + +Agenter kommuniserer gjennom eksplisitte **tillatelseslenker** med retningskontroll (`outbound`, `inbound`, `bidirectional`) og grenser for samtidighet på både lenke- og agentnivå. + +### Agentteam + +

+ Agent Teams Workflow +

+ +- **Delt oppgavetavle** — Opprett, gjør krav på, fullfør og søk i oppgaver med `blocked_by`-avhengigheter +- **Team-postboks** — Direkte meldinger mellom agenter og kringkasting +- **Verktøy**: `team_tasks` for oppgaveadministrasjon, `team_message` for postboks + +> For detaljer om delegering, tillatelseslenker og samtidige grenser, se [dokumentasjonen for agentteam](https://docs.goclaw.sh/#teams-what-are-teams). + +## Innebygde verktøy + +| Verktøy | Gruppe | Beskrivelse | +| ------------------- | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Les filinnhold (med virtuell FS-ruting) | +| `write_file` | fs | Skriv/opprett filer | +| `edit_file` | fs | Bruk målrettede redigeringer på eksisterende filer | +| `list_files` | fs | List opp innholdet i en mappe | +| `search` | fs | Søk i filinnhold etter mønster | +| `glob` | fs | Finn filer etter glob-mønster | +| `exec` | runtime | Kjør skallkommandoer (med godkjenningsarbeidsflyt) | +| `web_search` | web | Søk på nettet (Brave, DuckDuckGo) | +| `web_fetch` | web | Hent og analyser nettinnhold | +| `memory_search` | memory | Søk i langtidsminne (FTS + vektor) | +| `memory_get` | memory | Hent minneoppføringer | +| `skill_search` | — | Søk i ferdigheter (BM25 + innbygging hybrid) | +| `knowledge_graph_search` | memory | Søk i entiteter og traverser kunnskapsgraf-relasjoner | +| `create_image` | media | Bildegenerering (DashScope, MiniMax) | +| `create_audio` | media | Lydfil-generering (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Videogenerering (MiniMax, Veo) | +| `read_document` | media | Dokumentlesing (Gemini File API, leverandørkjede) | +| `read_image` | media | Bildeanalyse | +| `read_audio` | media | Lydtranskribering og analyse | +| `read_video` | media | Videoanalyse | +| `message` | messaging | Send meldinger til kanaler | +| `tts` | — | Tekst-til-tale-syntese | +| `spawn` | — | Start en underagent | +| `subagents` | sessions | Kontroller kjørende underagenter | +| `team_tasks` | teams | Delt oppgavetavle (list, opprett, gjør krav på, fullfør, søk)| +| `team_message` | teams | Team-postboks (send, kringkast, les) | +| `sessions_list` | sessions | List aktive sesjoner | +| `sessions_history` | sessions | Vis sesjonshistorikk | +| `sessions_send` | sessions | Send melding til en sesjon | +| `sessions_spawn` | sessions | Start en ny sesjon | +| `session_status` | sessions | Sjekk sesjonsstatus | +| `cron` | automation | Planlegg og administrer cron-jobber | +| `gateway` | automation | Gateway-administrasjon | +| `browser` | ui | Nettleserautomatisering (naviger, klikk, skriv, skjermbilde) | +| `announce_queue` | automation | Asynkron kunngjøring av resultater (for asynkron delegering) | + +## Dokumentasjon + +Fullstendig dokumentasjon på **[docs.goclaw.sh](https://docs.goclaw.sh)** — eller bla gjennom kilden i [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Seksjon | Emner | +|---------|-------| +| [Kom i gang](https://docs.goclaw.sh/#what-is-goclaw) | Installasjon, hurtigstart, konfigurasjon, web-dashbord-omvisning | +| [Kjernekonsepter](https://docs.goclaw.sh/#how-goclaw-works) | Agentløkke, sesjoner, verktøy, minne, flerleietaker | +| [Agenter](https://docs.goclaw.sh/#creating-agents) | Opprette agenter, kontekstfiler, personlighet, deling og tilgang | +| [Leverandører](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 flere | +| [Kanaler](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agentteam](https://docs.goclaw.sh/#teams-what-are-teams) | Team, oppgavetavle, meldinger, delegering og overlevering | +| [Avansert](https://docs.goclaw.sh/#custom-tools) | Egendefinerte verktøy, MCP, ferdigheter, cron, sandbox, kroker, RBAC | +| [Distribusjon](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, database, sikkerhet, observerbarhet, Tailscale | +| [Referanse](https://docs.goclaw.sh/#cli-commands) | CLI-kommandoer, REST API, WebSocket-protokoll, miljøvariabler | + +## Testing + +```bash +go test ./... # Enhetstester +go test -v ./tests/integration/ -timeout 120s # Integrasjonstester (krever kjørende gateway) +``` + +## Prosjektstatus + +Se [CHANGELOG.md](CHANGELOG.md) for detaljert funksjonsstatus, inkludert hva som er testet i produksjon og hva som fremdeles pågår. + +## Anerkjennelser + +GoClaw er bygd på det opprinnelige [OpenClaw](https://github.com/openclaw/openclaw)-prosjektet. Vi er takknemlige for arkitekturen og visjonen som inspirerte denne Go-porten. + +## Lisens + +MIT diff --git a/_readmes/README.nl.md b/_readmes/README.nl.md new file mode 100644 index 000000000..67d2b8ea7 --- /dev/null +++ b/_readmes/README.nl.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Documentatie • + Snel starten • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** is een multi-agent AI gateway die LLM's verbindt met uw tools, kanalen en gegevens — uitgerold als één enkel Go-binary zonder runtime-afhankelijkheden. Het orkestreert agentteams en inter-agent-delegatie via 20+ LLM-providers met volledige multi-tenant isolatie. + +Een Go-port van [OpenClaw](https://github.com/openclaw/openclaw) met verbeterde beveiliging, multi-tenant PostgreSQL en productieklare observeerbaarheid. + +🌐 **Talen:** +[🇺🇸 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) + +## Wat maakt het anders + +- **Agentteams & Orkestratie** — Teams met gedeelde taakborden, inter-agent-delegatie (synchroon/asynchroon) en hybride agentdetectie +- **Multi-Tenant PostgreSQL** — Werkruimtes per gebruiker, contextbestanden per gebruiker, versleutelde API-sleutels (AES-256-GCM), geïsoleerde sessies +- **Enkel Binary** — ~25 MB statisch Go-binary, geen Node.js-runtime, <1 s opstartijd, draait op een VPS van $5 +- **Productiebeveiliging** — 5-laags rechtensysteem (gateway-authenticatie → globaal toolbeleid → per agent → per kanaal → alleen eigenaar) plus snelheidsbeperking, detectie van prompt-injectie, SSRF-bescherming, shell-weigerings­patronen en AES-256-GCM-versleuteling +- **20+ LLM-providers** — Anthropic (native HTTP+SSE met prompt-caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP en elk OpenAI-compatibel eindpunt +- **7 Berichtenkanalen** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Denkmodus per provider (Anthropic-budgettokens, OpenAI-redeneerinspanning, DashScope-denkbudget) met streamingondersteuning +- **Heartbeat** — Periodieke agent-check-ins via HEARTBEAT.md-checklists met onderdrukken-bij-OK, actieve uren, herproberinglogica en kanaallevering +- **Plannen & Cron** — `at`-, `every`- en cron-expressies voor geautomatiseerde agenttaken met op rijstroken gebaseerde gelijktijdigheid +- **Observeerbaarheid** — Ingebouwde LLM-aanroeptracering met spans en prompt-cachemetrics, optionele OpenTelemetry OTLP-export + +## Claw-ecosysteem + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Taal | TypeScript | Rust | Go | **Go** | +| Binary-grootte | 28 MB + Node.js | 3,4 MB | ~8 MB | **~25 MB** (basis) / **~36 MB** (+ OTel) | +| Docker-image | — | — | — | **~50 MB** (Alpine) | +| RAM (inactief) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Opstartijd | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Doelhardware | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Functie | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ------------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| MCP-integratie | — (gebruikt ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agentteams | — | — | — | ✅ Taakbord + postvak | +| Beveiligingsverharding | ✅ (SSRF, padtraversal, injectie) | ✅ (sandbox, snelheidsbeperking, injectie, koppeling) | Basis (werkruimtebeperking, exec-weigering) | ✅ 5-laagse verdediging | +| OTel-observeerbaarheid | ✅ (opt-in extensie) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build-tag) | +| Prompt-caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Kennisgraaf | — | — | — | ✅ LLM-extractie + doorloop | +| Vaardigheidssysteem | ✅ Embeddings/semantisch | ✅ SKILL.md + TOML | ✅ Basis | ✅ BM25 + pgvector hybride | +| Op rijstroken gebaseerde planner | ✅ | Begrensde gelijktijdigheid | — | ✅ (main/subagent/team/cron) | +| Berichtenkanalen | 37+ | 15+ | 10+ | 7+ | +| Companion-apps | macOS, iOS, Android | Python SDK | — | Webdashboard | +| Live Canvas / Spraak | ✅ (A2UI + TTS/STT) | — | Spraaktranscriptie | TTS (4 providers) | +| LLM-providers | 10+ | 8 native + 29 compat | 13+ | **20+** | +| Werkruimtes per gebruiker | ✅ (bestandsgebaseerd) | — | — | ✅ (PostgreSQL) | +| Versleutelde geheimen | — (alleen omgevingsvariabelen) | ✅ ChaCha20-Poly1305 | — (gewone tekst JSON) | ✅ AES-256-GCM in DB | + +## Architectuur + +

+ GoClaw Architecture +

+ +## Snel starten + +**Vereisten:** Go 1.26+, PostgreSQL 18 met pgvector, Docker (optioneel) + +### Vanuit broncode + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactieve installatiewizard +source .env.local && ./goclaw +``` + +### Met Docker + +```bash +# Genereer .env met automatisch gegenereerde geheimen +chmod +x prepare-env.sh && ./prepare-env.sh + +# Voeg minimaal één GOCLAW_*_API_KEY toe aan .env, dan: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Webdashboard op http://localhost:3000 +# Statuscontrole: curl http://localhost:18790/health +``` + +Wanneer `GOCLAW_*_API_KEY`-omgevingsvariabelen zijn ingesteld, voert de gateway automatisch de installatie uit zonder interactieve aanwijzingen — detecteert de provider, voert migraties uit en seeded standaardgegevens. + +> Voor buildvarianten (OTel, Tailscale, Redis), Docker-imagetags en compose-overlays, zie de [Implementatiegids](https://docs.goclaw.sh/#deploy-docker-compose). + +## Multi-agent orkestratie + +GoClaw ondersteunt agentteams en inter-agent-delegatie — elke agent draait met een eigen identiteit, tools, LLM-provider en contextbestanden. + +### Agent-delegatie + +

+ Agent Delegation +

+ +| Modus | Hoe het werkt | Het beste voor | +|-------|---------------|----------------| +| **Synchroon** | Agent A vraagt Agent B en **wacht** op het antwoord | Snelle opzoekingen, feitencontroles | +| **Asynchroon** | Agent A vraagt Agent B en **gaat door**. B meldt later | Lange taken, rapporten, diepgaande analyses | + +Agents communiceren via expliciete **rechtenkoppelingen** met richtingscontrole (`outbound`, `inbound`, `bidirectional`) en gelijktijdigheidsbeperkingen op zowel koppeling- als agentniveau. + +### Agentteams + +

+ Agent Teams Workflow +

+ +- **Gedeeld taakbord** — Taken aanmaken, claimen, voltooien en zoeken met `blocked_by`-afhankelijkheden +- **Team-postvak** — Directe peer-to-peer berichten en uitzendboodschappen +- **Tools**: `team_tasks` voor taakbeheer, `team_message` voor het postvak + +> Voor delegatiedetails, rechtenkoppelingen en gelijktijdigheidscontrole, zie de [Agentteams-documentatie](https://docs.goclaw.sh/#teams-what-are-teams). + +## Ingebouwde tools + +| Tool | Groep | Beschrijving | +| ------------------ | ------------- | ------------------------------------------------------------- | +| `read_file` | fs | Bestandsinhoud lezen (met virtuele FS-routing) | +| `write_file` | fs | Bestanden schrijven/aanmaken | +| `edit_file` | fs | Gerichte bewerkingen op bestaande bestanden toepassen | +| `list_files` | fs | Mapinhoud weergeven | +| `search` | fs | Bestandsinhoud doorzoeken op patroon | +| `glob` | fs | Bestanden zoeken op glob-patroon | +| `exec` | runtime | Shell-opdrachten uitvoeren (met goedkeuringsworkflow) | +| `web_search` | web | Op het web zoeken (Brave, DuckDuckGo) | +| `web_fetch` | web | Webinhoud ophalen en verwerken | +| `memory_search` | memory | Langetermijngeheugen doorzoeken (FTS + vector) | +| `memory_get` | memory | Geheugenitems ophalen | +| `skill_search` | — | Vaardigheden zoeken (BM25 + embedding hybride) | +| `knowledge_graph_search` | memory | Entiteiten zoeken en kennisgraafrelaties doorlopen | +| `create_image` | media | Afbeeldingen genereren (DashScope, MiniMax) | +| `create_audio` | media | Audio genereren (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Video genereren (MiniMax, Veo) | +| `read_document` | media | Documenten lezen (Gemini File API, providerketen) | +| `read_image` | media | Afbeeldingsanalyse | +| `read_audio` | media | Audiotranscriptie en -analyse | +| `read_video` | media | Videoanalyse | +| `message` | messaging | Berichten naar kanalen sturen | +| `tts` | — | Tekst-naar-spraak-synthese | +| `spawn` | — | Een subagent spawnen | +| `subagents` | sessions | Actieve subagents beheren | +| `team_tasks` | teams | Gedeeld taakbord (weergeven, aanmaken, claimen, voltooien, zoeken) | +| `team_message` | teams | Team-postvak (verzenden, uitzenden, lezen) | +| `sessions_list` | sessions | Actieve sessies weergeven | +| `sessions_history` | sessions | Sessiegeschiedenis bekijken | +| `sessions_send` | sessions | Bericht naar een sessie sturen | +| `sessions_spawn` | sessions | Een nieuwe sessie spawnen | +| `session_status` | sessions | Sessiestatus controleren | +| `cron` | automation | Cron-taken plannen en beheren | +| `gateway` | automation | Gateway-beheer | +| `browser` | ui | Browserautomatisering (navigeren, klikken, typen, schermafbeelding) | +| `announce_queue` | automation | Asynchroon resultaat aankondigen (voor asynchrone delegaties) | + +## Documentatie + +Volledige documentatie op **[docs.goclaw.sh](https://docs.goclaw.sh)** — of blader door de broncode in [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sectie | Onderwerpen | +|--------|-------------| +| [Aan de slag](https://docs.goclaw.sh/#what-is-goclaw) | Installatie, Snel starten, Configuratie, Rondleiding webdashboard | +| [Kernconcepten](https://docs.goclaw.sh/#how-goclaw-works) | Agent-loop, Sessies, Tools, Geheugen, Multi-tenancy | +| [Agents](https://docs.goclaw.sh/#creating-agents) | Agents aanmaken, Contextbestanden, Persoonlijkheid, Delen & Toegang | +| [Providers](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 meer | +| [Kanalen](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agentteams](https://docs.goclaw.sh/#teams-what-are-teams) | Teams, Taakbord, Berichten, Delegatie & Overdracht | +| [Geavanceerd](https://docs.goclaw.sh/#custom-tools) | Aangepaste tools, MCP, Vaardigheden, Cron, Sandbox, Hooks, RBAC | +| [Implementatie](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Beveiliging, Observeerbaarheid, Tailscale | +| [Referentie](https://docs.goclaw.sh/#cli-commands) | CLI-opdrachten, REST API, WebSocket Protocol, Omgevingsvariabelen | + +## Testen + +```bash +go test ./... # Unittests +go test -v ./tests/integration/ -timeout 120s # Integratietests (vereist actieve gateway) +``` + +## Projectstatus + +Zie [CHANGELOG.md](CHANGELOG.md) voor gedetailleerde functiestatus, inclusief wat in productie is getest en wat nog in ontwikkeling is. + +## Dankbetuigingen + +GoClaw is gebouwd op het originele [OpenClaw](https://github.com/openclaw/openclaw)-project. We zijn dankbaar voor de architectuur en visie die deze Go-port hebben geïnspireerd. + +## Licentie + +MIT diff --git a/_readmes/README.pl.md b/_readmes/README.pl.md new file mode 100644 index 000000000..4047fa555 --- /dev/null +++ b/_readmes/README.pl.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentacja • + Szybki Start • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** to wieloagentowa bramka AI łącząca LLM z Twoimi narzędziami, kanałami i danymi — wdrażana jako pojedynczy binarny plik Go bez żadnych zależności w czasie wykonywania. Orkiestruje zespoły agentów i delegowanie między agentami przez 20+ dostawców LLM z pełną izolacją wielodostępną. + +Port GoClaw w języku Go projektu [OpenClaw](https://github.com/openclaw/openclaw) z rozszerzonymi zabezpieczeniami, wielodostępnym PostgreSQL i obserwowalnością na poziomie produkcyjnym. + +🌐 **Języki:** +[🇺🇸 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) + +## Co Go Wyróżnia + +- **Zespoły Agentów i Orkiestracja** — Zespoły ze wspólnymi tablicami zadań, delegowaniem między agentami (synchroniczne/asynchroniczne) i hybrydowym odkrywaniem agentów +- **Wielodostępny PostgreSQL** — Oddzielne obszary robocze dla każdego użytkownika, pliki kontekstu per użytkownik, szyfrowane klucze API (AES-256-GCM), izolowane sesje +- **Pojedynczy Plik Binarny** — ~25 MB statyczny plik binarny Go, bez środowiska uruchomieniowego Node.js, uruchomienie <1s, działa na serwerze za $5 +- **Bezpieczeństwo Produkcyjne** — 5-warstwowy system uprawnień (uwierzytelnianie bramki → globalna polityka narzędzi → per-agent → per-kanał → tylko właściciel) oraz ograniczanie szybkości, wykrywanie wstrzyknięć do promptów, ochrona SSRF, wzorce blokowania powłoki i szyfrowanie AES-256-GCM +- **20+ Dostawców LLM** — Anthropic (natywny HTTP+SSE z buforowaniem promptów), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP i dowolny punkt końcowy kompatybilny z OpenAI +- **7 Kanałów Komunikacji** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Tryb myślenia per dostawca (tokeny budżetowe Anthropic, wysiłek wnioskowania OpenAI, budżet myślenia DashScope) ze wsparciem strumieniowania +- **Heartbeat** — Okresowe meldowanie agentów przez listy kontrolne HEARTBEAT.md z wyciszaniem przy OK, aktywnymi godzinami, logiką ponawiania prób i dostarczaniem przez kanały +- **Planowanie i Cron** — Wyrażenia `at`, `every` i cron do zautomatyzowanych zadań agentów ze współbieżnością opartą na torach +- **Obserwowalność** — Wbudowane śledzenie wywołań LLM z rozpiętościami i metrykami buforu promptów, opcjonalny eksport OpenTelemetry OTLP + +## Ekosystem Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Język | TypeScript | Rust | Go | **Go** | +| Rozmiar binarny | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (bazowy) / **~36 MB** (+ OTel) | +| Obraz Docker | — | — | — | **~50 MB** (Alpine) | +| RAM (bezczynny) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Uruchomienie | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Docelowy sprzęt | Mac Mini $599+ | Edge $10 | Edge $10 | **VPS $5+** | + +| Funkcja | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ------------------------------ | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Wielodostęp (PostgreSQL) | — | — | — | ✅ | +| Integracja MCP | — (używa ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Zespoły agentów | — | — | — | ✅ Tablica zadań + skrzynka | +| Utwardzanie bezpieczeństwa | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Podstawowe (ograniczenie workspace, blokowanie exec) | ✅ 5-warstwowa obrona | +| Obserwowalność OTel | ✅ (opcjonalne rozszerzenie) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opcjonalny tag build) | +| Buforowanie promptów | — | — | — | ✅ Anthropic + OpenAI-compat | +| Graf wiedzy | — | — | — | ✅ Ekstrakcja LLM + przechodzenie | +| System umiejętności | ✅ Embeddingi/semantyczne | ✅ SKILL.md + TOML | ✅ Podstawowy | ✅ Hybrydowy BM25 + pgvector | +| Harmonogram oparty na torach | ✅ | Ograniczona współbieżność | — | ✅ (main/subagent/team/cron) | +| Kanały komunikacji | 37+ | 15+ | 10+ | 7+ | +| Aplikacje towarzyszące | macOS, iOS, Android | Python SDK | — | Panel webowy | +| Live Canvas / Głos | ✅ (A2UI + TTS/STT) | — | Transkrypcja głosu | TTS (4 dostawców) | +| Dostawcy LLM | 10+ | 8 natywnych + 29 compat | 13+ | **20+** | +| Obszary robocze per użytkownik | ✅ (oparte na plikach) | — | — | ✅ (PostgreSQL) | +| Szyfrowane sekrety | — (tylko zmienne env) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM w DB | + +## Architektura + +

+ GoClaw Architecture +

+ +## Szybki Start + +**Wymagania wstępne:** Go 1.26+, PostgreSQL 18 z pgvector, Docker (opcjonalnie) + +### Ze Źródła + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktywny kreator konfiguracji +source .env.local && ./goclaw +``` + +### Z Docker + +```bash +# Wygeneruj .env z automatycznie generowanymi sekretami +chmod +x prepare-env.sh && ./prepare-env.sh + +# Dodaj co najmniej jeden GOCLAW_*_API_KEY do .env, a następnie: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Panel webowy pod adresem http://localhost:3000 +# Sprawdzenie stanu: curl http://localhost:18790/health +``` + +Gdy ustawione są zmienne środowiskowe `GOCLAW_*_API_KEY`, bramka automatycznie konfiguruje się bez interaktywnych pytań — wykrywa dostawcę, uruchamia migracje i wypełnia domyślnymi danymi. + +> Aby zapoznać się z wariantami budowania (OTel, Tailscale, Redis), tagami obrazów Docker i nakładkami compose, zapoznaj się z [Przewodnikiem Wdrażania](https://docs.goclaw.sh/#deploy-docker-compose). + +## Wieloagentowa Orkiestracja + +GoClaw obsługuje zespoły agentów i delegowanie między agentami — każdy agent działa z własną tożsamością, narzędziami, dostawcą LLM i plikami kontekstu. + +### Delegowanie Agentów + +

+ Agent Delegation +

+ +| Tryb | Jak działa | Najlepsze zastosowanie | +|------|-----------|------------------------| +| **Synchroniczny** | Agent A pyta Agenta B i **czeka** na odpowiedź | Szybkie wyszukiwania, weryfikacja faktów | +| **Asynchroniczny** | Agent A pyta Agenta B i **kontynuuje**. B ogłasza wynik później | Długie zadania, raporty, dogłębna analiza | + +Agenty komunikują się przez jawne **łącza uprawnień** z kontrolą kierunku (`outbound`, `inbound`, `bidirectional`) i limitami współbieżności zarówno na poziomie łącza, jak i agenta. + +### Zespoły Agentów + +

+ Agent Teams Workflow +

+ +- **Wspólna tablica zadań** — Tworzenie, przejmowanie, ukończenie i wyszukiwanie zadań z zależnościami `blocked_by` +- **Skrzynka zespołu** — Bezpośrednia wymiana wiadomości peer-to-peer i transmisje +- **Narzędzia**: `team_tasks` do zarządzania zadaniami, `team_message` do skrzynki + +> Aby zapoznać się ze szczegółami delegowania, łączami uprawnień i kontrolą współbieżności, zapoznaj się z [dokumentacją Zespołów Agentów](https://docs.goclaw.sh/#teams-what-are-teams). + +## Wbudowane Narzędzia + +| Narzędzie | Grupa | Opis | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Odczyt zawartości pliku (z routingiem wirtualnego FS) | +| `write_file` | fs | Zapis/tworzenie plików | +| `edit_file` | fs | Stosowanie ukierunkowanych edycji do istniejących plików | +| `list_files` | fs | Wylistowanie zawartości katalogu | +| `search` | fs | Wyszukiwanie zawartości pliku wg wzorca | +| `glob` | fs | Wyszukiwanie plików wg wzorca glob | +| `exec` | runtime | Wykonywanie poleceń powłoki (z przepływem zatwierdzania) | +| `web_search` | web | Przeszukiwanie internetu (Brave, DuckDuckGo) | +| `web_fetch` | web | Pobieranie i parsowanie treści webowych | +| `memory_search` | memory | Przeszukiwanie pamięci długoterminowej (FTS + wektor) | +| `memory_get` | memory | Pobieranie wpisów pamięci | +| `skill_search` | — | Wyszukiwanie umiejętności (hybryda BM25 + embedding) | +| `knowledge_graph_search` | memory | Wyszukiwanie encji i przechodzenie relacji grafu wiedzy | +| `create_image` | media | Generowanie obrazów (DashScope, MiniMax) | +| `create_audio` | media | Generowanie dźwięku (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Generowanie wideo (MiniMax, Veo) | +| `read_document` | media | Odczyt dokumentów (Gemini File API, łańcuch dostawców) | +| `read_image` | media | Analiza obrazów | +| `read_audio` | media | Transkrypcja i analiza dźwięku | +| `read_video` | media | Analiza wideo | +| `message` | messaging | Wysyłanie wiadomości do kanałów | +| `tts` | — | Synteza tekstu na mowę | +| `spawn` | — | Uruchamianie subagenta | +| `subagents` | sessions | Sterowanie działającymi subagentami | +| `team_tasks` | teams | Wspólna tablica zadań (list, create, claim, complete, search) | +| `team_message` | teams | Skrzynka zespołu (send, broadcast, read) | +| `sessions_list` | sessions | Lista aktywnych sesji | +| `sessions_history` | sessions | Przeglądanie historii sesji | +| `sessions_send` | sessions | Wysyłanie wiadomości do sesji | +| `sessions_spawn` | sessions | Uruchamianie nowej sesji | +| `session_status` | sessions | Sprawdzanie stanu sesji | +| `cron` | automation | Planowanie i zarządzanie zadaniami cron | +| `gateway` | automation | Administracja bramką | +| `browser` | ui | Automatyzacja przeglądarki (nawigacja, klikanie, wpisywanie, zrzut ekranu) | +| `announce_queue` | automation | Ogłaszanie wyników asynchronicznych (dla delegowań asynchronicznych) | + +## Dokumentacja + +Pełna dokumentacja dostępna na **[docs.goclaw.sh](https://docs.goclaw.sh)** — lub przejrzyj źródło w [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Sekcja | Tematy | +|--------|--------| +| [Pierwsze Kroki](https://docs.goclaw.sh/#what-is-goclaw) | Instalacja, Szybki Start, Konfiguracja, Przewodnik po Panelu Webowym | +| [Podstawowe Koncepcje](https://docs.goclaw.sh/#how-goclaw-works) | Pętla Agenta, Sesje, Narzędzia, Pamięć, Wielodostępność | +| [Agenty](https://docs.goclaw.sh/#creating-agents) | Tworzenie Agentów, Pliki Kontekstu, Osobowość, Udostępnianie i Dostęp | +| [Dostawcy](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 innych | +| [Kanały](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Zespoły Agentów](https://docs.goclaw.sh/#teams-what-are-teams) | Zespoły, Tablica Zadań, Wiadomości, Delegowanie i Przekazywanie | +| [Zaawansowane](https://docs.goclaw.sh/#custom-tools) | Własne Narzędzia, MCP, Umiejętności, Cron, Sandbox, Hooki, RBAC | +| [Wdrażanie](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Baza Danych, Bezpieczeństwo, Obserwowalność, Tailscale | +| [Dokumentacja Referencyjna](https://docs.goclaw.sh/#cli-commands) | Polecenia CLI, REST API, Protokół WebSocket, Zmienne Środowiskowe | + +## Testowanie + +```bash +go test ./... # Testy jednostkowe +go test -v ./tests/integration/ -timeout 120s # Testy integracyjne (wymaga działającej bramki) +``` + +## Stan Projektu + +Zobacz [CHANGELOG.md](CHANGELOG.md), aby uzyskać szczegółowy status funkcji, w tym co zostało przetestowane w środowisku produkcyjnym i co jest jeszcze w trakcie pracy. + +## Podziękowania + +GoClaw jest zbudowany na podstawie oryginalnego projektu [OpenClaw](https://github.com/openclaw/openclaw). Jesteśmy wdzięczni za architekturę i wizję, która zainspirowała ten port w języku Go. + +## Licencja + +MIT diff --git a/_readmes/README.pt.md b/_readmes/README.pt.md new file mode 100644 index 000000000..3e32de41c --- /dev/null +++ b/_readmes/README.pt.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Documentação • + Início Rápido • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**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](https://github.com/openclaw/openclaw) com segurança aprimorada, PostgreSQL multi-tenant e observabilidade de nível de produção. + +🌐 **Idiomas:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## O Que o Torna Diferente + +- **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`, `every` e 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 + +## Ecossistema Claw + +| | 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 | + +## Arquitetura + +

+ GoClaw Architecture +

+ +## Início Rápido + +**Pré-requisitos:** Go 1.26+, PostgreSQL 18 com pgvector, Docker (opcional) + +### A Partir do Código-Fonte + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Assistente de configuração interativo +source .env.local && ./goclaw +``` + +### Com Docker + +```bash +# Gerar .env com segredos gerados automaticamente +chmod +x prepare-env.sh && ./prepare-env.sh + +# Adicione pelo menos uma GOCLAW_*_API_KEY ao .env, depois: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Painel Web em http://localhost:3000 +# Verificação de saúde: curl http://localhost:18790/health +``` + +Quando 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](https://docs.goclaw.sh/#deploy-docker-compose). + +## Orquestração Multi-Agente + +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. + +### Delegação de Agentes + +

+ Agent Delegation +

+ +| 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. + +### Equipes de Agentes + +

+ Agent Teams Workflow +

+ +- **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_tasks` para gerenciamento de tarefas, `team_message` para 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](https://docs.goclaw.sh/#teams-what-are-teams). + +## Ferramentas Integradas + +| 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 + +Documentação completa em **[docs.goclaw.sh](https://docs.goclaw.sh)** — ou navegue pelo código-fonte em [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Seção | Tópicos | +|---------|--------| +| [Primeiros Passos](https://docs.goclaw.sh/#what-is-goclaw) | Instalação, Início Rápido, Configuração, Tour do Painel Web | +| [Conceitos Fundamentais](https://docs.goclaw.sh/#how-goclaw-works) | Loop do Agente, Sessões, Ferramentas, Memória, Multi-Tenancy | +| [Agentes](https://docs.goclaw.sh/#creating-agents) | Criação de Agentes, Arquivos de Contexto, Personalidade, Compartilhamento e Acesso | +| [Provedores](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 mais | +| [Canais](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Equipes de Agentes](https://docs.goclaw.sh/#teams-what-are-teams) | Equipes, Quadro de Tarefas, Mensagens, Delegação e Transferência | +| [Avançado](https://docs.goclaw.sh/#custom-tools) | Ferramentas Personalizadas, MCP, Skills, Cron, Sandbox, Hooks, RBAC | +| [Implantação](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Banco de Dados, Segurança, Observabilidade, Tailscale | +| [Referência](https://docs.goclaw.sh/#cli-commands) | Comandos CLI, REST API, Protocolo WebSocket, Variáveis de Ambiente | + +## Testes + +```bash +go test ./... # Testes unitários +go test -v ./tests/integration/ -timeout 120s # Testes de integração (requer gateway em execução) +``` + +## Status do Projeto + +Consulte [CHANGELOG.md](CHANGELOG.md) para o status detalhado das funcionalidades, incluindo o que foi testado em produção e o que ainda está em andamento. + +## Agradecimentos + +GoClaw foi construído sobre o projeto original [OpenClaw](https://github.com/openclaw/openclaw). Somos gratos pela arquitetura e visão que inspiraram este port em Go. + +## Licença + +MIT diff --git a/_readmes/README.ro.md b/_readmes/README.ro.md new file mode 100644 index 000000000..9d9c9c169 --- /dev/null +++ b/_readmes/README.ro.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Documentație • + Pornire Rapidă • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**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](https://github.com/openclaw/openclaw) cu securitate îmbunătățită, PostgreSQL multi-tenant și observabilitate la nivel de producție. + +🌐 **Limbi:** +[🇺🇸 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) + +## 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ă + +

+ GoClaw Architecture +

+ +## Pornire Rapidă + +**Condiții prealabile:** Go 1.26+, PostgreSQL 18 cu pgvector, Docker (opțional) + +### Din Sursă + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Asistent interactiv de configurare +source .env.local && ./goclaw +``` + +### Cu Docker + +```bash +# 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: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Tablou de bord web la http://localhost:3000 +# 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](https://docs.goclaw.sh/#deploy-docker-compose). + +## 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 + +

+ Agent Delegation +

+ +| 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 + +

+ Agent Teams Workflow +

+ +- **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_tasks` pentru gestionarea sarcinilor, `team_message` pentru cutia poștală + +> Pentru detalii despre delegare, linkuri de permisiune și control concurență, consultați [documentația Echipe de Agenți](https://docs.goclaw.sh/#teams-what-are-teams). + +## 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](https://docs.goclaw.sh)** — sau parcurge sursa în [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Secțiune | Subiecte | +|---------|--------| +| [Începere](https://docs.goclaw.sh/#what-is-goclaw) | Instalare, Pornire Rapidă, Configurare, Tur Tablou de Bord Web | +| [Concepte de Bază](https://docs.goclaw.sh/#how-goclaw-works) | Bucla Agent, Sesiuni, Instrumente, Memorie, Multi-Tenant | +| [Agenți](https://docs.goclaw.sh/#creating-agents) | Creare Agenți, Fișiere Context, Personalitate, Partajare și Acces | +| [Furnizori](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 alții | +| [Canale](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Echipe de Agenți](https://docs.goclaw.sh/#teams-what-are-teams) | Echipe, Panou Sarcini, Mesagerie, Delegare și Handoff | +| [Avansat](https://docs.goclaw.sh/#custom-tools) | Instrumente Personalizate, MCP, Skill-uri, Cron, Sandbox, Hook-uri, RBAC | +| [Implementare](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Bază de Date, Securitate, Observabilitate, Tailscale | +| [Referință](https://docs.goclaw.sh/#cli-commands) | Comenzi CLI, REST API, Protocol WebSocket, Variabile de Mediu | + +## Testare + +```bash +go test ./... # Teste unitare +go test -v ./tests/integration/ -timeout 120s # Teste de integrare (necesită gateway activ) +``` + +## Starea Proiectului + +Consultați [CHANGELOG.md](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](https://github.com/openclaw/openclaw). Suntem recunoscători pentru arhitectura și viziunea care au inspirat acest port Go. + +## Licență + +MIT diff --git a/_readmes/README.ru.md b/_readmes/README.ru.md new file mode 100644 index 000000000..3b37b2729 --- /dev/null +++ b/_readmes/README.ru.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Документация • + Быстрый старт • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** — это многоагентный AI-шлюз, который подключает LLM-модели к вашим инструментам, каналам и данным — разворачивается как единый Go-бинарник без каких-либо сторонних зависимостей времени выполнения. Он оркестрирует команды агентов и межагентную делегацию через 20+ провайдеров LLM с полной мультиарендной изоляцией. + +Go-порт проекта [OpenClaw](https://github.com/openclaw/openclaw) с расширенной безопасностью, мультиарендным PostgreSQL и наблюдаемостью производственного уровня. + +🌐 **Языки:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## В чём отличие + +- **Команды агентов и оркестрация** — Команды с общими досками задач, межагентная делегация (синхронная/асинхронная) и гибридное обнаружение агентов +- **Мультиарендный PostgreSQL** — Отдельные рабочие пространства для каждого пользователя, контекстные файлы на пользователя, зашифрованные API-ключи (AES-256-GCM), изолированные сессии +- **Единый бинарник** — ~25 МБ статический Go-бинарник, без Node.js, запуск менее чем за 1 с, работает на VPS за $5 +- **Безопасность производственного уровня** — 5-уровневая система прав (аутентификация шлюза → глобальная политика инструментов → на агента → на канал → только для владельца) плюс ограничение запросов, обнаружение prompt-инъекций, защита от SSRF, запрещённые shell-паттерны и шифрование AES-256-GCM +- **20+ провайдеров LLM** — Anthropic (нативный HTTP+SSE с кэшированием промптов), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP и любой OpenAI-совместимый эндпоинт +- **7 каналов обмена сообщениями** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Режим thinking на каждого провайдера (бюджет токенов Anthropic, усилия рассуждения OpenAI, бюджет мышления DashScope) с поддержкой стриминга +- **Heartbeat** — Периодические проверки агентов через чек-листы HEARTBEAT.md с подавлением при успехе, активными часами, логикой повторных попыток и доставкой в канал +- **Планировщик и cron** — Выражения `at`, `every` и cron для автоматизированных задач агентов с параллелизмом на основе очередей +- **Наблюдаемость** — Встроенная трассировка LLM-вызовов со спанами и метриками кэша промптов, опциональный экспорт OpenTelemetry OTLP + +## Экосистема Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Язык | TypeScript | Rust | Go | **Go** | +| Размер бинарника | 28 МБ + Node.js | 3,4 МБ | ~8 МБ | **~25 МБ** (базовый) / **~36 МБ** (+ OTel) | +| Docker-образ | — | — | — | **~50 МБ** (Alpine) | +| ОЗУ (простой) | > 1 ГБ | < 5 МБ | < 10 МБ | **~35 МБ** | +| Запуск | > 5 с | < 10 мс | < 1 с | **< 1 с** | +| Целевое железо | Mac Mini от $599 | Edge за $10 | Edge за $10 | **VPS от $5** | + +| Функция | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Мультиаренда (PostgreSQL) | — | — | — | ✅ | +| Интеграция MCP | — (использует ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Команды агентов | — | — | — | ✅ Доска задач + почтовый ящик | +| Усиление безопасности | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Базовая (ограничение workspace, запрет exec) | ✅ 5-уровневая защита | +| Наблюдаемость OTel | ✅ (опциональное расширение) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (опциональный build tag) | +| Кэширование промптов | — | — | — | ✅ Anthropic + OpenAI-compat | +| Граф знаний | — | — | — | ✅ Извлечение LLM + обход | +| Система навыков | ✅ Embeddings/семантическая | ✅ SKILL.md + TOML | ✅ Базовая | ✅ BM25 + pgvector гибрид | +| Планировщик с очередями | ✅ | Ограниченный параллелизм | — | ✅ (main/subagent/team/cron) | +| Каналы сообщений | 37+ | 15+ | 10+ | 7+ | +| Сопутствующие приложения | macOS, iOS, Android | Python SDK | — | Веб-дэшборд | +| Live Canvas / Голос | ✅ (A2UI + TTS/STT) | — | Транскрипция голоса | TTS (4 провайдера) | +| Провайдеры LLM | 10+ | 8 нативных + 29 совместимых | 13+ | **20+** | +| Рабочие пространства на пользователя | ✅ (файловые) | — | — | ✅ (PostgreSQL) | +| Зашифрованные секреты | — (только env-переменные) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM в БД | + +## Архитектура + +

+ GoClaw Architecture +

+ +## Быстрый старт + +**Требования:** Go 1.26+, PostgreSQL 18 с pgvector, Docker (опционально) + +### Из исходного кода + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Интерактивный мастер настройки +source .env.local && ./goclaw +``` + +### С Docker + +```bash +# Генерация .env с автоматически созданными секретами +chmod +x prepare-env.sh && ./prepare-env.sh + +# Добавьте как минимум один GOCLAW_*_API_KEY в .env, затем: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Веб-дэшборд: http://localhost:3000 +# Проверка работоспособности: curl http://localhost:18790/health +``` + +Если переменные окружения `GOCLAW_*_API_KEY` заданы, шлюз автоматически настраивается без интерактивных запросов — определяет провайдера, выполняет миграции и инициализирует данные по умолчанию. + +> Варианты сборки (OTel, Tailscale, Redis), теги Docker-образов и дополнительные compose-конфигурации см. в [Руководстве по развёртыванию](https://docs.goclaw.sh/#deploy-docker-compose). + +## Многоагентная оркестрация + +GoClaw поддерживает команды агентов и межагентную делегацию — каждый агент работает со своей идентичностью, инструментами, провайдером LLM и контекстными файлами. + +### Делегация агентов + +

+ Agent Delegation +

+ +| Режим | Принцип работы | Лучше всего подходит для | +|-------|----------------|--------------------------| +| **Синхронный** | Агент A обращается к агенту B и **ждёт** ответа | Быстрые запросы, проверка фактов | +| **Асинхронный** | Агент A обращается к агенту B и **продолжает работу**. B сообщает позже | Длинные задачи, отчёты, глубокий анализ | + +Агенты общаются через явные **ссылки-разрешения** с управлением направлением (`outbound`, `inbound`, `bidirectional`) и ограничениями параллелизма как на уровне ссылки, так и на уровне агента. + +### Команды агентов + +

+ Agent Teams Workflow +

+ +- **Общая доска задач** — Создание, принятие, завершение, поиск задач с зависимостями `blocked_by` +- **Командный почтовый ящик** — Прямой обмен сообщениями между участниками и широковещательная рассылка +- **Инструменты**: `team_tasks` для управления задачами, `team_message` для почтового ящика + +> Подробности о делегации, ссылках-разрешениях и управлении параллелизмом см. в [документации по командам агентов](https://docs.goclaw.sh/#teams-what-are-teams). + +## Встроенные инструменты + +| Инструмент | Группа | Описание | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Чтение содержимого файлов (с маршрутизацией виртуальной ФС) | +| `write_file` | fs | Запись/создание файлов | +| `edit_file` | fs | Точечное редактирование существующих файлов | +| `list_files` | fs | Список содержимого директории | +| `search` | fs | Поиск содержимого файлов по шаблону | +| `glob` | fs | Поиск файлов по glob-шаблону | +| `exec` | runtime | Выполнение shell-команд (с рабочим процессом подтверждения) | +| `web_search` | web | Поиск в интернете (Brave, DuckDuckGo) | +| `web_fetch` | web | Получение и парсинг веб-контента | +| `memory_search` | memory | Поиск в долгосрочной памяти (FTS + vector) | +| `memory_get` | memory | Извлечение записей из памяти | +| `skill_search` | — | Поиск навыков (гибрид BM25 + embedding) | +| `knowledge_graph_search` | memory | Поиск сущностей и обход связей графа знаний | +| `create_image` | media | Генерация изображений (DashScope, MiniMax) | +| `create_audio` | media | Генерация аудио (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Генерация видео (MiniMax, Veo) | +| `read_document` | media | Чтение документов (Gemini File API, цепочка провайдеров) | +| `read_image` | media | Анализ изображений | +| `read_audio` | media | Транскрипция и анализ аудио | +| `read_video` | media | Анализ видео | +| `message` | messaging | Отправка сообщений в каналы | +| `tts` | — | Синтез речи (Text-to-Speech) | +| `spawn` | — | Запуск субагента | +| `subagents` | sessions | Управление запущенными субагентами | +| `team_tasks` | teams | Общая доска задач (список, создание, принятие, завершение, поиск) | +| `team_message` | teams | Командный почтовый ящик (отправка, рассылка, чтение) | +| `sessions_list` | sessions | Список активных сессий | +| `sessions_history` | sessions | Просмотр истории сессий | +| `sessions_send` | sessions | Отправка сообщения в сессию | +| `sessions_spawn` | sessions | Запуск новой сессии | +| `session_status` | sessions | Проверка статуса сессии | +| `cron` | automation | Планирование и управление cron-заданиями | +| `gateway` | automation | Администрирование шлюза | +| `browser` | ui | Автоматизация браузера (навигация, клик, ввод, скриншот) | +| `announce_queue` | automation | Объявление асинхронных результатов (для асинхронных делегаций) | + +## Документация + +Полная документация на **[docs.goclaw.sh](https://docs.goclaw.sh)** — или просматривайте исходники в [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Раздел | Темы | +|--------|------| +| [Начало работы](https://docs.goclaw.sh/#what-is-goclaw) | Установка, Быстрый старт, Конфигурация, Обзор веб-дэшборда | +| [Основные концепции](https://docs.goclaw.sh/#how-goclaw-works) | Цикл агента, Сессии, Инструменты, Память, Мультиаренда | +| [Агенты](https://docs.goclaw.sh/#creating-agents) | Создание агентов, Контекстные файлы, Личность, Общий доступ | +| [Провайдеры](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 других | +| [Каналы](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Команды агентов](https://docs.goclaw.sh/#teams-what-are-teams) | Команды, Доска задач, Обмен сообщениями, Делегация и передача управления | +| [Расширенное использование](https://docs.goclaw.sh/#custom-tools) | Пользовательские инструменты, MCP, Навыки, Cron, Sandbox, Хуки, RBAC | +| [Развёртывание](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, База данных, Безопасность, Наблюдаемость, Tailscale | +| [Справочник](https://docs.goclaw.sh/#cli-commands) | CLI-команды, REST API, WebSocket-протокол, Переменные окружения | + +## Тестирование + +```bash +go test ./... # Юнит-тесты +go test -v ./tests/integration/ -timeout 120s # Интеграционные тесты (требуется запущенный шлюз) +``` + +## Статус проекта + +Подробный статус функций, включая то, что протестировано в продакшене и что ещё в разработке, см. в [CHANGELOG.md](CHANGELOG.md). + +## Благодарности + +GoClaw основан на оригинальном проекте [OpenClaw](https://github.com/openclaw/openclaw). Мы благодарны за архитектуру и видение, которые вдохновили этот Go-порт. + +## Лицензия + +MIT diff --git a/_readmes/README.sv.md b/_readmes/README.sv.md new file mode 100644 index 000000000..2ef326750 --- /dev/null +++ b/_readmes/README.sv.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentation • + Snabbstart • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** är en multi-agent AI-gateway som kopplar ihop LLM:er med dina verktyg, kanaler och data — driftsatt som en enda Go-binärfil utan externa körtidsberoenden. Den orkestrerar agentteam och inter-agent-delegering mellan 20+ LLM-leverantörer med full flertenantsisolering. + +En Go-port av [OpenClaw](https://github.com/openclaw/openclaw) med förbättrad säkerhet, flertenants PostgreSQL och observerbarhet för produktionsmiljö. + +🌐 **Språk:** +[🇺🇸 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) + +## Vad som skiljer den åt + +- **Agentteam och orkestrering** — Team med delade uppgiftstavlor, inter-agent-delegering (synkron/asynkron) och hybrid agentupptäckt +- **Flertenants PostgreSQL** — Per-användararbetsytor, per-användarkontextfiler, krypterade API-nycklar (AES-256-GCM), isolerade sessioner +- **Enstaka binärfil** — ~25 MB statisk Go-binärfil, ingen Node.js-körningstid, <1s uppstartstid, körs på en $5 VPS +- **Produktionssäkerhet** — 5-lagers behörighetssystem (gateway-autentisering → global verktygspolicy → per-agent → per-kanal → ägarexklusivt) plus hastighetsbegränsning, detektering av prompt injection, SSRF-skydd, nekade skalkommandon och AES-256-GCM-kryptering +- **20+ LLM-leverantörer** — Anthropic (native HTTP+SSE med prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP och valfri OpenAI-kompatibel slutpunkt +- **7 meddelandekanaler** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Per-leverantörs tänkande-läge (Anthropic budgettokens, OpenAI resonemangsnivå, DashScope thinking budget) med stöd för strömning +- **Heartbeat** — Periodiska agentincheckning via HEARTBEAT.md-checklistor med undertryckning vid OK-status, aktiva timmar, återförsökslogik och kanalleverans +- **Schemaläggning och Cron** — `at`, `every` och cron-uttryck för automatiserade agentuppgifter med filbaserad samtidighetskontroll +- **Observerbarhet** — Inbyggd LLM-anropsspårning med spann och prompt cache-mätvärden, valfri OpenTelemetry OTLP-export + +## Claw-ekosystemet + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Språk | TypeScript | Rust | Go | **Go** | +| Binärstorlek | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (bas) / **~36 MB** (+ OTel) | +| Docker-avbild | — | — | — | **~50 MB** (Alpine) | +| RAM (vilande) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Uppstart | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Målhårdvara | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| Funktion | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Flertenants (PostgreSQL) | — | — | — | ✅ | +| MCP-integration | — (använder ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agentteam | — | — | — | ✅ Uppgiftstavla + brevlåda | +| Säkerhetshärdning | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Grundläggande (workspace-begränsning, exec-neka) | ✅ 5-lagers försvar | +| OTel-observerbarhet | ✅ (valfri tillägg) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (valfri build-tag) | +| Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Kunskapsgraf | — | — | — | ✅ LLM-extraktion + traversering | +| Färdighetssystem | ✅ Inbäddningar/semantisk | ✅ SKILL.md + TOML | ✅ Grundläggande | ✅ BM25 + pgvector hybrid | +| Filbaserad schemaläggare | ✅ | Begränsad samtidighet | — | ✅ (main/subagent/team/cron) | +| Meddelandekanaler | 37+ | 15+ | 10+ | 7+ | +| Medföljande appar | macOS, iOS, Android | Python SDK | — | Webbinstrumentpanel | +| Live Canvas / Röst | ✅ (A2UI + TTS/STT) | — | Rösttransskription | TTS (4 leverantörer) | +| LLM-leverantörer | 10+ | 8 native + 29 compat | 13+ | **20+** | +| Per-användararbetsytor | ✅ (filbaserad) | — | — | ✅ (PostgreSQL) | +| Krypterade hemligheter | — (endast miljövariabler) | ✅ ChaCha20-Poly1305 | — (klartext-JSON) | ✅ AES-256-GCM i DB | + +## Arkitektur + +

+ GoClaw Architecture +

+ +## Snabbstart + +**Förutsättningar:** Go 1.26+, PostgreSQL 18 med pgvector, Docker (valfritt) + +### Från källkod + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interaktiv installationsguide +source .env.local && ./goclaw +``` + +### Med Docker + +```bash +# Generera .env med automatiskt skapade hemligheter +chmod +x prepare-env.sh && ./prepare-env.sh + +# Lägg till minst en GOCLAW_*_API_KEY i .env, sedan: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Webbinstrumentpanel på http://localhost:3000 +# Hälsokontroll: curl http://localhost:18790/health +``` + +När miljövariabler av typen `GOCLAW_*_API_KEY` är inställda registreras gatewayen automatiskt utan interaktiva promptar — identifierar leverantör, kör migrationer och sår standarddata. + +> För byggvarianter (OTel, Tailscale, Redis), Docker-avbildstaggar och compose-överlägg, se [Driftsättningsguiden](https://docs.goclaw.sh/#deploy-docker-compose). + +## Multi-agent-orkestrering + +GoClaw stöder agentteam och inter-agent-delegering — varje agent körs med sin egen identitet, verktyg, LLM-leverantör och kontextfiler. + +### Agentdelegering + +

+ Agent Delegation +

+ +| Läge | Hur det fungerar | Passar bäst för | +|------|-----------------|-----------------| +| **Synkron** | Agent A frågar Agent B och **väntar** på svaret | Snabba slagningar, faktakontroller | +| **Asynkron** | Agent A frågar Agent B och **fortsätter**. B meddelar senare | Långa uppgifter, rapporter, djupanalys | + +Agenter kommunicerar via explicita **behörighetslänkar** med riktningskontroll (`outbound`, `inbound`, `bidirectional`) och samtidighetsbegränsningar på både per-länk- och per-agentnivå. + +### Agentteam + +

+ Agent Teams Workflow +

+ +- **Delad uppgiftstavla** — Skapa, ta, slutföra och söka uppgifter med `blocked_by`-beroenden +- **Teamets brevlåda** — Direkt peer-to-peer-meddelanden och utsändningar +- **Verktyg**: `team_tasks` för uppgiftshantering, `team_message` för brevlådan + +> För detaljer om delegering, behörighetslänkar och samtidighetskontroll, se [dokumentationen för agentteam](https://docs.goclaw.sh/#teams-what-are-teams). + +## Inbyggda verktyg + +| Verktyg | Grupp | Beskrivning | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Läs filinnehåll (med virtuell FS-routing) | +| `write_file` | fs | Skriv/skapa filer | +| `edit_file` | fs | Applicera riktade redigeringar på befintliga filer | +| `list_files` | fs | Lista kataloginnehåll | +| `search` | fs | Sök filinnehåll med mönster | +| `glob` | fs | Hitta filer med glob-mönster | +| `exec` | runtime | Kör skalkommandon (med godkännandeflöde) | +| `web_search` | web | Sök på webben (Brave, DuckDuckGo) | +| `web_fetch` | web | Hämta och tolka webbinnehåll | +| `memory_search` | memory | Sök i långtidsminnet (FTS + vektor) | +| `memory_get` | memory | Hämta minnesposter | +| `skill_search` | — | Sök färdigheter (BM25 + inbäddningshybrid) | +| `knowledge_graph_search` | memory | Sök entiteter och traversera kunskapsgrafrelationer | +| `create_image` | media | Bildgenerering (DashScope, MiniMax) | +| `create_audio` | media | Ljudgenerering (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Videogenerering (MiniMax, Veo) | +| `read_document` | media | Dokumentläsning (Gemini File API, leverantörskedja) | +| `read_image` | media | Bildanalys | +| `read_audio` | media | Ljudtransskription och analys | +| `read_video` | media | Videoanalys | +| `message` | messaging | Skicka meddelanden till kanaler | +| `tts` | — | Text-till-tal-syntes | +| `spawn` | — | Starta en underagent | +| `subagents` | sessions | Styr körande underagenter | +| `team_tasks` | teams | Delad uppgiftstavla (lista, skapa, ta, slutföra, söka) | +| `team_message` | teams | Teamets brevlåda (skicka, sända ut, läsa) | +| `sessions_list` | sessions | Lista aktiva sessioner | +| `sessions_history` | sessions | Visa sessionshistorik | +| `sessions_send` | sessions | Skicka meddelande till en session | +| `sessions_spawn` | sessions | Starta en ny session | +| `session_status` | sessions | Kontrollera sessionsstatus | +| `cron` | automation | Schemalägg och hantera cron-jobb | +| `gateway` | automation | Gatewayadministration | +| `browser` | ui | Webbläsarautomation (navigera, klicka, skriva, skärmdump) | +| `announce_queue` | automation | Asynkron resultatannonsering (för asynkrona delegeringar) | + +## Dokumentation + +Fullständig dokumentation på **[docs.goclaw.sh](https://docs.goclaw.sh)** — eller bläddra i källkoden i [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Avsnitt | Ämnen | +|---------|-------| +| [Kom igång](https://docs.goclaw.sh/#what-is-goclaw) | Installation, Snabbstart, Konfiguration, Rundtur i webbinstrumentpanelen | +| [Grundläggande begrepp](https://docs.goclaw.sh/#how-goclaw-works) | Agentloop, Sessioner, Verktyg, Minne, Flertenancy | +| [Agenter](https://docs.goclaw.sh/#creating-agents) | Skapa agenter, Kontextfiler, Personlighet, Delning och åtkomst | +| [Leverantörer](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 fler | +| [Kanaler](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agentteam](https://docs.goclaw.sh/#teams-what-are-teams) | Team, Uppgiftstavla, Meddelanden, Delegering och överlämning | +| [Avancerat](https://docs.goclaw.sh/#custom-tools) | Anpassade verktyg, MCP, Färdigheter, Cron, Sandbox, Krokar, RBAC | +| [Driftsättning](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Databas, Säkerhet, Observerbarhet, Tailscale | +| [Referens](https://docs.goclaw.sh/#cli-commands) | CLI-kommandon, REST API, WebSocket-protokoll, Miljövariabler | + +## Testning + +```bash +go test ./... # Enhetstester +go test -v ./tests/integration/ -timeout 120s # Integrationstester (kräver körande gateway) +``` + +## Projektstatus + +Se [CHANGELOG.md](CHANGELOG.md) för detaljerad funktionsstatus, inklusive vad som testats i produktion och vad som fortfarande pågår. + +## Erkännanden + +GoClaw är byggt på det ursprungliga [OpenClaw](https://github.com/openclaw/openclaw)-projektet. Vi är tacksamma för den arkitektur och vision som inspirerade denna Go-port. + +## Licens + +MIT diff --git a/_readmes/README.th.md b/_readmes/README.th.md new file mode 100644 index 000000000..0f69dda89 --- /dev/null +++ b/_readmes/README.th.md @@ -0,0 +1,229 @@ +

+ 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. +

+ +

+ เอกสาร • + เริ่มต้นอย่างรวดเร็ว • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** คือ AI gateway แบบ multi-agent ที่เชื่อมต่อ LLM เข้ากับเครื่องมือ ช่องทางสื่อสาร และข้อมูลของคุณ — ติดตั้งเป็น Go binary ไฟล์เดียวโดยไม่มี runtime dependency ใดๆ รองรับการประสานงาน agent teams และการส่งต่องานระหว่าง agent ผ่านผู้ให้บริการ LLM มากกว่า 20 รายพร้อมการแยกข้อมูลแบบ multi-tenant อย่างสมบูรณ์ + +เป็น Go port ของ [OpenClaw](https://github.com/openclaw/openclaw) ที่เสริมด้วยความปลอดภัยขั้นสูง, PostgreSQL แบบ multi-tenant และความสามารถด้าน observability ระดับ production + +🌐 **ภาษา:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇫🇷 Français](README.fr.md) · +[🇷🇺 Русский](README.ru.md) +[🇹🇭 ไทย](README.th.md) · + +## จุดเด่นที่แตกต่าง + +- **Agent Teams และการประสานงาน** — Teams ที่มี task board ร่วมกัน, การส่งต่องานระหว่าง agent (แบบ sync/async) และการค้นหา agent แบบผสม +- **PostgreSQL แบบ Multi-Tenant** — workspace แยกต่อผู้ใช้, ไฟล์ context แยกต่อผู้ใช้, API key เข้ารหัสด้วย AES-256-GCM และ session ที่แยกจากกัน +- **Single Binary** — Go binary แบบ static ขนาดประมาณ 25 MB ไม่ต้องใช้ Node.js runtime เริ่มทำงานภายใน <1 วินาที รันบน VPS ราคา $5 ได้ +- **ความปลอดภัยระดับ Production** — ระบบสิทธิ์ 5 ชั้น (gateway auth → global tool policy → per-agent → per-channel → owner-only) พร้อม rate limiting, การตรวจจับ prompt injection, การป้องกัน SSRF, shell deny patterns และการเข้ารหัส AES-256-GCM +- **ผู้ให้บริการ LLM มากกว่า 20 ราย** — Anthropic (native HTTP+SSE พร้อม prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP และ endpoint ที่เข้ากันได้กับ OpenAI ทุกรูปแบบ +- **7 ช่องทางสื่อสาร** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — โหมดการคิดแบบขยายต่อผู้ให้บริการ (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) พร้อมรองรับ streaming +- **Heartbeat** — การตรวจสอบ agent เป็นระยะด้วย HEARTBEAT.md checklists พร้อม suppress-on-OK, กำหนดชั่วโมงทำงาน, logic การลองใหม่ และการส่งผ่านช่องทาง +- **การตั้งเวลาและ Cron** — คำสั่ง `at`, `every` และ cron expressions สำหรับงาน agent อัตโนมัติพร้อม lane-based concurrency +- **Observability** — การติดตาม LLM call แบบ built-in ด้วย spans และ prompt cache metrics พร้อมรองรับการส่งออก OpenTelemetry OTLP แบบ optional + +## Claw Ecosystem + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| ภาษา | TypeScript | Rust | Go | **Go** | +| ขนาด binary | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (base) / **~36 MB** (+ OTel) | +| Docker image | — | — | — | **~50 MB** (Alpine) | +| RAM (ขณะ idle) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| เวลาเริ่มทำงาน | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| ฮาร์ดแวร์เป้าหมาย | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| ฟีเจอร์ | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| การรวม MCP | — (ใช้ ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Agent teams | — | — | — | ✅ Task board + mailbox | +| การเสริมความปลอดภัย | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | พื้นฐาน (workspace restrict, exec deny) | ✅ การป้องกัน 5 ชั้น | +| OTel observability | ✅ (opt-in extension) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Knowledge graph | — | — | — | ✅ LLM extraction + traversal | +| ระบบ skill | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ พื้นฐาน | ✅ BM25 + pgvector hybrid | +| Lane-based scheduler | ✅ | Bounded concurrency | — | ✅ (main/subagent/team/cron) | +| ช่องทางสื่อสาร | 37+ | 15+ | 10+ | 7+ | +| Companion apps | macOS, iOS, Android | Python SDK | — | Web dashboard | +| Live Canvas / เสียง | ✅ (A2UI + TTS/STT) | — | Voice transcription | TTS (4 ผู้ให้บริการ) | +| ผู้ให้บริการ LLM | 10+ | 8 native + 29 compat | 13+ | **20+** | +| workspace ต่อผู้ใช้ | ✅ (file-based) | — | — | ✅ (PostgreSQL) | +| Encrypted secrets | — (env vars เท่านั้น) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM ใน DB | + +## สถาปัตยกรรม + +

+ GoClaw Architecture +

+ +## เริ่มต้นอย่างรวดเร็ว + +**ข้อกำหนดเบื้องต้น:** Go 1.26+, PostgreSQL 18 พร้อม pgvector, Docker (optional) + +### จาก Source Code + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # ตัวช่วยตั้งค่าแบบ interactive +source .env.local && ./goclaw +``` + +### ด้วย Docker + +```bash +# สร้างไฟล์ .env พร้อม secrets ที่สร้างอัตโนมัติ +chmod +x prepare-env.sh && ./prepare-env.sh + +# เพิ่ม GOCLAW_*_API_KEY อย่างน้อยหนึ่งรายการใน .env จากนั้น: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard ที่ http://localhost:3000 +# ตรวจสอบสถานะ: curl http://localhost:18790/health +``` + +เมื่อตั้งค่า environment variables `GOCLAW_*_API_KEY` แล้ว gateway จะทำการ onboard อัตโนมัติโดยไม่ต้องป้อนข้อมูลแบบ interactive — ตรวจจับผู้ให้บริการ รัน migrations และสร้างข้อมูลเริ่มต้น + +> สำหรับ build variants (OTel, Tailscale, Redis), Docker image tags และ compose overlays ดูที่ [Deployment Guide](https://docs.goclaw.sh/#deploy-docker-compose) + +## การประสานงาน Multi-Agent + +GoClaw รองรับ agent teams และการส่งต่องานระหว่าง agent — แต่ละ agent ทำงานด้วย identity, เครื่องมือ, ผู้ให้บริการ LLM และไฟล์ context ของตัวเอง + +### การส่งต่องานระหว่าง Agent + +

+ Agent Delegation +

+ +| โหมด | วิธีทำงาน | เหมาะสำหรับ | +|------|-------------|----------| +| **Sync** | Agent A ถาม Agent B และ**รอ**คำตอบ | การค้นหาข้อมูลด่วน, การตรวจสอบข้อเท็จจริง | +| **Async** | Agent A ถาม Agent B และ**ทำงานต่อ** ส่วน B แจ้งผลลัพธ์ทีหลัง | งานระยะยาว, รายงาน, การวิเคราะห์เชิงลึก | + +Agent สื่อสารผ่าน **permission links** แบบชัดเจนพร้อมการควบคุมทิศทาง (`outbound`, `inbound`, `bidirectional`) และการจำกัด concurrency ทั้งในระดับต่อ link และต่อ agent + +### Agent Teams + +

+ Agent Teams Workflow +

+ +- **Shared task board** — สร้าง, รับ, เสร็จสิ้น, ค้นหา task พร้อมการพึ่งพา `blocked_by` +- **Team mailbox** — การส่งข้อความแบบ peer-to-peer และการ broadcast +- **เครื่องมือ**: `team_tasks` สำหรับจัดการ task, `team_message` สำหรับ mailbox + +> สำหรับรายละเอียดการส่งต่องาน, permission links และการควบคุม concurrency ดูที่ [เอกสาร Agent Teams](https://docs.goclaw.sh/#teams-what-are-teams) + +## เครื่องมือ Built-in + +| เครื่องมือ | กลุ่ม | คำอธิบาย | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | อ่านเนื้อหาไฟล์ (พร้อม virtual FS routing) | +| `write_file` | fs | เขียน/สร้างไฟล์ | +| `edit_file` | fs | แก้ไขเฉพาะส่วนของไฟล์ที่มีอยู่ | +| `list_files` | fs | แสดงรายการเนื้อหาในไดเรกทอรี | +| `search` | fs | ค้นหาเนื้อหาไฟล์ตามรูปแบบ | +| `glob` | fs | ค้นหาไฟล์ด้วย glob pattern | +| `exec` | runtime | รันคำสั่ง shell (พร้อม approval workflow) | +| `web_search` | web | ค้นหาเว็บ (Brave, DuckDuckGo) | +| `web_fetch` | web | ดึงและแยกวิเคราะห์เนื้อหาเว็บ | +| `memory_search` | memory | ค้นหา long-term memory (FTS + vector) | +| `memory_get` | memory | ดึงข้อมูล memory entries | +| `skill_search` | — | ค้นหา skills (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | ค้นหา entities และ traverse ความสัมพันธ์ใน knowledge graph | +| `create_image` | media | สร้างรูปภาพ (DashScope, MiniMax) | +| `create_audio` | media | สร้างเสียง (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | สร้างวิดีโอ (MiniMax, Veo) | +| `read_document` | media | อ่านเอกสาร (Gemini File API, provider chain) | +| `read_image` | media | วิเคราะห์รูปภาพ | +| `read_audio` | media | ถอดความและวิเคราะห์เสียง | +| `read_video` | media | วิเคราะห์วิดีโอ | +| `message` | messaging | ส่งข้อความไปยังช่องทาง | +| `tts` | — | สังเคราะห์ Text-to-Speech | +| `spawn` | — | สร้าง subagent | +| `subagents` | sessions | ควบคุม subagent ที่กำลังทำงาน | +| `team_tasks` | teams | Shared task board (list, create, claim, complete, search) | +| `team_message` | teams | Team mailbox (send, broadcast, read) | +| `sessions_list` | sessions | แสดงรายการ session ที่ใช้งานอยู่ | +| `sessions_history` | sessions | ดูประวัติ session | +| `sessions_send` | sessions | ส่งข้อความไปยัง session | +| `sessions_spawn` | sessions | สร้าง session ใหม่ | +| `session_status` | sessions | ตรวจสอบสถานะ session | +| `cron` | automation | กำหนดเวลาและจัดการ cron jobs | +| `gateway` | automation | การดูแลระบบ gateway | +| `browser` | ui | Browser automation (navigate, click, type, screenshot) | +| `announce_queue` | automation | การประกาศผลลัพธ์แบบ async (สำหรับการส่งต่องานแบบ async) | + +## เอกสาร + +เอกสารฉบับสมบูรณ์ที่ **[docs.goclaw.sh](https://docs.goclaw.sh)** — หรือดู source ที่ [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| หัวข้อ | เนื้อหา | +|---------|--------| +| [เริ่มต้นใช้งาน](https://docs.goclaw.sh/#what-is-goclaw) | การติดตั้ง, เริ่มต้นอย่างรวดเร็ว, การตั้งค่า, ทัวร์ Web Dashboard | +| [แนวคิดหลัก](https://docs.goclaw.sh/#how-goclaw-works) | Agent Loop, Sessions, เครื่องมือ, Memory, Multi-Tenancy | +| [Agents](https://docs.goclaw.sh/#creating-agents) | การสร้าง Agent, ไฟล์ Context, บุคลิกภาพ, การแชร์และการเข้าถึง | +| [Providers](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 เพิ่มเติม | +| [ช่องทาง](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Agent Teams](https://docs.goclaw.sh/#teams-what-are-teams) | Teams, Task Board, การส่งข้อความ, การส่งต่องานและ Handoff | +| [ขั้นสูง](https://docs.goclaw.sh/#custom-tools) | เครื่องมือกำหนดเอง, MCP, Skills, Cron, Sandbox, Hooks, RBAC | +| [การ Deploy](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, ฐานข้อมูล, ความปลอดภัย, Observability, Tailscale | +| [อ้างอิง](https://docs.goclaw.sh/#cli-commands) | คำสั่ง CLI, REST API, WebSocket Protocol, Environment Variables | + +## การทดสอบ + +```bash +go test ./... # Unit tests +go test -v ./tests/integration/ -timeout 120s # Integration tests (ต้องมี gateway ที่กำลังทำงาน) +``` + +## สถานะโครงการ + +ดู [CHANGELOG.md](CHANGELOG.md) สำหรับสถานะฟีเจอร์โดยละเอียด รวมถึงสิ่งที่ได้รับการทดสอบใน production แล้วและสิ่งที่ยังอยู่ระหว่างดำเนินการ + +## ขอบคุณ + +GoClaw สร้างขึ้นจากโครงการ [OpenClaw](https://github.com/openclaw/openclaw) ต้นฉบับ เราขอขอบคุณสถาปัตยกรรมและวิสัยทัศน์ที่เป็นแรงบันดาลใจในการ port มาเป็น Go + +## สัญญาอนุญาต + +MIT diff --git a/_readmes/README.tl.md b/_readmes/README.tl.md new file mode 100644 index 000000000..78ba82b14 --- /dev/null +++ b/_readmes/README.tl.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Dokumentasyon • + Mabilis na Simula • + Twitter / 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](https://github.com/openclaw/openclaw) na may pinahusay na seguridad, multi-tenant PostgreSQL, at production-grade observability. + +🌐 **Mga Wika:** +[🇺🇸 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) + +## 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 Cron** — `at`, `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 + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Interactive setup wizard +source .env.local && ./goclaw +``` + +### Gamit ang Docker + +```bash +# 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: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard sa http://localhost:3000 +# 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](https://docs.goclaw.sh/#deploy-docker-compose). + +## 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](https://docs.goclaw.sh/#teams-what-are-teams). + +## 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](https://docs.goclaw.sh)** — o i-browse ang source sa [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Seksyon | Mga Paksa | +|---------|-----------| +| [Pagsisimula](https://docs.goclaw.sh/#what-is-goclaw) | Pag-install, Mabilis na Simula, Konfiguraksyon, Pagsasaliksik sa Web Dashboard | +| [Mga Pangunahing Konsepto](https://docs.goclaw.sh/#how-goclaw-works) | Agent Loop, Mga Session, Mga Kasangkapan, Memorya, Multi-Tenancy | +| [Mga Agent](https://docs.goclaw.sh/#creating-agents) | Paglikha ng Mga Agent, Mga Context File, Personalidad, Pagbabahagi at Access | +| [Mga Provider](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 pa | +| [Mga Channel](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Mga Agent Team](https://docs.goclaw.sh/#teams-what-are-teams) | Mga Team, Task Board, Pagmemensahe, Delegasyon at Handoff | +| [Advanced](https://docs.goclaw.sh/#custom-tools) | Mga Custom na Kasangkapan, MCP, Mga Skill, Cron, Sandbox, Hooks, RBAC | +| [Deployment](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Database, Seguridad, Observability, Tailscale | +| [Sanggunian](https://docs.goclaw.sh/#cli-commands) | Mga CLI Command, REST API, WebSocket Protocol, Mga Environment Variable | + +## Pagsusuri + +```bash +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](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](https://github.com/openclaw/openclaw). Nagpapasalamat kami sa arkitektura at bisyon na nagbigay-inspirasyon sa Go port na ito. + +## Lisensya + +MIT diff --git a/_readmes/README.tr.md b/_readmes/README.tr.md new file mode 100644 index 000000000..a64d0ff03 --- /dev/null +++ b/_readmes/README.tr.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Belgelendirme • + Hızlı Başlangıç • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw**, LLM'leri araçlarınıza, kanallarınıza ve verilerinize bağlayan çok ajanlı bir yapay zeka ağ geçididir — sıfır çalışma zamanı bağımlılığıyla tek bir Go ikili dosyası olarak dağıtılır. 20'den fazla LLM sağlayıcısında tam çok kiracılı izolasyonla ajan ekiplerini ve ajanlar arası devri yönetir. + +[OpenClaw](https://github.com/openclaw/openclaw) projesinin, geliştirilmiş güvenlik, çok kiracılı PostgreSQL ve üretim düzeyinde gözlemlenebilirlik ile yazılmış bir Go portudur. + +🌐 **Diller:** +[🇺🇸 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) + +## Farkı Yaratan Özellikler + +- **Ajan Ekipleri ve Orkestrasyon** — Paylaşılan görev panoları, ajanlar arası devir (senkron/asenkron) ve hibrit ajan keşifiyle ekipler +- **Çok Kiracılı PostgreSQL** — Kullanıcı başına çalışma alanları, kullanıcı başına bağlam dosyaları, şifreli API anahtarları (AES-256-GCM), izole oturumlar +- **Tek İkili Dosya** — ~25 MB statik Go ikili dosyası, Node.js çalışma zamanı yok, <1 saniye başlatma, 5 dolarlık bir VPS üzerinde çalışır +- **Üretim Güvenliği** — 5 katmanlı izin sistemi (ağ geçidi kimlik doğrulaması → genel araç politikası → ajan başına → kanal başına → yalnızca sahip) ile hız sınırlama, komut enjeksiyonu tespiti, SSRF koruması, kabuk reddetme desenleri ve AES-256-GCM şifreleme +- **20'den Fazla LLM Sağlayıcısı** — Anthropic (istem önbellekleme ile yerel HTTP+SSE), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP ve OpenAI uyumlu herhangi bir uç nokta +- **7 Mesajlaşma Kanalı** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Akış desteğiyle sağlayıcı başına düşünme modu (Anthropic bütçe tokeni, OpenAI muhakeme çabası, DashScope düşünme bütçesi) +- **Heartbeat** — Sessizlik-başarı modunda, aktif saatler, yeniden deneme mantığı ve kanal teslimiyle HEARTBEAT.md kontrol listeleri üzerinden periyodik ajan bildirimleri +- **Zamanlama ve Cron** — Şerit tabanlı eşzamanlılıkla otomatikleştirilmiş ajan görevleri için `at`, `every` ve cron ifadeleri +- **Gözlemlenebilirlik** — Aralıklar ve istem önbellek metrikleriyle yerleşik LLM çağrı izleme, isteğe bağlı OpenTelemetry OTLP dışa aktarma + +## Claw Ekosistemi + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Dil | TypeScript | Rust | Go | **Go** | +| İkili dosya boyutu | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (temel) / **~36 MB** (+ OTel) | +| Docker imajı | — | — | — | **~50 MB** (Alpine) | +| RAM (boşta) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Başlatma | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Hedef donanım | $599+ Mac Mini | $10 uç | $10 uç | **$5 VPS+** | + +| Özellik | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Çok kiracılı (PostgreSQL) | — | — | — | ✅ | +| MCP entegrasyonu | — (ACP kullanır) | — | — | ✅ (stdio/SSE/streamable-http) | +| Ajan ekipleri | — | — | — | ✅ Görev panosu + posta kutusu | +| Güvenlik sertleştirme | ✅ (SSRF, yol geçişi, enjeksiyon) | ✅ (kum havuzu, hız sınırı, enjeksiyon, eşleştirme) | Temel (çalışma alanı kısıtla, exec reddet) | ✅ 5 katmanlı savunma | +| OTel gözlemlenebilirlik | ✅ (isteğe bağlı uzantı) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (isteğe bağlı derleme etiketi) | +| İstem önbellekleme | — | — | — | ✅ Anthropic + OpenAI uyumlu | +| Bilgi grafiği | — | — | — | ✅ LLM çıkarımı + geçiş | +| Yetenek sistemi | ✅ Gömme/anlamsal | ✅ SKILL.md + TOML | ✅ Temel | ✅ BM25 + pgvector hibrit | +| Şerit tabanlı zamanlayıcı | ✅ | Sınırlı eşzamanlılık | — | ✅ (main/subagent/team/cron) | +| Mesajlaşma kanalları | 37+ | 15+ | 10+ | 7+ | +| Yardımcı uygulamalar | macOS, iOS, Android | Python SDK | — | Web panosu | +| Canlı Tuval / Ses | ✅ (A2UI + TTS/STT) | — | Ses transkripsiyonu | TTS (4 sağlayıcı) | +| LLM sağlayıcıları | 10+ | 8 yerel + 29 uyumlu | 13+ | **20+** | +| Kullanıcı başına çalışma alanları | ✅ (dosya tabanlı) | — | — | ✅ (PostgreSQL) | +| Şifreli gizli bilgiler | — (yalnızca ortam değişkenleri) | ✅ ChaCha20-Poly1305 | — (düz metin JSON) | ✅ DB'de AES-256-GCM | + +## Mimari + +

+ GoClaw Architecture +

+ +## Hızlı Başlangıç + +**Önkoşullar:** Go 1.26+, pgvector ile PostgreSQL 18, Docker (isteğe bağlı) + +### Kaynaktan + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Etkileşimli kurulum sihirbazı +source .env.local && ./goclaw +``` + +### Docker ile + +```bash +# Otomatik oluşturulan gizli bilgilerle .env oluştur +chmod +x prepare-env.sh && ./prepare-env.sh + +# .env dosyasına en az bir GOCLAW_*_API_KEY ekleyin, ardından: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Panosu: http://localhost:3000 +# Sağlık kontrolü: curl http://localhost:18790/health +``` + +`GOCLAW_*_API_KEY` ortam değişkenleri ayarlandığında, ağ geçidi etkileşimli istem olmadan otomatik olarak katılır — sağlayıcıyı algılar, migrasyonları çalıştırır ve varsayılan verileri yerleştirir. + +> Derleme varyantları (OTel, Tailscale, Redis), Docker imaj etiketleri ve compose katmanları için [Dağıtım Kılavuzu](https://docs.goclaw.sh/#deploy-docker-compose) sayfasına bakın. + +## Çok Ajanlı Orkestrasyon + +GoClaw, ajan ekiplerini ve ajanlar arası devri destekler — her ajan kendi kimliği, araçları, LLM sağlayıcısı ve bağlam dosyalarıyla çalışır. + +### Ajan Devri + +

+ Agent Delegation +

+ +| Mod | Nasıl çalışır | En iyi kullanım | +|------|-------------|----------| +| **Senkron** | A Ajanı, B Ajanına sorar ve yanıtı **bekler** | Hızlı sorgular, gerçek doğrulama | +| **Asenkron** | A Ajanı, B Ajanına sorar ve **devam eder**. B daha sonra bildirir | Uzun görevler, raporlar, derin analiz | + +Ajanlar, yön kontrolü (`outbound`, `inbound`, `bidirectional`) ve hem bağlantı başına hem de ajan başına eşzamanlılık sınırlarıyla açık **izin bağlantıları** üzerinden iletişim kurar. + +### Ajan Ekipleri + +

+ Agent Teams Workflow +

+ +- **Paylaşılan görev panosu** — `blocked_by` bağımlılıklarıyla görev oluşturma, talep etme, tamamlama ve arama +- **Ekip posta kutusu** — Doğrudan eşler arası mesajlaşma ve yayınlar +- **Araçlar**: Görev yönetimi için `team_tasks`, posta kutusu için `team_message` + +> Devir ayrıntıları, izin bağlantıları ve eşzamanlılık kontrolü için [Ajan Ekipleri belgelerine](https://docs.goclaw.sh/#teams-what-are-teams) bakın. + +## Yerleşik Araçlar + +| Araç | Grup | Açıklama | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Dosya içeriğini oku (sanal FS yönlendirmesiyle) | +| `write_file` | fs | Dosya yaz/oluştur | +| `edit_file` | fs | Mevcut dosyalara hedefli düzenlemeler uygula | +| `list_files` | fs | Dizin içeriğini listele | +| `search` | fs | Dosya içeriğini desene göre ara | +| `glob` | fs | Glob deseniyle dosya bul | +| `exec` | runtime | Kabuk komutları çalıştır (onay iş akışıyla) | +| `web_search` | web | Web'de ara (Brave, DuckDuckGo) | +| `web_fetch` | web | Web içeriğini getir ve ayrıştır | +| `memory_search` | memory | Uzun süreli bellekte ara (FTS + vektör) | +| `memory_get` | memory | Bellek girdilerini al | +| `skill_search` | — | Yetenekleri ara (BM25 + gömme hibrit) | +| `knowledge_graph_search` | memory | Varlıkları ara ve bilgi grafiği ilişkilerinde gezin | +| `create_image` | media | Görüntü oluşturma (DashScope, MiniMax) | +| `create_audio` | media | Ses oluşturma (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Video oluşturma (MiniMax, Veo) | +| `read_document` | media | Belge okuma (Gemini File API, sağlayıcı zinciri) | +| `read_image` | media | Görüntü analizi | +| `read_audio` | media | Ses transkripsiyonu ve analizi | +| `read_video` | media | Video analizi | +| `message` | messaging | Kanallara mesaj gönder | +| `tts` | — | Metinden Konuşmaya sentezi | +| `spawn` | — | Bir alt ajan başlat | +| `subagents` | sessions | Çalışan alt ajanları yönet | +| `team_tasks` | teams | Paylaşılan görev panosu (listele, oluştur, talep et, tamamla, ara) | +| `team_message` | teams | Ekip posta kutusu (gönder, yayınla, oku) | +| `sessions_list` | sessions | Aktif oturumları listele | +| `sessions_history` | sessions | Oturum geçmişini görüntüle | +| `sessions_send` | sessions | Bir oturuma mesaj gönder | +| `sessions_spawn` | sessions | Yeni bir oturum başlat | +| `session_status` | sessions | Oturum durumunu kontrol et | +| `cron` | automation | Cron işlerini zamanla ve yönet | +| `gateway` | automation | Ağ geçidi yönetimi | +| `browser` | ui | Tarayıcı otomasyonu (gezin, tıkla, yaz, ekran görüntüsü al) | +| `announce_queue` | automation | Asenkron sonuç bildirimi (asenkron devirler için) | + +## Belgelendirme + +Tam belgelendirme **[docs.goclaw.sh](https://docs.goclaw.sh)** adresinde — veya kaynağa [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) üzerinden göz atın. + +| Bölüm | Konular | +|---------|--------| +| [Başlarken](https://docs.goclaw.sh/#what-is-goclaw) | Kurulum, Hızlı Başlangıç, Yapılandırma, Web Panosu Turu | +| [Temel Kavramlar](https://docs.goclaw.sh/#how-goclaw-works) | Ajan Döngüsü, Oturumlar, Araçlar, Bellek, Çok Kiracılılık | +| [Ajanlar](https://docs.goclaw.sh/#creating-agents) | Ajan Oluşturma, Bağlam Dosyaları, Kişilik, Paylaşım ve Erişim | +| [Sağlayıcılar](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 daha | +| [Kanallar](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Ajan Ekipleri](https://docs.goclaw.sh/#teams-what-are-teams) | Ekipler, Görev Panosu, Mesajlaşma, Devir ve Teslim | +| [Gelişmiş](https://docs.goclaw.sh/#custom-tools) | Özel Araçlar, MCP, Yetenekler, Cron, Kum Havuzu, Hook'lar, RBAC | +| [Dağıtım](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Veritabanı, Güvenlik, Gözlemlenebilirlik, Tailscale | +| [Referans](https://docs.goclaw.sh/#cli-commands) | CLI Komutları, REST API, WebSocket Protokolü, Ortam Değişkenleri | + +## Test + +```bash +go test ./... # Birim testleri +go test -v ./tests/integration/ -timeout 120s # Entegrasyon testleri (çalışan ağ geçidi gerektirir) +``` + +## Proje Durumu + +Üretimde test edilenler ve hâlâ devam edenler dahil ayrıntılı özellik durumu için [CHANGELOG.md](CHANGELOG.md) dosyasına bakın. + +## Teşekkürler + +GoClaw, orijinal [OpenClaw](https://github.com/openclaw/openclaw) projesi üzerine inşa edilmiştir. Bu Go portuna ilham veren mimari ve vizyona minnettarız. + +## Lisans + +MIT diff --git a/_readmes/README.uk.md b/_readmes/README.uk.md new file mode 100644 index 000000000..3bb5668a8 --- /dev/null +++ b/_readmes/README.uk.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ Документація • + Швидкий старт • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** — це мультиагентний AI-шлюз, що з'єднує LLM з вашими інструментами, каналами та даними — розгортається як єдиний Go-бінарник без зовнішніх залежностей часу виконання. Він оркеструє команди агентів і міжагентну делегацію через 20+ постачальників LLM з повною ізоляцією мультиорендарності. + +Go-порт [OpenClaw](https://github.com/openclaw/openclaw) з посиленою безпекою, мультиорендарним PostgreSQL та спостережуваністю виробничого рівня. + +🌐 **Мови:** +[🇺🇸 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) + +## Чим це відрізняється + +- **Команди агентів та оркестрація** — Команди зі спільними дошками завдань, міжагентна делегація (синхронна/асинхронна) та гібридне виявлення агентів +- **Мультиорендарний PostgreSQL** — Окремі робочі простори для кожного користувача, файли контексту для кожного користувача, зашифровані API-ключі (AES-256-GCM), ізольовані сесії +- **Єдиний бінарник** — ~25 МБ статичний Go-бінарник, без Node.js-середовища виконання, запуск менш ніж за 1 секунду, працює на VPS за $5 +- **Безпека виробничого рівня** — 5-рівнева система дозволів (автентифікація шлюзу → глобальна політика інструментів → на рівні агента → на рівні каналу → лише для власника), а також обмеження частоти запитів, виявлення ін'єкцій у промпт, захист від SSRF, шаблони заборони команд оболонки та шифрування AES-256-GCM +- **20+ постачальників LLM** — Anthropic (нативний HTTP+SSE з кешуванням промптів), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP та будь-який OpenAI-сумісний endpoint +- **7 каналів обміну повідомленнями** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Режим мислення для кожного постачальника (бюджет токенів Anthropic, зусилля міркування OpenAI, бюджет мислення DashScope) з підтримкою потокової передачі +- **Heartbeat** — Periodичні перевірки агентів через контрольні списки HEARTBEAT.md з придушенням при OK, активними годинами, логікою повторних спроб та доставкою через канали +- **Планування та Cron** — `at`, `every` та cron-вирази для автоматизованих завдань агентів з паралелізмом на основі черг +- **Спостережуваність** — Вбудоване трасування LLM-викликів зі спанами та метриками кешу промптів, необов'язковий експорт OpenTelemetry OTLP + +## Екосистема Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| Мова | TypeScript | Rust | Go | **Go** | +| Розмір бінарника | 28 МБ + Node.js | 3,4 МБ | ~8 МБ | **~25 МБ** (базовий) / **~36 МБ** (+ OTel) | +| Docker-образ | — | — | — | **~50 МБ** (Alpine) | +| ОЗП (у спокої) | > 1 ГБ | < 5 МБ | < 10 МБ | **~35 МБ** | +| Запуск | > 5 с | < 10 мс | < 1 с | **< 1 с** | +| Цільове залізо | Mac Mini від $599+ | Edge за $10 | Edge за $10 | **VPS від $5+** | + +| Функція | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| Мультиорендарність (PostgreSQL) | — | — | — | ✅ | +| Інтеграція MCP | — (використовує ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Команди агентів | — | — | — | ✅ Дошка завдань + поштова скринька | +| Посилення безпеки | ✅ (SSRF, обхід шляху, ін'єкції) | ✅ (пісочниця, обмеження частоти, ін'єкції, спарювання) | Базова (обмеження робочого простору, заборона exec) | ✅ 5-рівневий захист | +| Спостережуваність OTel | ✅ (необов'язкове розширення) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (необов'язковий тег збірки) | +| Кешування промптів | — | — | — | ✅ Anthropic + OpenAI-compat | +| Граф знань | — | — | — | ✅ Витягування LLM + обхід | +| Система навичок | ✅ Вбудовування/семантика | ✅ SKILL.md + TOML | ✅ Базова | ✅ BM25 + гібрид pgvector | +| Планувальник на основі черг | ✅ | Обмежений паралелізм | — | ✅ (main/subagent/team/cron) | +| Канали обміну повідомленнями | 37+ | 15+ | 10+ | 7+ | +| Супутні застосунки | macOS, iOS, Android | Python SDK | — | Веб-панель | +| Live Canvas / Голос | ✅ (A2UI + TTS/STT) | — | Транскрипція голосу | TTS (4 постачальники) | +| Постачальники LLM | 10+ | 8 нативних + 29 сумісних | 13+ | **20+** | +| Робочі простори для кожного користувача | ✅ (на основі файлів) | — | — | ✅ (PostgreSQL) | +| Зашифровані секрети | — (лише змінні середовища) | ✅ ChaCha20-Poly1305 | — (відкритий JSON) | ✅ AES-256-GCM у БД | + +## Архітектура + +

+ GoClaw Architecture +

+ +## Швидкий старт + +**Передумови:** Go 1.26+, PostgreSQL 18 з pgvector, Docker (необов'язково) + +### З вихідного коду + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Інтерактивний майстер налаштування +source .env.local && ./goclaw +``` + +### З Docker + +```bash +# Генерація .env з автоматично згенерованими секретами +chmod +x prepare-env.sh && ./prepare-env.sh + +# Додайте хоча б один GOCLAW_*_API_KEY до .env, потім: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Веб-панель за адресою http://localhost:3000 +# Перевірка стану: curl http://localhost:18790/health +``` + +Якщо встановлені змінні середовища `GOCLAW_*_API_KEY`, шлюз виконує автоматичне налаштування без інтерактивних підказок — визначає постачальника, запускає міграції та заповнює початкові дані. + +> Щодо варіантів збірки (OTel, Tailscale, Redis), тегів Docker-образів та compose-оверлеїв, дивіться [Посібник із розгортання](https://docs.goclaw.sh/#deploy-docker-compose). + +## Мультиагентна оркестрація + +GoClaw підтримує команди агентів та міжагентну делегацію — кожен агент працює зі своєю власною ідентичністю, інструментами, постачальником LLM та файлами контексту. + +### Делегація агентів + +

+ Agent Delegation +

+ +| Режим | Як працює | Найкраще для | +|-------|-----------|--------------| +| **Синхронний** | Агент A запитує агента B і **чекає** на відповідь | Швидкі пошукові запити, перевірка фактів | +| **Асинхронний** | Агент A запитує агента B і **продовжує роботу**. B сповіщає пізніше | Тривалі завдання, звіти, глибокий аналіз | + +Агенти спілкуються через явні **посилання дозволів** з керуванням напрямком (`outbound`, `inbound`, `bidirectional`) та обмеженнями паралелізму на рівні окремих посилань і агентів. + +### Команди агентів + +

+ Agent Teams Workflow +

+ +- **Спільна дошка завдань** — Створення, захоплення, завершення та пошук завдань із залежностями `blocked_by` +- **Командна поштова скринька** — Пряме повідомлення між учасниками та широкомовні розсилки +- **Інструменти**: `team_tasks` для керування завданнями, `team_message` для поштової скриньки + +> Щодо деталей делегації, посилань дозволів та керування паралелізмом, дивіться [документацію Команд агентів](https://docs.goclaw.sh/#teams-what-are-teams). + +## Вбудовані інструменти + +| Інструмент | Група | Опис | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | Читання вмісту файлів (з маршрутизацією віртуальної ФС) | +| `write_file` | fs | Запис/створення файлів | +| `edit_file` | fs | Застосування цільових правок до існуючих файлів | +| `list_files` | fs | Перегляд вмісту директорії | +| `search` | fs | Пошук вмісту файлів за шаблоном | +| `glob` | fs | Пошук файлів за glob-шаблоном | +| `exec` | runtime | Виконання команд оболонки (з робочим процесом підтвердження) | +| `web_search` | web | Пошук в інтернеті (Brave, DuckDuckGo) | +| `web_fetch` | web | Отримання та розбір веб-вмісту | +| `memory_search` | memory | Пошук у довготривалій пам'яті (FTS + вектор) | +| `memory_get` | memory | Отримання записів пам'яті | +| `skill_search` | — | Пошук навичок (гібрид BM25 + вбудовування) | +| `knowledge_graph_search` | memory | Пошук сутностей та обхід зв'язків графу знань | +| `create_image` | media | Генерація зображень (DashScope, MiniMax) | +| `create_audio` | media | Генерація аудіо (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Генерація відео (MiniMax, Veo) | +| `read_document` | media | Читання документів (Gemini File API, ланцюг постачальників) | +| `read_image` | media | Аналіз зображень | +| `read_audio` | media | Транскрипція та аналіз аудіо | +| `read_video` | media | Аналіз відео | +| `message` | messaging | Відправка повідомлень у канали | +| `tts` | — | Синтез мовлення з тексту | +| `spawn` | — | Запуск субагента | +| `subagents` | sessions | Керування запущеними субагентами | +| `team_tasks` | teams | Спільна дошка завдань (перегляд, створення, захоплення, завершення, пошук) | +| `team_message` | teams | Командна поштова скринька (відправка, широкомовлення, читання) | +| `sessions_list` | sessions | Список активних сесій | +| `sessions_history` | sessions | Перегляд історії сесій | +| `sessions_send` | sessions | Відправка повідомлення в сесію | +| `sessions_spawn` | sessions | Запуск нової сесії | +| `session_status` | sessions | Перевірка стану сесії | +| `cron` | automation | Планування та керування cron-завданнями | +| `gateway` | automation | Адміністрування шлюзу | +| `browser` | ui | Автоматизація браузера (навігація, клік, введення, знімок екрана) | +| `announce_queue` | automation | Оголошення асинхронних результатів (для асинхронних делегацій) | + +## Документація + +Повна документація на **[docs.goclaw.sh](https://docs.goclaw.sh)** — або перегляньте вихідний код у [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Розділ | Теми | +|--------|------| +| [Початок роботи](https://docs.goclaw.sh/#what-is-goclaw) | Встановлення, Швидкий старт, Конфігурація, Огляд веб-панелі | +| [Основні концепції](https://docs.goclaw.sh/#how-goclaw-works) | Цикл агента, Сесії, Інструменти, Пам'ять, Мультиорендарність | +| [Агенти](https://docs.goclaw.sh/#creating-agents) | Створення агентів, Файли контексту, Особистість, Спільний доступ | +| [Постачальники](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, +15 інших | +| [Канали](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Команди агентів](https://docs.goclaw.sh/#teams-what-are-teams) | Команди, Дошка завдань, Обмін повідомленнями, Делегація та передача | +| [Розширено](https://docs.goclaw.sh/#custom-tools) | Власні інструменти, MCP, Навички, Cron, Пісочниця, Хуки, RBAC | +| [Розгортання](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, База даних, Безпека, Спостережуваність, Tailscale | +| [Довідник](https://docs.goclaw.sh/#cli-commands) | Команди CLI, REST API, Протокол WebSocket, Змінні середовища | + +## Тестування + +```bash +go test ./... # Модульні тести +go test -v ./tests/integration/ -timeout 120s # Інтеграційні тести (потребує запущеного шлюзу) +``` + +## Статус проекту + +Дивіться [CHANGELOG.md](CHANGELOG.md) щодо детального стану функцій, включаючи те, що вже протестовано у продакшні та що ще в процесі. + +## Подяки + +GoClaw побудований на основі оригінального проекту [OpenClaw](https://github.com/openclaw/openclaw). Ми вдячні за архітектуру та бачення, що надихнули цей Go-порт. + +## Ліцензія + +MIT diff --git a/_readmes/README.ur.md b/_readmes/README.ur.md new file mode 100644 index 000000000..07def959f --- /dev/null +++ b/_readmes/README.ur.md @@ -0,0 +1,249 @@ +

+ 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. +

+ +

+ دستاویزات • + فوری آغاز • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** ایک ملٹی-ایجنٹ AI گیٹ وے ہے جو LLMs کو آپ کے ٹولز، چینلز، اور ڈیٹا سے جوڑتا ہے — ایک واحد Go بائنری کے طور پر بغیر کسی رن ٹائم انحصار کے تعینات کیا جاتا ہے۔ یہ 20+ LLM فراہم کنندگان پر ایجنٹ ٹیموں اور انٹر-ایجنٹ ڈیلیگیشن کو مکمل ملٹی-ٹیننٹ آئسولیشن کے ساتھ ترتیب دیتا ہے۔ + +[OpenClaw](https://github.com/openclaw/openclaw) کا Go پورٹ جس میں بہتر سیکیورٹی، ملٹی-ٹیننٹ PostgreSQL، اور پروڈکشن گریڈ آبزرویبلٹی شامل ہے۔ + +🌐 **زبانیں:** +[🇺🇸 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) + +## یہ مختلف کیوں ہے + +- **ایجنٹ ٹیمیں اور آرکیسٹریشن** — مشترکہ ٹاسک بورڈز، انٹر-ایجنٹ ڈیلیگیشن (sync/async)، اور ہائبرڈ ایجنٹ ڈسکوری کے ساتھ ٹیمیں +- **ملٹی-ٹیننٹ PostgreSQL** — فی-صارف ورک اسپیسز، فی-صارف کانٹیکسٹ فائلیں، انکرپٹڈ API کیز (AES-256-GCM)، آئسولیٹڈ سیشنز +- **واحد بائنری** — ~25 MB اسٹیٹک Go بائنری، کوئی Node.js رن ٹائم نہیں، <1s اسٹارٹ اپ، $5 VPS پر چلتی ہے +- **پروڈکشن سیکیورٹی** — 5-پرت پرمیشن سسٹم (gateway auth → گلوبل ٹول پالیسی → فی-ایجنٹ → فی-چینل → صرف مالک) نیز ریٹ لمٹنگ، پرامپٹ انجیکشن ڈیٹیکشن، SSRF پروٹیکشن، شیل ڈینائی پیٹرنز، اور AES-256-GCM انکرپشن +- **20+ LLM فراہم کنندگان** — Anthropic (native HTTP+SSE پرامپٹ کیشنگ کے ساتھ)، OpenAI، OpenRouter، Groq، DeepSeek، Gemini، Mistral، xAI، MiniMax، Cohere، Perplexity، DashScope، Bailian، Zai، Ollama، Ollama Cloud، Claude CLI، Codex، ACP، اور کوئی بھی OpenAI-compatible اینڈپوائنٹ +- **7 میسجنگ چینلز** — Telegram، Discord، Slack، Zalo OA، Zalo Personal، Feishu/Lark، WhatsApp +- **Extended Thinking** — فی-فراہم کنندہ تھنکنگ موڈ (Anthropic بجٹ ٹوکنز، OpenAI reasoning effort، DashScope تھنکنگ بجٹ) اسٹریمنگ سپورٹ کے ساتھ +- **Heartbeat** — HEARTBEAT.md چیک لسٹس کے ذریعے وقتاً فوقتاً ایجنٹ چیک-انز، suppress-on-OK، فعال اوقات، ری-ٹرائی لاجک، اور چینل ڈیلیوری کے ساتھ +- **شیڈیولنگ اور Cron** — لین-بیسڈ کنکرنسی کے ساتھ خودکار ایجنٹ ٹاسکس کے لیے `at`، `every`، اور cron ایکسپریشنز +- **آبزرویبلٹی** — spans اور پرامپٹ کیش میٹرکس کے ساتھ بلٹ-ان LLM کال ٹریسنگ، اختیاری OpenTelemetry OTLP برآمد + +## Claw ایکو سسٹم + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| زبان | TypeScript | Rust | Go | **Go** | +| بائنری سائز | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB** (بنیادی) / **~36 MB** (+ OTel) | +| Docker امیج | — | — | — | **~50 MB** (Alpine) | +| RAM (خاموش) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| اسٹارٹ اپ | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| ہدف ہارڈویئر | $599+ Mac Mini | $10 edge | $10 edge | **$5 VPS+** | + +| فیچر | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| ملٹی-ٹیننٹ (PostgreSQL) | — | — | — | ✅ | +| MCP انٹیگریشن | — (ACP استعمال کرتا ہے) | — | — | ✅ (stdio/SSE/streamable-http) | +| ایجنٹ ٹیمیں | — | — | — | ✅ ٹاسک بورڈ + میل باکس | +| سیکیورٹی ہارڈننگ | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | بنیادی (workspace restrict, exec deny) | ✅ 5-پرت دفاع | +| OTel آبزرویبلٹی | ✅ (opt-in extension) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (opt-in build tag) | +| پرامپٹ کیشنگ | — | — | — | ✅ Anthropic + OpenAI-compat | +| نالج گراف | — | — | — | ✅ LLM ایکسٹریکشن + ٹراورسل | +| اسکل سسٹم | ✅ ایمبیڈنگز/سیمینٹک | ✅ SKILL.md + TOML | ✅ بنیادی | ✅ BM25 + pgvector ہائبرڈ | +| لین-بیسڈ شیڈیولر | ✅ | محدود کنکرنسی | — | ✅ (main/subagent/team/cron) | +| میسجنگ چینلز | 37+ | 15+ | 10+ | 7+ | +| کمپینین ایپس | macOS, iOS, Android | Python SDK | — | ویب ڈیش بورڈ | +| لائیو کینوس / وائس | ✅ (A2UI + TTS/STT) | — | وائس ٹرانسکرپشن | TTS (4 فراہم کنندگان) | +| LLM فراہم کنندگان | 10+ | 8 native + 29 compat | 13+ | **20+** | +| فی-صارف ورک اسپیسز | ✅ (فائل بیسڈ) | — | — | ✅ (PostgreSQL) | +| انکرپٹڈ سیکریٹس | — (صرف env vars) | ✅ ChaCha20-Poly1305 | — (plaintext JSON) | ✅ AES-256-GCM in DB | + +## آرکیٹیکچر + +

+ GoClaw Architecture +

+ +## فوری آغاز + +**پیش شرائط:** Go 1.26+، PostgreSQL 18 بمعہ pgvector، Docker (اختیاری) + +### سورس سے + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # انٹرایکٹو سیٹ اپ وزرڈ +source .env.local && ./goclaw +``` + +### Docker کے ساتھ + +```bash +# خودکار تیار کردہ سیکریٹس کے ساتھ .env بنائیں +chmod +x prepare-env.sh && ./prepare-env.sh + +# .env میں کم از کم ایک GOCLAW_*_API_KEY شامل کریں، پھر: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# ویب ڈیش بورڈ http://localhost:3000 پر +# ہیلتھ چیک: curl http://localhost:18790/health +``` + +جب `GOCLAW_*_API_KEY` انوائرنمنٹ ویریبلز سیٹ ہوں، گیٹ وے انٹرایکٹو پرامپٹس کے بغیر خودکار آن بورڈ ہو جاتا ہے — فراہم کنندہ کا پتہ لگاتا ہے، مائیگریشنز چلاتا ہے، اور ڈیفالٹ ڈیٹا سیڈ کرتا ہے۔ + +> بلڈ ویریئنٹس (OTel، Tailscale، Redis)، Docker امیج ٹیگز، اور compose اوورلیز کے لیے، [ڈیپلائمنٹ گائیڈ](https://docs.goclaw.sh/#deploy-docker-compose) دیکھیں۔ + +## ملٹی-ایجنٹ آرکیسٹریشن + +GoClaw ایجنٹ ٹیموں اور انٹر-ایجنٹ ڈیلیگیشن کو سپورٹ کرتا ہے — ہر ایجنٹ اپنی شناخت، ٹولز، LLM فراہم کنندہ، اور کانٹیکسٹ فائلوں کے ساتھ چلتا ہے۔ + +### ایجنٹ ڈیلیگیشن + +

+ Agent Delegation +

+ +| موڈ | یہ کیسے کام کرتا ہے | بہترین استعمال | +|------|-------------|----------| +| **Sync** | ایجنٹ A ایجنٹ B سے پوچھتا ہے اور جواب کا **انتظار کرتا ہے** | فوری تلاشیں، حقائق کی تصدیق | +| **Async** | ایجنٹ A ایجنٹ B سے پوچھتا ہے اور **آگے بڑھتا ہے**۔ B بعد میں اعلان کرتا ہے | طویل ٹاسکس، رپورٹس، گہرا تجزیہ | + +ایجنٹ واضح **پرمیشن لنکس** کے ذریعے ڈائریکشن کنٹرول (`outbound`، `inbound`، `bidirectional`) اور فی-لنک اور فی-ایجنٹ سطحوں پر کنکرنسی لمٹس کے ساتھ بات چیت کرتے ہیں۔ + +### ایجنٹ ٹیمیں + +

+ Agent Teams Workflow +

+ +- **مشترکہ ٹاسک بورڈ** — `blocked_by` انحصارات کے ساتھ ٹاسکس بنائیں، دعویٰ کریں، مکمل کریں، تلاش کریں +- **ٹیم میل باکس** — براہ راست پیر-ٹو-پیر میسجنگ اور براڈکاسٹس +- **ٹولز**: ٹاسک مینجمنٹ کے لیے `team_tasks`، میل باکس کے لیے `team_message` + +> ڈیلیگیشن کی تفصیلات، پرمیشن لنکس، اور کنکرنسی کنٹرول کے لیے، [ایجنٹ ٹیمز دستاویزات](https://docs.goclaw.sh/#teams-what-are-teams) دیکھیں۔ + +## بلٹ-ان ٹولز + +| ٹول | گروپ | تفصیل | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | فائل مواد پڑھیں (virtual FS routing کے ساتھ) | +| `write_file` | fs | فائلیں لکھیں/بنائیں | +| `edit_file` | fs | موجودہ فائلوں میں ہدفی ترامیم لاگو کریں | +| `list_files` | fs | ڈائریکٹری مواد فہرست کریں | +| `search` | fs | پیٹرن کے ذریعے فائل مواد تلاش کریں | +| `glob` | fs | glob پیٹرن کے ذریعے فائلیں تلاش کریں | +| `exec` | runtime | شیل کمانڈز چلائیں (اپروول ورک فلو کے ساتھ) | +| `web_search` | web | ویب تلاش کریں (Brave، DuckDuckGo) | +| `web_fetch` | web | ویب مواد حاصل کریں اور پارس کریں | +| `memory_search` | memory | طویل مدتی میموری تلاش کریں (FTS + vector) | +| `memory_get` | memory | میموری اندراجات حاصل کریں | +| `skill_search` | — | اسکلز تلاش کریں (BM25 + embedding ہائبرڈ) | +| `knowledge_graph_search` | memory | اداروں کو تلاش کریں اور نالج گراف تعلقات عبور کریں | +| `create_image` | media | تصویر بنانا (DashScope، MiniMax) | +| `create_audio` | media | آڈیو بنانا (OpenAI، ElevenLabs، MiniMax، Suno) | +| `create_video` | media | ویڈیو بنانا (MiniMax، Veo) | +| `read_document` | media | دستاویز پڑھنا (Gemini File API، provider chain) | +| `read_image` | media | تصویر تجزیہ | +| `read_audio` | media | آڈیو ٹرانسکرپشن اور تجزیہ | +| `read_video` | media | ویڈیو تجزیہ | +| `message` | messaging | چینلز کو پیغامات بھیجیں | +| `tts` | — | ٹیکسٹ-ٹو-اسپیچ سنتھیسس | +| `spawn` | — | ایک سب ایجنٹ پیدا کریں | +| `subagents` | sessions | چلتے سب ایجنٹس کو کنٹرول کریں | +| `team_tasks` | teams | مشترکہ ٹاسک بورڈ (فہرست، بنائیں، دعویٰ کریں، مکمل کریں، تلاش کریں) | +| `team_message` | teams | ٹیم میل باکس (بھیجیں، براڈکاسٹ کریں، پڑھیں) | +| `sessions_list` | sessions | فعال سیشنز فہرست کریں | +| `sessions_history` | sessions | سیشن تاریخ دیکھیں | +| `sessions_send` | sessions | ایک سیشن کو پیغام بھیجیں | +| `sessions_spawn` | sessions | ایک نیا سیشن پیدا کریں | +| `session_status` | sessions | سیشن اسٹیٹس چیک کریں | +| `cron` | automation | cron جابز شیڈیول اور منظم کریں | +| `gateway` | automation | گیٹ وے انتظامیہ | +| `browser` | ui | براؤزر آٹومیشن (navigate، click، type، screenshot) | +| `announce_queue` | automation | Async نتیجہ اعلان (async delegations کے لیے) | + +## دستاویزات + +مکمل دستاویزات **[docs.goclaw.sh](https://docs.goclaw.sh)** پر — یا [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) میں سورس براؤز کریں۔ + +| سیکشن | موضوعات | +|---------|--------| +| [شروعات](https://docs.goclaw.sh/#what-is-goclaw) | انسٹالیشن، فوری آغاز، کنفیگریشن، ویب ڈیش بورڈ ٹور | +| [بنیادی تصورات](https://docs.goclaw.sh/#how-goclaw-works) | ایجنٹ لوپ، سیشنز، ٹولز، میموری، ملٹی-ٹیننسی | +| [ایجنٹس](https://docs.goclaw.sh/#creating-agents) | ایجنٹس بنانا، کانٹیکسٹ فائلیں، شخصیت، شیئرنگ اور رسائی | +| [فراہم کنندگان](https://docs.goclaw.sh/#providers-overview) | Anthropic، OpenAI، OpenRouter، Gemini، DeepSeek، +15 مزید | +| [چینلز](https://docs.goclaw.sh/#channels-overview) | Telegram، Discord، Slack، Feishu، Zalo، WhatsApp، WebSocket | +| [ایجنٹ ٹیمیں](https://docs.goclaw.sh/#teams-what-are-teams) | ٹیمیں، ٹاسک بورڈ، میسجنگ، ڈیلیگیشن اور ہینڈ آف | +| [ایڈوانسڈ](https://docs.goclaw.sh/#custom-tools) | کسٹم ٹولز، MCP، اسکلز، Cron، سینڈ باکس، ہکس، RBAC | +| [ڈیپلائمنٹ](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose، ڈیٹا بیس، سیکیورٹی، آبزرویبلٹی، Tailscale | +| [حوالہ](https://docs.goclaw.sh/#cli-commands) | CLI کمانڈز، REST API، WebSocket پروٹوکول، انوائرنمنٹ ویریبلز | + +## ٹیسٹنگ + +```bash +go test ./... # یونٹ ٹیسٹس +go test -v ./tests/integration/ -timeout 120s # انٹیگریشن ٹیسٹس (چلتے گیٹ وے کی ضرورت ہے) +``` + +## پروجیکٹ اسٹیٹس + +تفصیلی فیچر اسٹیٹس کے لیے [CHANGELOG.md](CHANGELOG.md) دیکھیں، جس میں شامل ہے کہ پروڈکشن میں کیا ٹیسٹ ہو چکا ہے اور کیا ابھی زیر عمل ہے۔ + +## اعترافات + +GoClaw اصل [OpenClaw](https://github.com/openclaw/openclaw) پروجیکٹ پر بنا ہے۔ ہم اس آرکیٹیکچر اور وژن کے شکر گزار ہیں جس نے اس Go پورٹ کو متاثر کیا۔ + +## لائسنس + +MIT diff --git a/_readmes/README.vi.md b/_readmes/README.vi.md new file mode 100644 index 000000000..a1d00eaa1 --- /dev/null +++ b/_readmes/README.vi.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ Tài liệu • + Bắt đầu nhanh • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** là cổng AI đa agent, kết nối các LLM với công cụ, kênh giao tiếp và dữ liệu của bạn — triển khai dưới dạng một tệp nhị phân Go duy nhất, không phụ thuộc runtime. GoClaw điều phối nhóm agent và ủy quyền giữa các agent trên hơn 20 nhà cung cấp LLM với multi-tenant isolation hoàn chỉnh. + +Phiên bản Go của [OpenClaw](https://github.com/openclaw/openclaw) với bảo mật nâng cao, multi-tenant PostgreSQL, và observability cấp production. + +🌐 **Ngôn ngữ:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## Điểm Khác Biệt + +- **Nhóm agent và điều phối** — Nhóm với bảng nhiệm vụ dùng chung, ủy quyền giữa các agent (đồng bộ/bất đồng bộ), và khám phá agent hỗn hợp +- **Multi-tenant PostgreSQL** — Không gian làm việc riêng theo người dùng, tệp ngữ cảnh riêng, khóa API được mã hóa (AES-256-GCM), session cô lập +- **Một tệp nhị phân duy nhất** — Tệp nhị phân Go tĩnh khoảng 25 MB, không cần runtime Node.js, khởi động dưới 1 giây, chạy được trên VPS $5 (khuyến nghị tối thiểu 2 GB RAM khi chạy Docker) +- **Bảo mật cấp production** — Hệ thống phân quyền 5 lớp (gateway auth → global tool policy → per-agent → per-channel → owner-only) cùng rate limiting, phát hiện prompt injection, chống SSRF, shell deny patterns, và mã hóa AES-256-GCM +- **Hơn 20 nhà cung cấp LLM** — Anthropic (HTTP+SSE gốc với prompt caching), OpenAI, OpenRouter, Groq, DeepSeek, Gemini, Mistral, xAI, MiniMax, Cohere, Perplexity, DashScope, Bailian, Zai, Ollama, Ollama Cloud, Claude CLI, Codex, ACP, và mọi OpenAI-compatible endpoint +- **7 kênh nhắn tin** — Telegram, Discord, Slack, Zalo OA, Zalo Personal, Feishu/Lark, WhatsApp +- **Extended Thinking** — Chế độ suy luận theo từng nhà cung cấp (budget token của Anthropic, reasoning effort của OpenAI, thinking budget của DashScope) với hỗ trợ streaming +- **Heartbeat** — Agent tự kiểm tra định kỳ qua danh sách HEARTBEAT.md với tắt thông báo khi bình thường, khung giờ hoạt động, cơ chế thử lại, và gửi kết quả qua kênh +- **Lập lịch và Cron** — Biểu thức `at`, `every`, và cron để tự động hóa nhiệm vụ agent với xử lý đồng thời theo lane +- **Observability** — Theo dõi lời gọi LLM tích hợp sẵn với span và chỉ số prompt cache, xuất OpenTelemetry OTLP tùy chọn + +## Hệ Sinh Thái Claw + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ------------------------ | --------------- | -------- | -------- | --------------------------------------- | +| Ngôn ngữ | TypeScript | Rust | Go | **Go** | +| Kích thước tệp nhị phân | 28 MB + Node.js | 3,4 MB | ~8 MB | **~25 MB** (cơ bản) / **~36 MB** (+ OTel) | +| Docker image | — | — | — | **~50 MB** (Alpine) | +| RAM (khi nhàn rỗi) | > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| Thời gian khởi động | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| Phần cứng mục tiêu | Mac Mini $599+ | $10 edge | $10 edge | **VPS $5+** | + +| Tính năng | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| ------------------------------------ | ------------------------------------ | -------------------------------------------- | ------------------------------------------- | ------------------------------ | +| Multi-tenant (PostgreSQL) | — | — | — | ✅ | +| Tích hợp MCP | — (dùng ACP) | — | — | ✅ (stdio/SSE/streamable-http) | +| Nhóm agent | — | — | — | ✅ Bảng nhiệm vụ + hộp thư | +| Tăng cường bảo mật | ✅ (SSRF, path traversal, injection) | ✅ (sandbox, rate limit, injection, pairing) | Cơ bản (giới hạn workspace, từ chối exec) | ✅ Phòng thủ 5 lớp | +| Observability (OTel) | ✅ (phần mở rộng tùy chọn) | ✅ (Prometheus + OTLP) | — | ✅ OTLP (tùy chọn build tag) | +| Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | +| Knowledge graph | — | — | — | ✅ Trích xuất LLM + duyệt đồ thị | +| Hệ thống skill | ✅ Embedding/semantic | ✅ SKILL.md + TOML | ✅ Cơ bản | ✅ BM25 + pgvector hybrid | +| Bộ lập lịch theo lane | ✅ | Đồng thời giới hạn | — | ✅ (main/subagent/team/cron) | +| Kênh nhắn tin | 37+ | 15+ | 10+ | 7+ | +| Ứng dụng đồng hành | macOS, iOS, Android | Python SDK | — | Web dashboard | +| Live Canvas / Giọng nói | ✅ (A2UI + TTS/STT) | — | Voice transcription | TTS (4 nhà cung cấp) | +| Nhà cung cấp LLM | 10+ | 8 gốc + 29 tương thích | 13+ | **20+** | +| Workspace theo người dùng | ✅ (dựa trên tệp) | — | — | ✅ (PostgreSQL) | +| Encrypted secrets | — (chỉ biến môi trường) | ✅ ChaCha20-Poly1305 | — (JSON không mã hóa) | ✅ AES-256-GCM trong CSDL | + +## Kiến Trúc + +

+ GoClaw Architecture +

+ +## Bắt Đầu Nhanh + +**Yêu cầu:** Go 1.26+, PostgreSQL 18 với pgvector, Docker (tùy chọn, khuyến nghị tối thiểu 2 GB RAM) + +### Từ mã nguồn + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # Trình hướng dẫn cài đặt tương tác +source .env.local && ./goclaw +``` + +### Với Docker + +```bash +# Tạo .env với các secret được sinh tự động +chmod +x prepare-env.sh && ./prepare-env.sh + +# Thêm ít nhất một GOCLAW_*_API_KEY vào .env, sau đó: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web Dashboard tại http://localhost:3000 +# Kiểm tra trạng thái: curl http://localhost:18790/health +``` + +Khi biến môi trường `GOCLAW_*_API_KEY` được đặt, gateway tự động thiết lập mà không cần tương tác — nhận diện nhà cung cấp, chạy database migration, và khởi tạo dữ liệu mặc định. + +> Để tìm hiểu về các biến thể build (OTel, Tailscale, Redis), Docker image tag, và compose overlay, xem [Hướng dẫn triển khai](https://docs.goclaw.sh/#deploy-docker-compose). + +## Điều Phối Đa Agent + +GoClaw hỗ trợ nhóm agent và ủy quyền giữa các agent — mỗi agent chạy với danh tính, bộ công cụ, nhà cung cấp LLM, và tệp ngữ cảnh riêng. + +### Ủy Quyền Giữa Các Agent + +

+ Agent Delegation +

+ +| Chế độ | Cách hoạt động | Phù hợp cho | +|------|-------------|----------| +| **Đồng bộ** | Agent A hỏi Agent B và **chờ** kết quả | Tra cứu nhanh, kiểm chứng thông tin | +| **Bất đồng bộ** | Agent A hỏi Agent B và **tiếp tục**. B thông báo sau | Nhiệm vụ dài, báo cáo, phân tích chuyên sâu | + +Các agent giao tiếp qua **permission link** với kiểm soát chiều (`outbound`, `inbound`, `bidirectional`) và giới hạn đồng thời ở cả cấp liên kết và cấp agent. + +### Nhóm Agent + +

+ Agent Teams Workflow +

+ +- **Bảng nhiệm vụ dùng chung** — Tạo, nhận, hoàn thành, tìm kiếm nhiệm vụ với phụ thuộc `blocked_by` +- **Hộp thư nhóm** — Nhắn tin trực tiếp ngang hàng và thông báo chung +- **Công cụ**: `team_tasks` để quản lý nhiệm vụ, `team_message` cho hộp thư + +> Chi tiết về ủy quyền, permission link, và kiểm soát đồng thời xem tại [tài liệu Nhóm Agent](https://docs.goclaw.sh/#teams-what-are-teams). + +## Công Cụ Tích Hợp Sẵn + +| Công cụ | Nhóm | Mô tả | +| ------------------ | ------------- | ----------------------------------------------------------------- | +| `read_file` | fs | Đọc nội dung tệp (với định tuyến hệ thống tệp ảo) | +| `write_file` | fs | Ghi/tạo tệp | +| `edit_file` | fs | Áp dụng chỉnh sửa có mục tiêu vào tệp hiện có | +| `list_files` | fs | Liệt kê nội dung thư mục | +| `search` | fs | Tìm kiếm nội dung tệp theo mẫu | +| `glob` | fs | Tìm tệp theo mẫu glob | +| `exec` | runtime | Thực thi lệnh shell (với quy trình phê duyệt) | +| `web_search` | web | Tìm kiếm trên web (Brave, DuckDuckGo) | +| `web_fetch` | web | Tải và phân tích nội dung web | +| `memory_search` | memory | Tìm kiếm bộ nhớ dài hạn (FTS + vector) | +| `memory_get` | memory | Truy xuất mục bộ nhớ | +| `skill_search` | — | Tìm kiếm skill (BM25 + embedding hybrid) | +| `knowledge_graph_search` | memory | Tìm kiếm thực thể và duyệt quan hệ knowledge graph | +| `create_image` | media | Tạo ảnh (DashScope, MiniMax) | +| `create_audio` | media | Tạo âm thanh (OpenAI, ElevenLabs, MiniMax, Suno) | +| `create_video` | media | Tạo video (MiniMax, Veo) | +| `read_document` | media | Đọc tài liệu (Gemini File API, chuỗi nhà cung cấp) | +| `read_image` | media | Phân tích ảnh | +| `read_audio` | media | Phiên âm và phân tích âm thanh | +| `read_video` | media | Phân tích video | +| `message` | messaging | Gửi tin nhắn đến kênh | +| `tts` | — | Tổng hợp giọng nói | +| `spawn` | — | Tạo subagent | +| `subagents` | sessions | Quản lý các subagent đang chạy | +| `team_tasks` | teams | Bảng nhiệm vụ dùng chung (liệt kê, tạo, nhận, hoàn thành, tìm) | +| `team_message` | teams | Hộp thư nhóm (gửi, thông báo chung, đọc) | +| `sessions_list` | sessions | Liệt kê các session đang hoạt động | +| `sessions_history` | sessions | Xem lịch sử session | +| `sessions_send` | sessions | Gửi tin nhắn đến session | +| `sessions_spawn` | sessions | Tạo session mới | +| `session_status` | sessions | Kiểm tra trạng thái session | +| `cron` | automation | Lập lịch và quản lý tác vụ định kỳ | +| `gateway` | automation | Quản trị gateway | +| `browser` | ui | Tự động hóa trình duyệt (điều hướng, nhấp, gõ, chụp màn hình) | +| `announce_queue` | automation | Thông báo kết quả bất đồng bộ (cho các ủy quyền bất đồng bộ) | + +## Tài Liệu + +Tài liệu đầy đủ tại **[docs.goclaw.sh](https://docs.goclaw.sh)** — hoặc xem mã nguồn trong [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) + +| Mục | Chủ đề | +|---------|--------| +| [Bắt đầu](https://docs.goclaw.sh/#what-is-goclaw) | Cài đặt, Bắt đầu nhanh, Cấu hình, Tham quan Web Dashboard | +| [Khái niệm cốt lõi](https://docs.goclaw.sh/#how-goclaw-works) | Agent Loop, Session, Công cụ, Bộ nhớ, Multi-Tenancy | +| [Agent](https://docs.goclaw.sh/#creating-agents) | Tạo agent, Tệp ngữ cảnh, Tính cách, Chia sẻ và quyền truy cập | +| [Nhà cung cấp](https://docs.goclaw.sh/#providers-overview) | Anthropic, OpenAI, OpenRouter, Gemini, DeepSeek, và hơn 15 nhà cung cấp khác | +| [Kênh](https://docs.goclaw.sh/#channels-overview) | Telegram, Discord, Slack, Feishu, Zalo, WhatsApp, WebSocket | +| [Nhóm Agent](https://docs.goclaw.sh/#teams-what-are-teams) | Nhóm, Bảng nhiệm vụ, Nhắn tin, Ủy quyền và chuyển giao | +| [Nâng cao](https://docs.goclaw.sh/#custom-tools) | Công cụ tùy chỉnh, MCP, Skill, Cron, Sandbox, Hooks, RBAC | +| [Triển khai](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose, Cơ sở dữ liệu, Bảo mật, Observability, Tailscale | +| [Tham chiếu](https://docs.goclaw.sh/#cli-commands) | Lệnh CLI, REST API, WebSocket Protocol, Biến môi trường | + +## Kiểm Thử + +```bash +go test ./... # Kiểm thử đơn vị +go test -v ./tests/integration/ -timeout 120s # Kiểm thử tích hợp (yêu cầu gateway đang chạy) +``` + +## Trạng Thái Dự Án + +Xem [CHANGELOG.md](CHANGELOG.md) để biết chi tiết trạng thái tính năng — những gì đã được kiểm thử trong môi trường production và những gì vẫn đang phát triển. + +## Lời Cảm Ơn + +GoClaw được xây dựng dựa trên dự án [OpenClaw](https://github.com/openclaw/openclaw) gốc. Chúng tôi trân trọng kiến trúc và tầm nhìn đã truyền cảm hứng cho phiên bản Go này. + +## Giấy Phép + +MIT diff --git a/_readmes/README.zh-CN.md b/_readmes/README.zh-CN.md new file mode 100644 index 000000000..783585185 --- /dev/null +++ b/_readmes/README.zh-CN.md @@ -0,0 +1,227 @@ +

+ 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. +

+ +

+ 文档 • + 快速开始 • + Twitter / X +

+ +

+ Go + PostgreSQL + Docker + WebSocket + OpenTelemetry + Anthropic + OpenAI + License: MIT +

+ +**GoClaw** 是一个多智能体 AI 网关,将大语言模型连接到你的工具、渠道和数据 —— 以单个 Go 二进制文件部署,零运行时依赖。它跨 20 多个大语言模型提供商编排智能体团队和跨智能体委托,并提供完整的多租户隔离。 + +这是 [OpenClaw](https://github.com/openclaw/openclaw) 的 Go 移植版本,具备增强的安全性、多租户 PostgreSQL 支持以及生产级可观测性。 + +🌐 **语言:** +[🇺🇸 English](../README.md) · +[🇨🇳 简体中文](README.zh-CN.md) · +[🇯🇵 日本語](README.ja.md) · +[🇰🇷 한국어](README.ko.md) · +[🇻🇳 Tiếng Việt](README.vi.md) · +[🇪🇸 Español](README.es.md) · +[🇧🇷 Português](README.pt.md) · +[🇫🇷 Français](README.fr.md) · +[🇩🇪 Deutsch](README.de.md) · +[🇷🇺 Русский](README.ru.md) +## 与众不同之处 + +- **智能体团队与编排** — 具有共享任务板的团队、跨智能体委托(同步/异步)以及混合智能体发现 +- **多租户 PostgreSQL** — 每用户工作空间、每用户上下文文件、加密 API 密钥(AES-256-GCM)、隔离的会话 +- **单一二进制文件** — 约 25 MB 静态 Go 二进制文件,无 Node.js 运行时,启动时间 <1 秒,可在 5 美元 VPS 上运行 +- **生产级安全** — 5 层权限体系(网关认证 → 全局工具策略 → 每智能体 → 每渠道 → 仅限所有者),外加速率限制、提示词注入检测、SSRF 防护、Shell 拒绝模式和 AES-256-GCM 加密 +- **20 多个大语言模型提供商** — Anthropic(原生 HTTP+SSE,支持提示词缓存)、OpenAI、OpenRouter、Groq、DeepSeek、Gemini、Mistral、xAI、MiniMax、Cohere、Perplexity、DashScope、百炼、Zai、Ollama、Ollama Cloud、Claude CLI、Codex、ACP,以及任何 OpenAI 兼容端点 +- **7 个消息渠道** — Telegram、Discord、Slack、Zalo OA、Zalo Personal、飞书/Lark、WhatsApp +- **Extended Thinking** — 每提供商思考模式(Anthropic 预算 token、OpenAI 推理效果、DashScope 思考预算),支持流式传输 +- **Heartbeat** — 通过 HEARTBEAT.md 检查清单进行定期智能体签到,支持正常时静默、活跃时段、重试逻辑和渠道投递 +- **调度与定时任务** — `at`、`every` 和 cron 表达式用于自动化智能体任务,支持基于通道的并发 +- **可观测性** — 内置大语言模型调用追踪(含 span 和提示词缓存指标),可选 OpenTelemetry OTLP 导出 + +## Claw 生态系统 + +| | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| --------------- | --------------- | -------- | -------- | --------------------------------------- | +| 语言 | TypeScript | Rust | Go | **Go** | +| 二进制大小 | 28 MB + Node.js | 3.4 MB | ~8 MB | **~25 MB**(基础)/ **~36 MB**(含 OTel) | +| Docker 镜像 | — | — | — | **~50 MB**(Alpine) | +| 内存占用(空闲)| > 1 GB | < 5 MB | < 10 MB | **~35 MB** | +| 启动时间 | > 5 s | < 10 ms | < 1 s | **< 1 s** | +| 目标硬件 | $599+ Mac Mini | $10 边缘设备 | $10 边缘设备 | **$5 VPS+** | + +| 功能特性 | OpenClaw | ZeroClaw | PicoClaw | **GoClaw** | +| -------------------------- | ------------------------------------ | -------------------------------------------- | ------------------------------------- | ------------------------------ | +| 多租户(PostgreSQL) | — | — | — | ✅ | +| MCP 集成 | —(使用 ACP) | — | — | ✅(stdio/SSE/streamable-http)| +| 智能体团队 | — | — | — | ✅ 任务板 + 邮箱 | +| 安全加固 | ✅(SSRF、路径遍历、注入) | ✅(沙箱、速率限制、注入、配对) | 基础(工作区限制、exec 拒绝) | ✅ 5 层防御 | +| OTel 可观测性 | ✅(可选扩展) | ✅(Prometheus + OTLP) | — | ✅ OTLP(可选构建标签) | +| 提示词缓存 | — | — | — | ✅ Anthropic + OpenAI 兼容 | +| 知识图谱 | — | — | — | ✅ 大语言模型提取 + 遍历 | +| 技能系统 | ✅ 嵌入/语义 | ✅ SKILL.md + TOML | ✅ 基础 | ✅ BM25 + pgvector 混合 | +| 基于通道的调度器 | ✅ | 有界并发 | — | ✅(main/subagent/team/cron) | +| 消息渠道 | 37+ | 15+ | 10+ | 7+ | +| 伴侣应用 | macOS、iOS、Android | Python SDK | — | Web 控制台 | +| 实时画布 / 语音 | ✅(A2UI + TTS/STT) | — | 语音转录 | TTS(4 个提供商) | +| 大语言模型提供商 | 10+ | 8 原生 + 29 兼容 | 13+ | **20+** | +| 每用户工作空间 | ✅(基于文件) | — | — | ✅(PostgreSQL) | +| 加密密钥 | —(仅环境变量) | ✅ ChaCha20-Poly1305 | —(明文 JSON) | ✅ 数据库中 AES-256-GCM | + +## 架构 + +

+ GoClaw Architecture +

+ +## 快速开始 + +**前置条件:** Go 1.26+、PostgreSQL 18(含 pgvector)、Docker(可选) + +### 从源码构建 + +```bash +git clone https://github.com/nextlevelbuilder/goclaw.git && cd goclaw +make build +./goclaw onboard # 交互式设置向导 +source .env.local && ./goclaw +``` + +### 使用 Docker + +```bash +# 生成包含自动生成密钥的 .env 文件 +chmod +x prepare-env.sh && ./prepare-env.sh + +# 在 .env 中至少添加一个 GOCLAW_*_API_KEY,然后: +docker compose -f docker-compose.yml -f docker-compose.postgres.yml \ + -f docker-compose.selfservice.yml up -d + +# Web 控制台地址:http://localhost:3000 +# 健康检查:curl http://localhost:18790/health +``` + +当设置了 `GOCLAW_*_API_KEY` 环境变量时,网关会自动完成初始化,无需交互提示 —— 自动检测提供商、运行数据库迁移并填充默认数据。 + +> 有关构建变体(OTel、Tailscale、Redis)、Docker 镜像标签和 compose 覆盖文件,请参阅[部署指南](https://docs.goclaw.sh/#deploy-docker-compose)。 + +## 多智能体编排 + +GoClaw 支持智能体团队和跨智能体委托 —— 每个智能体以其自身的身份、工具、大语言模型提供商和上下文文件运行。 + +### 智能体委托 + +

+ Agent Delegation +

+ +| 模式 | 工作方式 | 适用场景 | +|------|----------|----------| +| **同步** | 智能体 A 向智能体 B 发起请求并**等待**回答 | 快速查询、事实核查 | +| **异步** | 智能体 A 向智能体 B 发起请求后**继续执行**,B 完成后再通知 | 长时间任务、报告生成、深度分析 | + +智能体通过明确的**权限链接**进行通信,支持方向控制(`outbound`、`inbound`、`bidirectional`)以及链接级和智能体级的并发限制。 + +### 智能体团队 + +

+ Agent Teams Workflow +

+ +- **共享任务板** — 创建、认领、完成、搜索任务,支持 `blocked_by` 依赖关系 +- **团队邮箱** — 点对点直接消息和广播 +- **工具**:`team_tasks` 用于任务管理,`team_message` 用于邮箱 + +> 有关委托详情、权限链接和并发控制,请参阅[智能体团队文档](https://docs.goclaw.sh/#teams-what-are-teams)。 + +## 内置工具 + +| 工具 | 分组 | 描述 | +| ------------------ | ------------- | ------------------------------------------------------------ | +| `read_file` | fs | 读取文件内容(支持虚拟文件系统路由) | +| `write_file` | fs | 写入/创建文件 | +| `edit_file` | fs | 对现有文件进行精确编辑 | +| `list_files` | fs | 列出目录内容 | +| `search` | fs | 按模式搜索文件内容 | +| `glob` | fs | 按 glob 模式查找文件 | +| `exec` | runtime | 执行 Shell 命令(含审批流程) | +| `web_search` | web | 网络搜索(Brave、DuckDuckGo) | +| `web_fetch` | web | 抓取并解析网页内容 | +| `memory_search` | memory | 搜索长期记忆(全文检索 + 向量) | +| `memory_get` | memory | 获取记忆条目 | +| `skill_search` | — | 搜索技能(BM25 + 嵌入混合) | +| `knowledge_graph_search` | memory | 搜索实体并遍历知识图谱关系 | +| `create_image` | media | 图像生成(DashScope、MiniMax) | +| `create_audio` | media | 音频生成(OpenAI、ElevenLabs、MiniMax、Suno) | +| `create_video` | media | 视频生成(MiniMax、Veo) | +| `read_document` | media | 文档读取(Gemini File API、提供商链) | +| `read_image` | media | 图像分析 | +| `read_audio` | media | 音频转录与分析 | +| `read_video` | media | 视频分析 | +| `message` | messaging | 向渠道发送消息 | +| `tts` | — | 文字转语音合成 | +| `spawn` | — | 生成子智能体 | +| `subagents` | sessions | 控制运行中的子智能体 | +| `team_tasks` | teams | 共享任务板(列出、创建、认领、完成、搜索) | +| `team_message` | teams | 团队邮箱(发送、广播、读取) | +| `sessions_list` | sessions | 列出活跃会话 | +| `sessions_history` | sessions | 查看会话历史 | +| `sessions_send` | sessions | 向会话发送消息 | +| `sessions_spawn` | sessions | 生成新会话 | +| `session_status` | sessions | 检查会话状态 | +| `cron` | automation | 调度和管理定时任务 | +| `gateway` | automation | 网关管理 | +| `browser` | ui | 浏览器自动化(导航、点击、输入、截图) | +| `announce_queue` | automation | 异步结果通知(用于异步委托) | + +## 文档 + +完整文档请访问 **[docs.goclaw.sh](https://docs.goclaw.sh)** —— 或在 [`goclaw-docs/`](https://github.com/nextlevelbuilder/goclaw-docs) 中浏览源码。 + +| 章节 | 主题 | +|------|------| +| [快速开始](https://docs.goclaw.sh/#what-is-goclaw) | 安装、快速启动、配置、Web 控制台导览 | +| [核心概念](https://docs.goclaw.sh/#how-goclaw-works) | 智能体循环、会话、工具、记忆、多租户 | +| [智能体](https://docs.goclaw.sh/#creating-agents) | 创建智能体、上下文文件、人格设定、共享与访问 | +| [提供商](https://docs.goclaw.sh/#providers-overview) | Anthropic、OpenAI、OpenRouter、Gemini、DeepSeek,以及 15+ 个其他提供商 | +| [渠道](https://docs.goclaw.sh/#channels-overview) | Telegram、Discord、Slack、飞书、Zalo、WhatsApp、WebSocket | +| [智能体团队](https://docs.goclaw.sh/#teams-what-are-teams) | 团队、任务板、消息传递、委托与交接 | +| [高级功能](https://docs.goclaw.sh/#custom-tools) | 自定义工具、MCP、技能、定时任务、沙箱、钩子、RBAC | +| [部署](https://docs.goclaw.sh/#deploy-docker-compose) | Docker Compose、数据库、安全、可观测性、Tailscale | +| [参考](https://docs.goclaw.sh/#cli-commands) | CLI 命令、REST API、WebSocket 协议、环境变量 | + +## 测试 + +```bash +go test ./... # 单元测试 +go test -v ./tests/integration/ -timeout 120s # 集成测试(需要正在运行的网关) +``` + +## 项目状态 + +有关详细功能状态(包括已在生产环境测试的内容和仍在进行中的内容),请参阅 [CHANGELOG.md](CHANGELOG.md)。 + +## 致谢 + +GoClaw 基于原始的 [OpenClaw](https://github.com/openclaw/openclaw) 项目构建。我们对启发这个 Go 移植版本的架构设计和愿景深表感谢。 + +## 许可证 + +MIT diff --git a/_statics/agent-delegation.jpg b/_statics/agent-delegation.jpg new file mode 100644 index 000000000..cc7a1f3bb Binary files /dev/null and b/_statics/agent-delegation.jpg differ diff --git a/_statics/agent-teams.jpg b/_statics/agent-teams.jpg new file mode 100644 index 000000000..8167ac2b9 Binary files /dev/null and b/_statics/agent-teams.jpg differ diff --git a/_statics/architecture.jpg b/_statics/architecture.jpg new file mode 100644 index 000000000..bf18c3fd7 Binary files /dev/null and b/_statics/architecture.jpg differ