llmem

Installation
SKILL.md

LLMem

LLMem is a structured memory system (Go binary). It stores factual memories in SQLite with optional embedding-based semantic search via Ollama (nomic-embed-text). Semantic search uses a sqlite-vec HNSW ANN index for sub-linear retrieval, with automatic fallback to brute-force cosine similarity if the sqlite-vec extension is not available. Memories can be connected via typed relations (related_to, supersedes, contradicts, depends_on, derived_from). A background dreaming/consolidation system (light, deep, REM phases) runs automatically via systemd timer to decay idle memories, boost frequent ones, promote high-value ones, and merge near-duplicates.

Installation

  • CLI: ~/.local/bin/llmem
  • Config: ~/.config/llmem/config.yaml
  • DB: ~/.config/llmem/memory.db
  • Ollama: http://localhost:11434 (local, for embeddings)

Session Adapter Configuration

LLMem uses a session adapter to read conversation transcripts for memory extraction. Set session.adapter in config.yaml:

  • opencode (default) — reads from ~/.local/share/opencode/opencode.db. Auto-selected if the database exists.
  • copilot — reads from ~/.copilot/session-state/. Auto-selected if only Copilot session data exists. Full transcripts require --share.
  • none — no adapter. Context injection still works, but transcript extraction returns no_transcript.
Installs
62
First Seen
May 3, 2026