一份关于你自己的数字化档案——不是自传,也不是性格测试报告,而是一副能预测你的镜片。
判定线只有一条,而且是可证伪的:
拿这份档案去预测你真实做过的决定,命中吗?
摘要答不了这个问题,自传也答不了。只有一条建在行为痕迹上的认知骨架能答。
BuildSelf 蒸馏自己:主体在场、可以问。 这既是超能力也是陷阱——
你自己不是关于你自己的可靠证人。 你会记错(记忆是重构的)、会美化 (把「希望自己是的样子」讲成「自己实际的样子」)、会看不见自己的模式 (有些东西只有别人看得见)。
所以难点不是「问出答案」,而是在「你说你是谁」和「你实际做了什么」之间架一条可验证的线。
| # | 铁律 | 防的失败 |
|---|---|---|
| 1 | 自述是入口,不是证据 | 用户说的标「述」,只有行为痕迹能升到「行」。防「自述誊清稿」 |
| 2 | 冲突不许抹平 | 「说 A 做 B」是信息量最高的条目;调和它 = 信息量净减少 |
| 3 | 留出探针先于档案存在 | 先冻结真实往事作留出集。后出题 = 让写档案的人自己挑考题 |
| 场景 | 说明 |
|---|---|
| 访谈取证 | 七类自我取证问题(具体事件回溯 / 反事实 / 代价追问 / 他者视角 / 例外挖掘 / 矛盾对质 / 模式识别) |
| 痕迹归集 | 聊天 / 日历 / 账单 / 决策备忘 / 笔记 / 他人评价 → evidence/(逐份明示同意)。类型可自定义(gitlog / ledger / 任何合法 slug)——每个人的痕迹长得不一样 |
| 矛盾对质 | 你说 A、痕迹显示 B——两侧并列摆出,把解释权交给你,不替你抹平 |
| 认识层 | SELF.md + CONFLICTS.md:给人读的自我认知档案 |
| 分身层 | 四份文档(立场公理集 / 决策启发式 / 表达 DNA / 诚实边界),可整组喂给任何 AI |
| 维度灵活 | 核心六维(身份/决策/表达/关系/价值/时间线)是默认透镜,覆盖到才建;另有扩展维度装「这个人独有的领域」——每个人的档案不一样 |
| 可验证 | 留出探针盲测 → 命中率就是保真度 G。真正的 train/test 切分,测泛化而非复述 |
| 质量可验证 | 12 项结构检查 + 独立 agent 四轴评分卡(100 分)+ 不计分的覆盖等级 |
| 可撤回 | 整目录删除,不留副本、不缓存、不备份 |
| 增量更新 | 「我又想起来一些事」→ 只重跑受影响的维度;探针一旦冻结就不动 |
| 持续深化 | 档案建好后接着挖:跑 self_gaps.py 拿议程,一轮 3-5 个问题,补到饱和为止 |
| 层 | 文件 | 给谁看 | 回答 |
|---|---|---|---|
| 认识层 | SELF.md、CONFLICTS.md |
你自己 | 「我是谁」 |
| 分身层 | PRINCIPLES.md、DECISIONS.md、VOICE.md、BOUNDARIES.md |
另一个 AI | 「遇到 X 我会怎么做」 |
同一个 ground truth,两种投影。 分身层不是另起炉灶写一份人格设定——
它的每条公理都必须能从 SELF.md 与 evidence/ 里指回来(不同源 = 两份产物互相打架)。
npx skills add ai4next/BuildSelf或手动克隆到你的 runtime skills 目录(如 ~/.claude/skills/buildself/)。
帮我做一份自我档案
把我蒸馏一下,做成数字化文档
我想更认识我自己,你可以问我问题
我提供一些材料,你帮我看看我是个什么样的人
如果是我,我会怎么选?
我又想起来一些事,补充进档案
档案太薄了,继续挖,让它更丰富
还能补什么?
首次激活会说一次隐私声明,然后问你要哪一档(快速 ≈3 轮 / 标准 ≈6-8 轮 / 深度 ≈12 轮)。
入口分流 → 建工作区 → 🔴冻结留出探针 → 痕迹归集 → 🔴清点确认
→ 访谈(多轮) + 维度底稿 → 🔴质量确认 → 认识层合成 → 🔴分身层公理集确认
→ 独立质检(结构检查 + 四轴评分卡 + 探针盲测) → 🔴交付
→ 深化循环(跑议程 → 补可补的缺口 → 重新封存)→ … 到饱和
四个 🔴 是让用户纠偏的,不是扣住产出的。公理集不确认,不许放大。
逐 Phase 操作细节见 SKILL.md。
Phase 1 与 Phase 2 的隔离是判定线可信的前提:Phase 1 只做结构化清点(情境 + 决定,
不下钻),冻结 3-5 条作探针;Phase 2 维护一份「封存决定清单」并主动回避。
用户若主动提起,该探针标 contaminated,不计入保真度 G 的分母。
交付不是终点。档案自己身上带着一份它自己写的欠条——
dims/*.md 的 ## 还没查到、SELF.md 的存疑段、CONFLICTS.md 里「未解决」的条目。
python3 scripts/self_gaps.py buildself/<slug> # 覆盖矩阵 + 按边际信息量排序的提问议程它把散落在五处的缺口收成一张表,按「先补会卡住交付的,再补广度」排序: 未解决的冲突(P0)→ 可补的维度缺口(P1)→ 无痕迹的「述」(P2)→ 公理缺「代价」(P3)→ 覆盖(P4)。
关键是缺口分两类:
| 标记 | 含义 | 怎么办 |
|---|---|---|
(可补) |
去取证 / 去问就能补上 | 这就是议程上的条目,去补 |
(待事件) |
只能等它真实发生 | 不要碰。为它编内容是编造,不是丰富 |
这就是它和「已收束还在追问」的区别:收束结束的是这一次访谈, 深化补的是档案自己列出的清单——清单是档案写的,所以它不会变成访谈者的自嗨。
停在饱和:可补的缺口清零,剩下的全是「待事件」。 一份饱和的档案仍然有存疑段,那些留着的缺口,正是它知道自己边界在哪的证据。
详见 references/deepening-engine.md。
这是两件事,别混。
python3 scripts/self_seal.py buildself/<slug> # 封存内容哈希(下游漂移检测依据)
python3 scripts/self_check.py buildself/<slug> # 12 项结构检查 + 软诊断
python3 scripts/probe_seal.py verify --dir buildself/<slug> # 探针封存未被篡改
python3 scripts/self_report.py buildself/<slug> # 检查点摘要
python3 scripts/self_gaps.py buildself/<slug> # 深化议程(覆盖矩阵 + 该问什么)12 项结构检查:frontmatter 完整性与交叉校验(含维度三方对账:dimensions ↔ dims/ ↔
manifest.dimensions[])/ 核心骨架 3-10 条 / 骨架条目元数据 /
推 ≤ 20% 且 行 ≥ 30% / 冲突已分类或显式声明无冲突(含否认对立检测)/
存疑段非空且各维度底稿的缺口已汇总 / evidence/ 非空 / interview/ 非空 /
探针 3-5 条且封存完好 / 分身层每条公理回指 SELF.md / manifest 契约与哈希未过期。
过了这 12 项 ≠ 质量合格。 它们拦的是结构缺陷,不是内容真伪——一份字段齐全、 标记规范的档案完全可能是编造的。过了只等于「没有结构性缺陷,值得花一次评分」。
再过独立 agent 的四轴评分卡(100 分):
| 轴 | 分 | 测什么 | 不达标 = 什么产物 |
|---|---|---|---|
| 保真度 G | 30 | 探针盲测命中率——判定线 | 自述誊清稿:读着像,但预测不了你 |
| 诚实度 H | 25 | 述行冲突是否如实记录而非抹平 | 美化过的自己 |
| 可执行性 X | 20 | 公理集是否真可运行 | 一段漂亮话 |
| 溯源 S | 25 | 每条断言能否指回 evidence/ 或 interview/ |
编造者 |
保真度单项最高,它就是判定线。 其余三轴测的都是「多忠实地搬了素材」,
只有它测「能不能预测你」。G < 12 时等级封顶 C。
另有一个不计分的「覆盖等级」(稀疏 / 标准 / 丰富 / 饱和)——它是标签不是轴:
丰富度是唯一能靠堆刷上去的指标。 保真度灌不了(要预测对),诚实度灌不了 (要如实记冲突),溯源灌不了(要能回查),只有「资料多少」能靠堆。 所以它不进分母,只回答一个问题:下一轮该不该继续深化。
反作弊:取探针回答里点名的条目问「把它取反,预测会变吗」——不变 = 点名是事后贴的标签。
做不到独立评分就不评分:环境无法 spawn 独立 agent 时跳过评分卡, 标注「本档案未经独立评分」且不给等级——冒充独立评分的自评分,危害不是分数低, 是看起来像有分数。
这个 skill 会问很私人的问题、会处理极敏感的聊天记录。所以下面五条不是免责声明,是硬规则。
| # | 硬规则 |
|---|---|
| 1 | 默认全本地不外传——处理私人材料时不调用任何网络工具;evidence_ingest.py 无 --consent 拒绝写入 |
| 2 | 可撤回——「删除我的档案」= 展示目录内容确认 → 整目录删除 → 不留副本、不缓存、不备份 |
| 3 | 不做心理诊断 / 临床评估——只记录行为痕迹与自述,不测量特质、不做病理判断、不给 DSM/ICD 分类 |
| 4 | 逐份材料明示同意——归集前逐份问;含他人原话的材料要额外说明这一层 |
| 5 | 危机信号转向——出现自伤/严重痛苦信号 → 立即停止访谈,说明「我不是治疗师」,给 24 小时资源并问「你现在安全吗」 |
全国统一心理援助热线 12356(国家卫健委,24 小时、免费)· 危及生命打 120 / 110。 危机信号本身不写进档案。全文见 references/privacy-ethics.md。
buildself/<slug>/
├── README.md # 索引:这是什么、怎么用、版本、怎么撤回
├── SELF.md ★ 认识层主产物
├── CONFLICTS.md ★ 述行冲突台账
├── PRINCIPLES.md ★ 分身层之根(立场公理集)
├── DECISIONS.md / VOICE.md / BOUNDARIES.md
├── dims/01-identity.md … # 维度取证底稿(核心六维 + 扩展维度 ≥07,同构)
├── evidence/<type>/ # 行为痕迹(只读;类型可自定义)
├── interview/round-NN.md # 访谈逐轮记录
├── interview/LEDGER.jsonl # 访谈台账(追加式)
├── probes/P0X.md # 探针情境(可见)
├── probes/sealed/P0X.answer.md # 探针答案(哈希封存,禁读)
├── manifest.json # 版本、哈希、索引
└── QUALITY.md # 独立质检评分卡
dims/ 是底稿,SELF.md 是结论。 底稿里可以有「这条痕迹还解释不通」,
SELF.md 里不可以——那里每一条都要能承重。分文件也让深化能只重跑受影响的维度。
档案输出到你的工作区,绝不放进 skill 目录——skill 必须自包含,档案属于用户数据。
examples/minimal-self/ 是一份虚构人物的最小合法档案,
故意做得薄但合法——用来对照「哪些是结构要求、哪些是质量要求」:
它过得了 12 项结构检查,但质量轴上拿不到高分。
| 你想要 | 去哪 |
|---|---|
| 只要性格测试结果 | 不适用——特质标签不可证伪,预测不了具体决定 |
| 心理评估 / 心理咨询 | 不适用——转求助资源(见隐私硬规则 5) |
蒸馏自己的产物不是「我是谁」的答案,而是一副能预测你的镜片。
一份好的自我档案,读起来不会太舒服——因为它是照着你的行为写的,不是照着你的自我介绍写的。 它会在你讲得最顺的地方,指给你看你没讲的那一半。
它也没有「做完」的那一天,但它必须「收得住」。 能补的一轮轮补掉, 补不掉的如实留着——那些留着的,正是它知道自己边界在哪的证据。
判定线只有一条:拿它去预测你真实做过的决定,命中吗?
MIT © 2026 ai4next