Session Memory logo

Session Memory

swaylq/session-memory

Installation

clawhub install swaylq/session-memory

Summary

Persistent memory for AI agents. Save what matters, recall what's relevant, consolidate what you've learned.

SKILL.md

Session Memory 🧠 v2.0

Persistent memory for AI agents. Save what matters, recall what's relevant, consolidate what you've learned.

v2.0: relevance-scored search, importance levels, session context loader, consolidation, export/import, stats, edit/delete.

Quick Start

bash
# Save a memory (with optional importance)
MEMORY_IMPORTANCE=high ./scripts/save.sh "decision" "Chose Postgres over SQLite for scale"

# Recall with relevance scoring
./scripts/recall.sh "database" --limit 5

# Load session context (startup)
./scripts/context.sh --days 3

# Consolidate by topic
./scripts/consolidate.sh --since 2026-01-01

# Stats
./scripts/stats.sh

Commands

save.sh β€” Save a Memory

bash
./scripts/save.sh "topic" "content" [tags...]
EnvDefaultDescription
AGENT_MEMORY_DIR~/.agent-memoryStorage directory
MEMORY_IMPORTANCEnormallow / normal / high / critical
bash
# Basic save
./scripts/save.sh "insight" "Users prefer dark mode 3:1" ui design

# High importance
MEMORY_IMPORTANCE=high ./scripts/save.sh "decision" "Migrated to TypeScript" refactor

# Critical (always surfaces in context.sh)
MEMORY_IMPORTANCE=critical ./scripts/save.sh "credential" "API key rotated, new one in vault"

recall.sh β€” Search Memories

bash
./scripts/recall.sh "query" [--json] [--limit N] [--topic T] [--importance I] [--since YYYY-MM-DD]

Features:

  • Multi-keyword AND search β€” all words must match
  • Relevance scoring β€” based on word match ratio + importance + recency
  • Filters β€” by topic, importance level, date range
bash
./scripts/recall.sh "database migration"
./scripts/recall.sh "API" --topic decision --limit 20
./scripts/recall.sh "deploy" --since 2026-03-01 --json
./scripts/recall.sh "error" --importance high

context.sh β€” Session Startup Loader

bash
./scripts/context.sh [--days N] [--limit N] [--json]

Loads the most relevant memories for a new session:

  • Recent memories (last N days, default 3)
  • High/critical importance items regardless of age
  • Sorted by importance then recency
  • Grouped by date
bash
# Quick context
./scripts/context.sh

# Wider window
./scripts/context.sh --days 7 --limit 30

# For programmatic use
./scripts/context.sh --json

daily.sh β€” Day View

bash
./scripts/daily.sh [YYYY-MM-DD] [--json]

topics.sh β€” Topic Index

bash
./scripts/topics.sh [--json]

consolidate.sh β€” Topic Consolidation

bash
./scripts/consolidate.sh [--since YYYY-MM-DD] [--topic T] [--json]

Groups all memories by topic, showing counts, date ranges, top tags, and latest entries. Useful for periodic review.

stats.sh β€” Memory Statistics

bash
./scripts/stats.sh [--json]

Shows: total entries, date range, entries/day average, storage size, topic breakdown, importance distribution.

edit.sh β€” Edit or Delete

bash
./scripts/edit.sh <timestamp_ms> --content "new content"
./scripts/edit.sh <timestamp_ms> --topic "new topic"
./scripts/edit.sh <timestamp_ms> --importance critical
./scripts/edit.sh <timestamp_ms> --delete

export.sh β€” Export Memories

bash
./scripts/export.sh [-o backup.json] [--since YYYY-MM-DD] [--topic T]

import.sh β€” Import Memories

bash
./scripts/import.sh backup.json [--dry-run]

Deduplicates by timestamp β€” safe to run multiple times.

prune.sh β€” Archive Old Memories

bash
./scripts/prune.sh [days]

Moves memories older than N days (default: 30) to archive/.


Storage

text
~/.agent-memory/
β”œβ”€β”€ 2026/
β”‚   β”œβ”€β”€ 01/
β”‚   β”‚   β”œβ”€β”€ 15.jsonl
β”‚   β”‚   └── 16.jsonl
β”‚   └── 02/
β”‚       └── 01.jsonl
└── archive/          # Pruned memories

Each line is a JSON object:

json
{"ts":1706793600000,"topic":"decision","content":"Chose X because Y","tags":["project"],"importance":"high"}

Importance Levels

LevelWhen to UseBehavior
lowBackground info, minor notesOnly found via search
normalStandard memoriesShown in daily view
highKey decisions, insightsAlways in session context
criticalCredentials, blockers, urgentAlways in session context, top priority

Recommended Workflow

bash
# Session start
./scripts/context.sh

# During work β€” save important things
./scripts/save.sh "decision" "..."
MEMORY_IMPORTANCE=high ./scripts/save.sh "insight" "..."

# End of session
./scripts/save.sh "summary" "Today: did X, decided Y, next step Z"

# Weekly review
./scripts/consolidate.sh --since $(date -u -d '7 days ago' +%Y-%m-%d)
./scripts/stats.sh

# Monthly maintenance
./scripts/prune.sh 60
./scripts/export.sh -o backup-$(date +%Y%m).json

Created by Voidborne πŸ”Ή

Recommended skills

Browse all β†’

Related guides

Hand-picked reading to help you choose, install, and use agent skills.