Release notes — v2.0.0
Highlights
- Pluggable agent backends — choose between Claude (default) and the new Cursor SDK backend during setup. Two agents, one memory store.
- Smarter conversation context — the agent now keeps a union of "last 10 message pairs" and "last 60 minutes" of history, so quick bursts of chatter stay in scope without losing continuity across slower sessions.
memclaw doctor— new CLI command that verifies your OpenAI key has access to every model Memclaw needs (embeddings, chat, whisper). Runs automatically at the end ofmemclaw configure.- Unified
memclawcommand — drop the platform-specific subcommands; just runmemclawand it launches whichever front-end you picked during setup.
⚠️ Breaking changes
- CLI restructure. Per-platform subcommands (
memclaw telegram,memclaw whatsapp,memclaw slack) have been removed. Run barememclawinstead — it launches the platform you selected during setup. Re-runmemclaw configureto pick a platform if you haven't yet.
New features
- Cursor SDK backend with MCP bridge, tool hooks, and a sandboxed tool policy. Memclaw can now drive an agent loop through either Claude or Cursor while sharing all storage, search, reminders, and consolidation logic.
- The
cursor-sdkdependency is not installed by default. To use this backend, install Memclaw with thecursorextra:The default Claude backend works without the extra.pip install "memclaw[cursor]" # or to upgrade an existing install pip install --upgrade "memclaw[cursor]" # pipx users pipx install "memclaw[cursor]"
- The
- Union-based conversation history window. New config field
conversation_history_window_minutes(default60). The existingconversation_history_limitbecomes the floor — the actual window kept ismax(last N pairs, every message in the last X minutes). Existing users get this for free with no.envchanges needed. memclaw doctorcommand. Probes embeddings, chat, and whisper models with minimal API calls and reports which ones your OpenAI project has access to. Exits non-zero on failure. Same probe auto-runs at the end of the setup wizard so misconfigured projects surface immediately.- Visible Whisper errors. Voice messages that fail to transcribe (e.g. when
whisper-1isn't enabled on your OpenAI project) now reply with a clear pointer tomemclaw doctorinstead of producing silent dead air.
Bug fixes
- Link summaries returning empty. The link summarizer now requests a higher token budget and lower reasoning effort, so summaries actually fit within the model's reply window. Previously many links were stored bare with the agent reporting "URL wasn't pre-fetched."
- Cloudflare-blocked link fetches. Switched the link fetcher to
curl-cffiwith browser TLS fingerprint impersonation, fixing silent 403s on Cloudflare-protected sites.
Internal
- User IDs are now masked in logs (telegram/slack/whatsapp).
- Full Whisper transcripts logged at INFO level for easier debugging.
- Added pip upgrade instructions to the README.
Upgrade from 1.x
pip install --upgrade memclaw
# or, if you want the Cursor backend:
pip install --upgrade "memclaw[cursor]"
# pipx users
pipx upgrade memclawYour config (~/.memclaw/.env) and memories (~/.memclaw/) carry over untouched.
If you used platform subcommands in scripts or shell aliases, update them: memclaw telegram → memclaw (after running memclaw configure once to set your platform). The new MEMCLAW_PLATFORM env var also works if you prefer to set it explicitly per invocation.
After upgrading, run memclaw doctor to confirm your OpenAI key has access to all required models.