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 forcompact(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:
- Read
INDEX.mdonly at session start. - Load a topic file only when relevant — the index says which.
- Write via
drevon memory log | decide | learn | note— never hand-edit the log. - Recall older history with
drevon memory search.
Migrating from v1
Legacy stores (context.md, decisions.md, patterns.md, log.md) port over with:
drevon memory reference.