dsh-mylife
DeepSeek Harness 的个人上下文插件:给 agent 配一本关于「您」的长期账本。
模型每开一个新会话,对您一无所知。它会给出对谁都成立的建议。这本账的作用,是让它开口之前先查过底:您手上有什么在跑、您以前怎么做过类似决定、您在哪件事上卡了很久。
存什么
两本账归本插件,记忆归 yammory_system。
| 回答什么 | 谁管 | |
|---|---|---|
知识 knowledge |
您掌握什么,哪个节点还只有框架 | 本插件 |
生活 life |
您在追什么,今天做了什么,计划和现实差在哪 | 本插件 |
| 记忆 | 您是什么人,偏好什么,做过哪些决定 | ctx.memory(yammory_system) |
记忆不存这里。 本插件只消费记忆服务,不自己再存一份——曾经有过一张自建表,已废弃并加了迁移删除。理由是记忆的写入需要审批与审计,那套不变量应该在记忆系统里,不该被第二个地方绕过去。
三个尺度
这是「人生助手」而不是「待办清单」的地方。
- 今天:两个小时后该做什么,落到具体动作。
- 这周:完成了什么,哪些一直在往后挪。
- 这几年:哪块生活有声量,哪块沉默了。
三个尺度用不同的数据回答。拿「这一年」的问题去查七天趋势,得到的结论会是错的。
生活账的七类
vision 方向 · goal 目标 · phase 阶段 · daily 计划 · activity 做完的 · review 复盘 · decision 决定
用 parent_id 挂成链条:今天这件事挂在哪个目标下,那个目标服务于哪个方向。面板可以在「按时间」和「按层级」之间切换。
七个领域用于看平衡:事业学业、身体精神、关系、钱、成长、体验、其他。沉默的领域比空的领域更值得注意——它明明在计划里,却几个月没动。
决策档案
type=decision 存三件事:当时有哪些选项、选了哪个以及为什么、预期什么结果。
日后那次选择的结果露头了,回到这条上补一句实际如何。这一条比任何建议都值钱:它是校准判断力的唯一依据。
装哪些
记忆和账本是两个独立插件,可以按需要组合。
只装 mylife
知识账、生活账、周报、决策档案全部正常。记忆相关的五个动作(memory_list / memory_search / memory_add / memory_update / memory_delete)会统一返回「记忆服务未就绪(yammory_system 未加载,无法读写记忆)」,面板的记忆页空白。
账本照常能用。只是它不知道您是什么人,给的建议会偏通用。
只装 yammory_system
得到完整的记忆能力:记忆条目、领域水平、面板、审批审计、整理。 它不需要 mylife,源码里也不引用 mylife——两个插件的依赖是单向的。
两个都装(推荐)
账本能读到您是什么人,建议才会贴着您的实际情况。
差别在一个例子上就能看出:您说「我想拿五千块投一个副业」。
- 只装账本:它只能给一套通用的风险清单。
- 接上记忆:它知道您大二、家里月收入不高、这五千约等于家里一个月收入,于是问题会变成「这五千具体买什么,是硬设备支出还是三个月内能回本的润滑剂」。
同一个问题,后一种才叫贴身。
记忆插件
yammory_system与 mylife 由同一个作者维护(仓库KhalilYamber/yammory-system,Apache-2.0)。该仓库目前为私有,需要安装请在本仓库提 issue 索取。
安装
见 docs/INSTALL.md。零运行时依赖,一条 link: 即可装上。
验证
node test/verify.mjs # 逻辑自检,不需要 DSH
node dev/panel-test.mjs # 真机面板(需 DSH 带 --remote-debugging-port=9222 启动)
真机测试走 CDP 连 Electron,底座在 dev/live-harness.mjs。截图默认写 dev/shots/,不入仓库(含本机会话标题)。
设计立场
账本的价值在「可信」,不在「多」。一条没有出处的记忆,比没有记忆更危险。
所以数据结构上强制区分来源(用户说的 / 推断的 / 猜的),三档不许混。模型读到 outline_only 的节点时,正确做法是问用户,不是替他补全。
目录
AGENTS.md agent 的着陆页(项目的硬边界都在这)
PROGRESS.md 当前进度与已知问题
src/
store/ 存储层(SQLite,两本账 + meta)
tools/ 工具面(模型怎么读写)
client/ 面板(侧栏抽屉)
dev/ 真机测试脚本
docs/ 安装与测试说明
许可
MIT
No comments yet. Be the first to write one.