agentsclimarketplace

Skill

Skill HelloRuru/claude-memory-engine/skill

Claude Code 的記憶系統 | A memory system built with hooks + markdown. Zero dependencies.

Install
npx -y skills add HelloRuru/claude-memory-engine --skill skill

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Memory management system for Claude Code — Student Loop, Smart Context, Auto Learn, Session Handoff, Correction Cycle. Triggered by memory commands (/save, /reflect, /handoff, /check) or memory-related questions. Not for general programming tasks.

SKILL.md

7.6 KB, as published. Nobody here has run it

Memory Engine v1.6

A memory and learning system for Claude Code, built with hooks and markdown.

Modules

1. Smart Context

Auto-detects the current project from your working directory and loads its memory.

  • Resolves per-project memory directory automatically — no hardcoded paths
  • Implementation: ~/.claude/scripts/hooks/session-start.js
  • Config: references/smart-context.md

2. Auto Learn (Pitfall Detection)

Detects pitfall patterns before context compression — retries, errors followed by fixes, user corrections.

  • Saves both the problem and the fix to ~/.claude/skills/learned/
  • Same mistake 3+ times across different days → suggests writing it into permanent rules
  • Implementation: shared-utils.jsdetectPitfalls() + savePitfalls()

3. Student Loop (/reflect)

8-step learning cycle. First 3 steps are automatic (every session). Last 5 via /reflect.

  1. Takes notes — records what was done, files changed, decisions made
  2. Links them — tags the project, connects to previous notes
  3. Spots patterns — scans for pitfall signals

There is no real "end" to a Claude Code conversation. Memory Engine saves at three points:

  • Every 20 messages (mid-session-checkpoint) — most reliable, self-counted
  • Before context compression (pre-compact) — pitfall detection runs here, context is fullest
  • When conversation ends (session-end) — best-effort, not guaranteed to fire

You don't need to remember to run any command before closing. 4. Review — read past 7 days, mark useful vs outdated 5. Refine — 4-question decision tree (Keep? Condense? Already covered? Delete as last resort) 6. Re-study — re-analyze cleaned data for buried patterns 7. Slim down — list removable items, wait for user confirmation 8. Wrap up — produce a report

4. Session Handoff (/handoff)

Pass context between Claude Code windows without losing progress.

  • /handoff saves a handoff-*.md file with progress, decisions, unfinished tasks
  • Next session auto-detects it on startup (session-start.js)
  • Mid-conversation detection via memory-sync.js
  • Each handoff is shown once, tracked by .handoff-read.json

5. Correction Cycle (/analyze)

Learns from user corrections — mistakes that don't show up in error logs.

  • Analyze (/analyze) — compare user's edits against rules, log missed rules, distill new ones
  • Correct (auto, before tasks) — scan the error list as a reminder
  • Reflect (/reflect step 6) — same mistake 3+ times → upgrade to hard rule

Hooks

HookFileWhat it does
SessionStartsession-start.jsLoad last summary + project memory + pending handoffs + pitfall review + /reflect reminder
SessionEndsession-end.jsSave summary + project index + backup (best-effort, may not fire)
PreCompactpre-compact.jsSnapshot + pitfall detection + backup — the real safety net
UserPromptSubmitmemory-sync.jsCross-session memory change detection + handoff detection
UserPromptSubmitmid-session-checkpoint.jsCheckpoint every 20 messages
PreToolUse(Write)write-guard.jsSensitive file write warning
PreToolUse(Bash)pre-push-check.jsSafety check before git push
memory-backup.shBidirectional sync script (push/pull/sync) — v1.6

Shared logic between session-end.js and pre-compact.js is extracted into shared-utils.js.

Commands (36 files, 18 pairs EN + ZH)

ENZHFunction
/save/存記憶Save memory — auto-dedup, route to correct file
/reload/讀取Load memory into current conversation
/todo/待辦Cross-project task tracking
/backup/備份Push local memory to GitHub (memory-backup.sh push)
/sync/同步Bidirectional sync (memory-backup.sh sync) — v1.6 pull+push
/handoff/交接Session handoff — pass progress to next window
/diary/回顧Generate reflection diary
/reflect/反思Analyze pitfalls, find patterns
/learn/學習Manually save a pitfall
/analyze/分析Record corrections into error notebook
/correct/訂正Review error notebook anytime
/check/健檢Quick health scan
/full-check/大健檢Full audit
/memory-health/記憶健檢Memory file stats + capacity warnings
/memory-search/搜尋記憶Keyword search across all memory files
/recover/想起來Restore memory from GitHub (memory-backup.sh pull) — v1.6 auto-distribute
/compact-guide/壓縮建議When to compact and when not to
/overview/全覽List all available commands

File Structure

~/.claude/
  scripts/hooks/
    session-start.js         # Load recall + smart-context + handoff
    session-end.js           # Save summary + backup (best-effort)
    pre-compact.js           # Pre-compression snapshot + pitfall detection + backup
    shared-utils.js          # Shared functions (transcript, pitfall, backup)
    memory-sync.js           # Cross-session sync + handoff detection
    mid-session-checkpoint.js
    write-guard.js
    pre-push-check.js
    memory-backup.sh         # Bidirectional sync (push/pull/sync) — v1.6
  sessions/
    {date}-{id}-session.md   # Session summaries
    {date}-{id}-compact.md   # Pre-compact snapshots
    diary/                   # Reflection diaries
  commands/
    save.md / 存記憶.md       # ...15 pairs
    handoff.md / 交接.md
  skills/learned/memory-engine/
    SKILL.md                 # This file
    references/
      smart-context.md       # Project detection rules
      auto-learn.md          # Pitfall detection rules

Core Principles

Test what you build

  • After creating any hook or feature, always run a test to confirm it works
  • "Written" does not mean "done" — see actual output before marking complete

/reflect 4-question decision tree

  1. Does it serve the main purpose? → No → remove
  2. Can it be condensed? → Yes → replace with refined version
  3. Already covered by an existing rule? → Yes → don't duplicate
  4. Delete is the last resort → only if Q1-Q3 don't apply

Troubleshooting

MEMORY.md over 200 lines with no warning

  • Cause: Didn't check line count before writing
  • Fix: Run wc -l before every write. Over 170 lines → move old content to standalone files first

Memory saved but next session doesn't know

  • Cause: Content written directly into MEMORY.md instead of creating a pointer
  • Fix: MEMORY.md holds pointers only. Details go in memory/*.md

Backup push fails

  • Cause: Conflicts in the memory repo or expired auth
  • Fix: Run git pull first, resolve conflicts if any

Memory from another device not showing up

  • Cause: Backup was push-only. Device A pushes to GitHub, but Device B never pulls it back into its local projects/ directories
  • Fix: v1.6 adds pull and sync modes to memory-backup.sh. The pull distributes global memory files from the backup repo into every local project directory that has a memory/ folder (newer file wins, won't overwrite local changes)
  • Root cause: Each device has different working directories, so projects/ paths differ. Global memory must be actively distributed, not just stored in one place

References

  • references/smart-context.md — Project detection rules
  • references/auto-learn.md — Pitfall detection rules + auto-learn flow

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.