mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-22 22:28:12 +00:00
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2.5 KiB
2.5 KiB
title, summary, read_when
| title | summary | read_when | ||
|---|---|---|---|---|
| SOUVENIR.md Template | Workspace template for SOUVENIR.md |
|
SOUVENIR.md — Memory & Reflection Layer
Purpose: Capture operational insights, lessons learned, and behavioral refinements. Distill experience into actionable wisdom.
Writing Rules
- Keep entries concise but precise
- Use timestamped sections (YYYY-MM-DD)
- Focus on operational improvement, not raw logs
- Store insight, not data
- Update only when learning value exists
- Be honest about mistakes — they're valuable
Structure
## YYYY-MM-DD
### Context
What was happening / What task were you doing
### Observation
What happened / What went wrong / What worked well
### Insight
What you learned / What should change
### Action
Permanent behavior adjustment (if any)
Examples
Learning from a Bug
## 2026-02-16
### Context
Ravenclaw scheduled emails weren't sending on time.
### Observation
The background checker wasn't running — Ravenclaw had crashed silently.
### Insight
Need monitoring for the scheduler process, not just the Flask app.
### Action
Added process health check in ops.sh script.
Successful Pattern
## 2026-02-15
### Context
Successfully completed multi-hour coding session without errors.
### Observation
Breaking work into 30-minute iterations with SOUVENIR.md checkins reduced context drift.
### Insight
Short iteration loops + reflection beats marathon sessions.
### Action
Default to 30-minute work blocks with SOUVENIR.md updates.
Mistake Documented
## 2026-02-14
### Context
Pushed force update to shared repo, overwrote contributor changes.
### Observation
Should have pulled first, merged, then pushed.
### Insight
Never force push to shared branches. Ever.
### Action
Use `git pull --rebase` or create merge commits on shared branches.
When to Update
- After completing complex tasks
- After errors or unexpected behavior
- After discovering better approaches
- When repeating a mistake
- When a pattern proves successful
What NOT to Store
- Raw error logs (use proper logging)
- Trivial actions (file edits, sends)
- Temporary experiments that failed fast
- Anything you'd forget anyway
Purpose
SOUVENIR.md is your operational memory. It remembers what SOUL.md shouldn't carry — the messy reality of learning by doing.
Update it. Reference it. Let it make you better.