长时间使用编码代理时,决策、约束和未完成工作会逐渐散落在大量对话中。dsh-memory-observer 为 DeepSeek Harness(DSH) 增加后台记忆层:在会话推进时提取观察,再整理为更持久的反思,让后续模型请求可以读取这些压缩记录。
项目受 elpapi42/pi-observational-memory 的设计思路启发,围绕 DSH 的扩展机制独立实现;仓库与 npm 包名均为 dsh-memory-observer。当前仓库版本为 0.1.0,采用 MIT 许可。项目说明
核心能力
- 后台观察与反思:在回合结束后,按新增来源 token 的阈值调度工作模型,记录决策、理由、约束、已验证结果与待办,再将观察整理为持续有效的记忆。
- 按代理注入上下文:通过独立的系统提示词区块提供记忆,不向原始会话日志追加记忆事件;记忆由会话日志派生,原始记录仍是依据。
- 按 ID 回溯来源:每条记忆带有短 ID,
memory_recall可依据观察的事件范围或反思的支持关系读取来源片段,便于核对过度压缩的信息。 - 可视化设置:在 DSH 设置页调整运行阈值、容量、工作模型和行为开关,查看会话计数及错误;设置即时生效,也可重置回插件配置。
- 持久化与恢复:记忆和设置分别存入宿主的 storage domain,在存储服务可用时,插件重载或应用重启后可以恢复。
- 复用准备好的压缩结果:接入兼容的 compaction 后端后,可用已有记忆响应压缩请求;条件不足时交回原有处理流程。安装与配置
技术实现
项目使用 JavaScript ESM、DSH/Cordis 扩展接口与宿主 React。Host 部分订阅会话事件、调用模型服务、注册提示词区块和召回工具;Client 部分注册中英文设置页,通过同源 JSON API 读写配置。
观察保留来源事件区间,反思关联支持它的观察 ID;提示词渲染受条数与 token 预算约束,并按记忆修订号缓存。工作循环包含防抖、重复内容过滤、失败退避和 JSON 输出解析,围绕持续会话中的状态管理展开。核心实现
当前使用边界
包声明适配 DSH ^0.2.1-rc.2。后台观察与反思仍需调用工作模型,默认沿用会话模型;记忆质量取决于模型与来源内容。观察池按旧记录优先移出,来源召回有长度限制,也依赖原始事件仍然存在。快速压缩须由后端发起 purpose: "compaction" 请求;缺少持久存储时,记忆仅保留在当前进程。
安装命令:dsh plugin add dsh-memory-observer
