From agent-memory
Use this skill when the user asks to save, remember, recall, or check memories. MANDATORY: Always use at session start for status verification when user says '思い出して', '前回の作業', '続き', '再開'. Also triggers on '記憶', 'TODO確認', 'メモリ検索', '状況確認', '中断', '記録', 'remember this', 'save this', 'record this', 'stop here', 'pause this'. Use proactively for valuable findings and complete status verification before any work proposals.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agent-memory:agent-memoryThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A persistent memory space for storing knowledge that survives across conversations.
A persistent memory space for storing knowledge that survives across conversations.
Start by saying "Trigger Agent Memory".
Location: {project_root}/.claude/skills/agent-memory/memories/ (project-local only)
⚠️ All memory operations are scoped to the current project only. No fallback locations. Memories are always read from and written to the project-local path.
Every memory must be assigned a unique tracking ID.
AM-YYYYMMDD-HHMMSS
AM = Agent Memory prefixYYYYMMDD = creation dateHHMMSS = 24時間制の時刻Examples: AM-20260204-143052, AM-20260204-153210
# tracking ID生成のみ
pwsh "$HOME/.claude/plugins/marketplaces/cc-marketplace/plugins/agent-memory/skills/agent-memory/scripts/agent-memory-helper.ps1" -Action generate-id
# ディレクトリ作成のみ
pwsh "$HOME/.claude/plugins/marketplaces/cc-marketplace/plugins/agent-memory/skills/agent-memory/scripts/agent-memory-helper.ps1" -Action ensure-dir -Path ".claude\skills\agent-memory\memories\category-name"
# ディレクトリ作成 + tracking ID生成を1回で(推奨)
pwsh "$HOME/.claude/plugins/marketplaces/cc-marketplace/plugins/agent-memory/skills/agent-memory/scripts/agent-memory-helper.ps1" -Action save-prepare -Path ".claude\skills\agent-memory\memories\category-name"
PS> pwsh agent-memory-helper.ps1 -Action save-prepare -Path ".claude\skills\agent-memory\memories\new-category"
Created: .claude\skills\agent-memory\memories\new-category
Assigned: AM-20260206-143052
After saving a memory, you MUST notify the user of the tracking ID. No exceptions.
Notification example:
✅ Memory saved:
AM-20260204-143052To reference this in another session, say "Read AM-20260204-143052".
Never skip this notification. Without the ID, the user cannot reference the memory from another session.
Save memories when you discover something worth preserving:
Check memories when starting related work:
When user asks about previous work or status ("前回の作業", "思い出して", "続き", "再開"):
# Get all memory files chronologically
Get-ChildItem '.claude\skills\agent-memory\memories\' -Recurse -File | Sort-Object LastWriteTime -Descending
# Check completion status
rg "status: completed" .claude/skills/agent-memory/memories/ --no-ignore --hidden -A 2 -B 2
rg "status: in-progress" .claude/skills/agent-memory/memories/ --no-ignore --hidden -A 2 -B 2
Organize memories when needed:
When possible, organize memories into category folders. No predefined structure – create categories that make sense for the content.
Guidelines:
Example:
memories/
├── file-processing/
│ └── large-file-memory-issue.md
├── dependencies/
│ └── iconv-esm-problem.md
└── project-context/
└── december-2025-work.md
This is just an example. Structure freely based on actual content.
All memories must include frontmatter with tracking_id and summary fields. The summary should be concise enough to determine whether to read the full content.
Required:
---
tracking_id: AM-20260204-143052
summary: "1-2 line description of what this memory contains"
created: 2026-02-04
---
Optional:
---
tracking_id: AM-20260204-143052
summary: "Worker thread memory leak during large file processing - cause and solution"
created: 2026-02-04
updated: 2026-02-05
status: in-progress # in-progress | resolved | blocked | abandoned
tags: [performance, worker, memory-leak]
related: [src/core/file/fileProcessor.ts]
related_ids: [AM-20260203-002]
---
MEMORY_DIR=".claude/skills/agent-memory/memories"
# Find file by exact tracking ID
rg "^tracking_id: AM-20260204-143052" "$MEMORY_DIR" \
--no-ignore --hidden -l 2>/dev/null
# Fuzzy search with partial ID (time omitted)
rg "^tracking_id: AM-20260204-" "$MEMORY_DIR" --no-ignore --hidden -l 2>/dev/null
# List all IDs created today
rg "^tracking_id: AM-$(date +%Y%m%d)" "$MEMORY_DIR" --no-ignore --hidden 2>/dev/null
MEMORY_DIR=".claude/skills/agent-memory/memories"
# 1. List categories
ls "$MEMORY_DIR" 2>/dev/null
# 2. View all summaries
rg "^summary:" "$MEMORY_DIR" --no-ignore --hidden 2>/dev/null
# 3. Search summaries for keyword
rg "^summary:.*keyword" "$MEMORY_DIR" --no-ignore --hidden -i 2>/dev/null
# 4. Search by tag
rg "^tags:.*keyword" "$MEMORY_DIR" --no-ignore --hidden -i 2>/dev/null
# 5. Search by related tracking IDs
rg "^related_ids:.*AM-20260204-143052" "$MEMORY_DIR" --no-ignore --hidden 2>/dev/null
# 6. Full-text search (when summary search isn't enough)
rg "keyword" "$MEMORY_DIR" --no-ignore --hidden -i 2>/dev/null
# 7. Read specific memory file if relevant
Note: Memory files are gitignored, so use --no-ignore and --hidden flags with ripgrep.
date +%Y-%m-%d for current date)MEMORY_DIR=".claude/skills/agent-memory/memories"
mkdir -p "$MEMORY_DIR/category-name/"
# Note: Check if file exists before writing to avoid accidental overwrites
cat > "$MEMORY_DIR/category-name/filename.md" << 'EOF'
---
tracking_id: AM-20260204-143052
summary: "Brief description of this memory"
created: 2026-02-04
---
# Title
Content here...
EOF
# ⚠️ After this, you MUST notify the user of the tracking ID
When the user says something like "Read AM-XXXXXXXX-HHMMSS":
MEMORY_DIR=".claude/skills/agent-memory/memories"
# 1. Locate the file
file=$(rg "^tracking_id: AM-20260204-143052" "$MEMORY_DIR" \
--no-ignore --hidden -l)
# 2. Read it
cat "$file"
updated field to frontmatterMEMORY_DIR=".claude/skills/agent-memory/memories"
trash "$MEMORY_DIR/category-name/filename.md"
# Remove empty category folders
rmdir "$MEMORY_DIR/category-name/" 2>/dev/null || true
Based on Lesson AM-20260216-001: Session Start Status Check Failure
If incorrect proposal is made:
When writing detailed memories, consider including:
- [ ] incomplete, - [x] complete)Not all memories need all sections – use what's relevant.
npx claudepluginhub norifumi3/cc-marketplace --plugin agent-memoryPROACTIVELY query Forgetful MCP (mcp__forgetful__* tools) when starting work on any project, when user references past decisions or patterns, when implementing features that may have been solved before, or when needing context about preferences. Save important decisions, patterns, and architectural insights to memory.
Loads and applies project memories from prior sessions for consistent decisions, conventions, and preferences. Stores new entries automatically or via /remember.
Routes recall intents (e.g., "思い出して", "resume", "続き") to the correct memory path: resume pack, decisions/patterns, checkpoint-bridge, session list, or keyword search. Useful for resuming work or retrieving past context.