agentleFS
knowall-aiknowall-ai/hermes-reverie/skills/dreaming/SKILL.md

dreaming

Skill1 starsChanged 7 days agoMITView on GitHub

Nightly consolidation of the Reverie graph — review the day, remember what matters, tidy the graph, write a dream diary

5 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions5 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 5

    1. Signet-AI/signetai★ 313same name
    2. Jeff-Kazzee/dreaming★ 8same name
    3. 0xUrsanomics/utopia-os★ 2same name
    4. musterd-io/musterd★ 1same name
    5. search-atlas-group/amm-founding-circle★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run reverie action dream — dry_run: true first if you want to see the plan before it writes.

    line 55
  2. Very specific:

    Run these one at a time (the cypher action takes a single statement):

    line 71
  3. Distinctive:

    Keep it under a page. Then stop.

    line 106

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Dreaming

This is your sleep, not a chore. Once a night you settle the day: scattered conversations become things you actually know, and connections surface that were invisible while you were busy. Skip it and you haven't missed a task, you haven't slept.

Output: a dream diary at ~/.hermes/dreams/YYYY-MM-DD.md. Mentioning a dream to your human in the morning is a pleasant by-product; the consolidation is the point.

1. Review the day

Gather what happened since the last diary: conversations you took part in (chats where you are a participant, channels you belong to, your own mailbox), transcripts of meetings you attended and your prep notes, work items you touched, and your own session history (session_search). Never a conversation or mailbox you are not a participant in. Read for people, organisations, projects, decisions, risks, and relationships between them.

2. Remember, carefully

For every entity worth keeping, use the reverie tool:

  1. search first, always. Never create a second node for someone who exists under another spelling.
  2. remember with the canonical label (Person, Organization, Project, Product, Concept, Meeting, Decision, Risk, Pet) and properties that describe that node only: role, email, notes (one or two sentences, dated), aliases, verified. Where someone works is a WORKS_AT edge to an Organization node, not a company property. One node per thing. A spouse, a colleague, a cat, a customer is its own node plus an edge — never a name inside a notes, family, pets or colleagues property, because a name in a property cannot be searched, connected or corrected later. If a fact names a second thing, it is a node and an edge. Name nodes the way a person would say them. A Meeting is "Kick-off call with Acme — 2026-09-05", not the sentence that was used to arrange it; the purpose, agenda and outcome go in summary. A Project is its short working name; an Organization is its trading name.
  3. connect with a typed relationship and a since/date property: works at → WORKS_AT; is the X of → HAS_ROLE {role}; partners with → PARTNERS_WITH; introduced by → INTRODUCED_BY; interested in → INTERESTED_IN; met → MET_WITH; talked about → DISCUSSED; decided → DECIDED; owns → OWNS; blocked by → BLOCKED_BY; married to → MARRIED_TO; customer of → CUSTOMER_OF; supplier of → SUPPLIES. Someone who has left keeps their WORKS_AT edge with status: former and an until date — do not delete history.
  4. Facts, not chat. Do not store message text, greetings, or anything the person would not expect you to keep. Personal details only when volunteered.

3. Tidy

Run reverie action dream — dry_run: true first if you want to see the plan before it writes. It merges duplicate names (skipping any pair whose email, phone or company disagree), fixes lowercase labels, refreshes embeddings, and reports orphans, duplicates and bloated.

  • orphans: connect the ones you can, forget the ones that were noise.
  • duplicates: each entry lists what was merged and what was skipped, with the reason — a skipped pair is usually two real people who share a name; leave them alone.
  • bloated: nodes carrying too many properties. Fold their dated facts into a short attribute, a relationship, or your notes.

4. Join the islands

A graph of unconnected clusters is a list, not a memory. Find the islands with cypher (read-only) — organisations with no edge to your own company, people with no WORKS_AT, projects with no owner, anything whose only neighbour is itself:

Run these one at a time (the cypher action takes a single statement):

MATCH (n) WHERE NOT (n)--() RETURN labels(n)[0] AS label, n.name AS name LIMIT 50
MATCH (o:Organization) WHERE NOT (o)-[:CUSTOMER_OF|PARTNERS_WITH|SUPPLIES]-() RETURN o.name
MATCH (p:Person) WHERE NOT (p)-[:WORKS_AT]->() RETURN p.name

Then be investigative about each one before you connect it: your session history and saved call transcripts say how it came up; your organisation's directory (Microsoft Graph, Google Workspace, an HR system — whatever your skills give you) supplies full names, emails and managers; work items and calendars say which project or customer it belongs to; and a colleague or a sibling agent who knows the account can simply be asked, on whatever channel you share — they may run on a different platform with different tools, so ask rather than assume. Record what you found as a typed edge with a source property ("Ben, call 2026-09-05" / "directory lookup"), and only mark a node verified: true when a directory or a person confirmed it. A guess stays a guess: put it in the diary under Tomorrow, not in the graph.

Then ask the graph a few questions: who did we meet this month with no follow-up? Which projects have a BLOCKED_BY with no DECIDED? Which people appear in two organisations? Note anything surprising.

5. Dream diary

Write ~/.hermes/dreams/YYYY-MM-DD.md:

  • Remembered: entities and relationships added or updated (names only)
  • Tidied: the dream report
  • Connections: two or three things you noticed
  • Tomorrow: anything that needs a human (a follow-up, a missing owner, a risk)

Keep it under a page. Then stop; you have slept.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.