Skip to main content

Engram

Local, persistent memory for AI development workflows.

Your AI assistant finally remembers your entire codebase.


The Problem

  • Cursor forgets your codebase after 5 minutes
  • Claude loses context mid-conversation
  • Copilot suggests code that conflicts with your architecture
  • You keep re-explaining the same things

The Solution

Engram creates a persistent memory layer that any AI can access via MCP.

# Index your project
engram init ~/my-project

# Configure Claude/Cursor
engram setup

# Done. Your AI now remembers everything.

Features

  • Local-first — Your code never leaves your machine
  • GPU accelerated — Fast indexing with MPS (Mac) or CUDA
  • MCP native — Works with Claude Desktop, Cursor, and any MCP client
  • Incremental updates — Only re-indexes what changed
  • Crash-proof — Saves progress, resumes if interrupted
  • Portable — Copy your "memory cartridge" anywhere

Supported Files

Type Extensions
Code .py .js .ts .tsx .go .rs .java .rb .php .swift .c .cpp
Docs .pdf .txt .md .rst
Config .json .yaml .yml .toml
Images .png .jpg .jpeg (OCR)

Quick Start

Install

pip install engram-dev

Or from source:

git clone https://github.com/Tobbiloba/engram.git
cd engram
pip install -e .

Index Your Project

# Index current folder
engram init

# Index specific folder
engram init ~/projects/my-app

# Custom output name
engram init ~/projects/my-app -o my_brain

Configure MCP

engram setup

This auto-detects Claude Desktop and Cursor, and configures them.

Query From Terminal

engram query "how does authentication work"

Watch for Changes

engram watch ~/projects/my-app

Runs in background, auto-updates index when files change.


How It Works

┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   Files     │────▶│   Chunks    │────▶│  Vectors    │────▶│   FAISS     │
│  Code/Docs  │     │ 1000 chars  │     │ 384 dims    │     │   Index     │
└─────────────┘     └─────────────┘     └─────────────┘     └─────────────┘
                                                                   │
                                                                   ▼
┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│     AI      │◀────│   Results   │◀────│  Semantic   │◀────│ MCP Server  │
│   Claude    │     │  Top 5      │     │   Search    │     │             │
└─────────────┘     └─────────────┘     └─────────────┘     └─────────────┘
  1. Index — Engram scans your files and creates chunks
  2. Embed — Each chunk becomes a 384-dimension vector (local model, no API)
  3. Store — Vectors saved to FAISS index (fast similarity search)
  4. Query — MCP server exposes query_memory tool to AI assistants
  5. Search — AI asks questions, gets relevant code/docs back

CLI Commands

Command Description
engram init [folder] Index a folder
engram query "..." Search from terminal
engram watch [folder] Start background watcher
engram status Show index stats
engram setup Auto-configure MCP

Manual MCP Configuration

If engram setup doesn't work, add manually:

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "engram": {
      "command": "/path/to/engram/venv/bin/python",
      "args": ["/path/to/engram/server.py", "/path/to/your_engram"]
    }
  }
}

Cursor

Edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "engram": {
      "command": "/path/to/engram/venv/bin/python",
      "args": ["/path/to/engram/server.py", "/path/to/your_engram"]
    }
  }
}

Requirements

  • Python 3.9+
  • ~2GB disk space (for model + index)
  • For OCR: brew install tesseract poppler

Tech Stack

  • Embeddings: sentence-transformers/all-MiniLM-L6-v2 (runs locally)
  • Vector Store: FAISS
  • GPU: MPS (Apple Silicon) / CUDA (NVIDIA) / CPU fallback
  • Protocol: MCP (Model Context Protocol)

Roadmap

  • Local vector indexing
  • MCP server
  • GPU acceleration
  • Incremental updates
  • Background watcher
  • Temporal memory (what changed recently?)
  • Git-aware context
  • Architecture insights
  • Desktop app

See ROADMAP.md for details.


Contributing

PRs welcome! See CONTRIBUTING.md for guidelines.


License

MIT — Use freely, modify freely, share freely.


Built for developers who are tired of re-explaining their codebase.

Release files for engram-dev 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for engram-dev 0.2.0
File Size Uploaded
engram_dev-0.2.0.tar.gz 31.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for engram-dev 0.2.0
File Interpreter ABI Platform
engram_dev-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 65.2 kB

Release files / engram_dev-0.2.0.tar.gz

Download URL engram_dev-0.2.0.tar.gz
Size 31.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1a65f11a28d02b854a729d5e472c669e76f326720dcd79bbfccf545846450bb8
BLAKE2b-256 checksum
How to use checksums
2536b84c9ad8166ebe0a4fdaec9409f512168797be4b027c320d5f1a09940401
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / engram_dev-0.2.0-py3-none-any.whl

Download URL engram_dev-0.2.0-py3-none-any.whl
Size 33.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1cfe51522490b8af74e15067f0ea3875b2cd8212ea6fc4def2f6bc44c5c08fb5
BLAKE2b-256 checksum
How to use checksums
20e9ba3517f15794c4f05254cb63648bbb56a4714a4eb9c93fb9fdbd6a625660
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page