New plugin: engineering-team/self-improving-agent/ - 5 skills: /si:review, /si:promote, /si:extract, /si:status, /si:remember - 2 agents: memory-analyst, skill-extractor - 1 hook: PostToolUse error capture (zero overhead on success) - 3 reference docs: memory architecture, promotion rules, rules directory patterns - 2 templates: rule template, skill template - 20 files, 1,829 lines Integrates natively with Claude Code's auto-memory (v2.1.32+). Reads from ~/.claude/projects/<path>/memory/ — no duplicate storage. Promotes proven patterns from MEMORY.md to CLAUDE.md or .claude/rules/. Also: - Added to marketplace.json (18 plugins total) - Added to README (Skills Overview + install section) - Updated badge count to 88+ - Regenerated .codex/skills-index.json + symlink Co-authored-by: Leo <leo@openclaw.ai>
3.1 KiB
3.1 KiB
name, description, command
| name | description | command |
|---|---|---|
| remember | Explicitly save important knowledge to auto-memory with timestamp and context. Use when a discovery is too important to rely on auto-capture. | /si:remember |
/si:remember — Save Knowledge Explicitly
Writes an explicit entry to auto-memory when something is important enough that you don't want to rely on Claude noticing it automatically.
Usage
/si:remember <what to remember>
/si:remember "This project's CI requires Node 20 LTS — v22 breaks the build"
/si:remember "The /api/auth endpoint uses a custom JWT library, not passport"
/si:remember "Reza prefers explicit error handling over try-catch-all patterns"
When to Use
| Situation | Example |
|---|---|
| Hard-won debugging insight | "CORS errors on /api/upload are caused by the CDN, not the backend" |
| Project convention not in CLAUDE.md | "We use barrel exports in src/components/" |
| Tool-specific gotcha | "Jest needs --forceExit flag or it hangs on DB tests" |
| Architecture decision | "We chose Drizzle over Prisma for type-safe SQL" |
| Preference you want Claude to learn | "Don't add comments explaining obvious code" |
Workflow
Step 1: Parse the knowledge
Extract from the user's input:
- What: The concrete fact or pattern
- Why it matters: Context (if provided)
- Scope: Project-specific or global?
Step 2: Check for duplicates
MEMORY_DIR="$HOME/.claude/projects/$(pwd | sed 's|/|%2F|g; s|%2F|/|; s|^/||')/memory"
grep -ni "<keywords>" "$MEMORY_DIR/MEMORY.md" 2>/dev/null
If a similar entry exists:
- Show it to the user
- Ask: "Update the existing entry or add a new one?"
Step 3: Write to MEMORY.md
Append to the end of MEMORY.md:
- {{concise fact or pattern}}
Keep entries concise — one line when possible. Auto-memory entries don't need timestamps, IDs, or metadata. They're notes, not database records.
If MEMORY.md is over 180 lines, warn the user:
⚠️ MEMORY.md is at {{n}}/200 lines. Consider running /si:review to free space.
Step 4: Suggest promotion
If the knowledge sounds like a rule (imperative, always/never, convention):
💡 This sounds like it could be a CLAUDE.md rule rather than a memory entry.
Rules are enforced with higher priority. Want to /si:promote it instead?
Step 5: Confirm
✅ Saved to auto-memory
"{{entry}}"
MEMORY.md: {{n}}/200 lines
Claude will see this at the start of every session in this project.
What NOT to use /si:remember for
- Temporary context: Use session memory or just tell Claude in conversation
- Enforced rules: Use
/si:promoteto write directly to CLAUDE.md - Cross-project knowledge: Use
~/.claude/CLAUDE.mdfor global rules - Sensitive data: Never store credentials, tokens, or secrets in memory files
Tips
- Be concise — one line beats a paragraph
- Include the concrete command or value, not just the concept
- ✅ "Build with
pnpm build, tests withpnpm test:e2e" - ❌ "The project uses pnpm for building and testing"
- ✅ "Build with
- If you're remembering the same thing twice, promote it to CLAUDE.md