Skip to main content

Overview

Drevon v2 memory is a small set of markdown files organized into three tiers by how eagerly they load. The agent reads only the index at session start and pulls detail in on demand.

Tier 0 — INDEX.md

The only file read at session start. It is generated and maintained by Drevon (via the drevon memory commands) — you don’t hand-write it. It stays within a token budget (memory.eagerBudgetTokens, default ~2,000).

Tier 1 — topics/

Small, on-demand files. The index points to each one. In hub mode, the topics are user.md, projects.md, and systems.md instead of architecture/patterns. A decision file looks like:

Tier 2 — log/

The episodic activity journal, split into monthly segments so it never loads as one monolith. Never read eagerly; searchable via drevon memory search.
log/summaries.md holds the headlines of months that compaction has archived:

archive/

Non-destructive storage: pre-migration originals (archive/pre-v2-<date>/) and the bodies of log months that drevon memory compact has rolled up. Nothing here is ever loaded eagerly; nothing is ever deleted by Drevon.

Configuration

  • eagerBudgetTokens — soft cap on the index; it trims its recent-log tail to stay under.
  • retentionMonths — log months older than this are eligible for compact (default 3).

The memory protocol

Every compiled agent config (CLAUDE.md, AGENTS.md, copilot-instructions.md) carries the v2 protocol, which tells the agent to:
  1. Read INDEX.md only at session start.
  2. Load a topic file only when relevant — the index says which.
  3. Write via drevon memory log | decide | learn | note — never hand-edit the log.
  4. Recall older history with drevon memory search.

Migrating from v1

Legacy stores (context.md, decisions.md, patterns.md, log.md) port over with:
See the drevon memory reference.