Skip to content

Releases: Dream-Pixels-Forge/memorius

v0.9.2

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 19 Oct 12:18

Fixed

  • memorius serve single-instance guard — exclusive flock on <storage.path>/serve.lock stamped with the incumbent PID (#43)

Changed

  • Dropped the sentence-transformers FutureWarning by migrating to the current task-label API (#45)
  • Planning docs consolidated under dev-notes/ (#42, #45, #47)
  • Repo-wide pyright cleanup: 152 → 0 errors across memorius/ and tests/ — zero behavior change (#46)
  • Walkable first-person vault library with realistic shelves (#50)
  • Bookcase page/run instructions

v0.9.1 — Serve guard, warning drop, pyright zero

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 18 Oct 23:44
902649e

Maintenance release after v0.9.0 (bookcase).

Fixed

  • memorius serve single-instance guard (#43) — exclusive flock on <storage.path>/serve.lock stamped with the incumbent PID. A second memorius serve now fails fast (exit 1, under 5s) naming the incumbent instead of deadlocking on SQLite WAL contention. Dead holders are stolen automatically via kernel flock release; platforms without fcntl gracefully no-op.

Changed

  • Dropped the sentence-transformers FutureWarning by migrating to the current task-label API (#45); planning docs consolidated under dev-notes/ (#42, #45, #47).
  • Repo-wide pyright cleanup: 152 → 0 errors across memorius/ and tests/ — zero behavior change (annotations, narrowing intermediates, casts, rule-specific ignores) (#46).

Full Changelog: https://github.com/Dream-Pixels-Forge/memorius/blob/main/CHANGELOG.md

v0.9.0 - Bookcase: see your vault in 3D

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 18 Oct 01:46
650522d

What's new in v0.9.0

  • memorius bookcase — open your vault as a 3D bookcase in the browser: one book per memory (spine = shelf/folder/note path, thickness ∝ content length, colour = recency), OrbitControls scene, two layouts (by shelf / by recency), camera fly-to on search, and a librarian voice tour (Web Speech API: greeting, search narration with shelf locations, hold-to-talk input, voice picker, text fallback). Loopback-only.
  • GET /vaults — new REST endpoint returning per-vault memory counts; backed by VaultEngine.list_vaults(). CORS unchanged.
  • Docs: CLI reference + Getting Started "See your vault in 3D" section.

Try it:

memorius bookcase

memorius v0.8.6 — repair + --json

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 16 Oct 12:55

v0.8.6

New Features

  • memorius repair (#21) — reconciles the Chroma vector store with the authoritative memory_meta table: removes orphaned vectors, optionally re-embeds missing ones (--reindex). --dry-run, --vault, --json supported. Doctor's drift warning now points to it.
  • --json flag on stats and status — deterministic machine-readable output.

Bug Fixes

  • Stale 0.8.3 system-site-packages distribution shadowing the pipx venv — resolved.

Released: 2026-10-16

v0.8.5 - hooks mine_dir NameError fix

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 16 Oct 00:16

Bug Fixes

  • hooks/engine.py:_action_mine_dir raised NameError: name 'vault' is not defined on every mine_dir hook execution — it assigned the configured vault to vault_cfg but passed the undefined vault to engine.mine(). Fixed to use vault_cfg.
  • Added regression suite tests/test_hooks_engine_mine_dir.py (5 cases, stubbed VaultEngine) covering default vault, custom vault from action config, missing-path skip, nonexistent-path skip, and directory-mode mining.

v0.8.2

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 15 Aug 09:17

Learning module with 7 categories, 6 MCP tools, 5 CLI commands

v0.8.1

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 15 Aug 08:47

v0.8.1 (2026-08-15)

Fixed

  • Storage verification — \store()\ now verifies that memories are actually persisted to both the vector store and meta store after writing. Raises \RuntimeError\ if either verification fails, preventing silent storage failures.

v0.8.0: Temporal Graph, Heat Scores, Auto-Consolidation, BM25 Hybrid

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 15 Aug 04:31

v0.8.0 — AI Memory Landscape 2026 Features

Temporal Graph Edges

  • valid/ invalid columns for historical edge queries
  • invalidate_edge() for soft-delete edge invalidation
  • Active edge filtering in get_linked() and �xpand_graph()
  • Temporal conflict resolution in link_memories()
  • get_edges_at_time() and get_active_edge_count() helpers

Heat-Score Promotion

  • heat_score column on memory_meta (0.0–1.0)
  • calculate_heat_score() with recency/frequency/freshness weighting
  • classify_tier() for hot/warm/cold/archived classification
  • Tier-boosted search ranking (+0.15 hot, -0.15 archived)
  • Automatic heat score updates on memory access

On-Write Deduplication

  • Semantic dedup check on store (cosine similarity > 0.92)
  • duplicate_of metadata for flagged duplicates
  • Best-effort dedup that never blocks storage

Auto-Consolidation Daemon

  • ConsolidationDaemon background thread
  • Opt-in via consolidation.enabled: true in config
  • Configurable interval and consolidation parameters
  • VaultEngine lifecycle integration

BM25 Hybrid Retrieval

  • FTS5 virtual table with auto-sync triggers
  • �m25_search() method on SQLiteStore
  • Hybrid search: 60% vector + 40% BM25
  • Score normalization and blending

v0.7.2 — Comprehensive Security Fixes

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 15 Aug 01:34

Security Hardening (Comprehensive Audit)

HIGH

  • H1: Path traversal on graph export — �ault.py:export_graph_html validates destination stays within storage directory
  • H2: Prompt injection trust model — MCP tool descriptions document that memory content is untrusted data

MEDIUM

  • M1: HTML injection — graph_visualizer.py escapes title via html.escape()
  • M2: Command injection — Windows daemon startup uses environment variables instead of string interpolation
  • M3: LLM extraction trust model — System/user message split isolates extraction rules from user content
  • M4: Template injection — _substitute_templates recursion depth limited to 10
  • M5: Path traversal — CLI obsidian export validates output paths stay within export directory
  • M6: Dependency pinning — Minimum versions for chromadb, sentence-transformers, httpx, openai, pyyaml

LOW

  • L1: Rate limiter memory — Sweep every 200 requests + IP count cap (10,000)
  • L2: UUID validation — MCP handlers validate memory_id format
  • L3: Path validation docstring —
    esolve_vault_path documentation
  • L5: API key security — README documents OpenAI API key handling

Other Changes

  • Dependency consolidation (sentence-transformers, openai, sqlite-vec now core)
  • Knowledge Graph Visualizer (standalone HTML, CLI, MCP, REST)

v0.7.1 — Knowledge Graph Visualizer + Code Review Fixes

Choose a tag to compare

@Dream-Pixels-Forge Dream-Pixels-Forge released this 15 Aug 01:11

v0.7.1 (2026-08-15)

Features

  • Knowledge Graph Visualizer — standalone interactive HTML visualization with force-directed canvas layout, shelf/relation filtering, search, node inspector sidebar, and zoom/pan
    • CLI: \memorius graph view, \memorius graph export-html, \memorius graph stats, \memorius graph json\
    • MCP: \memorius_graph_export\ tool (json/html format)
    • REST: \GET /graph/data, \GET /graph/view\
  • Dependency consolidation — \sentence-transformers, \openai, and \sqlite-vec\ moved from optional extras to core. \pip install memorius\ now includes all features out of the box.

Security Hardening

  • SQL PRAGMA whitelist via \ rozenset\ in _get_columns()\
  • UUID validation on \get_memory_meta_batch()\ WHERE IN clause
  • Scoped \VaultEngine.close()\ via \close_connection(db_path)\

Code Quality

  • Typed \SearchModule/\StoreModule\ \meta\ parameter as \SQLiteStore\ (was \Any)
  • Lazy %s\ logger formatting in \meta_store.py\
  • Numpy array conversion in \ChromaDefaultProvider.embed()\
  • \VectorStore\ type annotation on \VaultEngine.vector\ property
  • README version alignment to v0.7.1
  • Install instruction cleanup (removed \pip install memorius[...]\ references)

Tests

  • 5 new tests for graph visualizer and endpoints (\ est_graph_visualizer.py)

Full Changelog: https://github.com/Dream-Pixels-Forge/memorius/blob/main/CHANGELOG.md