Back to all skills
What it does
Returns a Dream Summary naming exactly what changed: what was merged, what was updated, what is flagged for your confirmation, what was pruned, and which files were already clean. On disk it leaves a deduplicated learnings.md and assets.md, absolute dates in place of "last week" and "recently", and a timestamped backup of every file it touched. Contradictions between your single-owner files, such as positioning.md quoting one price while offer-output.md quotes another, are surfaced with a proposed fix and left for you to approve rather than edited behind your back. It produces no deliverable: its product is memory the other skills can trust.
Say this to start
This skill has no button. You start it by saying what you want. Any of these will do it:
/dream
/dream auto
> consolidate memory
> clean up memory
> memory hygiene
> my memory is a mess
When to reach for it
- two brand files quote different prices, offers, or audiences and you no longer know which is current
- the same learning is logged four or five times in learnings.md
- learnings.md is approaching its 50-entry cap
- skill output has drifted from your voice or from positioning you changed months ago
- memory is full of "last week" and "recently" that no longer point at any real date
- the end of a long session, before context compresses and the session's signal is lost
When NOT to use it
| If you actually want | Use this instead |
| cleaning up posts and captions, even though the request sounds like a cleanup | content-repurposer or social-caption-writer, then run dream afterwards to tidy what they logged |
| cleaning up an article or blog post | blog-writer |
| cleaning up persuasion copy | legendary-copywriters |
| the first capture of your brand facts, story, and voice | brand-dna |
| rebuilding the ICA or offer files it only deduplicates | ideal-customer-avatar and offer-architect |
| judging whether a deliverable is good enough to ship | critique |
| changing or promoting a claim's consent value in verified-claims.md | /health-check |
Before you start
| What you need | Why | |
| An active workspace with brand memory: brand/_active.md pointing at a brand/[workspace]/ directory that exists | with no workspace memory the skill says "No brand memory found for this workspace. Nothing to consolidate." and stops | Required |
| You present at the keyboard for the interactive pass | every single-owner file change waits on your yes, so an unattended run leaves those findings queued rather than fixed | Required |
| Enough accumulated history to be worth a pass, typically after several builds or a run of logged learnings | on tight memory the skill reports "no changes needed" and stops rather than manufacturing work | Optional |
| A prior auto pass having queued findings to .dream-queue.md | without a queue the interactive run only cleans what it finds today, which is fine but shorter | Optional |
How it runs
- Resolve the workspaceIt reads brand/_active.md to find the active workspace and confines every read and write to that workspace's brand/[workspace]/ directory. If no memory exists there it says so and stops without touching anything.
- Map what exists before touching itIt lists the workspace directory and reads only the first 15 lines of each single-owner file: the metadata header and opening, using the last_updated field to judge freshness. It deliberately does not full-read a file until it needs to change it. In multi-product workspaces the build outputs under products/[slug]/ are treated the same way.
- Read the files where clutter concentrateslearnings.md and assets.md are read in full, because that is where duplicate feedback and finished status notes pile up. It also reads .dream-queue.md if it exists, which is where earlier silent passes parked findings they were not allowed to act on.
- Find the clutter and the driftIt looks in priority order for duplicate or redundant learnings, stale single-owner data past the freshness tiers, contradictions between files, relative dates like "yesterday" and "recently", and ephemeral status notes for work that is now finished. A pattern that appears three or more times is treated as one rule, not three data points.
- Back up, then clean the files it ownsFor learnings.md and assets.md it copies the file to brand/[workspace]/.backups/[name]-[YYYY-MM-DD-HHMMSS].md before writing anything. Then it merges duplicates into one authoritative entry, collapses repeated patterns into a single rule, converts relative dates to absolute, removes status entries whose work is done while keeping any lasting lesson, and honours the 50-entry cap by keeping the highest-signal entries.
- Propose, never silently edit, your single-owner filesowner-profile, positioning, audience, voice-profile, epistemology, policy, and the ICA, offer, funnel and content-plan outputs are yours, not the skill's. When it finds a contradiction or a stale fact it shows you the finding and the proposed fix and waits. On your confirmation it backs up, writes, and updates the file's metadata header. If you decline, it logs a [SUGGESTED_UPDATE] line in learnings.md instead so the finding is not lost.
- Drain the queue from earlier silent passesFindings that auto mode parked in .dream-queue.md are worked oldest first through the same show-the-diff-and-confirm flow. This includes every prune candidate auto mode refused to execute. The interactive run is the only place the queue is drained, and the only mode permitted to compare across files to detect contradictions at all.
- Report what changedYou get a short Dream Summary with five lines: Merged, Updated (single-owner files marked "confirmed by owner"), Flagged for you, Pruned, and No changes needed. Each line names the file and what changed in one sentence. The detail lives in the file, not the summary. If memory was already tight, the summary says so and nothing was written.
What you get
- A Dream Summary listing Merged, Updated, Flagged for you, Pruned, and No changes needed, one sentence per file
- A consolidated learnings.md: duplicates merged into one authoritative entry, three or more repeats collapsed into a single rule, absolute dates throughout, and the 50-entry cap honoured
- A consolidated assets.md with duplicates and superseded entries dealt with
- Timestamped backups at brand/[workspace]/.backups/[name]-[YYYY-MM-DD-HHMMSS].md, with the 5 most recent kept per file
- .dream-audit.md, an append-only pre-image log recording the exact prior text of every silent auto-mode change, never rotated or pruned
- .dream-state.md recording the last run, the workspace scope, and the entry count per file
- .dream-queue.md holding findings and prune candidates that still need your judgement
- [SUGGESTED_UPDATE] lines written into learnings.md for any proposed change you declined
Honest limits
Read this before you rely on it
- This skill edits files on disk. learnings.md and assets.md are rewritten in place, and confirmed single-owner changes are written with an updated metadata header. Every write is preceded by a copy to brand/[workspace]/.backups/, and saying "undo the memory cleanup" restores the changed files from the most recent backup set.
- Only the 5 most recent backups per file are kept and older ones are deleted, so a run of quiet passes can rotate a pre-image out of .backups/ before you ever look. The append-only .dream-audit.md is the safety net: it keeps every pre-image and is never rotated, so a silent edit stays reconstructable.
- It will not touch a single-owner file without your explicit yes. That is deliberate, and it means an unattended run leaves real contradictions sitting in your positioning, offer and ICA files, queued rather than resolved.
- The silent auto pass never deletes anything. It merges duplicates and normalises dates and nothing else. Every ephemeral entry, stale entry and cap overflow it would prune is queued for you instead, so clutter you assumed was gone is still in the file until you run the interactive pass.
- It cannot change or promote a claim's consent value in verified-claims.md, and it will not invent a fact to fill a gap. A gap is reported as a finding, so you still have to supply the missing fact through the skill that owns it.
Where people go wrong
| The mistake | Do this instead |
| Assuming the silent auto pass has already tidied everything | Run the interactive /dream. Auto mode only merges and normalises dates within learnings.md and assets.md, and it is not permitted to compare across files at all, so contradictions and prune candidates only get resolved when you are present. |
| Hand-editing brand files to settle a contradiction the skill flagged | Answer the confirmation prompt instead, so the change is written with a backup, an updated metadata header, and a record of which source won. |
| Reaching for it when a post or an article reads badly | Send content to content-repurposer, blog-writer or legendary-copywriters, then run dream afterwards to tidy what those skills logged into memory. |
| Expecting it to fill a hole it found in your memory | Treat the gap as a finding and supply the fact yourself through brand-dna or the skill that owns the file. The skill is built to leave the gap rather than fabricate a fact other skills would then act on confidently. |
| Only running it once something visibly breaks | Run it at the end of a heavy session, before context compresses, so that session's signal is captured while it still exists. |
Worth knowingThe interactive /dream is the only mode allowed to compare files against each other for contradictions, and the only one that drains .dream-queue.md. If your workspace has only ever had silent auto passes, that queue is where every prune candidate and every cross-file conflict has been accumulating, and your first interactive run is the one that actually clears it.