How memory compounds

Most agent memory systems extract facts from conversations and store them as assertions. “The user prefers Python.” “They mentioned a deadline on March 15.” These conclusions are useful. They’re also flat. A fact today reads the same in six months.

Enzyme generates questions. A catalyst for #product-decisions doesn’t say “the user makes product decisions.” It asks “Which decisions kept getting reopened, and what was unresolved each time?” That question evolves as the workspace grows. New notes shift which catalysts are relevant. The same entity explored six months later surfaces different material because the thinking has moved.

Time as structure

Every entity in Enzyme carries temporal metadata — a decay curve, not a cutoff. When it first appeared, when it was last active, how frequently, whether it’s accelerating or going dormant. Catalysts are generated from temporal eras — samples drawn from early activity, middle stretches, and recent work — so the questions probe the full depth of each thread, including the shifts.

Search results are weighted by recency along that curve. Recent notes surface more, but old notes don’t disappear. A reflection from two years ago that resonates with a catalyst still shows up — it just needs to earn its place against more recent material. What you touched last week matters more than last month, last month more than last year. The decay is gradual. Nothing falls off a cliff.

This temporal structure lets the agent notice change. A conclusion-based system tells you someone is career-focused. A temporal system tells you their relationship to their career shifted in February and the language changed. The trending scores in petri — which entities are accelerating, which are fading — give the agent a sense of where the thinking is heading, not just where it’s been.

What happens when agents write back

When the agent creates a note in your workspace, it enters the same index as everything you’ve written. Enzyme treats the note you wrote walking around the block and one that emerged from a midnight synthesis session the same way. Both carry tags, timestamps, and links. Both get indexed. Both contribute to catalysts.

Over time, the catalysts encode tensions from both sources. A question might have emerged partly from your journal entries and partly from an agent-written synthesis that noticed the pattern before you did. The boundary blurs because the indexing structure treats all content the same way.

This is what makes Enzyme different from flat agent memory. A key-value memory file tells the agent what it learned last time. A workspace with Enzyme tells the agent what the accumulated thinking — human and agent — has been wrestling with, weighted by time, organized by the entities you’ve curated.

The loop: you write, the agent reads through catalysts, the agent writes back with tags from retrieved content, Enzyme indexes the new note, catalysts shift, next session the agent finds richer material. Each cycle deepens the corpus. The workspace develops a perspective that neither the human nor the agent created alone.

Structure at every level

Enzyme reads two signals, and they’re independent.

Structure — the tags, links, and folders you’ve left behind. These become entity anchors. Catalysts form around them. A well-tagged workspace gives Enzyme sharp handles. An opinionated folder structure in an agent workspace does the same thing — docs/architecture/ and meeting-notes/2026-Q1/ are entities Enzyme can work with. The structure tells Enzyme where you’ve placed stakes.

Content — what was actually written, chosen, or accumulated. This carries temporal patterns, recurring vocabulary, shifts in concern. Even without tags, the content has a shape. Enzyme finds it through temporal clustering and era-aware sampling. The content was always carrying signal — structure just makes it louder.

Time runs through both. A tag that was active in January and dormant since March tells Enzyme something. A folder that’s been growing steadily for six months tells it something else. The temporal dimension is what lets Enzyme ask questions about evolution, not just state.

Beyond markdown workspaces

The same architecture that reads text annotations and generates knowledge questions can read other kinds of accumulated attention and generate practice questions. The materials differ. The temporal patterns — bursts, dormancy, return, shift — are the same.

A designer choosing between 30 hover states is accumulating preference the same way a writer tagging notes accumulates knowledge structure. An investor annotating articles is accumulating thesis. A curator saving media is accumulating taste. The engine reads the shape of the practice and asks what the pattern implies.

The decay function shifts by domain — creative preferences evolve faster than investment theses, and curatorial taste moves slower than either. The temporal parameters in Enzyme reflect this. Recent activity weights more, but how much more depends on the domain. The architecture stays the same. What changes is the material and the pace.