v0.15.0 — session_search + injection scan
Highlights
- session_search — a new MCP tool +
mem.py sessionsto full-text search your past conversation transcripts (the raw messages of earlier sessions), complementary tomemory_searchover the distilled store. Zero LLM cost; secrets stripped before indexing; index owner-only + gitignored. Brings the MCP server to 8 tools. - Injection scan on write — a memory is flagged when it contains prompt-injection-like phrasing, since a stored memory is re-injected into the agent's context every session. Non-blocking write-time aid across CLI / MCP / web +
mem.py audit. Mute withMEM_SCAN_INJECTION=0.
Hardening
Both features passed two rounds of adversarial review. Fixes: concurrency (lock over update_memory, supersede-chain cycle guard, per-PID index temp, embed autocommit), redaction (unquoted passwords now caught), robustness (session index tolerates bad UTF-8 bytes, caps huge messages, handles db-locked).