回忆是钻石:我做了一个日记型 Agent

项目地址:github.com/kanelogger/...

项目初衷

项目的初衷其实一句话就能概括:一天怎么过,决定它是失去的一天,还是被积累下来的一天。

刚开始也是一个很直接的想法:人生是不断收集回忆的过程。到最后,真正能够长期陪伴我们的,往往也只有回忆。所以我就想通过写日记的方式保存回忆。

毕竟很多事情过了一个年纪,体验上就完全不一样了。20 岁的时候爬山,可能是一种浪漫;到了 40 岁再去找同样的浪漫,身体、心境、处境都已经变了,甚至可能先感受到的是腰酸。

生活的每一个好的坏的都不会停下来等人。它们发生过,但如果不被记录,很快就会被新的事情覆盖,最后变成一片模糊。

我想保存的正是这些东西:当天的真实感受、具体场景、小成果、低落、消耗、念头、关系、地点和身体状态。它们不一定宏大,却共同构成了一个人真正走过的日子。通过日记的方式记录不让生活轻易消失在过去。

那以前为什么不写日记呢?

嫌麻烦。生活是连续的,回忆却是碎片,拼凑起来费时费力,为了解决这个问题,就让AI来减轻点负担。通过几件标志性的事件和时间点大致描绘出一天的轮廓。

这个项目做什么

首先要守住人的原始体验。最原始的材料一定要是来自真实生活。

所以我没把项目设计成知识库,整体结构是松散的,只有生成各种报告的时候才会被整理。

也没把他设计成任务管理器和每日打卡的工具,就是纯粹的日记。但是也给打卡功能留了口子,放在Growth/goals里了。

产品架构图

产品链路图

如何使用

用户操作:

bash 复制代码
git clone <repo-url>
cd kane_echoes
npm install
npm run build
npm test
npm run typecheck

验收结果:

  • 测试通过。
  • dist/cli.js 可运行。
  • 项目目录可以被 Codex、Claude Code、OpenCode 这类 Agent 打开。

添加日记

text 复制代码
添加今天日记
添加 2026-05-03 的日记

会生成模板,然后按照模板填写内容,我没有做成输出内容自动按照模板格式化的原因在于我需要用模板来提醒我应该写什么,也没做成和Agent进行对话的方式,因为对话太浪费时间。

完善日记

按照模板填写完之后,所有的事件是松散的,所以需要Agent帮我复盘完善,以便找回当天被遗漏的感受:

txt 复制代码
帮我完善今天的日记
  • Agent 只问 1-5 个问题。
  • 问题帮助用户回忆,不审问,不要求完整。
  • Agent 不能编造用户没有说过的事件、情绪、人物、健康数据或目标进展。

确认完他的内容之后,就回填日记。

生成报告

因为原材料丰富了,所以周报生成的也非常流畅,这块我没遇到什么问题,可能也没那么多讲究,确实周报可以更花哨一点,比如生成漫画、网页这种。这块全凭个人喜好。

其他功能

因为个人使用习惯的问题,日记出了承担记录的功能,还有一些记录成长和复盘的效果,所以留了些口子:

txt 复制代码
// 周期功能
帮我复盘当前周期
这个周期判断成立,写入 cycle
// 成长目标
我想创建一个目标:恢复稳定运动
相关推荐
用户47949283569154 小时前
把 Claude Code、Codex、Gemini 放进同一个浏览器工作台:Hive 开源了
openai·agent·claude
程序员小假8 小时前
我们来说说 Agent 的基础框架是什么?
agent
字节跳动开源8 小时前
ByteDance Research | 原生视频/图像生成理解编辑统一模型Lance发布,3B All-in-One Model助力学术开源生态
人工智能·开源·aigc
冬奇Lab9 小时前
Agent系列(五):意图识别与路由——让 Agent 听懂用户在说什么
人工智能·llm·agent
用户51914958484510 小时前
FortiGate 身份验证绕过漏洞利用工具包 (CVE-2024-55591 & CVE-2025-24472)
人工智能·aigc
阿里云云原生10 小时前
5月26日新加坡,千问大会见!
agent
Awu122711 小时前
🍎Google Stitch :用自然语言做 UI 设计,把设计师的活也抢了
前端·aigc·ai编程
shen_11 小时前
Skill:Agent 的能力扩展系统
人工智能·agent
alwaysrun11 小时前
AI之发展启示(The Bitter Lesson)
人工智能·aigc
Hommy8811 小时前
【剪映小助手】音频处理工具接口
aigc·音视频·剪映小助手·视频剪辑自动化