Gentleman-Programming

engram: Give AI Coding Agents Persistent Memory

Engram is a Go-based memory system that helps AI coding agents retain useful project knowledge between sessions. It stores memories locally in SQLite and makes them available through MCP, a CLI, an HTTP API, and a terminal UI.

View on GitHub Compare
Stars
7k
Forks
724
Stars, last 30 days
+779

Our take

Health score

84/100

How it is scored
Activity
90
Community
69
Issues
93
Pull requests
84

+779 stars in the last 30 days

  • Merges more pull requests than 96% of the projects we track
  • Releases more often than 93% of the projects we track
  • Closes issues faster than 81% of the projects we track

Project history

Daily GitHub snapshots since Oct 7, 2026. History covers stars and forks; health signals are not tracked historically.

Selected snapshot

Stars

7,932

Forks

822

Change since Nov 11, 2026: +33 stars·+1 forks

Overview

Engram gives AI coding agents a persistent, searchable record of project knowledge, so useful decisions, discoveries, and handoffs can carry across sessions instead of being lost when a conversation ends. It is designed for developers who want agents to recover relevant context without treating every conversation as a transcript to store.

The system runs as a Go binary with SQLite and FTS5, and supports MCP-compatible agents as well as CLI, HTTP API, and TUI access. Local storage is the default; Git Sync and optional Engram Cloud provide ways to share or replicate memory when needed.

Key Features

  • Stores project memories in a local SQLite database with FTS5 full-text search.
  • Connects to MCP-compatible coding agents, including Claude Code, OpenCode, Gemini CLI, Codex, and others.
  • Provides CLI, HTTP API, MCP server, and interactive terminal UI interfaces.
  • Supports project-aware memory retrieval and explicit project selection.
  • Offers Git Sync for portable memory sharing and optional project-scoped Cloud replication.
  • Includes tools for saving, searching, updating, reviewing, and handing off memories between sessions.

Use Cases

  • Developers can preserve decisions, conventions, and completed fixes so an agent can resume project work with relevant context.
  • Teams can use Git Sync or optional Cloud replication when they want project memories available across machines or shared with collaborators.
  • Users of different MCP-compatible coding agents can keep a memory store independent of any one agent.
  • Developers who prefer local data can use SQLite-backed memory without requiring a separate database service.

Getting Started

Install the latest stable release from GitHub Releases, then configure your agent. For example, run engram setup opencode for OpenCode. See the README for installation options and setup instructions for other agents.

Alternatives

  • deja-vu: deja-vu indexes past agent sessions for recall, while engram stores curated project memories and exposes them through MCP, a CLI, and an API.
ProjectLanguageLicenseStarsStatus
engramGoMIT7kNot checked yet
deja-vuGoMIT1.2kNew

Considerations

  • Engram is most useful when an agent or workflow can access its MCP server or another supported interface. Agent setup and available capabilities vary.
  • Local SQLite storage is the default. Git Sync and Engram Cloud are optional, separate paths for sharing or replication.
  • The README recommends saving durable, structured knowledge rather than raw tool output or every conversational turn. Memory quality depends on this curation.
  • The repository README identifies Homebrew as remaining on the stable v1.20.0 line; check the release policy and release page when choosing an installation or upgrade path.

Found this useful?

Share it with someone who would like engram.

Comparisons