Skip to content

Release Notes: v0.3.0

Date: 2026-10-04

Version 0.3.0 makes MemoryService the supported memory API across the Rust, Python, HTTP, and agent integrations. It adds shared multi-agent memory, session-aware retrieval, stronger correction and supersession handling, Chinese, Korean, and Spanish support, and new Hermes and OpenClaw integrations.

Highlights

  • One memory API: Rust callers use MemoryService; storage and index implementation details are internal. Python callers use lint_ai.Memory for both local and HTTP-backed memory.
  • Conversation-aware search: sessions persist across process invocations, MCP searches can inherit the active provider session, and session context can resolve follow-up questions and improve reranking.
  • Current-state memory: correction cues, supersession probes, durable receipts, and safer identity handling make updates more reliable and prevent stale claims from resurfacing as current facts.
  • More languages: query analysis and retrieval support Chinese, Korean, and Spanish, with language-aware tokenization and automatic language/model selection.
  • More agent integrations: added Muse Code, Hermes, OpenClaw, and rooagi_runtime, alongside improvements to Claude Code, Codex, Gemini CLI, and AGY support.
  • Incremental indexing: content hashes and incremental semantic and snapshot updates reduce unnecessary record rebuilding and index refreshes.

Memory API and shared storage

  • Unified reads and writes through MemoryService and removed the separate Python IndexStore and RemoteMemory classes.
  • Added Memory.add_batch() for local batch writes, with one refresh after the batch, and session, scope, and document-filter options for search.
  • Added shared persistent memory paths and provider filters so multiple agent integrations can work with the same workspace memory.
  • Hardened memory identifiers against ambiguous user/request ID combinations, checked ownership before replacement, and made request validation happen before mutations.
  • Persisted idempotency receipts and made retries return consistent results across restarts.

Server and security

  • Restricted JWTs to user identity. Until the server defines a JWT role model, JWT-authenticated callers cannot read workspace-wide telemetry; an undocumented admin claim grants no extra access.
  • Preserved operator access to telemetry through the configured server token, including when JWT authentication is also enabled.
  • Bound HTTP search conversation scope to the authenticated JWT subject so a caller-provided scope cannot update another user's follow-up context.
  • Kept tenant and memory ownership checks in place for user-scoped API routes.

Search and session context

  • Persisted conversation state across short-lived MCP and hook processes.
  • Added active-session inheritance when MCP search omits session_id, and accepted session_id consistently across provider search tools.
  • Added conversational reranking, temporal-anchor carryover, and session-aware query resolution for follow-up questions.
  • Improved structured relation extraction, entity/coreference resolution, semantic tags, and activity-to-venue ranking signals.
  • Added session and retrieval benchmarks to evaluate multi-turn behavior.

Corrections and supersession

  • Added correction and supersession probes with durable receipts and audit IDs.
  • Improved correction-cue handling so frontmatter and quoted text do not accidentally trigger a correction.
  • Tightened supersession chain adjacency and cue handling to reduce false replacements and preserve the current version of a fact.
  • Added regression coverage for retries, restart recovery, and semantic audit identity.

Language support

  • Added Chinese and Korean tokenization, question forms, temporal handling, and aggregation support.
  • Added Spanish tokenization, stopwords, interrogatives, temporal handling, aggregation, accent-insensitive matching, and es_core_news_sm model selection.
  • Automatically detect language per text and select language-aware defaults; callers do not need to set a global language option.
  • Improved Korean mid-query interrogative detection and language-aware spaCy model selection.

Agent integrations and tools

  • Added the Muse Code MCP server and benchmark harness.
  • Added a Hermes MCP adapter and plugin for recall and automatic session and tool-event capture.
  • Added OpenClaw MCP and plugin support, installation guidance, and ClawHub packaging.
  • Added the rooagi_runtime process hooks and MCP adapter backed by the shared workspace MemoryService.
  • Fixed Codex global MCP project-root resolution and shared-board persistence.
  • Made MCP tools/list lazy so clients can enumerate tools without opening the memory store.
  • Expanded the CI feature matrix to compile and test integration combinations.

Indexing and performance

  • Added document content hashes to skip unchanged record and extraction work.
  • Incrementally update semantic relations and segment routing maps after writes.
  • Reuse segment indexes across refreshes and publish refreshed snapshots while searches continue against the previous immutable snapshot.
  • Refactored engine, index, pipeline, and segment modules and consolidated duplicate segment-enrichment paths.

Breaking changes and migration

  • Python: lint_ai.IndexStore and lint_ai.RemoteMemory have been removed. Use lint_ai.Memory for local and remote access. For a remote server, pass base_url by keyword, for example:
memory = lint_ai.Memory(base_url="http://127.0.0.1:8080", api_key="token")
  • Rust: use MemoryService as the supported application-facing API. Index and store internals are not the supported integration surface.
  • Python language configuration: language is detected automatically by the engine. Configure spacy_model only when an explicit model override is needed.

See the Python migration guide for the Python API changes, compatibility details, and examples.

Packaging

  • Updated PyO3 packaging to use Maturin 1.9.4 or newer; PyO3's deprecated extension-module Cargo feature is no longer enabled directly.
  • Python wheels use the abi3-py38 stable ABI.

Security and concurrency review

The release review found and fixed workspace hook authorization gaps, stale conversation-state writes and expiry cleanup, symlink-following file capture, credential persistence in captured diffs, and premature writer-admission release when an HTTP request is cancelled. Regression tests reproduce these failures. Workspace hook routes require server-token authentication when authentication is enabled and reject workspaces outside the configured server root. They are not available in tenant mode.

See telemetry for capture exclusions, redaction limits, and platform support.

Open review findings

Tantivy is upgraded to 0.26.2. The old-index, test-suite and throughput checks are recorded in Tantivy upgrade verification. The local dependency resolution uses lru 0.16.4, fixing RUSTSEC-2026-0002. RUSTSEC-2026-0253 remains reported but its key-destructor-panic trigger is unreachable in Tantivy's inspected integer-key cache. This is an assessment of current usage, not a patched dependency or a clean audit. Numeric search scores change across the upgrade even though the tested varied-corpus rankings agree.

The build with --no-default-features --all-targets also fails because provider memory HTTP code refers to integration APIs that are excluded in that build. The standard build and the build with all features enabled compile.