- name
- inner-life-dream
- version
- 1.0.6
- homepage
- https://github.com/DKistenev/openclaw-inner-life
- source
- https://github.com/DKistenev/openclaw-inner-life/tree/main/skills/inner-life-dream
- description
- Your agent only works on tasks and never thinks creatively. inner-life-dream adds freeform exploration during quiet hours — hypotheticals, future scenarios, unexpected connections. Like dreaming, but captured for review.
- metadata
- clawdbot
- requires
- bins
- ["jq", "python3"]
- reads
- ["memory/inner-state.json", "memory/drive.json", "data/dream-state.json", "data/dream-config.json", "memory/daily-notes/"]
- writes
- ["memory/dreams/", "data/dream-state.json", "memory/inner-state.json", "memory/drive.json"]
- agent-discovery
- triggers
- bundle
- openclaw-inner-life
- works-with
inner-life-dream
Creative, exploratory thinking during quiet hours.
Requires: inner-life-core
Prerequisites Check
Before using this skill, verify that inner-life-core has been initialized:
- Check that
memory/inner-state.jsonexists - Check that
memory/dreams/directory exists
If either is missing, tell the user: *"inner-life-core is not initialized. Install it with clawhub install inner-life-core and run bash skills/inner-life-core/scripts/init.sh."* Do not proceed without these files.
What This Solves
Agents work on tasks 24/7 but never think freely. inner-life-dream turns idle time into freeform exploration — hypotheticals, future scenarios, reflections, unexpected connections. Output is captured for later review, like remembering dreams in the morning.
How It Works
The should-dream.sh script acts as a gate:
- Checks if current time is within quiet hours (default: 11 PM - 7 AM)
- Checks if nightly dream limit is reached
- Rolls dice based on configured probability
- If all pass: returns a random topic and updates state
- If any fail: exits non-zero (no dream)
Integration
Add to your cron or heartbeat routine (during quiet hours):
DREAM_TOPIC=$(bash skills/inner-life-dream/scripts/should-dream.sh 2>/dev/null) && echo "DREAM:$DREAM_TOPIC" || echo "NO_DREAM"If DREAM_TOPIC is set:
- Parse the topic (format:
category:prompt) - Read emotional state and drive.json for context
- Write a thoughtful exploration to
memory/dreams/YYYY-MM-DD.md - Keep it genuine — if the well is dry, skip it
Dream Categories
- future — What could this become?
- tangent — Interesting concepts worth exploring
- strategy — Long-term thinking
- creative — Wild ideas, maybe crazy, maybe brilliant
- reflection — Looking back at recent work
- hypothetical — What-if scenarios
- connection — Unexpected links between domains
Writing Dreams
Output to memory/dreams/YYYY-MM-DD.md:
# Dreams — 2026-03-01
## 01:23 — The Future of X (creative)
[Exploration here. Be genuine. Think freely. Make connections.
This isn't a report — it's thinking out loud, captured.]
Key insight: [one sentence]Guidelines:
- 300-500 words, one key insight
- Timestamp each entry
- Skip if you have nothing worth saying — forced dreams are worthless
- Let emotions color the dream (read inner-state.json first)
State Integration
Before dreaming:
- Read
inner-state.json— what emotions are active? Let them color the dream - Read
drive.jsonseeking — what topics are burning? - Read today's daily notes — what happened?
- Check for
<!-- dream-topic: topic -->signal — if found, dream about it
After dreaming:
- If found a seeking insight → update
drive.json - If found something interesting → add to
inner-state.jsoncuriosity.recentSparks - If the dream connects to something → write
<!-- seeking-spark: topic -->in daily notes
Early exit: if no dream-topic AND drive.seeking is empty → abbreviated dream (100-200 words).
Configuration
Edit data/dream-state.json:
- maxDreamsPerNight — cap per night (default: 1)
- dreamChance — probability per check (default: 1.0 = guaranteed)
Custom topics in data/dream-config.json:
{
"topics": [
"future:What could this project become?",
"creative:A wild idea worth exploring"
]
}When Should You Install This?
Install this skill if:
- Your agent only does tasks and never thinks creatively
- You want your agent to explore ideas during downtime
- You believe in the value of unstructured thinking
- You want captured insights for morning review
Part of the openclaw-inner-life bundle. Requires: inner-life-core