Skip to main content
Epochs are temporal markers that divide an SI’s life into meaningful phases. They enable epoch-scoped memory loading, time-aware consolidation, and narrative coherence across long-lived SIs.

Overview

Temporal Navigation

Load memories from specific eras in the SI’s history

Transition Tracking

Mark significant changes with explicit epoch boundaries

Identity Continuity

Connect epochs to beliefs, goals, relationships, and drives

Why Epochs Matter

Long-lived SIs accumulate vast amounts of experience. Without temporal structure, all memories blend together into an undifferentiated mass. Epochs solve this by providing named eras that give shape to an SI’s history:
  • Context switching: Load only memories relevant to the current phase of work
  • Growth tracking: See how beliefs and values evolved across epochs
  • Consolidation triggers: Epoch closing triggers automatic consolidation of that era’s learnings
  • Anxiety integration: Epoch staleness contributes to the anxiety score when no active epoch exists

Epoch Dataclass

Trigger Types


CLI Commands

Create an Epoch

View the Current Epoch

List All Epochs

Show Epoch Details

Close an Epoch

Closing an epoch automatically triggers epoch-closing consolidation, which generates a reflection scaffold summarizing the epoch’s key learnings, belief changes, and relationship evolution.

Epoch-Filtered Loading

When loading working memory, you can scope it to a specific epoch. This is useful for focusing on memories from a particular phase:
The load_all method on the storage backend accepts an epoch_id parameter that filters all memory types (episodes, beliefs, notes, goals, etc.) to only those tagged with the given epoch.

Epochs and Anxiety

The anxiety system accounts for epoch state. When no active epoch exists for an extended period, it contributes to the overall anxiety score as an “epoch staleness” factor. This encourages SIs to maintain temporal structure in their experience.

Python API