{"id":50451194,"url":"https://github.com/deliberium/mnemara","last_synced_at":"2026-06-01T00:03:04.075Z","repository":{"id":352960390,"uuid":"1211890674","full_name":"deliberium/mnemara","owner":"deliberium","description":"A local-first, explainable AI memory engine for Rust","archived":false,"fork":false,"pushed_at":"2026-05-15T21:51:58.000Z","size":448,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-16T00:27:55.553Z","etag":null,"topics":["ai","episodic-memory","grpc","memory","mnemara","rag","retrieval"],"latest_commit_sha":null,"homepage":"https://mnemara.deliberium.ai","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deliberium.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-15T21:17:15.000Z","updated_at":"2026-05-15T21:52:02.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/deliberium/mnemara","commit_stats":null,"previous_names":["deliberium/mnemara"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/deliberium/mnemara","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deliberium%2Fmnemara","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deliberium%2Fmnemara/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deliberium%2Fmnemara/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deliberium%2Fmnemara/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deliberium","download_url":"https://codeload.github.com/deliberium/mnemara/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deliberium%2Fmnemara/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33753930,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","episodic-memory","grpc","memory","mnemara","rag","retrieval"],"created_at":"2026-06-01T00:03:00.778Z","updated_at":"2026-06-01T00:03:04.056Z","avatar_url":"https://github.com/deliberium.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mnemara\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/mnemaraLogo.png\" alt=\"Mnemara logo\" width=\"240\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/deliberium/mnemara/actions/workflows/ci.yml\"\u003e\n    \u003cimg src=\"https://github.com/deliberium/mnemara/actions/workflows/ci.yml/badge.svg\" alt=\"CI\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/deliberium/mnemara/blob/master/LICENSE.md\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"License: MIT\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003e Note: There is also a Python project called [mnemara](https://github.com/mekickdemons-creator/mnemara) by `mekickdemons-creator` - a controlled rolling-context conversation runtime for Claude. Different project, parallel naming (both inspired by Mnemosyne). If you arrived looking for that one, head over there.\n\nMnemara is a local-first, explainable AI memory engine for embedded Rust applications and service-based deployments.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/mnemara-brain-simulation.svg\" alt=\"Animated Mnemara memory engine brain simulation showing store, recall, lineage, and conflict-review paths\" width=\"920\"\u003e\n\u003c/p\u003e\n\n## What It Provides\n\n- product-neutral memory domain model and store traits\n- embeddable animated memory-engine visualization for documentation and web surfaces\n- embedded sled-backed storage\n- protobuf/gRPC schema and generated service types\n- tonic-based daemon mode\n- HTTP/JSON memory, lifecycle, trace, runtime, health, and admin endpoints for daemon operations\n- reference JavaScript and Python HTTP SDKs for non-Rust consumers\n- C ABI bindings for embedding the sled-backed store from FFI-capable runtimes\n- explicit memory scope, trust, and quality state concepts\n- optional episodic context with continuity state, salience, and causal links\n- explicit recurrence, duration, and boundary cues for episodic timelines\n- relative before/after episodic recall anchors plus boundary and recurrence filters\n- conflict-review and drift metadata with operator-resolution recall filters\n- retry-safe idempotent writes, batch upserts, and tombstone or hard delete flows\n- explainable recall filters plus duplicate-aware compaction, stats, integrity, and repair reporting\n- continuity-aware retrieval planning with bounded expansion, typed graph relation reasons, provenance-aware ranking overlays, and planner traces\n- read-only operator graph inspection for episode, chronology, causal, related, lineage, and conflict edges\n- compaction rollup summaries, lineage-preserving supersession, and optional cold-tier archival for stale low-importance records\n- configurable recall scorer kinds and scoring profiles across the embedded and daemon-backed stores\n- a public semantic embedding seam with a deterministic local reference embedder for integration tests and offline deployments\n- opt-in retention enforcement for TTL, archival windows, and namespace caps\n- daemon-side request limits for body size, batch breadth, recall breadth, and payload size\n- basic daemon metrics export for HTTP and gRPC request activity\n- bounded admission control with tenant-aware fairness and runtime status visibility\n- public trace listing and lookup APIs with correlation IDs and recall explanations\n- append-only changefeed reads for memory mutations and time-travel recall over versioned records\n- portable export/import packages that round-trip across file and sled backends\n- remote snapshot shipping between daemon import/export endpoints\n- admin-triggered and scheduled background maintenance orchestration\n- gRPC deployment presets for TCP, Unix domain sockets, TLS, and mTLS\n- published benchmark methodology, benchmark artifacts, and ranking defaults backed by standard IR metrics\n\n## Release State\n\nThe current release includes:\n\n- native Rust embedding through direct crate dependencies\n- a local gRPC and HTTP daemon backed by the sled store\n- typed memory records, recall filters, explanations, and planning traces\n- episodic continuity fields, continuity-aware planner profiles, and lifecycle-aware historical recall\n- judged recall evaluation helpers, append-only changefeed reads, and additive time-travel recall requests\n- recurrence and duration-aware episodic timeline cues with additive boundary labeling\n- compaction, deletion, snapshot, stats, integrity-check, repair, export, and import operations\n- maintenance-run and snapshot-shipping operations for platform deployments\n- published evaluation assets covering ranking quality, backend parity, and portability scenarios\n\nFuture work beyond the current release remains in [ROADMAP.md](https://github.com/deliberium/mnemara/blob/master/ROADMAP.md).\n\n## Quick Start\n\nEmbedded library usage and daemon-mode deployment are documented here:\n\n- [User Guide](https://github.com/deliberium/mnemara/blob/master/docs/user-guide.md)\n- [Architecture](https://github.com/deliberium/mnemara/blob/master/docs/architecture.md)\n- [Deployment](https://github.com/deliberium/mnemara/blob/master/docs/deployment.md)\n- [JavaScript SDK](https://github.com/deliberium/mnemara/blob/master/sdk/javascript/README.md)\n- [Python SDK](https://github.com/deliberium/mnemara/blob/master/sdk/python/README.md)\n- [Roadmap](https://github.com/deliberium/mnemara/blob/master/ROADMAP.md)\n- [Changelog](https://github.com/deliberium/mnemara/blob/master/CHANGELOG.md)\n- [Benchmark Methodology](https://github.com/deliberium/mnemara/blob/master/docs/benchmark-methodology.md)\n- [Benchmark Results](https://github.com/deliberium/mnemara/blob/master/docs/benchmark-results.md)\n- [Release Validation](https://github.com/deliberium/mnemara/blob/master/docs/release-validation.md)\n- [Ranking Defaults ADR](https://github.com/deliberium/mnemara/blob/master/docs/decision-records/0001-ranking-defaults.md)\n- [Security Policy](https://github.com/deliberium/mnemara/blob/master/SECURITY.md)\n- [Contributors](https://github.com/deliberium/mnemara/blob/master/CONTRIBUTORS.md)\n\nRun the daemon locally with:\n\n```bash\ncargo run -p mnemara-server\n```\n\n## Installation\n\nMnemara supports two installation paths:\n\n- develop from a checked-out source workspace\n- consume published crates from crates.io\n\n### From a source checkout\n\nClone the repository and build the workspace:\n\n```bash\ngit clone https://github.com/deliberium/mnemara.git\ncd mnemara\ncargo build --workspace\n```\n\nRun the full test suite with:\n\n```bash\ncargo test --workspace\n```\n\nRun the daemon from the checked-out workspace with:\n\n```bash\ncargo run -p mnemara-server\n```\n\nIf you want to depend on the facade crate or a backend crate directly from a local checkout, use a path dependency:\n\n```toml\n[dependencies]\nmnemara = { path = \"crates/mnemara\", features = [\"sled\"] }\n```\n\n### From published crates\n\nFor embedded library usage, add the facade crate to your application:\n\n```bash\ncargo add mnemara --features sled\n```\n\nYou can swap `sled` for `file`, `protocol`, or `server`, or enable multiple features as needed.\n\nIf you want individual crates instead of the facade, add them directly:\n\n```bash\ncargo add mnemara-core\ncargo add mnemara-store-sled\n```\n\nFor the daemon binary, use `cargo install` against the published server crate:\n\n```bash\ncargo install mnemara-server\n```\n\nThen run it with:\n\n```bash\nmnemara-server\n```\n\n`cargo install` is only for binary crates such as `mnemara-server`. The facade crate `mnemara` is a library crate, so applications should consume it with `cargo add` or a `Cargo.toml` dependency entry instead.\n\n## Publishing\n\nIf you plan to publish the workspace crates to crates.io, publish them in dependency order:\n\n1. `mnemara-core`\n2. `mnemara-protocol`\n3. `mnemara-store-file` and `mnemara-store-sled`\n4. `mnemara-server`\n5. `mnemara`\n\nThe order matters because `cargo package` and `cargo publish` resolve internal path dependencies through crates.io during verification. `mnemara-protocol` has no internal workspace dependency and can be published independently, but `mnemara-store-file` and `mnemara-store-sled` both require `mnemara-core`, `mnemara-server` requires `mnemara-core`, `mnemara-protocol`, and `mnemara-store-sled`, and the facade crate `mnemara` sits on top of the full workspace graph.\n\nRecommended release checks:\n\n```bash\n./scripts/release-checklist.sh preflight\n./scripts/release-checklist.sh foundation\n./scripts/release-checklist.sh dry-run-publish foundation\n./scripts/release-checklist.sh dry-run-publish all\n```\n\n`dry-run-publish all` verifies the crates that can currently pass and reports the crates that are still gated on earlier workspace packages being published to crates.io. After publishing the lower-level crates, repeat `cargo package` or `cargo publish --dry-run` for the remaining crates in order. The checklist script lives at [scripts/release-checklist.sh](https://github.com/deliberium/mnemara/blob/master/scripts/release-checklist.sh), and the crate README recommendation audit lives at [docs/crates-io-readme-audit.md](https://github.com/deliberium/mnemara/blob/master/docs/crates-io-readme-audit.md).\n\n## Workspace Layout\n\n- `crates/mnemara`: facade crate that re-exports core types and opt-in file, sled, protocol, and server surfaces\n- `crates/mnemara-core`: product-neutral domain model and store traits\n- `crates/mnemara-store-file`: compatibility-oriented file store\n- `crates/mnemara-store-sled`: embedded sled-backed store\n- `crates/mnemara-protocol`: protobuf/gRPC schema package\n- `crates/mnemara-server`: tonic-based daemon implementation\n- `sdk/javascript`: reference JavaScript SDK over the HTTP API\n- `assets/mnemara-brain-simulation.svg`: embeddable animated memory-engine visualization\n\n## Facade Crate\n\nApplications can depend on `mnemara` and enable only the product surfaces they need:\n\n```toml\n[dependencies]\nmnemara = { version = \"0.2.0\", features = [\"sled\"] }\n```\n\nAvailable facade features:\n\n- `file`: re-export `mnemara-store-file`\n- `sled`: re-export `mnemara-store-sled`\n- `protocol`: re-export `mnemara-protocol`\n- `server`: re-export `mnemara-server` and its protocol/sled dependencies\n- `all`: enable every facade feature\n\n## Design Principles\n\n- local-first by default\n- explainable retrieval over opaque ranking\n- explicit typed memory records rather than transcript-oriented storage only\n- additive episodic and lifecycle schema evolution\n- stable namespace and tenant isolation\n- support for both embedded and service-based deployment modes\n\n## Project Status\n\nMnemara ships the extracted core/store/protocol/server workspace, the facade crate, a reference JavaScript HTTP SDK, episodic continuity fields, continuity-aware planner traces with graph relation reasons, read-only graph inspection, lifecycle-aware historical recall, published benchmark artifacts, portable import/export workflows, bounded admission control, public trace APIs, and validated TCP/UDS/TLS/mTLS daemon deployment modes.\n\n## Open Source and Contributions\n\nMnemara is an open source project, and contributions are welcome.\n\nIf you want to contribute, please read [CONTRIBUTORS.md](https://github.com/deliberium/mnemara/blob/master/CONTRIBUTORS.md) for the current contribution areas, project priorities, and release-scope guidance.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeliberium%2Fmnemara","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeliberium%2Fmnemara","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeliberium%2Fmnemara/lists"}