kael-bit/engram-rs
AI Agents & AssistantsA Rust‑based memory engine for AI agents that adds forgetting, promotion, and self‑organizing topic clustering to flat stores
Features
- Three‑layer lifecycle (Buffer → Working → Core) with decay and LLM quality gating
- Automatic semantic deduplication and merging of similar memories
- Self‑organizing topic tree that clusters related knowledge without manual tags
Recent releases
View all 16 releases →
v0.14.0
Breaking risk
Breaking changes
- `rerank` field removed from `RecallRequest`
- Global audit replaced with focused topic distillation (condenses overlapping entries when a topic reaches 10+ memories)
- Sandbox functionality removed
Notable features
- Episodic Core block: episodic memories cannot be promoted to Core (enforced at collection and DB level)
- Web UI split into `index.html`, `style.css`, and `app.js` for easier maintenance
- Sort by weight added to web UI memory list with four modes (Newest, Oldest, Weight ↓, Weight ↑)
Full changelog
Breaking Changes
- Rerank removed —
rerankfield removed fromRecallRequest. LLM re-ranking was default-off and unnecessary; FTS + semantic scoring is sufficient. Reduces recall latency. - Audit → Topic Distillation — old three-powers global audit replaced with focused topic distillation. When a topic grows to 10+ memories, overlapping entries are condensed into fewer, richer ones. More efficient, fewer wasted LLM calls.
- Sandbox removed — no longer needed with the simpler distillation model.
New Features
- Episodic Core block — episodic memories can never be promoted to Core. Enforced at both candidate collection and DB level.
- Web UI split — single 1300-line
index.htmlsplit intoindex.html+style.css+app.js. Easier to maintain and read. - Sort by weight — web UI memory list supports 4 sort modes: Newest, Oldest, Weight ↓, Weight ↑. Uses the same
memory_weight()formula as recall scoring.
Improvements
- Centralized prompts — all LLM prompts and JSON tool schemas in
src/prompts.rs - Centralized thresholds — all 60+ magic numbers from 15+ files in
src/thresholds.rs - Epoch-based decay — decay only during active consolidation, not wall-clock time
- Buffer redesign — all new memories enter Buffer; promotion requires consolidation
- Reconcile merge — auto-detects same-topic memories where newer supersedes older
- ~1400 lines removed net across refactoring and feature removal
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
About
Stars
25
Forks
2
Languages
Rust
JavaScript
Shell
Downloads/week
3
↓17%
NPM Maintainers
2
Contributors
1
TypeScript
Types included ✓
Install & Platforms
Install via
shell-script