Gentleman-Programming/engram

Persistent memory system for AI coding agents. Agent-agnostic Go binary with SQLite + FTS5, MCP server, HTTP API, CLI, and TUI.

What it solves

AI coding agents typically lose their context and memory once a session ends. Engram provides a persistent, agent-agnostic memory layer that allows agents to save important decisions, bugfixes, and architectural patterns, and retrieve them in future sessions.

How it works

Engram is a single Go binary that uses SQLite with FTS5 full-text search to store memories locally. It exposes this memory via a Model Context Protocol (MCP) server, an HTTP API, and a CLI. When an agent completes a task, it calls a mem_save tool to persist the information. In subsequent sessions, the agent uses mem_search or mem_context to retrieve relevant historical context.

Who it’s for

Developers using AI coding agents (such as Claude Code, Cursor, Windsurf, VS Code Copilot, or Gemini CLI) who want their agents to maintain long-term project knowledge across different sessions and machines.

Highlights

  • Agent-Agnostic: Works with any agent supporting the Model Context Protocol (MCP).
  • Zero Dependencies: Distributed as a single binary with no requirement for Node.js, Python, or Docker for basic local use.
  • Local-First: Uses a local SQLite database as the primary source of truth.
  • Git Sync & Cloud: Supports syncing memories via Git compressed chunks or an optional cloud replication service.
  • Conflict Detection: Includes tools to identify and resolve conflicting memories, with a beta feature for semantic LLM-based judging of conflicts.
  • TUI: Includes a built-in terminal user interface for browsing and searching memories.

Related

  • Project
  • Project
  • Project
  • Project
  • Project