Skip to main content
Version: 0.1.6

Memory System

Memories persist across sessions and auto-inject at session start. They let your AI assistant remember your preferences, patterns, and context without you having to repeat yourself.

How It Works​

You: remember that I prefer vitest for testing
# Next session...
You: what testing framework should I use?
AI: Based on your preferences, you prefer vitest for testing.

Memory Categories​

Memories are organized by category:

  • learning -- Things you've learned
  • decision -- Choices you've made
  • session -- Session-specific context
  • pattern -- Recurring patterns
  • gotcha -- Things to watch out for
  • discovery -- New findings
  • blocker -- Blockers encountered
  • issue -- Issues found
  • abandoned -- Approaches that were tried and abandoned (prevents repeating failed directions)

Memory Scoping​

Tags control when and where memories are injected:

TagScopeBehavior
scope:globalAll projects, all sessionsInjected at every session start, across all projects
project:<name>Single projectInjected only when working in the named project
session:<id>Single sessionGroups memories from the same session

At session start, AIDE fetches:

  1. All memories tagged scope:global (cross-project preferences)
  2. All memories tagged project:<current-project> (project-specific context)
  3. Recent session groups (memories sharing a session:* tag)

Memories without scope tags are still searchable via memory_search but won't be auto-injected.

Auto-Injection​

EventWhat Gets Injected
Session StartGlobal memories, project memories, project decisions, recent session summaries
Subagent SpawnGlobal memories, project memories, project decisions
Context CompactionState snapshot to preserve across summarization

Session Summaries​

Session summaries are automatically captured when a session ends with meaningful activity (files modified, tools used, or git commits made).

CLI Commands​

aide memory add --category=learning --tags=testing "Prefers vitest"
aide memory search "authentication"
aide memory list --category=learning
aide memory delete <id>
aide memory reindex # Rebuild search index
aide memory export --format=markdown # Export to markdown

Skills for Memory​

SkillTriggerPurpose
/aide:memoriseremember I prefer vitestStore info for future sessions
/aide:recallwhat testing framework?Search memories and decisions
/aide:forgetforget the old auth decisionSoft-delete or hard-delete memories

Memory Scoring​

When memories are injected at session start, they are ranked by a computed priority score. Higher-scoring memories are injected first, ensuring the most important context is always present within the injection limits.

The score is computed from four weighted components:

ComponentWeightDescription
Category50%Base importance by category (user prefs > abandoned > blockers > ...)
Recency25%Exponential decay with 30-day half-life
Provenance15%Boost for user-stated or verified memories
Access10%How frequently the memory is retrieved

For full details, see Memory Scoring.