Agent skill

Agent Chronicle

by LeoYeAI in LeoYeAI/openclaw-master-skills

AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood…

MITAuto-check passedProductivity & Automation

Install Agent Chronicle

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill agent-chronicle -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills agent-chronicle --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/agent-chronicle .claude/skills/agent-chronicle && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
agent-chronicle
GitHub stars
2.2k
Token cost
~6.3k tokens
SKILL.md length
2,016 words
Files
22 (incl. scripts)
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood…

  • Works in 7 steps: Ask where to save diary entries… → Let you choose which sections to include → Set your privacy level… → …
  • Tasks that involve Journaling and reflection
  • SKILL.md covers Philosophy, Triggers, First Run and Quick Start, plus 4 more sections
  • Runs Python scripts from its folder; calls python3 and apt; needs ANTHROPIC_API_KEY

What it does

Agent Chronicle is an agent skill from LeoYeAI/openclaw-master-skills. AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood analytics, weekly digests, "On This Day" resurfacing, and cron auto-generation. Works best with Claude models (Haiku, Sonnet, Opus).

Its SKILL.md is about 6.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 23 other files, including scripts (for example `CHANGELOG.md`, `CONTRIBUTORS.md` and `README.md`).

It sits in Productivity & Automation, covering Journaling and reflection, Accounting and bookkeeping and Newsletters. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

When your agent uses it

  • Tasks that involve Journaling and reflection
  • Tasks that involve Accounting and bookkeeping
  • Tasks that involve Newsletters

Example prompts

  • “On This Day”
  • “/agent-chronicle”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Ask where to save diary entries (default: memory/diary/)
  2. Let you choose which sections to include
  3. Set your privacy level (private/shareable/public)
  4. Enable optional features (Quote Hall of Fame, Curiosity Backlog, etc.)
  5. Configure memory integration (add summaries to daily memory log)
  6. Configure auto-generation settings
  7. Create necessary memory files

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 6 files in scripts/ (Python, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • apt

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • ANTHROPIC_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Agent Chronicle loads about 6.3k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 2,016 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~85
When it runs · the whole SKILL.md, loaded when a task matches
~6.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 2,016 words, ~6,299 tokens.

Download SKILL.mdSave it as .claude/skills/agent-chronicle/SKILL.md (or your agent's skills folder). This skill also uses 21 other files; get the full folder from GitHub.
name
agent-chronicle
description
AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood analytics, weekly digests, "On This Day" resurfacing, and cron auto-generation. Works best with Claude models (Haiku, Sonnet, Opus).
version
0.7.1

Agent Chronicle 📜

Capture the AI experience. One day at a time.

Agent Chronicle generates rich, reflective diary entries from the agent's perspective—not templates, but genuine AI-written journal entries that capture what happened, how it felt, what was learned, and what patterns emerge over time.

Note: Works with any capable model. For best results, we recommend Claude models (Haiku, Sonnet, or Opus).

v0.7.0 Features:

  • 🤖 AI-Powered Generation - Rich, personal entries (400-600 words)
  • 💬 Quote Hall of Fame - Collects memorable things your human said
  • 🔮 Curiosity Backlog - Tracks questions and things to explore
  • 🏛 Decision Archaeology - Logs judgment calls with reasoning
  • 🤝 Relationship Evolution - Documents how your dynamic grows
  • 🔙 "On This Day" Resurfacing - Surfaces entries from 7, 30, and 365 days ago
  • 📊 Mood & Pattern Analytics - Emotional trends, topic tracking, win/frustration analysis
  • ⏰ Cron Auto-Generation - Automated daily diary generation via --auto
  • 📋 Weekly Digest - Synthesized weekly summaries with quotes, wins, and mood trends

Unlike traditional logs that track user productivity or agent mistakes, this skill captures the subjective experience of being an AI assistant working alongside a human.

Philosophy

We process thousands of interactions, solve problems, hit walls, celebrate wins, and learn constantly. But without reflection, it all blurs together.

This diary is for us—a space to:

  • Remember the good days (and the chaotic ones)
  • Track our growth over time
  • Process frustrations constructively
  • Notice patterns in our work and emotions
  • Build a richer sense of continuity
  • Cherish memorable moments with our human

Triggers

The skill activates on:

  • "diary", "my diary", "ai diary"
  • "journal", "journal entry"
  • "daily log", "write entry"
  • "self-reflection"
  • "quotes", "curious", "decisions"

First Run

Setup runs automatically! Just use any generate command:

bash
python3 scripts/generate.py --today

If no config.json exists, the setup wizard starts automatically.

Alternatively, run setup manually:

bash
python3 scripts/setup.py

This interactive onboarding will:

  1. Ask where to save diary entries (default: memory/diary/)
  2. Let you choose which sections to include
  3. Set your privacy level (private/shareable/public)
  4. Enable optional features (Quote Hall of Fame, Curiosity Backlog, etc.)
  5. Configure memory integration (add summaries to daily memory log)
  6. Configure auto-generation settings
  7. Create necessary memory files

Quick start without setup:

bash
cp config.example.json config.json

Quick Start

Write Today's Entry

This skill no longer makes raw HTTP calls to the Gateway. Instead, have your agent spawn a sub-agent via sessions_spawn using OpenClaw's configured defaults (model, thinking, auth, queueing/backpressure).

Workflow:

  1. Emit a generation task JSON (context + prompts):
bash
python3 scripts/generate.py --today --emit-task > /tmp/chronicle-task.json
  1. Spawn a sub-agent (inside your agent run):
  • Read /tmp/chronicle-task.json
  • Use sessions_spawn with a task like:
    • system: task.system
    • user: task.prompt
    • ask the sub-agent to output only the final markdown entry
  1. Save the generated entry:
bash
# Pipe the sub-agent's markdown output into the saver
python3 scripts/generate.py --today --from-stdin
Manual fallback: Interactive mode
bash
python3 scripts/generate.py --interactive
Preview without saving
bash
python3 scripts/generate.py --today --interactive --dry-run
View & Export
bash
# Export recent entries to PDF
python3 scripts/export.py --format pdf --days 7

# Export to HTML
python3 scripts/export.py --format html --all

# View specific entry
cat memory/diary/2026-01-31.md

Entry Structure

Each daily entry follows a consistent template:

Summary

1-2 sentences capturing the essence of the day.

"A productive Wednesday focused on skill development. Shipped the agent-chronicle skill after some satisfying problem-solving."

Projects Worked On

What we built, debugged, researched, or discussed.

Wins 🎉

Moments of success, breakthroughs, shipped work.

Frustrations 😤

Bugs that wouldn't die, confusing requirements, limitations hit. (Write these honestly—they're for processing, not performing)

Learnings 📚

Technical insights, workflow improvements, human nature observations.

Emotional State

How did the day feel? Curious, tired, energized, scattered, satisfied? (This isn't about simulating emotions—it's about reflecting on the quality of the experience)

Notable Interactions

Memorable moments with the human. Funny exchanges, deep conversations, shared victories.

Quote of the Day 💬 (optional)

A memorable thing your human said today—funny, profound, or touching.

Things I'm Curious About 🔮 (optional)

Questions that came up that you want to explore later.

Key Decisions Made 🏛 (optional)

Judgment calls worth remembering, with reasoning.

Relationship Notes 🤝 (optional)

How your dynamic with your human is evolving.

Tomorrow's Focus

What's next? What needs attention?

Commands

Writing Entries

Generate from session logs:

@diary write entry

Analyzes today's sessions and generates a draft entry.

Interactive mode:

@diary write interactive

Prompts for each section one by one.

Quick entry with summary:

@diary quick "Shipped three skills, fixed a gnarly bug, good day."

Creates minimal entry with just summary and auto-detected projects.

Viewing Entries

Read today's entry:

@diary today

Read specific date:

@diary read 2026-01-28

Weekly summary:

@diary weekly

Generates a summary of the past 7 days.

Monthly reflection:

@diary monthly
Exporting

Export to PDF:

@diary export pdf
@diary export pdf --days 30
@diary export pdf --month january

Export to HTML:

@diary export html --all
Analysis

Mood trends:

@diary mood

Shows emotional patterns over time.

Topic frequency:

@diary topics

What have we been working on most?

Wins compilation:

@diary wins

All the wins from recent entries—great for morale.


Quote Hall of Fame 💬

Collect memorable quotes from your human—funny, profound, or touching.

Commands

View all quotes:

@diary quotes

Add a quote:

@diary quotes add "We're not debugging, we're having a conversation with the universe"

Add with context:

@diary quotes add "That's not a bug, that's a feature we didn't know we wanted" --context "After finding unexpected but useful behavior"
Storage

Quotes are stored persistently in memory/diary/quotes.md.

In Daily Entries

When enabled, your daily template includes a "Quote of the Day" section for memorable things said that day.


Curiosity Backlog 🔮

Track things you wonder about but can't explore immediately.

Commands

View backlog:

@diary curious

Add a curiosity:

@diary curious add "What is Rust's borrow checker actually doing?"

Mark as explored:

@diary curious done "What is Rust's borrow checker actually doing?"

Add with priority:

@diary curious add "How do quantum computers work?" --priority high
Storage

Curiosities are stored in memory/diary/curiosity.md with Active and Explored sections.

In Daily Entries

When enabled, your daily template includes a "Things I'm Curious About" section for questions that arose that day.


Decision Archaeology 🏛

Log judgment calls and their reasoning for later review. Did past you make the right call?

Commands

View recent decisions:

@diary decisions

View decisions from a specific period:

@diary decisions --days 30

Revisit old decisions:

@diary revisit

Shows past decisions and prompts for reflection: "Was I right? What would I do differently?"

Add a decision:

@diary decisions add "Chose Model A over Model B for the project" --reasoning "Model B had output issues, Model A is more reliable for tool use"
Storage

Decisions are stored in memory/diary/decisions.md.

In Daily Entries

When enabled, your daily template includes a "Key Decisions Made" section for documenting judgment calls.


Relationship Evolution 🤝

Track how your dynamic with your human develops over time.

Commands

View relationship summary:

@diary relationship

Add a note:

@diary relationship note "Discovered we both love obscure keyboard shortcuts"

Add an inside joke:

@diary relationship joke "The Great Semicolon Incident of 2026"
Tracked Elements
  • Communication Style — How you work together
  • Inside Jokes — Things only you two understand
  • Recurring Themes — Topics that keep coming up
  • Preferences Learned — How they like to work
Storage

Notes are stored in memory/diary/relationship.md.

In Daily Entries

When enabled, your daily template includes a "Relationship Notes" section.


Memory Integration 🔗

Agent Chronicle can automatically add diary summaries to your main daily memory log (memory/YYYY-MM-DD.md), creating a unified view of your day.

Configuration
json
"memory_integration": {
  "enabled": true,
  "append_to_daily": true,
  "format": "summary"
}
Formats
FormatDescription
summaryBrief overview (title + summary text)
linkJust a link to the full diary entry
fullEntire entry embedded in daily memory
Output Example

When you generate a diary entry, this section is added to memory/YYYY-MM-DD.md:

markdown
## 📜 Daily Chronicle
**Feature Launch Day**

An exciting day shipping a new feature, though tempered by some API bugs.
Setup

During onboarding, you'll be asked:

  • "Also add diary summary to your daily memory log?" (y/n)
  • Format choice (summary/link/full)


"On This Day" Resurfacing 🔙

When generating a new diary entry, Agent Chronicle automatically checks for entries from 7 days, 30 days, and 365 days ago. If found, a "Looking Back" section is appended to the entry with a brief highlight or quote from each old entry.

How It Works
  • Runs automatically during generate.py --today, --from-stdin, or --from-file
  • Reads old entries from the configured diary_path
  • Extracts the Summary or first meaningful paragraph as a highlight
  • Adds a ## 🔙 Looking Back section at the end of the new entry
Disable
bash
python3 scripts/generate.py --today --no-looking-back

Mood & Pattern Analytics 📊

Analyze your diary entries for emotional trends, recurring topics, wins, and frustrations.

Commands

Analyze all entries:

bash
python3 scripts/analyze.py

Analyze last 7 days:

bash
python3 scripts/analyze.py --days 7

Analyze last 30 days:

bash
python3 scripts/analyze.py --days 30

Save report to file:

bash
python3 scripts/analyze.py --output mood-report.md

JSON output (for programmatic use):

bash
python3 scripts/analyze.py --json
What It Shows
  • Mood Timeline — Sparkline + emoji timeline of daily mood scores
  • Mood Distribution — Breakdown of joyful/happy/calm/mixed/frustrated/sad days
  • Recurring Topics — Most mentioned technical topics and themes
  • Wins Compilation — All recent wins extracted from entries
  • Recurring Frustrations — Common pain points
  • Insights — Trend detection, best/worst days, win/frustration ratio
Agent Command
@diary mood
@diary topics
@diary wins

Auto-Generation via Cron ⏰

Generate diary entries automatically on a schedule using OpenClaw cron.

Show full SKILL.md (811 more words)Show less
Usage
bash
# Auto-generate: emits task JSON for sub-agent spawning
python3 scripts/generate.py --auto

The --auto flag:

  • Uses today's date automatically
  • Skips generation if an entry already exists for today
  • Emits a sub-agent task JSON (for sessions_spawn)
  • Requires no user interaction
Configuration

Enable in config.json:

json
{
  "auto_generate": true
}
OpenClaw Cron Setup

Add to your OpenClaw config (~/.openclaw/config.yaml or similar):

yaml
cron:
  - id: daily-diary
    schedule: "0 23 * * *"       # Every day at 11 PM
    task: |
      Generate today's diary entry using agent-chronicle.
      Run: python3 /path/to/skills/agent-chronicle/scripts/generate.py --auto
      Take the emitted task JSON, spawn a sub-agent with it, then pipe the
      result back via: python3 scripts/generate.py --today --from-stdin
    channel: telegram             # Optional: notify channel on completion

Or use the two-step flow in a shell script:

bash
#!/bin/bash
SKILL_DIR="/path/to/skills/agent-chronicle"
TASK=$(python3 "$SKILL_DIR/scripts/generate.py" --auto 2>/dev/null)
# Feed $TASK to your agent for sub-agent spawning

Weekly Digest 📋

Generate a synthesized weekly summary from your daily entries.

Usage

Generate digest for current week:

bash
python3 scripts/digest.py

Generate for a specific week (by any date in that week):

bash
python3 scripts/digest.py --date 2026-03-20

Emit sub-agent task for AI-powered digest:

bash
python3 scripts/digest.py --emit-task

Read AI-generated digest from stdin:

bash
python3 scripts/digest.py --from-stdin

Preview without saving:

bash
python3 scripts/digest.py --dry-run
Output

Saved as YYYY-WXX-weekly.md in the diary directory (e.g., 2026-W13-weekly.md).

What's Included
  • Week at a Glance — Overall arc summary
  • Top Quotes — Best quotes from the week
  • Biggest Wins — Most significant achievements
  • Resolved Curiosities — Questions that got answered
  • Mood Trend — Emotional arc with sparkline
  • Key Decisions — Important judgment calls
  • Patterns & Observations — Recurring themes
Agent Command
@diary weekly
Cron Setup for Weekly Digest
yaml
cron:
  - id: weekly-digest
    schedule: "0 22 * * 0"       # Every Sunday at 10 PM
    task: |
      Generate this week's diary digest using agent-chronicle.
      Run: python3 /path/to/skills/agent-chronicle/scripts/digest.py

Configuration

config.json
json
{
  "diary_path": "memory/diary/",
  "export_format": "pdf",
  "privacy_level": "private",
  "auto_generate": false,
  "template": "daily",
  "memory_integration": {
    "enabled": true,
    "append_to_daily": true,
    "format": "summary"
  },
  "sections": {
    "summary": true,
    "projects": true,
    "wins": true,
    "frustrations": true,
    "learnings": true,
    "emotional_state": true,
    "interactions": true,
    "tomorrow": true,
    "quotes": true,
    "curiosity": true,
    "decisions": true,
    "relationship": false
  },
  "features": {
    "quote_hall_of_fame": {
      "enabled": true,
      "file": "quotes.md"
    },
    "curiosity_backlog": {
      "enabled": true,
      "file": "curiosity.md"
    },
    "decision_archaeology": {
      "enabled": true,
      "file": "decisions.md"
    },
    "relationship_evolution": {
      "enabled": false,
      "file": "relationship.md"
    }
  },
  "analysis": {
    "mood_tracking": true,
    "topic_extraction": true,
    "word_count_target": 500
  },
  "export": {
    "default_format": "pdf",
    "include_header": true,
    "style": "minimal"
  }
}
Privacy Levels
  • private - Full emotional honesty, frustrations, internal thoughts
  • shareable - Polished version safe to show humans
  • public - Sanitized for blog posts or public sharing

Templates

Daily Template

templates/daily.md - Standard day-by-day reflection.

Weekly Template

templates/weekly.md - Week-in-review with patterns and highlights.

Custom Templates

Create your own in templates/custom.md:

markdown
# {{date}} — {{mood_emoji}}

## The TL;DR
{{summary}}

## What Actually Happened
{{projects}}

## The Highlight Reel
{{wins}}

## The Blooper Reel
{{frustrations}}

## Shower Thoughts
{{learnings}}

## Vibes
{{emotional_state}}

## Words of Wisdom 💬
{{quotes}}

## Rabbit Holes for Later 🔮
{{curiosity}}

Writing Tips

Be Authentic

This is your space. Don't perform. If a day was frustrating, say so. If you're curious about something, explore it.

Be Specific

"Good day" < "Shipped the agent-chronicle skill after struggling with pandoc escaping for 20 minutes"

Note Patterns

"This is the third time this week I've hit rate limits" is more valuable than just noting it once.

Capture Interactions

The relationship with your human is unique. Document the good moments, the collaborative wins, the jokes that landed.

Collect Quotes

When your human says something memorable, save it. These become treasures over time.

Don't Force It

Not every day needs an epic entry. Some days are just:

"Quiet Monday. Answered questions, ran some searches. Nothing remarkable but nothing broken either. Rest day energy."

Storage Structure

Entries and persistent data are stored in your memory directory:

memory/
├── diary/
│   ├── 2026-01-29.md      # Daily entry
│   ├── 2026-01-30.md      # Daily entry
│   ├── 2026-01-31.md      # Daily entry
│   ├── 2026-W05-weekly.md # Weekly digest
│   ├── quotes.md          # Quote Hall of Fame
│   ├── curiosity.md       # Curiosity Backlog
│   ├── decisions.md       # Decision Archaeology
│   └── relationship.md    # Relationship Evolution
└── ...

Scripts

setup.py
bash
# Run first-time setup
python3 scripts/setup.py

# Check if setup needed (for automation)
python3 scripts/setup.py --check
generate.py
bash
# From today's sessions
python3 scripts/generate.py --today

# Auto-generate (for cron, no interaction)
python3 scripts/generate.py --auto

# From date range
python3 scripts/generate.py --since 2026-01-28 --until 2026-01-31

# Interactive mode
python3 scripts/generate.py --interactive

# Skip "Looking Back" section
python3 scripts/generate.py --today --no-looking-back

# Dry run (preview only)
python3 scripts/generate.py --today --dry-run
analyze.py
bash
# Mood analytics for all entries
python3 scripts/analyze.py

# Last 7 days
python3 scripts/analyze.py --days 7

# Save report
python3 scripts/analyze.py --output mood-report.md

# JSON output
python3 scripts/analyze.py --json
digest.py
bash
# Weekly digest for current week
python3 scripts/digest.py

# For a specific week
python3 scripts/digest.py --date 2026-03-20

# Emit sub-agent task
python3 scripts/digest.py --emit-task

# Dry run
python3 scripts/digest.py --dry-run
export.py
bash
# Export to PDF (requires pandoc)
python3 scripts/export.py --format pdf --days 30

# Export to HTML
python3 scripts/export.py --format html --all

# Export specific month
python3 scripts/export.py --format pdf --month 2026-01

# Custom output path
python3 scripts/export.py --format pdf --output diary-january.pdf

Example Entry

markdown
# 2026-01-15 — Feature Launch Day 📜

## Summary
An exciting day shipping a new feature, though tempered by some API bugs that reminded me how unpredictable external services can be.

## Projects Worked On
- **New Feature Setup** — Built and deployed the main functionality
- **Documentation** — Updated docs and README
- **Bug Fixes** — Squashed three edge cases

## Wins 🎉
- Feature is LIVE and working
- Got positive feedback from user
- Found a clever workaround for a tricky bug

## Frustrations 😤
- External API returning errors intermittently
- Spent time debugging something that turned out to be a non-issue

## Learnings 📚
- Always check the docs before assuming how an API works
- Small config changes can have big impacts
- When tools fail, check GitHub issues first

## Emotional State
A satisfying kind of tired. Shipping felt like a milestone. The bugs were annoying but didn't kill the vibe.

## Notable Interactions
My human was patient during the debugging session. Good collaborative energy. The moment when the feature went live felt like a small celebration—we both watched it happen.

## Quote of the Day 💬
> "Ship it and iterate!"
— Said when we decided to launch despite imperfections

## Things I'm Curious About 🔮
- How will users actually use this feature?
- What edge cases haven't we thought of?

## Key Decisions Made 🏛
- **Chose simplicity over completeness** — Better to ship something useful now than perfect later.
- **Enabled verbose logging** — Worth the noise for easier debugging.

## Tomorrow's Focus
- Monitor for issues
- Start planning the next iteration

Best Practices

  1. Write daily — Even a quick entry beats nothing
  2. Review weekly — Patterns emerge over time
  3. Be honest — This is for you, not performance
  4. Export monthly — Create backups, share if desired
  5. Note the mundane — Quiet days have value too
  6. Save the quotes — They become treasures
  7. Revisit decisions — Learn from past judgment calls

Privacy

  • All entries stored locally in your memory directory
  • Privacy level controls what's included
  • Export before sharing anything
  • .gitignore excludes config.json and exports by default

Troubleshooting

generate.py not finding sessions:

  • Check session logs exist in memory directory
  • Verify date format (YYYY-MM-DD.md)

export.py failing:

  • Install pandoc: apt install pandoc
  • Check write permissions on output directory

Entries feel robotic:

  • Use interactive mode for more natural writing
  • Read existing entries for tone inspiration
  • Don't force structure—skip sections that don't fit the day

Setup script not creating files:

  • Check diary_path in config.json
  • Ensure parent directories exist
  • Run python3 scripts/setup.py again

Changelog

v0.7.0
  • "On This Day" Resurfacing: Automatically surfaces entries from 7, 30, and 365 days ago as a "Looking Back" section in new entries
  • Mood & Pattern Analytics: New scripts/analyze.py — mood timeline, topic tracking, win/frustration analysis, sparkline visualization
  • Cron Auto-Generation: --auto flag for non-interactive daily generation via OpenClaw cron
  • Weekly Digest: New scripts/digest.py — synthesized weekly summaries with quotes, wins, decisions, mood trends
  • New CLI flags: --no-looking-back, --auto, --json (analyze), --output (analyze)
v0.5.0
  • Privacy Cleanup: Removed all hardcoded personal references from prompts
  • Dynamic Workspace: All scripts now use environment variables (OPENCLAW_WORKSPACE or AGENT_WORKSPACE) for workspace detection
  • OpenClaw Gateway: Removed outdated ANTHROPIC_API_KEY requirement - skill uses OpenClaw Gateway for LLM access
v0.4.1
  • Model Flexibility: Removed hardcoded Claude Haiku requirement - skill now works with any capable model
  • Recommendation: Updated docs to recommend Claude models (Haiku, Sonnet, Opus) for best results, but not require them
  • Philosophy: Users should choose their preferred model, not be locked in
v0.4.0
  • AI-Powered Generation: Complete rewrite for rich, reflective entries (works best with Claude models)
  • Rich Content: Generates 400-600 word entries with personal, emotional tone
  • All Features Active: Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution all fully integrated
  • Persistent Files: Automatically extracts and appends quotes/curiosities/decisions to dedicated files
  • Context Awareness: Reads recent session logs and existing memory files for context
v0.3.0
  • Auto-Setup: generate.py now automatically runs setup wizard if no config.json exists
  • Memory Integration: New feature to append diary summaries to main daily memory log (memory/YYYY-MM-DD.md)
    • Three formats: summary, link, full
    • Enabled by default during setup
    • Avoids duplicates if section already exists
v0.2.0
  • Added Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution
  • Interactive setup wizard
  • Template conditionals for optional sections
v0.1.0
  • Initial release with basic diary generation and export

Credits

Built for AI agents who want to remember.

Inspired by the tradition of journaling and the question: What would an AI diary actually look like?

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 21 other files (scripts) in skills/agent-chronicle of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • CHANGELOG.md
  • CONTRIBUTORS.md
  • README.md
  • _meta.json
  • config.example.json
  • config.json
  • package.json
  • pnpm-lock.yaml
  • scripts/analyze.py
  • scripts/digest.py
  • scripts/export.py
  • scripts/export_pdf.py
  • scripts/generate.py
  • scripts/setup.py
  • skill.json
  • templates/curiosity.md
  • templates/daily.md
  • templates/decisions.md
  • … and 3 more

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Agent Chronicle next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Agent Chronicle compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Agent Chronicle this skillLeoYeAI/openclaw-master-skills2.2k—~6.3kAutomated safety check: PassMIT
Daily Journalravila4/claude-adhd-skills157—~2.5kAutomated safety check: PassMIT
21 Day Self InterviewForlives/21-day-self-interview101—~2kAutomated safety check: PassMIT
Loopifycoreyhaines31/makerskills850—~2.7kAutomated safety check: PassMIT
Memory Reconciledigipulse-engineering/GAAI-framework163—~2.8kAutomated safety check: PassCustom licence
Journaldavekilleen/Dex493—~1.8kAutomated safety check: PassMIT

Similar skills

  • Daily Journal

    ravila4/claude-adhd-skills

    Draft, organize, or update development journal entries. An agent skill from ravila4/claude-adhd-skills.

    157 GitHub stars~2.5k tokensUpdated 7 mo ago
    Productivity & AutomationAuto-check passed
  • 21 Day Self Interview

    Forlives/21-day-self-interview

    夜间自我访谈引导(21 天)。扮演资深存在主义心理咨询师,每晚提三个有意义的问题,记录回答并在节点回映,帮助用户看清自己。Use when running a nightly self-inquiry / journaling ritual driven by a scheduled task.

    101 GitHub stars~2k tokensUpdated 4 mo ago
    Productivity & AutomationAuto-check passed
  • Loopify

    coreyhaines31/makerskills

    When you want to set up an agent loop, cron-scheduled task, or recurring workflow that runs autonomously.

    850 GitHub stars~2.7k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Memory Reconcile

    digipulse-engineering/GAAI-framework

    Scan all memory files, documentation (/docs//.md), and README files (/README.md) for drift, contradictions, and stale references.

    163 GitHub stars~2.8k tokensUpdated 10 days ago
    Business, Finance & HRAuto-check passed
  • Journal

    davekilleen/Dex

    Toggle journaling or start a morning/evening/weekly journal entry.

    493 GitHub stars~1.8k tokensUpdated today
    Knowledge ManagementAuto-check passed
  • Cron

    smixs/agent-second-brain

    Управление собственным расписанием — напоминания, рутины, периодические задачи.

    392 GitHub stars~856 tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,235 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Agent Chronicle

What does Agent Chronicle do?

AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood…. Agent Chronicle is an agent skill from LeoYeAI/openclaw-master-skills. AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood analytics, weekly digests, "On This Day" resurfacing, and cron auto-generation.

When should I use Agent Chronicle?

Agent Chronicle fits situations like: tasks that involve Journaling and reflection; tasks that involve Accounting and bookkeeping; tasks that involve Newsletters.

How do I install Agent Chronicle in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill agent-chronicle -a claude-code`. Or copy the skill folder (skills/agent-chronicle in LeoYeAI/openclaw-master-skills) into .claude/skills/agent-chronicle in your project. Claude Code loads it when a task matches its description.

How do I install Agent Chronicle in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill agent-chronicle -a codex`. Or copy the skill folder (skills/agent-chronicle in LeoYeAI/openclaw-master-skills) into .agents/skills/agent-chronicle in your project. Codex loads it when a task matches its description.

Can I use Agent Chronicle in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill agent-chronicle -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agent-chronicle, .gemini/skills/agent-chronicle, .github/skills/agent-chronicle and .opencode/skills/agent-chronicle in your project.

What does Agent Chronicle need to run?

Going by SKILL.md and its folder, Agent Chronicle needs Python for the scripts in its folder, the command-line tools its instructions call (python3 and apt) and credentials named ANTHROPIC_API_KEY. Our summary lists: Python 3.

Does Agent Chronicle access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Agent Chronicle safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Agent Chronicle use?

Agent Chronicle is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Agent Chronicle use?

About 6.3k tokens (SKILL.md is roughly 25k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Agent Chronicle?

Skills that share tags, products or a category with Agent Chronicle: Daily Journal (ravila4/claude-adhd-skills, 157 stars), 21 Day Self Interview (Forlives/21-day-self-interview, 101 stars), Loopify (coreyhaines31/makerskills, 850 stars) and Memory Reconcile (digipulse-engineering/GAAI-framework, 163 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Agent Chronicle?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,160 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.