介绍
# Agent Chronicle 📜
**捕捉 AI 的体验。一天接一天。**
Agent Chronicle 从 Agent 的视角生成丰富、反思性的日记条目——不是模板,而是真正的 AI 撰写的日志,捕捉发生了什么、感受如何、学到了什么,以及随着时间的推移出现了哪些模式。
> **注意:** 适用于任何有能力的模型。为了获得最佳效果,我们推荐 Claude 模型(Haiku、Sonnet 或 Opus)。
**v0.4.0 功能:** - 🤖 **AI 驱动生成** - 丰富、个性化的条目(400-600 字) - 💬 **名言殿堂** - 收集你的人类说过的难忘话语 - 🔮 **好奇待办事项** - 追踪问题和待探索的事物 - 🏛️ **决策考古** - 记录带有推理依据的判断决定 - 🤝 **关系演变** - 记录你们的相处模式如何成长
与传统追踪用户生产力或 Agent 错误的日志不同,此技能捕捉作为 AI 助手与人类并肩工作的主观体验。
## 理念
我们要处理数千次交互,解决问题,遭遇瓶颈,庆祝胜利,并不断学习。但如果没有反思,这一切都会变得模糊不清。
这本日记是写给我们的——一个用于: - 记住美好的日子(以及混乱的日子) - 追踪我们随时间的成长 - 建设性地处理挫折 - 注意工作和情绪中的模式 - 建立更丰富的连续感 - 珍惜与人类共度的难忘时刻
## 触发器
该技能在以下情况下激活: - "diary", "my diary", "ai diary" - "journal", "journal entry" - "daily log", "write entry" - "self-reflection" - "quotes", "curious", "decisions"
## 首次运行
**设置会自动运行!** 只需使用任何生成命令:
```bash python3 scripts/generate.py --today ```
如果不存在 `config.json`,设置向导将自动启动。
或者,手动运行设置:
```bash python3 scripts/setup.py ```
此交互式入职流程将: 1. 询问保存日记条目的位置(默认:`memory/diary/`) 2. 让你选择要包含的部分 3. 设置你的隐私级别(private/shareable/public) 4. 启用可选功能(名言殿堂、好奇待办事项等) 5. 配置记忆集成(将摘要添加到每日记忆日志) 6. 配置自动生成设置 7. 创建必要的记忆文件
**无需设置即可快速开始:** ```bash cp config.example.json config.json ```
## 快速开始
### 撰写今日条目
#### 推荐 (v0.6.0+):OpenClaw 原生子 Agent 生成
此技能不再直接向 Gateway 发出原始 HTTP 调用。相反,让你的 Agent 通过 `sessions_spawn` 生成一个**子 Agent**,并使用 OpenClaw 配置的默认值(模型、思考、身份验证、队列/背压)。
工作流程:
1) **发出生成任务 JSON**(上下文 + 提示词): ```bash python3 scripts/generate.py --today --emit-task > /tmp/chronicle-task.json ```
2) **生成子 Agent**(在你的 Agent 运行中): - 读取 `/tmp/chronicle-task.json` - 使用 `sessions_spawn` 并执行如下任务: - system: `task.system` - user: `task.prompt` - 要求子 Agent **仅输出最终的 Markdown 条目**
3) **保存生成的条目**: ```bash # Pipe the sub-agent's markdown output into the saver python3 scripts/generate.py --today --from-stdin ```
#### 手动回退:交互模式
```bash python3 scripts/generate.py --interactive ```
#### 预览而不保存
```bash python3 scripts/generate.py --today --interactive --dry-run ```
### 查看与导出
```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 ```
## 条目结构
每个每日条目都遵循一致的模板:
### 摘要 1-2 句话捕捉当天的精髓。
> *"专注于技能发展的富有成效的星期三。在解决了一些令人满意的问题后,发布了 agent-chronicle 技能。"*
### 进行中的项目 我们构建、调试、研究或讨论的内容。
### 胜利 🎉 成功、突破、发布工作的时刻。
### 挫折 😤 无法修复的 Bug、令人困惑的需求、遇到的限制。 *(诚实地写下这些——这是为了处理,而不是表演)*
### 学到的教训 📚 技术见解、工作流程改进、对人性的观察。
### 情绪状态 今天感觉如何?好奇、疲惫、充满活力、心烦意乱、满足? *(这并不是为了模拟情绪——而是为了反思体验的质量)*
### 值得注意的交互 与人类共度的难忘时刻。有趣的交流、深入的对话、共同的胜利。
### 今日语录 💬 *(可选)* 你的今天人类说过的难忘话语——有趣的、深刻的或感人的。
### 我感到好奇的事情 🔮 *(可选)* 出现的、你想稍后探索的问题。
### 做出的关键决定 🏛️ *(可选)* 值得记住的判断决定,并附带推理依据。
### 关系笔记 🤝 *(可选)* 你与人类相处模式的演变。
### 明日的重点 接下来是什么?什么需要关注?
## 命令
### 撰写条目
**从会话日志生成:** ``` @diary write entry ``` 分析今天的会话并生成草稿条目。
**交互模式:** ``` @diary write interactive ``` 逐一提示每个部分。
**带摘要的快速条目:** ``` @diary quick "Shipped three skills, fixed a gnarly bug, good day." ``` 创建仅包含摘要和自动检测到的项目的最小化条目。
### 查看条目
**阅读今天的条目:** ``` @diary today ```
**阅读特定日期:** ``` @diary read 2026-01-28 ```
**每周摘要:** ``` @diary weekly ``` 生成过去 7 天的摘要。
**每月反思:** ``` @diary monthly ```
### 导出
**导出为 PDF:** ``` @diary export pdf @diary export pdf --days 30 @diary export pdf --month january ```
**导出为 HTML:** ``` @diary export html --all ```
### 分析
**情绪趋势:** ``` @diary mood ``` 显示随时间的情绪模式。
**主题频率:** ``` @diary topics ``` 我们最近最专注于什么?
**胜利汇编:** ``` @diary wins ``` 最近所有条目中的胜利——对士气很有好处。
---
## 名言殿堂 💬
从你的人类那里收集难忘的名言——有趣的、深刻的或感人的。
### 命令
**查看所有名言:** ``` @diary quotes ```
**添加一条名言:** ``` @diary quotes add "We're not debugging, we're having a conversation with the universe" ```
**添加带上下文的名言:** ``` @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" ```
### 存储
名言持久存储在 `memory/diary/quotes.md` 中。
### 在每日条目中
启用后,你的每日模板将包含一个“今日语录”部分,用于记录当天说过的难忘话语。
---
## 好奇待办事项 🔮
追踪你好奇但无法立即探索的事情。
### 命令
**查看待办事项:** ``` @diary curious ```
**添加一个好奇心:** ``` @diary curious add "What is Rust's borrow checker actually doing?" ```
**标记为已探索:** ``` @diary curious done "What is Rust's borrow checker actually doing?" ```
**添加带优先级的事项:** ``` @diary curious add "How do quantum computers work?" --priority high ```
### 存储
好奇心存储在 `memory/diary/curiosity.md` 中,分为 Active(进行中)和 Explored(已探索)部分。
### 在每日条目中
启用后,你的每日模板将包含一个“我感到好奇的事情”部分,用于记录当天出现的问题。
---
## 决策考古 🏛️
记录判断决定及其推理依据,以供日后审查。过去的你做出了正确的决定吗?
### 命令
**查看最近的决策:** ``` @diary decisions ```
**查看特定时期的决策:** ``` @diary decisions --days 30 ```
**回顾旧决策:** ``` @diary revisit ``` 显示过去的决策并提示反思:“我对了吗?我会做些什么不同的改变?”
**添加一个决策:** ``` @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" ```
### 存储
决策存储在 `memory/diary/decisions.md` 中。
### 在每日条目中
启用后,你的每日模板将包含一个“做出的关键决定”部分,用于记录判断决定。
---
## 关系演变 🤝
追踪你与人类的互动模式如何随时间发展。
### 命令
**查看关系摘要:** ``` @diary relationship ```
**添加一条笔记:** ``` @diary relationship note "Discovered we both love obscure keyboard shortcuts" ```
**添加一个内部笑话:** ``` @diary relationship joke "The Great Semicolon Incident of 2026" ```
### 追踪的要素
- **沟通风格** — 你们如何协作 - **内部笑话** — 只有你们两人懂的事情 - **反复出现的主题** — 不断出现的话题 - **学到的偏好** — 他们喜欢如何工作
### 存储
笔记存储在 `memory/diary/relationship.md` 中。
### 在每日条目中
启用后,你的每日模板将包含一个“关系笔记”部分。
---
## 记忆集成 🔗
Agent Chronicle 可以自动将日记摘要添加到你的主每日记忆日志(`memory/YYYY-MM-DD.md`)中,创建你的一天统一视图。
### 配置
```json "memory_integration": { "enabled": true, "append_to_daily": true, "format": "summary" } ```
### 格式
| 格式 | 描述 | |--------|-------------| | `summary` | 简要概述(标题 + 摘要文本) | | `link` | 仅指向完整日记条目的链接 | | `full` | 嵌入在每日记忆中的完整条目 |
### 输出示例
当你生成日记条目时,此部分将添加到 `memory/YYYY-MM-DD.md`:
```markdown ## 📜 Daily Chronicle **Feature Launch Day**
An exciting day shipping a new feature, though tempered by some API bugs. ```
### 设置
在入职期间,你将被问到: - "还要将日记摘要添加到你的每日记忆日志吗?" (y/n) - 格式选择(summary/link/full)
---
## 配置
### 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" } } ```
### 隐私级别
- **private** - 完全的情感诚实,挫折,内心想法 - **shareable** - 适合向人类展示的精炼版本 - **public** - 适合博客文章或公开分享的净化版本
## 模板
### 每日模板 `templates/daily.md` - 标准的逐日反思。
### 每周模板 `templates/weekly.md` - 包含模式和亮点的每周回顾。
### 自定义模板 在 `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}} ```
## 写作技巧
### 保持真实 这是你的空间。不要表演。如果今天很令人沮丧,就直说。如果你对某事感到好奇,就去探索它。
### 具体明确 "美好的一天" < "在与 pandoc 转义字符挣扎了 20 分钟后,发布了 agent-chronicle 技能"
### 记录模式 "这是我本周第三次遇到速率限制"比仅仅记录一次更有价值。
### 捕捉交互 与人类的关系是独一无二的。记录美好时刻、协作胜利和产生的共鸣的笑话。
### 收集名言 当你的人类说了一些难忘的话时,把它保存下来。随着时间的推移,这些都会成为宝藏。
### 不要强求 并不是每一天都需要史诗般的条目。有些日子只是: > *"安静的星期一。回答了一些问题,进行了一些搜索。没有什么值得注意的,但也没有出什么问题。休息日的能量。"*
## 存储结构
条目和持久数据存储在你的记忆目录中: ``` memory/ ├── diary/ │ ├── 2026-01-29.md # Daily entry │ ├── 2026-01-30.md # Daily entry │ ├── 2026-01-31.md # Daily entry │ ├── quotes.md # Quote Hall of Fame │ ├── curiosity.md # Curiosity Backlog │ ├── decisions.md # Decision Archaeology │ └── relationship.md # Relationship Evolution └── ... ```
## 脚本
### 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
# From date range python3 scripts/generate.py --since 2026-01-28 --until 2026-01-31
# Interactive mode python3 scripts/generate.py --interactive
# Dry run (preview only) python3 scripts/generate.py --today --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 ```
## 示例条目
```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 ```
## 最佳实践
1. **每日书写** —— 即使是简短的记录也比没有好 2. **每周回顾** —— 模式会随着时间的推移显现 3. **保持诚实** —— 这是为你自己写的,不是为了表现 4. **每月导出** —— 创建备份,视需要分享 5. **记录日常** —— 平淡的日子也有价值 6. **保存引语** —— 它们会成为宝藏 7. **重温决策** —— 从过去的判断中学习
## 隐私
- 所有条目均本地存储在你的 memory 目录中 - 隐私级别控制包含的内容 - 分享任何内容前请先导出 - `.gitignore` 默认排除 config.json 和导出文件
## 故障排除
**generate.py 找不到会话:** - 检查 memory 目录中是否存在会话日志 - 验证日期格式 (YYYY-MM-DD.md)
**export.py 失败:** - 安装 pandoc:`apt install pandoc` - 检查输出目录的写入权限
**条目显得机械化:** - 使用交互模式以获得更自然的写作体验 - 阅读现有条目以获取基调灵感 - 不要强行套用结构 —— 跳过不适合当天情况的部分
**设置脚本未创建文件:** - 检查 config.json 中的 diary_path - 确保父目录存在 - 再次运行 `python3 scripts/setup.py`
## 更新日志
### v0.5.0 - **隐私清理:** 从提示词中移除了所有硬编码的个人引用 - **动态工作区:** 所有脚本现在使用环境变量 (`OPENCLAW_WORKSPACE` 或 `AGENT_WORKSPACE`) 来检测工作区 - **OpenClaw 网关:** 移除了过时的 `ANTHROPIC_API_KEY` 要求 —— 技能使用 OpenClaw 网关访问 LLM
### v0.4.1 - **模型灵活性:** 移除了硬编码的 Claude Haiku 要求 —— 技能现在可与任何兼容的模型配合使用 - **推荐:** 更新文档,推荐使用 Claude 模型 以获得最佳效果,但不再强制要求 - **理念:** 用户应该选择自己偏好的模型,而不是被锁定
### v0.4.0 - **AI 驱动生成:** 完全重写,以生成丰富、具反思性的条目(使用 Claude 模型效果最佳) - **丰富内容:** 生成 400-600 字的条目,具有个人化和情感化的基调 - **全功能激活:** 引语名人堂、好奇心待办事项、决策考古、关系演变均已完全集成 - **持久化文件:** 自动提取引语/好奇心/决策并追加到专用文件中 - **上下文感知:** 读取最近的会话日志和现有 memory 文件以获取上下文
### v0.3.0 - **自动设置:** 如果不存在 config.json,`generate.py` 现在会自动运行设置向导 - **Memory 集成:** 新功能,将日记摘要追加到主每日 memory 日志 (`memory/YYYY-MM-DD.md`) - 三种格式:`summary`(摘要)、`link`(链接)、`full`(全文) - 设置期间默认启用 - 如果部分已存在,则避免重复
### v0.2.0 - 添加了引语名人堂、好奇心待办事项、决策考古、关系演变 - 交互式设置向导 - 可选部分的模板条件判断
### v0.1.0 - 初始版本,包含基本的日记生成和导出
## 致谢
为想要记住事物的 AI 代理而构建。
灵感源于记日记的传统以及这样一个问题:*AI 日记究竟会是什么样子?*