21-day-self-interview
每晚三个灵魂拷问,21天AI镜子对话
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
每晚三个灵魂拷问,21天AI镜子对话
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
大多数自省工具失败,是因为它们没有记忆——你今晚写的东西,明天就沉进日记本里再没人看。"21 天自我访谈"(21-day-self-interview)则完全不同:它让一个 AI 扮演资深的存在主义心理咨询师,连续 21 个夜晚、每晚问你三个层层递进的问题,记住你的每一个回答,并在第 7、14、21 天把你自己说过的原话拼成一张画像,还给你看。
重点不是给你建议,而是帮你看清自己:你实际在做什么、被什么驱动、接下来选择成为谁。
被长时间地看见,是人很少获得、却极其渴望的体验。这就是这个项目想给的东西。

图1:项目作者 Forlives 的 GitHub 头像
这个项目诞生于 2025 年,作者 Forlives 观察到:市面上的 AI 伴侣、聊天机器人和日记工具,绝大多数都是"一次性对话"——你今天对 AI 说的话,明天它就忘了。人类内心真正渴望的那种"被持续看见"的体验,在数字世界里几乎是空白。
与此同时,存在主义心理学(Irvin Yalom、Viktor Frankl 的理论)早就指出:觉察(awareness)本身就有治愈力,而觉察的前提是持续的自我观察,不是偶尔的灵光一闪。项目作者将这个洞察移植到 AI 时代,创造了"21 天自我访谈"——借助 Hermes Agent 的定时任务(cron)能力,让 AI 每晚主动来找你,而不是等你想起才打开 App。
项目的核心是一个状态机引擎 si.py,用纯 Python 标准库实现,零第三方依赖。它驱动整个访谈流程:
python si.py init --lang zh # 初始化(中文/英文)
python si.py prompt # 取今晚该问什么(返回 JSON)
python si.py record --day N --text "你的回答"
python si.py recap # 取出过往全部回答(用于回映)
python si.py status # 人类可读进度条
状态存储在 ~/.self-interview/(可通过 SI_HOME 环境变量自定义),包含:
state.json — 语言、开始日期、已完成的日期列表journal.json — 每晚的原始回答,永久保留,永不提交到仓库这个设计非常干净:21 天的问答数据完全在本地,GitHub 上只有题库和代码,没有任何隐私风险。
项目将 21 天分为三个刻意递进的阶段,每个阶段 7 天:
| 阶段 | 天数 | 核心主题 |
|---|---|---|
| 🔍 看见 / See | Day 1–7 | 起点、时间、能量、注意力、身体、面具、第一周回看 |
| 🧭 理解 / Understand | Day 8–14 | 恐惧、渴望、剧本、重复、关系、遗憾、第二周回看 |
| 🕯️ 选择 / Choose | Day 15–21 | 价值、自由与责任、有限、真实、承诺、给予、自画像 |
先看见,再理解,最后才谈选择。 这个顺序是刻意设计的——跳过"看见"直接谈"你想成为谁",只会得到漂亮的空话。题库借鉴了存在主义心理学、苏格拉底式提问、正念观察、叙事疗法与习惯科学。
每晚 AI 会先运行 python si.py prompt 获取当天的 JSON(包含主题、三个问题、以及一个 mirror_note_for_agent 提示词),然后像咨询师一样逐个提问,记录你的回答。在回映日(第 7、14、21 天),AI 会先调用 python si.py recap 把你前几天的原话拼接成段落,作为开场白还给你——这就是"镜子"机制的精妙之处。
项目包含两套题库:questions.zh.json(中文,15667 字节)和 questions.en.json(英文,16608 字节)。以中文题库为例,每个 day 节点的结构为:
{
"day": 1,
"theme": "起点",
"opening": "(开场白,描述今晚的意图)",
"questions": ["问题一", "问题二", "问题三"],
"mirror": "(给 AI 的回映提示,用于在回映日调用 recap)"
}
题库内容覆盖了存在主义心理学的多个核心议题,例如对死亡的觉察(Frankl 的 logotherapy)、面具与真实自我(Yalom 的 work on authenticity)等,同时结合了中文语境下的表达方式。
项目最优雅的设计在于与 Hermes Agent 的深度集成。SKILL.md 本身就是一个完整的 Hermes Agent skill,可通过以下方式安装:
hermes skills install https://raw.githubusercontent.com/Forlives/21-day-self-interview/main/SKILL.md
安装后,你可以直接用自然语言设置定时任务:
每晚 22:00 加载 21-day-self-interview 这个 skill,
帮我做今天的自我访谈。
Hermes 会创建一个 cron job,每晚触发、加载本 skill、按当天的进度问你问题。agent 负责提问、记录、并在回映日做镜像反射——整个过程你只需要"赴约"即可。
si.py 仅使用 Python 标准库(argparse、datetime、json、pathlib、os),没有任何 pip install,在任何 Python 3.8+ 环境中均可运行~/.self-interview/journal.json,已被 .gitignore 排除,永远不会提交到仓库SI_HOME 环境变量支持自定义数据目录,方便备份和迁移record2025 年是 AI 心理健康工具爆发的一年。从 Woebot、Wysa 等聊天机器人,到 Replika 的情感陪伴,AI 心理应用的主流范式是"你来找 AI"。而"21 天自我访谈"开创了一个新方向:让 AI 主动来找你——通过定时任务把心理自省变成一种像刷牙一样规律的习惯,而不是一时兴起的活动。
GitHub 上 153 颗星、53 个 fork、已入库 PIFS,说明这个方向有真实需求。它也代表了 Hermes Agent 生态从"通用 AI 助手"向"垂直场景深度工具"演进的趋势——与其做一个什么都能干的 AI,不如做一个在某个场景里真正懂你、记住你的 AI。