MateClaw 1.1.0
Released: 2026-04-17 Β· π δΈζεεΈθ―΄ζ Β· π English release notes Β· β¬οΈ UPGRADING.md
Downloads
| Platform | File |
|---|---|
| macOS (Apple Silicon) | MateClaw_1.1.0_arm64.dmg / .zip |
| macOS (Intel) | MateClaw_1.1.0_x64.dmg / .zip |
| Windows x64 | MateClaw_1.1.0_Setup.exe / MateClaw_1.1.0_x64_Setup.exe |
| Windows ARM64 | MateClaw_1.1.0_arm64_Setup.exe |
| Server (Docker) | docker compose up -d from the repo root |
Auto-update metadata:
latest-mac.yml/latest.yml+.blockmapfiles are attached for differential updates.
The release that makes MateClaw feel like a real personal OS
1.0 brought the new look. 1.1 makes it work the way you expect. Chat replies stream live across every channel, long tasks keep running when you switch conversations, the Wiki is semantic now, and β for the first time β agents can write their own skills.
Under the hood this is the biggest 1.x release yet: 98 commits, 25 features, 44 fixes, 20 docs updates. This page is the shortlist. See UPGRADING.md if you're coming from 1.0.x.
Headline features
Agents that write their own skills β Auto Skill Synthesis
When the agent discovers a useful workflow β a recurring way to query a database, a particular report layout, the exact commands to SSH into your box β it can now ask to turn it into a skill, get your approval, and save it for next time. No more re-typing "remember that I like tables sorted this way." The agent's memory grows with you.
skill_managetool supportscreate/edit/patch/delete- Auto security scan before saving (blocks dangerous patterns)
- Clean approval flow in ChatConsole
- Migrate between agents, share as ZIP
Multi-agent delegation, in parallel
One agent can now delegate to another β or to three at once. Hand the coding agent a Jira ticket while the research agent pulls competitor data while the writing agent drafts the Slack reply. Each runs in its own isolated session, results stream back to the orchestrator.
delegateToAgentanddelegateParalleltools- Per-child conversation tracking + event relay so you see progress in real time
- Smart routing hints in system prompt
Wiki goes semantic β two-phase digest + deep research
The Wiki knowledge base you fed your PDFs into is no longer a search box. It's now a retrieval engine:
- Semantic search on every page and every chunk β ask "what did we decide about auth?" and get the decision, not just pages with "auth" in them
- pgvector-style chunk embeddings with mean-pool sub-segmentation for documents that exceed model context
- Two-phase digest: phase A extracts route + metadata, phase B merges per-page β order of magnitude faster on large imports (60+ pages processed in parallel)
- Progress bar per raw material β stop staring at "processing..." and see pages done / total
- Resumable: interrupt mid-import, hit "reprocess", only the unfinished pages re-run
- New
wiki_search_pages(hybrid),wiki_semantic_search(chunk-level),wiki_read_page,wiki_trace_sourcetools
Deep thinking
You can now turn on Anthropic extended thinking / DashScope qwq reasoning / OpenAI o1 reasoning_effort=high per agent and per turn. thinkingLevel: off / low / medium / high / max. The thinking block streams into the UI as a collapsible panel β you see the model reason, you don't see tokens wasted on tasks that don't need it.
Anthropic prompt caching
System prompts, agent personas, tool definitions β all automatically marked as cache_control: ephemeral on Anthropic-compatible endpoints. First request warm, every follow-up cached. Dashboard now tracks cache_read_tokens / cache_write_tokens daily.
Declarative hook system
A 5-milestone hook lifecycle: before_tool, after_tool, before_llm, after_llm, on_error. Hooks run in-process, can transform arguments / results / mask sensitive fields / add audit log entries. Tool guard rules are now one family of hooks.
Plugin SDK
Third-party plugins can now extend MateClaw without forking. SPI for ChannelAdapter, Tool, MemoryProvider, Hook. Discovery from JAR drop-in plugins/ dir.
Voice for every channel
IM channels (WeCom / WeChat / DingTalk) now support voice input. ASR via DashScope / OpenAI Whisper, multi-path fallback for WeChat's encrypted voice CDN. Voice replies synthesized via TTS and sent as audio messages.
The ChatConsole, reimagined for multi-channel
- Realtime sync for external channels β a WeChat user talks to your agent, you see the reasoning, tool calls, and streaming reply happen in the ChatConsole sidebar. No F5.
- Running indicator β amber pulse on every conversation with an active agent run
- Switch doesn't kill β flip to a different conversation mid-stream, the previous one keeps running in the background; flip back, you reconnect to the live buffer
- No duplicate bubbles β reconcile layer matches client-uuid placeholders with DB-persisted messages via ID promotion
- Actionable error cards β "does not support tools" from Ollama now shows the specific guidance ("switch to qwen3 / qwen2.5:7b+ / llama3.1:8b+"), not a generic "unknown error"
WeChat / WeCom stability
Personal WeChat long-connection bot was the flakiest channel in 1.0. 1.1 rebuilds it:
pollLoopwatchdog β no more silent pollers that stopped reconnecting- Jittered exponential backoff on token expiry / network blips
touchActivityper adapter β per-account staleness detection- Token persistence across restarts
- Voice ASR with 3 fallback paths for WeChat's CDN schemes
- WeCom markdown tables + refusal message detection
Under the hood
- UI-configurable embedding models β embedding models are now regular rows in
mate_model_config, no more env vars - LLM provider hardening β DashScope url-error classification, Ollama auto-discovery rewrites
:latesttags, no-tools model blocklist - MySQL migrations fixed β Gitee #IIYHLJ β all
ADD COLUMN IF NOT EXISTSrewritten asINFORMATION_SCHEMAguards; fresh MySQL 8.x deploys succeed; existing users self-heal viaFlywayRepairConfig - Auto-create database on first connection (
createDatabaseIfNotExist=true) - Defensive hardening β tool arg redaction, stream fallback timer, approval placeholder cleanup, agent cache invalidation, channel adapter stale-eviction
- Docker compose refuses default passwords β missing
DB_PASSWORD/DB_ROOT_PASSWORD/DASHSCOPE_API_KEYβ fails fast with a clear error. The old hardcodedmateclaw123default is gone. See.env.example.
Fixes worth calling out
- Tool guard β now scans procedures defined in migrations too
- Flyway version collisions β V8/V9 and V9/V10 had parallel PR merge collisions; renumbered clean
- Skill reinstall β
SKILL.mdoverwrites correctly, ClawHubfetchBundleretries on transient failure - MCP autodetect β Node.js PATH discovery for Desktop app users on macOS/Linux without
nodein GUI launch env - Filesystem MCP β disabled by default,
~placeholder made explicit - Wiki slug canonicalization β same concept across multiple chunks no longer wastes LLM calls
- Wiki failure routing β DNS/TLS/connection-refused now fail fast with root cause in UI
- ChatConsole β auto-scroll doesn't hijack mouse; sidebar shows channel-specific icons
- TalkMode WebSocket β no more stray error on chat page load
- MessageBubble β backend error translation surfaces in the failed-message card
See git log v1.0.418..v1.1.0 for the complete list.
Upgrading from 1.0.x
See UPGRADING.md. Most users: no manual steps. FlywayRepairConfig heals the mysql migration checksum drift, OllamaAutoDiscoveryRunner rewrites the broken :latest default, stale mate_model_config rows converge on next restart.
Production deployers must set new required env vars in .env:
DB_PASSWORD(strong, notmateclaw123)DB_ROOT_PASSWORDJWT_SECRET(recommended)MATECLAW_CORS_ALLOWED_ORIGINS(recommended)
Thanks
To everyone who reported bugs on Gitee (#IIYHLJ and earlier), to the community running MateClaw on flaky home networks and corner-case environments, to the folks patient enough to restart their Ollama four times β this release is shaped by you.
Next up: v1.2 roadmap focuses on channel tunnel / unified queue and deeper agent autonomy. Watch the RFC folder.