diff --git a/README.md b/README.md index 679dff0f..df81187f 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,8 @@ A Go port of [OpenClaw](https://github.com/openclaw/openclaw) with enhanced secu - **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 -- **5 Messaging Channels** — Telegram, Discord, Zalo, Feishu/Lark, WhatsApp with `/stop` and `/stopall` commands +- **6 Messaging Channels** — Telegram (forum topics, STT), Discord, Zalo OA, Zalo Personal (DM + groups), Feishu/Lark (streaming cards, media), WhatsApp with `/stop` and `/stopall` commands +- **Extended Thinking** — Per-provider thinking mode (Anthropic budget tokens, OpenAI reasoning effort, DashScope thinking budget) with streaming support ## Claw Ecosystem @@ -48,7 +49,7 @@ A Go port of [OpenClaw](https://github.com/openclaw/openclaw) with enhanced secu | Prompt caching | — | — | — | ✅ Anthropic + OpenAI-compat | | Skill system | ✅ Embeddings/semantic | ✅ SKILL.md + TOML | ✅ Basic | ✅ BM25 + pgvector hybrid | | Lane-based scheduler | ✅ | Bounded concurrency | — | ✅ (main/subagent/delegate/cron + concurrent group runs) | -| Messaging channels | 37+ | 15+ | 10+ | 5+ | +| Messaging channels | 37+ | 15+ | 10+ | 6+ | | 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+** | @@ -66,7 +67,8 @@ graph TB TG["Telegram"] DC["Discord"] FS["Feishu/Lark"] - ZL["Zalo"] + ZL["Zalo OA"] + ZLP["Zalo Personal"] API["HTTP API"] end @@ -87,7 +89,7 @@ graph TB end WEB --> WS - TG & DC & FS & ZL --> CM + TG & DC & FS & ZL & ZLP --> CM API --> REST LOOP --> FILE & PG ``` @@ -297,6 +299,7 @@ Quality gates validate agent output before it reaches users. Configured in agent - **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 - **OpenAI-compatible** — Automatic prompt caching for OpenAI, MiniMax, OpenRouter (cache metrics tracked in traces) +- **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 @@ -315,8 +318,11 @@ Quality gates validate agent output before it reaches users. Configured in agent - **MCP integration** — Connect external MCP servers via stdio, SSE, or streamable-http with per-agent/per-user grants ### Messaging Channels -- **Telegram** — Full integration with streaming, rich formatting (HTML, tables, code blocks), reactions, media -- **Discord, Zalo, Feishu/Lark, WhatsApp** — Channel adapters with `/stop` and `/stopall` commands +- **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 +- **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 ### Knowledge & Memory - **Skills** — SKILL.md-based knowledge base with BM25 search + embedding hybrid search (managed mode) @@ -958,7 +964,7 @@ GOCLAW_OPENROUTER_API_KEY=sk-or-xxx go test -v ./tests/integration/ -timeout 120 - **Evaluate loop** — Generator-evaluator feedback cycles with configurable max rounds and pass criteria. Implementation complete, needs E2E testing. - **Quality gates** — Hook-based output validation with command and agent evaluator types. Implementation complete, needs E2E testing. - **Delegation history** — Queryable audit trail of inter-agent delegations. Implementation complete, needs validation at scale. -- **Other messaging channels** — Discord, Zalo, 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. +- **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. - **Skill system** — BM25 search, ZIP upload, SKILL.md parsing, and embedding hybrid search are implemented. Basic functionality verified but no full E2E flow testing with real agent usage. - **Custom tools (runtime API)** — Shell-based custom tools with JSON Schema params, encrypted env vars, and HTTP CRUD are implemented. Not yet tested in a production workflow. - **MCP integration** — stdio, SSE, and streamable-http transports with per-agent/per-user grants implemented. Not tested with real MCP servers in production.