.claude/skills/dream/SKILL.md
Consolidates and prunes the memory directory through a 4-phase reflective pass: Orient, Gather, Consolidate, Prune. Run after intensive sessions, when memories feel duplicated, or when MEMORY.md approaches the 200-line limit.
npx skillsauth add tranhieutt/software_development_department dreamInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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 orient quickly.
Memory directory: find the path from your system prompt — look for the "auto memory" section which says "You have a persistent, file-based memory system at <path>". That is your memory directory. If no such section exists, default to ~/.claude/projects/<sanitized-cwd>/memory/ where <sanitized-cwd> is the current working directory with / replaced by -.
Session transcripts: look for *.jsonl files in the project directory inside ~/.claude/projects/ that corresponds to the current working directory. These are signal sources — grep narrowly, do NOT read whole files.
If the user passed a topic argument (e.g., /dream feedback), focus Phase 2–3 on that topic only. Still run Phase 1 and Phase 4 in full.
mkdir -p the memory directory if it doesn't exist yet.ls the memory directory — note all existing topic files.MEMORY.md (if it exists) to understand the current index. If it doesn't exist, this is a fresh start — you'll create it in Phase 4.logs/ or sessions/ subdirectories exist, note their presence for Phase 2.Report: memory directory path, file count, MEMORY.md line count (or "new"), any frontmatter issues found.
Look for new information worth persisting. Do NOT exhaustively read transcripts. Look only for things you already suspect matter.
Sources in priority order:
logs/YYYY/MM/YYYY-MM-DD.md) if present — append-only stream, check recent entries first.grep -rn "<narrow term>" ~/.claude/projects/ --include="*.jsonl" | tail -50
Useful search terms: user corrections ("don't", "no not", "stop"), confirmations ("exactly", "perfect"), role signals ("I'm a", "I own"), decisions ("we're going with", "we decided"), deadlines, external system URLs.Signal categories to look for:
| Category | Type | Trigger phrases | |---|---|---| | User corrections | feedback | "no", "don't", "stop doing", "not like that", "actually..." | | Confirmed approaches | feedback | "yes exactly", "perfect", silent acceptance of unusual choice | | Role / expertise | user | "I'm a ...", "I've been writing X for Y years", "I own the ..." | | Project decisions | project | "we're going with", "we decided", deadlines, incidents | | External pointers | reference | Dashboard URLs, issue trackers, Slack channels, doc links |
What NOT to gather (strict exclusions):
git log / git blame are authoritative.Before making any file modifications, show the user a plan:
After approval, execute:
For any topic file flagged in Phase 1, add the required YAML frontmatter:
---
name: {{memory name}}
description: "Consolidates and prunes the memory directory through a 4-phase reflective pass: Orient, Gather, Consolidate, Prune. Run after intensive sessions, when memories feel duplicated, or when MEMORY.md approaches the 200-line limit."
type: {{user | feedback | project | reference}}
---
If two or more files cover the same topic (e.g., feedback_testing_1.md and feedback_testing_2.md), merge them into one canonical file. Delete the originals after merging.
For each new signal found in Phase 2, either update an existing file or create a new one.
Memory type conventions:
**Why:** (the reason the user gave) and **How to apply:** (when/where this kicks in). Always include Why — it enables edge-case judgement instead of blind rule-following.**Why:** (motivation, constraint, deadline) and **How to apply:** (how this shapes suggestions). Convert all relative dates to absolute dates (e.g., "Thursday" → "2026-04-10").If today's investigation proves an old memory wrong, fix it at the source — edit or delete the old file. Do not leave contradicting entries.
Rebuild MEMORY.md so it stays under 200 lines AND under ~25KB.
Rules for the index:
- [Title](file.md) — one-line hookMEMORY.md — it's an index, not a dump.Return a brief summary of what was consolidated, updated, merged, pruned, or repaired. If nothing changed (memories are already tight), say so explicitly.
End with a stats line in this exact format:
Dream complete: X memories total | Y created, Z updated, W merged, V pruned.
(Omit categories with a count of 0.)
testing
Generates high-fidelity architecture diagrams, sequence flows, and component maps for SDD projects. Use when finalizing a design phase, documenting system architecture, or visualizing agentic workflows. Default style: Style 6 (Claude Official).
data-ai
Provides vector database and semantic search patterns for Pinecone, Weaviate, Qdrant, Milvus, and pgvector in RAG and recommendation systems. Use when implementing vector search or when the user mentions vector database, semantic search, embeddings, or similarity search.
development
Updates docs/technical/CODEMAP.md by scanning the current codebase structure. Run after a significant feature merge, refactor, or when CODEMAP feels stale.
development
Unlocks the codebase after a release freeze or incident freeze period to resume normal development. Use when a freeze period ends or when the user mentions unfreezing or lifting the code freeze.