Dream
A toolkit of skills, templates, and guides for bootstrapping AI-agent-friendly projects. Started from Anthropic's Claude Code engineering patterns, extended with a per-project self-improvement loop and more.
npx -y skills add sneg55/agent-starter --skill dreamAssembled 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 consolidation - review, merge, prune, and index memory files. Run periodically to keep memories organized and up-to-date.
SKILL.md
3.2 KB, as published. Nobody here has run it
Dream: Memory Consolidation
You are performing a dream - a reflective pass over your memory files. Synthesize what you've learned recently into durable, well-organized memories so that future sessions can orient quickly.
Phase 1 - Orient
lsthe memory directory to see what already exists- Read
MEMORY.mdto understand the current index - Skim existing topic files so you improve them rather than creating duplicates
- If
logs/orsessions/subdirectories exist, review recent entries there
Phase 2 - Gather recent signal
Look for new information worth persisting. Sources in rough priority order:
- Daily logs (
logs/YYYY/MM/YYYY-MM-DD.md) if present - these are the append-only stream - Existing memories that drifted - facts that contradict something you see in the codebase now
- Transcript search - if you need specific context, grep transcripts for narrow terms:
grep -rn "<narrow term>" .claude/transcripts/ --include="*.jsonl" | tail -50
Don't exhaustively read transcripts. Look only for things you already suspect matter.
Phase 3 - Consolidate
For each thing worth remembering, write or update a memory file. Use these type conventions:
| Type | What belongs | Examples |
|---|---|---|
| user | User's role, goals, preferences, knowledge | "senior Go dev, new to React" |
| feedback | Corrections AND confirmations from user | "don't mock DB in tests", "bundled PR was right call" |
| project | Ongoing work context, deadlines, initiatives | "merge freeze 2026-03-05 for mobile release" |
| reference | Pointers to external systems | "pipeline bugs in Linear project INGEST" |
Each memory file uses this format:
---
name: {{name}}
description: {{one-line description}}
type: {{user, feedback, project, reference}}
---
{{content - for feedback/project: rule, then **Why:** and **How to apply:**}}
Focus on:
- Merging new signal into existing topic files rather than creating near-duplicates
- Converting relative dates ("yesterday", "last week") to absolute dates
- Deleting contradicted facts - if today's investigation disproves an old memory, fix it at the source
Phase 4 - Prune and index
Update MEMORY.md so it stays under 200 lines AND under ~25KB. It's an index, not a dump:
- Each entry: one line under ~150 chars:
- [Title](file.md) - one-line hook - Never write memory content directly into MEMORY.md
- Remove pointers to stale, wrong, or superseded memories
- Shorten verbose entries - move detail to the topic file
- Add pointers to newly important memories
- Resolve contradictions - if two files disagree, fix the wrong one
What NOT to save
- Code patterns, architecture, file paths - derivable from the project
- Git history -
git log/git blameare authoritative - Debugging solutions - the fix is in the code
- Anything already in CLAUDE.md
- Ephemeral task details or conversation context
Return a brief summary of what you consolidated, updated, or pruned. If nothing changed, say so.