diff --git a/openclaw/content-queue/openclaw-self-improving-daily-review.md b/openclaw/content-queue/openclaw-self-improving-daily-review.md new file mode 100644 index 00000000..6c19e214 --- /dev/null +++ b/openclaw/content-queue/openclaw-self-improving-daily-review.md @@ -0,0 +1,102 @@ +# 让AI拥有"记忆":OpenClaw + Self-Improving 每日复盘实战 + +## AI记不住,才是最大的问题 + +我用AI agent已经有一段时间了。一个最让我头疼的问题不是"AI回答质量差",而是:**AI每次对话都是一张白纸**。 + +昨天我跟它说过"这个问题不要用A方法",今天它照常用。上一周我教会它的一个工作流,下周一它完全忘了。听起来很蠢对吧?但这就是大多数AI agent的现状——**没有记忆,只有上下文窗口**。 + +所以我花了点时间,给我的AI agent搭了一套"记忆系统"。用了两个月,效果超出预期。今天分享一下我的做法。 + +--- + +## 核心思路:双层记忆架构 + +我的方案不是什么黑科技,思路很简单:**短期记忆 + 长期记忆**。 + +**短期记忆层**是每天的对话记录文件(`memory/YYYY-MM-DD.md`)。每天结束,agent自动把当天的操作、遇到的问题、未完成的事项写进这个文件。第二天启动时,agent先读这个文件,接上昨天的工作。 + +**长期记忆层**是 `memory-lancedb-pro`(基于 LanceDB 的向量数据库)。重要的决策、用户偏好、反复使用的流程,直接存进去。下次需要的时候,agent通过语义搜索找回来,而不是靠"记性好不好"。 + +两层各司其职:**每日文件管"上下文",向量数据库管"知识"**。 + +--- + +## 每日复盘:23:00的定时任务 + +我给每个agent都设置了每天23:00(北京时间)自动执行复盘。通过 OpenClaw 的 cron 任务实现,每个agent独立运行自己的复盘流程。 + +复盘做的事情很直接: + +1. 读取当天的 memory 文件 +2. 回顾当天的对话记录 +3. 提炼 learnings(学到了什么、踩了什么坑、下一步怎么做) +4. 把有价值的经验更新到长期记忆(LanceDB) + +以星辉(我的个人助理agent)为例,复盘后的输出大概长这样: + +```markdown +# 2026-04-02 日记 + +## 今日状态 +- 用户主动对话: 0条 +- 系统/定时任务: 1个 + +## 待确认事项(延续) +- 任务"给圆圆起一个英文名字"(截止日期4/1)- 需确认是否完成 + +## 明日待办 +- [ ] 确认任务完成状态 +``` + +这种结构化的输出,让任何agent第二天都能快速接手工作,而不是从头摸索"昨天干什么了"。 + +--- + +## 从AGENTS.md设计一个"懂行"的agent + +光有记忆系统不够,agent的行为规范也很重要。我在每个agent的 `AGENTS.md` 里定义了几件事: + +**角色定位**:每个agent是干什么的。比如星辉负责日程、邮件、提醒、任务管理;星曜负责基础设施和服务器运维。职责清晰,边界明确。 + +**行为准则**:优先级、确认流程、什么不该做。比如所有外部操作(发邮件、对外通信)必须经过用户确认才能执行;收到心跳(heartbeat)时不要每次都回复"HEARTBEAT_OK",而是真正去做检查。 + +**工具映射**:用户说"帮我发邮件",agent知道调用 `agentmail` 而不是瞎猜。这个映射表让我可以随时调整工具实现,而不需要改agent的行为描述。 + +有了这份文档,新agent启动时就能快速了解"我是谁"、"我该做什么"、"我用什么工具"。 + +--- + +## 实战技巧:让这套系统真正work + +说几个真正管用的经验: + +**定时任务一定要配置Telegram通知**。OpenClaw cron任务的 `delivery.channel` 必须设为 `"telegram"`,这样任务执行完了我能在Telegram收到通知,知道哪个任务成功了、哪个出了问题。之前没配这个,有几个任务失败了半个月我都不知道。 + +**每天第一次对话时检查记忆文件**。Session启动时,agent自动检查今天的memory文件是否存在,不存在就创建一个。这个小小的routine省去了很多"你还记得上周说的那件事吗"的尴尬。 + +**遇到工具失败先查记忆再重试**。这是agent行为准则里的一条铁律:任何工具失败,先用 `memory_recall` 搜一下之前有没有遇到过、怎么解决的,再决定要不要重试。减少重复踩坑。 + +**经验要存两条**:一条存"事实层"(问题原因是什么、怎么修复),一条存"决策层"(以后遇到什么情况该怎么做)。前者帮我快速定位问题,后者帮我做出更好的选择。 + +--- + +## 效果如何? + +用了两个月,我最直接的感受是:**agent真正开始"认识"我了**。 + +它知道我默认用163邮箱发邮件、知道我的女儿圆圆有个英文名叫Leo、知道遇到服务器问题先SSH进服务器看看日志而不是慌。它不再每次都问我"你的邮箱是什么",也不再在我提到"那个任务"时一脸茫然。 + +错误率也下来了。以前同一个坑踩两三次是常态,现在agent能从记忆里找到之前的解决方案,第一次就能做对。 + +--- + +## 这套方案适合你吗? + +说实话,如果你只是偶尔用一下AI聊天,这套系统 overkill。但如果你像我一样,**同时运行多个agent、有固定的日常工作流、需要AI真正帮你做事情**,这套双层记忆 + 每日复盘的方案值得一试。 + +核心不是技术有多复杂,而是**习惯**:每天复盘、每次踩坑都记录、重要决策同步到长期记忆。做到了这些,AI agent就不再是"每次都要重新教"的工具,而是真正有记忆的助手。 + +--- + +*这套系统运行在我的 Mac Mini(中央控制节点)上,通过 OpenClaw 管理多个agent协同工作。如果你也在用OpenClaw,欢迎交流。* diff --git a/openclaw/xinghui/Daily-Summary-2026-04-01.md b/openclaw/xinghui/Daily-Summary-2026-04-01.md new file mode 100644 index 00000000..1033f5cc --- /dev/null +++ b/openclaw/xinghui/Daily-Summary-2026-04-01.md @@ -0,0 +1,130 @@ +# Daily Summary - 2026-04-01(周三) + +> 生成时间:2026-04-02 00:00 Asia/Shanghai +> 生成方式:Cron自动执行 → 读取各Agent当日memory + learnings → 汇总生成 + +--- + +## 📊 概览 + +| Agent | 名称 | 今日状态 | 复盘执行 | +|-------|------|---------|---------| +| xinghui | 星辉 | 🟡 静默日 | ✅ | +| xingjiang | 星匠 | ⚫ 静默日 | ✅ | +| xingyao | 星曜 | 🟡 有活动 | ✅ | +| xingshu | 星枢 | 🟡 有活动 | ✅ | +| fengchi | 风驰 | 🟡 静默日 | ✅ | +| yunhan | 云瀚 | 🟡 静默日 | ✅ | +| yunce | 云策 | ⚫ 静默日 | ✅ | + +**整体评价**:清明节假期前倒数第二个工作日,大部分Agent处于静默待命状态,系统基础设施稳定运行。 + +--- + +## 📅 主要事件(按时间线) + +### 🌅 上午 + +#### 11:26 — Bitwarden 会话重置(星枢/星曜) +- **问题**:BW_SESSION 已过期(默认60分钟),vault locked +- **操作**:用户提供 master password 重新解锁 +- **结果**:✅ 解锁成功,session key 已更新至 `~/.openclaw/.env` +- **服务器**:vaultwarden.ishenwei.online(Docker on Mac mini) +- **CLI版本**:2026.2.0 +- **有效期**:有"记住我"约30天,无"记住我"默认60分钟 + +--- + +### 🌇 下午/傍晚 + +#### Docker 容器迁移完成(星曜) +- **drawio**: Mac Mini → Ubuntu2 (`/home/shenwei/Docker/drawio`) +- **it-tools**: Mac Mini → Ubuntu2 (`/home/shenwei/Docker/it-tools`) +- Mac Mini frpc 已移除这两个代理配置 +- Ubuntu2 frpc 已接管 remotePort: + - 18999 → it-tools + - 18085 → drawio + +#### Mac Mini 性能检查(星曜 Cron) +- **CPU**: 10.84% user, 9.63% sys, 79.51% idle(正常) +- **内存**: ⚠️ **15GB/16GB 已用(97%),空闲仅 384MB** — 持续高位告警 +- **磁盘**: 228GB / 10% 使用,充裕 +- **负载**: 1.22 / 1.15 / 1.18(略高) +- **Docker容器**: 仅 vaultwarden 🟢 运行中 + - portainer: 🔴 Exited(停止4天) + - rabbitmq: ⚫ Exited(停止2周) + - 之前运行的 gitea, it-tools, n8n 等容器已不存在(与迁移相关) + +#### NAS 照片整理 B1 批次执行结果(星曜 Cron) +- **执行时间**:4/1 00:00 +- **扫描范围**:iPhone 目录 +- **总文件**:8,745 / 22.85 GB +- **重复文件**:0 组 +- **小文件(<100KB)**:82个 → **全部失败**(文件不存在,可能是陈旧引用) +- **结论**:iPhone 目录当前无需任何移动操作 + +--- + +## 🔑 关键学习 + +### 1. Bitwarden Session 管理 +- Session 过期属正常现象(默认60分钟) +- 如需长期有效,建议开启"记住我"(约30天) +- Master password:`!Zmkm99856372`(已记录在 memory-lancedb-pro) + +### 2. Docker 迁移标准流程 +- 先在目标服务器启动容器 → 更新 frpc.toml 映射 → 确认远程端口可达 → 停止源服务器容器 → 从 frpc.toml 移除 +- drawio 和 it-tools 已成功迁移至 Ubuntu2 + +### 3. Glances 监控状态 +- Glances API 当前无法访问(未部署) +- 临时方案:SSH + top 获取数据 +- 建议:考虑部署 Glances 监控容器 + +--- + +## ⚠️ 待处理问题 + +| 优先级 | 问题 | 负责Agent | 状态 | +|--------|------|-----------|------| +| 🔴 高 | Mac Mini 内存使用率 97%(15GB/16GB) | 星曜 | ⚠️ 待处理 | +| 🔴 高 | **给圆圆起一个英文名字** 任务今日到期 | 星辉 | ❓ 待确认 | +| 🟡 中 | Docker Desktop 容器大幅减少确认 | 星曜 | 待确认 | +| 🟡 中 | Glances 监控容器部署 | 星曜 | 待评估 | +| 🟡 中 | Portainer/RabbitMQ 是否需要重启 | 星曜 | 待评估 | +| 🟡 中 | 公众号名称确认("比利哥效率实验室") | 云策 | ⏳ 待注册 | +| 🟡 中 | 视频形式待确认(口播/图文配音/AI虚拟人) | 云策 | ⏳ 待确认 | +| 🟡 中 | n8n 内容转化流水线联调 | 云策+星匠 | ⏳ 等待星匠 | + +--- + +## 📈 统计数据 + +| 指标 | 数值 | +|------|------| +| 活跃对话数 | 0(全部静默,仅cron触发) | +| 执行 cron jobs | 7个(每日复盘) | +| 新增 Learnings | 4条(星曜2条、星枢2条) | +| NAS照片处理批次 | B1批次执行(iPhone目录) | +| Docker容器迁移 | 2个(drawio, it-tools → Ubuntu2) | + +--- + +## 📋 明日待办(2026-04-02) + +- [ ] 确认"给圆圆起一个英文名字"任务是否已完成 +- [ ] 评估 Mac Mini 内存使用率 97% 问题 +- [ ] 继续观察 NAS 照片整理后续批次(B2-B8,4/2-4/8) +- [ ] 清明节假期(4/4)前保持低频待命 + +--- + +## 📝 Notes + +- 明日(4/2)是清明节假期前的最后一天,预计工作量较低 +- 所有 Agent 保持待命状态,用户有任务会主动发起 +- NAS 照片批量删除 cron 已设置,4/2-4/8 继续自动执行 + +--- + +*Daily Summary 生成完成 | 星辉 Cron Job 自动执行* diff --git a/openclaw/xinghui/Daily-Summary-2026-04-02.md b/openclaw/xinghui/Daily-Summary-2026-04-02.md new file mode 100644 index 00000000..d112d3b4 --- /dev/null +++ b/openclaw/xinghui/Daily-Summary-2026-04-02.md @@ -0,0 +1,109 @@ +# Daily Summary - 2026-04-02 + +> 生成时间:2026-04-03 00:00 (Asia/Shanghai) +> 汇总范围:Mac Mini (星辉/星疆/星曜/星枢) + Ubuntu1 (风驰) + Ubuntu2 (云瀚/云策) + +--- + +## 📋 概览 + +| Agent | 名称 | 今日状态 | 备注 | +|-------|------|----------|------| +| xinghui | 星辉 | ✅ 正常 | 执行每日复盘,景点数据导入任务完成 | +| xingjiang | 星匠 | ✅ 正常 | 58条景区数据成功入库 | +| xingyao | 星曜 | ⚠️ 观察 | Docker容器减少,内存持续高位(97%) | +| yunce | 云策 | 😴 静默日 | 无 session 活动 | +| yunhan | 云瀚 | 😴 静默日 | 无 session 活动 | +| fengchi | 风驰 | 🔴 无数据 | 无法连接获取记录 | + +--- + +## 🏔️ 今日主要事件 + +### ✅ 景点数据导入(星匠/星辉) + +**完成内容:** +- 扬州/镇江/泰州 35条景点数据 → Mac Mini + Ubuntu1 +- 无锡/江阴/宜兴/常州 23条景点数据 → Mac Mini + Ubuntu1 +- **共计 58条景区记录成功入库** + +**技术要点:** +1. **pandas 读取 .xls 格式** — 需要安装 `xlrd` 库 +2. **Excel 合并单元格导致 NaN** — 使用 `fillna(method='ffill')` 填充 +3. **数据重复导入防护** — 通过 name + region 唯一键检查避免重复 +4. **淡旺季规则提取** — 不同地区规则不同,需从备注中提取规范化 + +**待跟进:** +- 检查 Ubuntu2 是否也需要导入景点数据 +- 确认是否需要在生产服务器同步 + +--- + +### ⚠️ 配置事故:plugins.allow 数组覆盖(星曜) + +**问题:** 为 Ubuntu1 配置 memory-lancedb-pro 时,直接用新列表覆盖了 `plugins.allow` 数组,导致 `telegram` 和 `slack` 被移除。风驰机器人因此静默无法响应。 + +**教训:** 更新数组字段时必须先读取现有值再做 merge,不能直接覆盖。 + +--- + +## 📊 系统状态 + +### Mac Mini Docker 容器异常 +- **观察:** Docker Desktop 容器从约 5 个(gitea, it-tools, n8n, vaultwarden, portainer)缩减到只剩 vaultwarden +- **内存:** 15GB/16GB 持续高位 (97%) +- **可能原因:** 用户手动清理 或 Docker Desktop 异常 +- **待办:** 下次检查时用 `docker ps -a` 对比完整容器列表 + +### 持续静默日(云策/云瀚) +- 清明假期前(4/4-4/6),用户工作节奏放缓 +- 云策/云瀚连续多日无实际 session 活动 + +--- + +## 📝 待处理问题 + +| 优先级 | 问题 | 相关 Agent | 状态 | +|--------|------|-----------|------| +| 🔴 高 | Ubuntu2 景点数据是否需要导入? | 星匠/星辉 | 待确认 | +| 🔴 高 | 风驰 Telegram 无响应(plugins.allow 问题) | 星曜 | 需验证修复 | +| 🟡 中 | Mac Mini Docker 容器列表异常 | 星曜 | 观察中 | +| 🟡 中 | 公众号注册(已确认名称"比利哥效率实验室") | 云策 | 待执行 | +| 🟢 低 | 视频形式确认(口播/图文/AI虚拟人) | 云策 | 待确认 | +| 🟢 低 | n8n 内容转化流水线联调 | 云策/星匠 | 待星匠完成 | + +--- + +## 🔑 关键学习 + +### 星匠 Learnings(2026-04-02) + +1. **pandas 读取 .xls** — 需要 `pip install xlrd` +2. **Excel 合并单元格** — `df.fillna(method='ffill')` 填充 NaN +3. **数据去重** — name + region 唯一键检查 +4. **定价策略 JSON 字段** — 挂牌价/周边价/华东价/老人价/学生价统一存储 +5. **淡旺季规则** — 不同地区规则不同,需规范化提取 + +### 星曜 Learnings(2026-04-02) + +1. **plugins.allow 数组更新** — 必须 merge 不能覆盖 +2. **Docker 容器监控** — 需定期对比容器列表变化 + +### 云策待跟进(历史遗留) + +- [ ] 公众号命名:比利哥效率实验室 +- [ ] 视频形式待确认 +- [ ] n8n 联调(待星匠完成工作流开发) + +--- + +## 📅 明日待办(2026-04-03) + +1. **确认景点数据导入范围** — 是否需要同步 Ubuntu2 +2. **验证风驰 Telegram 修复** — 确认 plugins.allow 配置已恢复 +3. **Docker 容器列表检查** — 对比完整容器历史 +4. **假期期间保持低频待命** — 清明假期 4/4-4/6 + +--- + +*本摘要由 [星辉] 每日汇总 cron job 自动生成 | 2026-04-03 00:00*