agentleFS
emergent-wisdomemergent-wisdom/understanding-graph/skills/serendipity/SKILL.md

serendipity

Skill1 starsChanged 7 months agoMITView on GitHub

Explore distant graph material through grounded comparison, random perturbation, or temporary forced bisociation. Use when a live task could benefit from leaving its most familiar path without abandoning evidence.

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. zanlib0/skills★ 7same 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.

  • In this repository9 other files it gives its agents.

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 5 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If the user has not requested a particular method and there is a genuine exploratory choice, start with:

    line 36
  2. Distinctive:

    Consider higher-weighted routes seriously, then choose, combine, modify, or reject them.

    line 50
  3. Very specific:

    Use graph_bisociate to surface cross-context candidates through spreading activation and information gain.

    line 63
  4. Very specific:

    Use graph_discover_grounded({ nodes: 3, intensity: 0.2 }) when you want the graph to sample distant material and ask whether a real bridge …

    line 68
  5. Very specific:

    After finding a genuine bridge, graph_discover_grounded_chaos can perturb that bridge.

    line 74
  6. Very specific:

    Use graph_discover({ nodes: 2, cold: true, blind: true }) for the more speculative blind ANI path, or graph_chaos({ text, blind: true }) to …

    line 76
  7. Very specific:

    Use graph_random({ nodes: 3, cold: true, force: false }) when the value lies in letting a colder sample perturb the current framing.

    line 87
  8. Very specific:

    Use graph_random({ nodes: 2, cold: true, force: true }) for a temporary Physics What-If.

    line 93
  9. Distinctive:

    When an encounter materially changes the artifact, make that change in its canonical graph document unit while Understanding mode is active.

    line 101
  10. Distinctive:

    If the encounter does not change later attention or work, write nothing.

    line 108
  11. Distinctive:

    Never create a note merely to prove that the exploratory call was useful.

    line 109
  12. Very specific:

    All creative outputs remain provisional until scrutinized against their source nodes, the task, and any relevant evidence or artifact …

    line 112

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

Serendipity

Serendipity is an encounter with material outside the most likely completion path, followed by judgment. It is not a novelty quota, a claim that unrelated things must connect, or permission to abandon the user's task.

Choose the encounter

If the user has not requested a particular method and there is a genuine exploratory choice, start with:

graph_suggest_next({
  task: "State the live task or uncertainty",
  workflow: "general",
  creativity: true
})

Replace general with the live work domain when reading, research, coding, collaborative coding, or writing applies.

Consider higher-weighted routes seriously, then choose, combine, modify, or reject them. The model decides whether a proposed encounter can serve the live task; the menu is neither exhaustive nor mandatory. Do not call for another roll merely because one turn elapsed.

Pass creativity: false when ordinary guidance is useful but creative provocations are not. This affects that roll only; it does not disable any direct tool. Use graph_thermostat() when an entropy-style structural pulse would genuinely help decide between convergence, continuation, and divergence. Its pressure and recommended tool are advisory, not a command or quality score.

Choose the creative pressure

Use graph_bisociate to surface cross-context candidates through spreading activation and information gain. It is often the lightest way to leave a local groove: inspect a candidate's actual nodes, then decide whether a relation is real.

Use graph_discover_grounded({ nodes: 3, intensity: 0.2 }) when you want the graph to sample distant material and ask whether a real bridge exists. Inspect the actual sources, then look for a shared mechanism, constraint, structure, or functional analogy. A defensible no-connection result needs no node.

After finding a genuine bridge, graph_discover_grounded_chaos can perturb that bridge. Do not call it merely because the grounded tool returned nodes. Use graph_discover({ nodes: 2, cold: true, blind: true }) for the more speculative blind ANI path, or graph_chaos({ text, blind: true }) to perturb chosen text. Blind ANI is meaningful only when a separate model context sees the returned prompt without the original source context.

Dictionary ANI reads a newline-delimited word list installed on the MCP server host. When no standard system word list exists, set the server environment variable UG_ANI_DICTIONARY_PATH to its absolute path. There is no bundled or reduced fallback; if the dictionary is unavailable, choose a non-ANI method instead of inventing substitute seeds.

Use graph_random({ nodes: 3, cold: true, force: false }) when the value lies in letting a colder sample perturb the current framing. Returned nodes are provocations, not premises. Re-enter selected material with graph_understand({ query, workflow, stance: "disrupt", focusNodeIds }) when its surrounding evidence or resistance matters.

Use graph_random({ nodes: 2, cold: true, force: true }) for a temporary Physics What-If. For one generative pass, assume the sampled concepts connect and articulate a possible mechanism. Then release the assumption, test it against the task and sources, and preserve it only if a defensible relation remains. “No connection” is a successful result.

Let divergence affect the work

When an encounter materially changes the artifact, make that change in its canonical graph document unit while Understanding mode is active. Preserve a durable insight atomically with graph_batch, using a nested graph_serendipity operation whose source_elements identify every source node. Choose another honest cognitive type when the result is really a question, surprise, hypothesis, tension, or decision.

If the encounter does not change later attention or work, write nothing. Never create a note merely to prove that the exploratory call was useful.

All creative outputs remain provisional until scrutinized against their source nodes, the task, and any relevant evidence or artifact behavior. graph_evaluate_variations may experimentally rank alternatives by Novelty Score; its ranking is not validation. When a synthesis is worth retaining, record it with a batch-only graph_serendipity operation and its exact source elements. Mark it with batch-only graph_validate only after independent scrutiny yields a specific defensible insight.

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.