Agency OS Skill Library

Consolidate your workspace brand memory

Merges duplicate learnings, surfaces contradictions between brand files, and normalises rotting dates so every other skill reads clean memory.

Quality First result: 15 to 30 minutes for an interactive pass, depending on how much has accumulated dream
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

When NOT to use it

If you actually wantUse this instead
cleaning up posts and captions, even though the request sounds like a cleanupcontent-repurposer or social-caption-writer, then run dream afterwards to tidy what they logged
cleaning up an article or blog postblog-writer
cleaning up persuasion copylegendary-copywriters
the first capture of your brand facts, story, and voicebrand-dna
rebuilding the ICA or offer files it only deduplicatesideal-customer-avatar and offer-architect
judging whether a deliverable is good enough to shipcritique
changing or promoting a claim's consent value in verified-claims.md/health-check

Before you start

What you needWhy
An active workspace with brand memory: brand/_active.md pointing at a brand/[workspace]/ directory that existswith no workspace memory the skill says "No brand memory found for this workspace. Nothing to consolidate." and stopsRequired
You present at the keyboard for the interactive passevery single-owner file change waits on your yes, so an unattended run leaves those findings queued rather than fixedRequired
Enough accumulated history to be worth a pass, typically after several builds or a run of logged learningson tight memory the skill reports "no changes needed" and stops rather than manufacturing workOptional
A prior auto pass having queued findings to .dream-queue.mdwithout a queue the interactive run only cleans what it finds today, which is fine but shorterOptional

How it runs

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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

Honest limits

Read this before you rely on it

Where people go wrong

The mistakeDo this instead
Assuming the silent auto pass has already tidied everythingRun 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 flaggedAnswer 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 badlySend 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 memoryTreat 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 breaksRun it at the end of a heavy session, before context compresses, so that session's signal is captured while it still exists.
Worth knowing

The 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.