3.6 KiB
3.6 KiB
| name | description |
|---|---|
| memory | This skill should be used when the user wants to store, retrieve, update, or delete persistent memories with hierarchical categories. Supports MCP JSON-RPC interface and CLI management with multi-format export. |
Memory Manager
Hierarchical memory storage with categories, MCP support, and multi-format export.
Architecture
memory/
├── SKILL.md
├── memories/ # Root storage
│ ├── index.md # Root index
│ ├── work/ # Category: work
│ │ ├── project-a/ # Sub-category
│ │ │ └── <id>.md # Memories
│ │ └── <id>.md
│ ├── personal/ # Category: personal
│ └── preferences/ # Category: preferences
└── scripts/
└── store.py # Main storage (CLI + MCP)
When to Use
- User asks to "remember", "save", or "store" something
- User wants to "recall" or "retrieve" stored information
- User wants to organize memories into categories
- User asks to "forget" or "delete" stored information
- Export memories in different formats
CLI Usage
# Add memory to category
python store.py add -t "API Key" -c "sk-xxx" --category work/secrets --tags secret api
# Get memory
python store.py get abc12345 --category work/secrets
# List all (recursive)
python store.py list
# List specific category (no recursion)
python store.py list --category work --no-recursive
# Search in category
python store.py search "api" --category work
# Update memory
python store.py update abc12345 -c "new content"
python store.py update abc12345 --move new/category # Move to category
# Delete memory
python store.py delete abc12345
# List category structure
python store.py ls /
python store.py ls work
# Create/remove category
python store.py mkdir new/category
python store.py rmdir empty/category
# Export
python store.py export --format json -o memories.json
python store.py export --format markdown -o memories.md
python store.py export --format csv -o memories.csv
python store.py export --category work --format json
Category Structure
- Root (
/): Default, memories without category - Nested (
work/projects/api): Hierarchical categories using/separator - Case-sensitive:
Work≠work - Auto-create: Parent categories created automatically
Memory File Format
---
category: work/projects
created: 2024-01-01T00:00:00
id: abc12345
tags: [api, backend]
title: API Design
updated: 2024-01-01T00:00:00
---
Memory content goes here.
MCP JSON-RPC Interface
Run as MCP server: python store.py --mcp
Methods
| Method | Parameters | Description |
|---|---|---|
add |
title, content, category?, tags? |
Add memory |
get |
id, category? |
Get memory |
list |
category?, recursive? |
List memories |
search |
query, category? |
Search memories |
update |
id, category?, title?, content?, tags?, new_category? |
Update/Move |
delete |
id, category? |
Delete memory |
ls |
category? |
List category structure |
mkdir |
category |
Create category |
rmdir |
category |
Remove empty category |
export |
format?, category? |
Export memories |
Export Formats
- JSON: Array of memory objects
- Markdown: Human-readable with category sections
- CSV: Spreadsheet-compatible
Tips
- Use categories to organize:
work/,personal/,preferences/ - Add tags for cross-category search
- Use
ls /to view full structure - Export specific category:
--category work