OpenClaw's QMD Memory Search Fast Path Had Silent Bugs

OpenClaw's built-in memory search uses basic keyword matching, which works for simple lookups but struggles when agents need to find information learned weeks earlier without exact word matches.
Users can switch to QMD, which performs semantic search across all markdown files in the workspace. This allows agents to find relevant entries even when exact keywords aren't present. QMD also does hybrid search, combining keyword and semantic approaches for both precision and recall.
OpenClaw has a fast path through MCPorter that keeps the QMD process warm in memory, reducing search times to 1-2 seconds instead of 9-25 seconds when cold starting each time.
This fast path was completely broken with three bugs in the same file:
- The gateway was calling tool names that don't exist. QMD's MCP server exposes one tool called
query, but the gateway was callingdeep_search,search, etc. Every call returned exit code 128. - Wrong argument format. The gateway passed a flat string, but the tool expects a
searchesarray with typed sub-queries for keyword vs semantic vs hybrid search. - Singular vs plural mismatch. The gateway passed
collection: "name"but the tool expectscollections: ["name"].
Every parameter was wrong: tool name, argument structure, and field name. The fix was straightforward once identified, and a pull request is available for anyone running QMD through MCPorter.
The silent failure meant every call fell back to the slower CLI path, but functionality remained, just with significantly degraded performance that went unnoticed for weeks.
📖 Read the full source: r/openclaw
👀 See Also

Claude Compact Guard Plugin Uses New PostCompact Hook to Preserve Context
A developer has released claude-compact-guard, a plugin that automatically saves critical context before Claude's /compact command destroys it, then reinjects everything after. It uses Anthropic's new PostCompact hook released 4 days ago.

Beagle SCM: A Source Code Management System That Stores AST Trees
Beagle is an experimental source code management system that stores abstract syntax trees instead of binary blobs, using a CRDT-ish data format called BASON and backing storage with key-value databases like RocksDB.

Klaw.sh: Kubernetes-Style Orchestration for AI Agents
Klaw.sh provides an orchestration solution for AI agent deployment, modeled on Kubernetes. It simplifies management with clusters, namespaces, and channels, achieving memory reduction by rewriting from Node.js to Go.
Zillow-Full: An OpenClaw Skill That Turned Manual Property Research Into an Automated Deal Pipeline
A developer built 'zillow-full' on OpenClaw to pull Zestimates, tax history, price history, and comps per property. With a nightly cron scoring listings against deal criteria, wholesale deals went from 2 to 11 per month.