itr-del/dsh-cue-bank

itr-del★ 0最后同步: 2026-08-15

在 GitHub 打开

Cross-session event-cue memory plugin for DeepSeek Harness: auto-builds a persistent cue bank from conversations and re-injects remembered context on topic switches.

README 摘要

dsh-cue-bank — 跨会话「事件触点记忆」插件 让 Agent 的记忆能力向人类靠拢:人脑可以在不同任务间随时切换,靠的是对事件建立 多维触点 (关键词、视角、触发物…),触点被当前情境激活后,从长期记忆快速拉取事件细节。本插件把这一机制在 dsh(DeepSeek Harness)上落地。 设计原理 两层架构 关键设计决策 1. 动态组装注入(不污染持久历史) 使用 systemPrompt.context() 注册动态上下文:每次 prompt 组装时求值 provider,生成 带来源的 runtime-context 快照 ,随请求发送但不写入持久 session 历史。话题不切换时不注入,保持上下文干净。这正是与 agent-instructions (持久注入)的关键区别。 2. 触发时机可配置 配置 默认 说明 topic.switchDetection true 开启话题切换检测 topic.switchThreshold 0.25 关键词重合度低于此值视为切换(0 1) topic.scanEveryTurn false 每轮都扫描(灵敏但开销大); false 时只在切换时扫描 3. 匹配算法:双模式可配置 模式 成本/次唤醒 效果 适用 keyword (TF 加权穷举) 0(纯本地) 词面重合准确,语义弱 无外部 key vector (向量余弦) ≈ ¥0.000025(见下) 语义匹配强 有 embedding key auto (默认) — 有 key 用向量,否则降级关键词 推荐 ⚠️ DeepSeek 官方 API 不提供 embedding 端点 (见 issue 806),向量模式走 OpenAI 兼容接口(默认 SiliconFlow BAAI/bge-m3 )。库向量在 写入时 预计算并缓存,唤醒时只编码 1 条 query,不重复计费。 成本估算 (bge-m3 / SiliconFlow,2026-08 行情): - 单次唤醒:编码 query 50 tokens ≈ ¥0.000025 (每 1 万次话题切换约 ¥0.25) - 写入时:每轮 1 次嵌入(可忽略) - 关键词模式:零外部成本 4. 通用插件(所有 agent 生效) 监听全局 agent/created ,对每个 agent 挂载唤醒/写入钩子,不限于飞书。 userId 从 session id 提取( feishu:ou xxx → ou xxx ;其他 session 用完整 id),按用户分片存储。 5. 全局存储 触点库存于 $DSH HOME/storages/cue-bank/users/ .json (默认),跨 profile、跨会话共享;可用 storageRoot 覆盖。单用户触点上限 200 条(LRU 淘汰)…

在 GitHub 查看完整 README →
工具/开发dsh-pluginagent

分类