Skip to content

Configuration

Engram works out of the box with sensible defaults, but you can customize its behavior through environment variables and configuration files.

By default, Engram stores its SQLite database at:

~/Library/Application Support/engram/memory.db

Override with the ENGRAM_DB_PATH environment variable:

Terminal window
export ENGRAM_DB_PATH="/path/to/custom/memory.db"

Engram uses paraphrase-MiniLM-L6-v2 for semantic embeddings (384 dimensions). The model runs locally — no API calls needed for embedding generation.

Memories are scoped by project. When your AI stores a memory, it tags it with the current project name. Recall automatically filters by project scope, but also includes global memories.

  • Project-scoped: Architecture decisions, file paths, patterns specific to a codebase
  • Global: User preferences, cross-project conventions, workflow settings

Memories support an importance field (1-5) that boosts recall ranking. You can also set expires_in_days for temporal context that auto-expires from recall results.