返回 Skill 列表
extension
分类: 开发与工程无需 API Key

Session Memory

AI代理持久记忆工具包。保存上下文、相关性评分召回、整合洞察、跨会话追踪决策。功能重要...

person作者: swaylqhubclawhub

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

# 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

./scripts/save.sh "topic" "content" [tags...]

| Env | Default | Description | |-----|---------|-------------| | AGENT_MEMORY_DIR | ~/.agent-memory | Storage directory | | MEMORY_IMPORTANCE | normal | low / normal / high / critical |

# 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

./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
./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

./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
# 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

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

topics.sh — Topic Index

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

consolidate.sh — Topic Consolidation

./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

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

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

edit.sh — Edit or Delete

./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

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

import.sh — Import Memories

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

Deduplicates by timestamp — safe to run multiple times.

prune.sh — Archive Old Memories

./scripts/prune.sh [days]

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


Storage

~/.agent-memory/
├── 2026/
│   ├── 01/
│   │   ├── 15.jsonl
│   │   └── 16.jsonl
│   └── 02/
│       └── 01.jsonl
└── archive/          # Pruned memories

Each line is a JSON object:

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

Importance Levels

| Level | When to Use | Behavior | |-------|-------------|----------| | low | Background info, minor notes | Only found via search | | normal | Standard memories | Shown in daily view | | high | Key decisions, insights | Always in session context | | critical | Credentials, blockers, urgent | Always in session context, top priority |

Recommended Workflow

# 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 🔹