SMRITI Memory

io.github.smriti-memcorePublished by GitHub account smriti-memcorev1.4.29Updated Nov 5, 2026

Neuro-inspired long-term memory for AI agents with semantic graph and consolidation.

The publisher's own server: Memory.fit

VerifiedSTDIODesktop onlyKnowledge & MemoryAI & ML

Overview

AI-generated overview

Local long-term memory engine for AI agents, exposing tools to encode, recall, pin, forget and consolidate memories in a semantic graph.

What you can do
  • Encode new memories and recall them with semantic and graph-based retrieval
  • Inject active working-memory slots into context and check confidence or knowledge gaps
  • Pin, forget or consolidate memories, and read system statistics
  • Create private, visibility-isolated rooms and export the memory graph to an Obsidian vault
  • Open a local visual graph browser for the memory palace
When to use it
Useful when an assistant should remember facts, preferences or project context across sessions and across several coding agents, or when you want a local, privacy-oriented alternative to stuffing raw history into the context window.
Requirements
Runs as a local process installed from the smriti-memcore PyPI package (pip). Optional local Ollama for private LLM inference; the Python SDK example passes an OpenAI API key and model. No environment variables or headers are declared in the manifest.
Before you install
Tools write, archive and delete memory data, and consolidation runs background LLM processing that may send content to a configured model provider. The SDK example configures an OpenAI API key. The install and init commands modify client configuration files and add a git post-commit hook that records commits; the UI tool opens a browser.

Installation

In SourceWeft

  1. Open SMRITI Memory in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

SMRITI Memcore

Enterprise-grade, privacy-first Long-Term Memory (LTM) engine for LLM agents, multi-agent frameworks, and MCP clients.

www.smriti-memcore.com

[PyPI] [Python 3.9+] [License: MIT] [Website] [SMRITI Memory MCP server]

[SMRITI Memory Browser & Graph Explorer Demo]

Interactive Semantic Palace Graph Browser (smriti ui) — Category Room hub clustering, neural synaptic particle flow, and real-time dual inspector. Watch Full-Res Video


What is SMRITI?

SMRITI is a high-performance, neuro-inspired long-term memory layer designed to give AI agents persistent, adaptive recall without blocking their real-time execution loop.

Inspired by human Dual-Process cognitive theory, SMRITI splits memory operations into:

  1. System 1 (Immediate Heuristics): Decoupled, millisecond-level ingestion of raw interactions into an append-only Episode Buffer.
  2. System 2 (Async Consolidation): Background LLM-driven consolidation that extracts knowledge graphs, resolves contradictions, identifies skills, and decays weak memories.

SMRITI vs. Naive RAG & Vector Databases

FeatureNaive RAG / Vector DBsSMRITI Memory Engine
LatencyScales linearly with context size; blocks agent loopsSub-5ms ingestion (System 1); System 2 is asynchronous
Context WindowStuffs raw logs, leading to prompt bloat and distractionMiller's Law (7 ± 2 slots) capacity-bounded Working Memory
Data EvolutionStatic embeddings; struggles with contradictions/correctionsAutomatic conflict resolution, abstraction, and temporal decay
RelationshipsFlat vector search; no concept of entity linksSemantic Palace Graph showing structured Room/Topic associations
Privacy & SyncAll-or-nothing storage; complex namespace routingPrivate Rooms and private=True tags natively isolating user syncs

Key Capabilities

  • Dual-Process Performance: Zero-blocking real-time loops. Write immediately, analyze when idle.
  • Persona Palaces & On-Demand Hub: Download pre-curated cognitive memory palaces for historical figures (e.g., Albert Einstein, Isaac Newton) and converse with them with authentic mental models.
  • Privacy-First (Private Rooms): Create local semantic rooms whose memories are automatically excluded from shared/team-wide sync.
  • Model Context Protocol (MCP): Native MCP server integration with Claude Code, Claude Desktop, Gemini Antigravity, and Codex.
  • AMP v1.0 Spec Compliant: Drop-in compatibility with any agent framework conforming to the Agent Memory Protocol.
  • Visual Graph Explorer: Clean D3.js-based visualization interface with Prometheus metrics monitoring.
  • Obsidian Vault Integration: Automatically syncs your agent's memory graph into an Obsidian vault for human curation.
  • Framework Agnostic: Integrates natively with LangChain, LlamaIndex, CrewAI, and AutoGen.

Core Architecture

text
                           ┌─────────────────────────────────┐                           │    Asynchronous Consolidation   │                           │      (8 Background Processes)   │                           │  • Chunking      • Cross-Ref.   │                           │  • Conflict Res. • Skill Ext.   │                           │  • Forgetting    • Spaced Rep.  │                           │  • Reflection    • Defragment.  │                           └────────────────┬────────────────┘                                            │ background  ┌──────────┐   ┌──────────┐   ┌───────────▼─────────┐   ┌──────────┐  │  Input   │──▶│ Attention │──▶│   Episode Buffer    │──▶│ Semantic │  │  Text    │   │   Gate    │   │  (append-only log)  │   │  Palace  │  │  └───────┘   │ (salience │   └─────────────────────┘   │  Graph   │  │              │  filter)  │                              │ G=(V,E)  │  └──────────┘   └──────────┘                              └────┬─────┘                                                                │  ┌──────────┐   ┌──────────┐   ┌───────────────────┐           │  │  Query   │──▶│ Retrieval│──▶│  Working Memory   │◀──────────┘  │          │   │  Engine  │   │   (7 ± 2 slots)   │  └──────────┘   │ Q(v) =   │   └───────────────────┘                 │ β₁cos +  │                 │ β₂decay+ │   ┌───────────────────┐                 │ β₃freq + │──▶│    Meta-Memory    │                 │ β₄sal    │   │ (confidence map)  │                 └──────────┘   └───────────────────┘

Quick Start

1. Install SMRITI

Install the core memory engine and CLI:

bash
pip install smriti-memcore

(Optional: Ensure Ollama is running locally for 100% private, free LLM inference: ollama run mistral)


2. Instructions for Professors & Course Creators: Package Your Curriculum

Turn your raw lecture folder into a self-contained, offline-first Cognitive Palace Bundle (.smritibundle) that acts as a 24/7 Socratic Teaching Assistant for your students.

bash
# Package a folder of slides, transcripts, readings, or notebooks into an offline bundle:smriti pack ./my-course-folder -o cs101.smritibundle
# Or package directly from a declarative YAML/JSON persona spec:smriti pack ./course-spec.yaml -o cs101.smritibundle --install
  • Supported Formats: PDF slides, WebVTT/SRT video lecture transcripts, Markdown, plain text, and Jupyter notebooks (.ipynb).
  • Zero Cloud Costs: All vector embeddings are calculated locally ($0 OpenAI/HuggingFace API bills).
  • Lightweight Distribution: Generates a self-contained archive (typically 5–15 MB) containing the vector index, full-text search, and semantic graph. Upload it directly to Canvas, Blackboard, Piazza, Google Drive, or email it to students.

3. Instructions for Students: 24/7 Socratic Office Hours

Students download the professor's .smritibundle and converse with an interactive course mentor directly in their terminal—100% offline, private, and subscription-free.

bash
# Step 1: Import the course bundle provided by your professorsmriti pull ./cs101.smritibundle
# Step 2: Start your 24/7 Socratic Office Hourssmriti chat cs101
# (Optional) Use a specific local Ollama model (e.g. Mistral, Qwen, Llama)smriti chat cs101 --model mistralsmriti chat cs101 --model qwen3.5
  • Pinpoint Attribution: Asks about any concept and surfaces exact slide page numbers and video lecture transcript quotes.
  • Socratic Pedagogy: Rather than simply giving away homework answers, the course persona guides students step-by-step from first principles using course analogies.
  • 100% Local & Private: All conversations stay on the student's laptop—zero student data is sent to external servers.
Pre-Curated Mentors in Official Registry

You can also explore out-of-the-box mentors right away:

bash
# List all available mentors and locally installed bundlessmriti list
# Socratic Distributed Systems Professor (Raft, Paxos, CAP theorem)smriti chat prof-systems
# 100% Private, Local CBT & Mindfulness Companionsmriti chat mindful-counsellor
# Historical Thinkerssmriti chat einsteinsmriti chat newtonsmriti chat marcus-aurelius

4. Smriti DevBrain: Universal Developer Memory (Cursor, Claude, Windsurf, Gemini, Zed)

SMRITI solves cross-agent amnesia by acting as a shared, local cognitive brain across all your AI coding tools. A bug solved in Claude Code or Gemini is immediately remembered by Cursor.

Step 1: Auto-Configure All Installed IDEs & Agents

Run one command to scan and configure Cursor, Claude Code, Windsurf, Gemini, and Zed in seconds:

bash
smriti install

(Or target specific tools: smriti install --client cursor,windsurf)

Step 2: Initialize a Codebase Workspace

Inside any repository, run:

bash
smriti init

This automatically:

  • Creates a dedicated Semantic Room in the Palace for the project (repo:<name>).
  • Scaffolds .cursorrules, .cursor/rules/smriti.mdc, CLAUDE.md, and project .cursor/mcp.json.
  • Installs a lightweight, non-blocking git post-commit hook that records recent commits and architectural changes into memory.
Git Commit Memory Hook Management:
bash
smriti hook install    # Enable automatic commit context loggingsmriti hook uninstall  # Remove the post-commit hook

3. Python SDK

For application developers building custom agent loops.

bash
pip install smriti-memcore[faiss] # FAISS is recommended for accelerated vector search
python
from smriti import SMRITI, SmritiConfig
# Initialize memory engine with OpenAIconfig = SmritiConfig(    storage_path="./my_agent_memory",    llm_model="gpt-4o",    openai_api_key="your-api-key-here")memory = SMRITI(config=config)
# Ingest observationsmemory.encode("User prefers using PyTorch for neural networks.")memory.encode("User is allergic to shellfish.", context="medical")
# Recall relevant context using multi-factor retrievalresults = memory.recall("What framework does the user prefer?")for mem in results:    print(f"[{mem.strength:.2f}] {mem.content}")
# Manually trigger System 2 background consolidationmemory.consolidate()memory.save()
# --- Or Load a Pre-Curated Persona (e.g. Albert Einstein) ---einstein, manifest = SMRITI.from_persona("albert-einstein")memories = einstein.recall("What thought experiment led to Special Relativity?")for mem in memories:    print(f"[{mem.strength:.2f}] {mem.content}")

MCP Tool Reference

SMRITI exposes 19 tools (13 native + 6 AMP aliases) for clients:

Core Tools

Tool NameDescription
smriti_encodeIngests a new memory. Accept private=True to exclude from team syncs.
smriti_recallRetrieves memories using semantic and graph-based retrieval.
smriti_get_contextHelper to inject the current active working memory slots into the context window.
smriti_how_well_do_i_knowPerforms a meta-memory confidence check on a given topic.
smriti_knowledge_gapsIdentifies topics the agent has identified it needs more information on.
smriti_pinMarks a memory as permanent (protects it from strength decay).
smriti_forgetSoft-deletes/archives a memory, leaving a cryptographic tombstone.
smriti_consolidateTriggers a background System 2 consolidation run.
smriti_statsReturns system-wide statistics (total memories, rooms, private counts).
smriti_create_private_roomSpawns a private room. All memories inside this room are visibility-isolated.
smriti_open_uiLaunches the interactive visual D3.js memory graph in your default browser.
smriti_sync_obsidianExports the Semantic Palace graph structures to markdown files in an Obsidian Vault.

AMP v1.0 Alias Tools

These endpoints ensure complete conformance with the standard Agent Memory Protocol specification:

AMP ToolNative MappingReturn Format
amp.encodesmriti_encodeAMP standard JSON response
amp.recallsmriti_recallArray of {id, content, score, timestamp, status}
amp.forgetsmriti_forget{status: "forgotten" | "not_found"}
amp.statssmriti_stats{memory_count, ...}
amp.pinsmriti_pin{status: "pinned" | "not_found"}
amp.consolidatesmriti_consolidate{status: "ok", memories_processed: int}

Framework Integrations

LangChain Integration

Use SmritiLangChainMemory as a drop-in replacement for default chat buffers. It limits active context using Working Memory and offloads the conversational history to the Semantic Palace graph in the background.

python
from langchain.chains import ConversationChainfrom smriti.integrations.langchain_memory import SmritiLangChainMemoryfrom smriti import SMRITI
smriti_engine = SMRITI(storage_path="./langchain_smriti_db")smriti_memory = SmritiLangChainMemory(smriti_client=smriti_engine, top_k=3)
conversation = ConversationChain(    llm=my_llm,    memory=smriti_memory,)conversation.predict(input="I prefer backend APIs in Python.")

Benchmarks & Performance

1. LoCoMo (Multi-System Context Retrieval)

Tested against four architectures on the LoCoMo long-context dialogue dataset (28 turns, 15 evaluation questions):

SystemF1 ScoreLatencyTokens/QueryConsolidation
FullContext0.3451147ms550—
MemGPT-style0.3341397ms478—
NaiveRAG0.3121387ms145—
SMRITI0.2791317ms14641.2s (async)
Mem0-style0.2351088ms106—

SMRITI retains high recall while drastically reducing query context size. Consolidation runs in the background and does not block client interactions.

2. LongMemEval (Long-Term Chat Sessions)

Evaluated over 50+ chat sessions using the LongMemEval harness:

System ConfigurationExact Match AccuracyAverage Query Latency
Baseline (Full Context)100.0%11.98s
SMRITI Dual-Process80.0%0.98s (12× latency reduction)

Configuration Parameters

Initialize SmritiConfig with custom parameters to tune the cognitive weights:

python
from smriti import SmritiConfig
config = SmritiConfig(    working_memory_slots=7,          # Capacity limit (Miller's Law)        # Retrieval scoring weights (sum to 1.0)    recency_weight=0.2,    relevance_weight=0.4,    strength_weight=0.2,    salience_weight=0.2,
    # Forgetting & Temporal Decay    decay_rate=0.99,                 # Strength multiplier per day    strength_hard_threshold=0.05,    # Memories dropping below this are forgotten        # Palace Graph    room_merge_threshold=0.85,       # Cosine similarity for auto-merging semantic rooms)

Citation

If you use SMRITI in your research, please cite our technical paper:

bibtex
@article{tyagi2025smriti,  title={SMRITI: A Scalable, Neuro-Inspired Architecture for Long-Term Event Memory in LLM Agents},  author={Tyagi, Shivam},  year={2025},  doi={10.13140/RG.2.2.25477.82407}}

License

SMRITI is licensed under the MIT License. See LICENSE for details.

Source: README.md at commit 2cb3553

Tools

0
SourceWeft started this package once in an isolated sandbox, without credentials, to list its tools. That failed: the package did not install.

Version history

3
  1. v1.4.29LatestNov 5, 2026
  2. v1.4.28Oct 22, 2026
  3. v1.4.16Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Memory integrations