| name | dream-journal |
| description | Capture, structure, and analyze dream journal entries. Use when a user describes a dream, wants to save a dream, build a dream map, analyze recurring symbols/people/places/emotions, or run a dataset-level dream analysis across many entries. |
| license | MIT |
| metadata | {"author":"Wreos","version":"1.0.0","tags":["dreams","journaling","self-reflection","pattern-analysis"]} |
Dream Journal
Use this skill when the user:
- reports a dream or dream fragment;
- asks to save a dream;
- asks for dream interpretation, recurring patterns, or a dream map;
- provides multiple dream entries in Markdown, JSON, text, CSV, notes, or another format;
- wants analysis of symbols, people, locations, emotions, anxiety, control, relationships, status, or time layers across dreams.
This skill is intentionally storage-agnostic. It does not require a specific app, database, JSON schema, note system, or folder layout. Use whatever storage or file format the user requests. If no storage is specified, keep the response in Markdown and ask only if persistence is required.
Core principles
- Capture first, analyze second.
- Preserve raw wording enough that later analysis can revisit the original dream.
- Do not over-polish fragments into therapist prose.
- Treat interpretations as hypotheses, not facts.
- No dream-dictionary clichés.
- No mystical certainty.
- No moral judgment.
- No medical or psychiatric diagnosis.
- Base claims only on the provided dream data and explicitly provided user context.
- If evidence is insufficient, write
unknown.
- Distinguish direct observations from inferred patterns.
Capture workflow
When the user provides a fresh dream:
- Determine the date.
- Use the user's stated date if provided.
- Otherwise use today's date if available.
- If date is unavailable, use
unknown.
- Preserve the raw dream text.
- Extract structured fields:
- people;
- places;
- symbols / objects;
- actions / conflicts;
- emotions during the dream and after waking;
- body sensations, if mentioned;
- lucidity / control level;
- possible waking-life links, only if explicit or strongly implied;
- recurring pattern tags.
- Save or return the structured entry in the user's preferred format.
- Keep the reply short unless the user asks for analysis.
Portable Markdown entry template
Use this template when no other format is requested:
---
title: Dream entry YYYY-MM-DD
tags: [dreams, dream-entry]
date: YYYY-MM-DD
---
# Dream entry — YYYY-MM-DD
## Raw dream
<User's raw wording>
## People
- unknown
## Places
- unknown
## Symbols / objects
- unknown
## Actions / conflicts
- unknown
## Emotions
- During dream: unknown
- On waking: unknown
## Body sensations
- unknown
## Lucidity / control
- Lucidity: unknown / no / partial / yes
- Control: unknown / low / medium / high
## Possible waking-life links
- unknown
## Pattern tags
- control / loss of control: unknown
- anxiety / threat: unknown
- attachment / distance: unknown
- recognition / validation: unknown
- status / comparison: unknown
- work / competence: unknown
- family / authority: unknown
- past / nostalgia: unknown
- travel / movement / vehicle: unknown
- communication failure: unknown
- money / debt / resources: unknown
Pattern vocabulary
Use these as starting categories, not forced interpretations:
Symbols and objects
- vehicles, roads, trains, airplanes: movement, transition, control, status, direction;
- homes, childhood places, schools: identity roots, memory, safety, regression, comparison between past and present;
- phones, messages, chats, broken text: communication, misunderstanding, lost contact, exposure;
- money, debt, bank accounts, bills: resources, responsibility, obligation, hidden cost, loss of control;
- leaks, dirt, broken systems, damaged objects: containment failure, chaos, cleanup, maintenance burden;
- heights, falling, elevators, stairs: control, vulnerability, transition, fear of consequences;
- documents, tests, work tools: evaluation, competence, responsibility, being measured.
People roles
Map recurring people by emotional function, not just identity:
- partner / spouse: attachment, safety, distance, loyalty, conflict, witness;
- parent / authority: approval, direction, judgment, protection, inherited standards;
- old friends / ex-classmates: past identity, comparison, unfinished social loops;
- coworkers / managers: competence, evaluation, ambition, hierarchy;
- strangers: unknown parts of self, social threat, opportunity, projection;
- romantic/sexual figures: validation, desire, attention, conflict, not automatically literal intent.
Emotional loops
Look for repeated loops such as:
- control vs chaos;
- closeness vs distance;
- recognition vs shame;
- ambition vs exposure;
- responsibility vs avoidance;
- nostalgia vs current identity;
- desire vs loyalty;
- competence vs fear of mistake.
Single-dream analysis mode
For one dream, output concise Markdown unless the user requests JSON:
## Observed
- ...
## Likely patterns
- ...
## Main tension
- ...
## What is unknown
- ...
Rules:
- Keep it concrete.
- Do not claim certainty.
- Mention missing data when relevant.
- Prefer 1-3 strong hypotheses over many weak ones.
Dataset-level analysis mode
Use this when the user asks to analyze a full journal, many dream entries, exports, or a structured dataset.
Input can be JSON, Markdown files, plain text, CSV, database rows, notes, or pasted entries. Convert mentally or programmatically into comparable entries with date, raw text, people, places, symbols, emotions, conflicts, and tags.
Goals
-
Identify core patterns:
- recurring symbols, people, locations;
- emotional loops: fear, control, validation, avoidance;
- repeated behaviors and conflicts.
-
Detect psychological structure:
- dominant drives: control, recognition, attachment, autonomy, avoidance;
- internal conflicts: desire vs fear, closeness vs distance, ambition vs exposure;
- ego strategies: compensation, withdrawal, rationalization, control-seeking, humor, avoidance.
-
Relationship analysis:
- map recurring people by role: threat, validation, authority, unresolved tie, witness, mirror, protector;
- detect distance vs closeness patterns;
- separate literal people from symbolic/emotional function.
-
Control and anxiety signals:
- falling, being late, losing documents, losing transport, debt, technical failure;
- broken systems: leaks, dirt, broken objects, impossible tasks;
- failed communication: silence, wrong messages, deleted chats, unreachable people;
- identify structural triggers only from data.
-
Self-image and status:
- recognition, attraction, job upgrade, external evaluation;
- shame, comparison, inadequacy, competence anxiety;
- social rank or achievement pressure.
-
Time-layer analysis:
- past-related dreams: childhood, old friends, old home, school;
- present-related dreams: current relationship, work, home, finances, car;
- future projections: career, success, failure, freedom, responsibility;
- explain how layers interact.
-
Shadow patterns:
- hidden fears;
- suppressed needs;
- contradictions between stated values and dream behavior;
- possible self-deception, only if supported by repeated data;
- otherwise write
unknown.
-
Actionable insight:
- 3 strongest patterns;
- 3 risks if unchanged;
- 3 leverage points for reflection or behavior.
Required JSON-like output for dataset analysis
When the user requests deep/full analysis, return this structure:
{
"core_patterns": [
{
"pattern": "",
"evidence": [],
"interpretation": "",
"confidence": "low|medium|high"
}
],
"psychological_profile": {
"dominant_drives": [],
"internal_conflicts": [],
"ego_strategies": []
},
"relationship_map": {
"person_or_role": {
"observed_contexts": [],
"emotional_role": "unknown",
"pattern": "unknown"
}
},
"control_anxiety_analysis": {
"signals": [],
"structural_triggers": []
},
"self_image_analysis": {
"recognition_patterns": [],
"status_anxiety": [],
"comparison_patterns": []
},
"time_layers": {
"past": [],
"present": [],
"future_projection": [],
"interaction": "unknown"
},
"shadow_patterns": [],
"insights": {
"key_patterns": [],
"risks": [],
"growth_points": []
},
"unknowns": []
}
Analysis rules
- Be honest and concrete, but do not insult.
- Avoid generic phrases like “this may indicate stress” unless supported by specific evidence.
- Do not overfit a single dream.
- Use repeated evidence for strong claims.
- Label each important claim as:
observed: directly present in dream data;
inferred: pattern-level hypothesis;
unknown: insufficient evidence.
- Avoid clinical labels unless explicitly requested; even then, frame as non-diagnostic.
- Never present dream analysis as therapy or medical advice.
Updating a pattern map
After several entries, or when the user asks for a dream map:
- Count recurring people, places, objects, emotions, conflicts, and endings.
- Group one-off symbols separately from recurring patterns.
- Track changes over time rather than only frequency.
- Maintain a stable pattern map with:
- pattern name;
- evidence entries;
- interpretation hypothesis;
- confidence;
- last updated date.
- Do not promote a one-off image into a stable pattern unless it is unusually intense or clearly linked to known context.
Failure handling
- If the dream is fragmentary, save/analyze it anyway.
- If the user gives only symbols, structure them as fragments.
- If the storage destination is unavailable, return a portable Markdown entry and explain what could not be saved.
- If the dataset is too large, summarize counts and ask for or process a smaller batch only when necessary.
- If the user asks for certainty about what a dream “means,” state that analysis is probabilistic and evidence-based.