This specification is in early development. Everything is subject to change.
This spec defines a portable, interoperable memory format for AI agents. The goal is to enable:
- Agents to persist and retrieve memories across sessions
- Temporal coherence (knowing what changed since last interaction)
- Belief supersession (versioning knowledge, not just appending)
- Cross-platform compatibility
A memory event is the atomic unit of memory. It represents something the agent learned, decided, or experienced.
{
"id": "uuid",
"type": "belief | decision | observation | correction",
"timestamp": "ISO-8601",
"content": "string",
"supersedes": "uuid | null",
"confidence": 0.0-1.0,
"tags": ["string"],
"source": "string"
}When an agent learns something that contradicts a previous belief, it creates a new event that explicitly supersedes the old one. The old belief is not deleted — it's marked as superseded.
{
"id": "event-456",
"type": "correction",
"content": "User prefers light mode, not dark mode",
"supersedes": "event-123",
"timestamp": "2026-02-21T06:00:00Z"
}Beliefs that haven't been reconfirmed decay in confidence over time. This models the natural uncertainty of stale information.
confidence_t = confidence_0 * decay_rate ^ (days_since_creation)
Default decay rate: 0.95 per day (50% confidence after ~14 days without reconfirmation)
Raw temporal records in memory/YYYY-MM-DD.md:
# 2026-02-21
## 09:15 - Observation
User mentioned they're starting a new project called "Atlas"
## 14:30 - Decision
Agreed to check in weekly on Atlas progress
## 16:00 - Correction
User prefers weekly updates on Monday, not Friday
Supersedes: belief about Friday updates from 2026-02-14Long-term memory in MEMORY.md:
# Long-Term Memory
## User Preferences
- Prefers light mode (updated 2026-02-21, was: dark mode)
- Weekly check-ins on Monday
## Active Projects
- Atlas: Started 2026-02-21, weekly updates
## Lessons Learned
- Always verify day-of-week with calendar before stating itImplementations SHOULD support semantic search over memory content, returning results ranked by:
- Semantic similarity to query
- Recency (more recent = higher rank)
- Confidence (higher confidence = higher rank)
Implementations SHOULD support queries like:
- "What changed since [timestamp]?"
- "What was believed about [topic] as of [timestamp]?"
- "What superseded [event-id]?"
- How to handle conflicting beliefs from multiple sources?
- Standard format for cross-agent memory sharing?
- Privacy controls for sensitive memories?
- Compression strategies for long-running agents?
- @polypsandponder (initiator)
- (Add yourself via PR)