deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:beijingwahw/dsh-companion
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
English | 中文
版本说明:本仓库为精简版,包含 A–G 七大模块(对话导出 / 交接摘要 / 成本优化 / 全局检索 / 本地语义检索 / 对话知识资产 / 跨会话知识合成)。 开发者版(A–J 九大模块,含执行轨迹分析、Prompt 工作台、多模型竞技场、任务编排、安全审计)请见 beijingwahw/dsh-companion-dev。
DeepSeek Harness 官方伴侣插件 —— 基于 Cordis 框架与 Harness Plugin SDK 构建,为 DeepSeek Harness 平台提供对话智能导出、上下文交接摘要、API 成本优化、全局对话检索、本地语义检索、对话知识资产与跨会话知识合成七大能力。
strict: true,ESM)https://api.deepseek.com)| 模块 | 能力 | 独立开关 |
|---|---|---|
| A · 对话智能导出 | Markdown / PDF / JSON / PNG 长图导出、回合级勾选导出(角色徽章 + 内容预览 + 全选/全不选,仅导出选中回合)、时间戳开关、隐私脱敏(手机号/邮箱/身份证/银行卡/IP 地址/API 密钥/JWT 自动打码)、批量可视化多选(筛选 + 全选 + 已选计数)、多会话批量 ZIP 打包、导出进度实时显示与一键中止;含中文的 PDF 由客户端 canvas 光栅化为免打印多页 PDF(无 window.print() 对话框冻结) |
enableExport |
| B · 上下文交接摘要(上下文工程 2.0) | 会话选择面板(当前会话徽章 / 筛选 / 选中任意历史会话)、一键生成 ≤500 字四段式交接摘要、map-reduce 分层摘要(超长对话分块压缩,突破单次字符预算,段级缓存复用)、查询聚焦(输入主题定向保留相关内容)、上下文血缘图谱(追踪摘要跨会话传播链路:来源/后代 + 深度)、上下文压力监测(token 估算 + 耗尽预测 + 四级健康建议,交接前一眼看清"还能聊多久")、可编辑、复制到剪贴板、保存为模板、导入摘要作为新对话的 system 首条消息实现上下文继承、摘要质量体检(纯本地评分:词元覆盖 / 四段式结构 / 长度纪律 / 压缩比 + 漏词清单——摘要丢了什么一眼可见) | enableHandoff |
| C · API 成本优化(开发者模式 + 预测性成本智能) | API Key 加密托管、官方动态计价引擎(每小时抓取 DeepSeek 与国产厂商官方定价页,新模型/调价自动导入,抓取失败静默降级内置快照)、峰谷分时计价(高峰时段按高峰价计费)、峰谷自动调度(高峰窗口实时解析自官方定价页)、模型智能路由、日/月双档预算 80%/100% 预警并自动暂停非必要调用、缓存命中折扣计费、每日/每周 Token 消耗与费用报表;预测性成本智能:支出预测(OLS 线性回归外推 + 月末投影)、异常检测(中位数 + MAD 鲁棒 z 分数)、what-if 模拟(调用量倍数 / 缓存命中率 / 模型迁移场景沙盘)、变化归因(按模型分解费用变化,定位"这个月多花的钱去哪了");节能顾问(GET /cost/advice:把用量数据翻译成按优先级排序的行动建议——预算刹车摊平日预算、峰谷迁移节省估算、缓存命中率提升潜力、模型迁移候选,每条附月度节省估算) |
enableCost |
| D · 全局对话检索 + 对话内搜索 | 关键词模糊搜索、时间范围筛选、自定义标签增删与按标签过滤、结果点击直达对话、自然语言时间过滤(range=近7天 / 上周 / 本月 等中文与英文表达直接翻成时间窗,未识别静默降级);对话内搜索(Ctrl+F 浮动查找栏,CSS Custom Highlight API 无侵入高亮,大小写/全词开关、查询历史、流式输出期间自动重同步) |
enableSearch |
| E · 本地语义检索(自适应检索系统) | 纯本地混合检索引擎:BM25 词法 + 字符 trigram 哈希向量语义近似 + RRF 倒数排名融合 + 时序感知加成,检索质量显著超越关键词匹配且零外部依赖;查询智能(拼写纠错 + 从你的语料学到术语关联的共现扩展,响应携带溯源注记)、质量诊断(相关度强度 + 双通道覆盖率 + 可执行建议)、相关性反馈学习(点击即反馈:查询词并入会话点击画像,后续检索温和上浮你最终打开过的会话——饱和计数 + 90 天半衰 + 35% 封顶三重防漂移,越用越懂你)、MMR 多样性重排(λ=0.7 贪心选择,头部结果从"最优的重复"变成"最优且互补的组合")、知识地图(全部会话质心贪心聚类为主题簇,发现"重复解决过哪些问题",点击簇标签直达深入检索)、查询建议(输入框自动补全:语料前缀补全 + 共现续写 + 点击画像加权,"你的语料告诉你该搜什么")、命中解释(每条命中携带透明账本:词法命中词 × 频次、语义形状相似度、新近/反馈加成分解 + 一句话人话摘要——"为什么是这个会话"一目了然)、零命中救援(检索失败自动放宽查询:宽阈值纠错 0.35 + 噪声词剔除后重试,救援过程全溯源可回退)、检索盲区分析(零命中查询自动入日志,词元级聚合挖掘"反复搜索但历史无覆盖"的主题——次数 × 停留跨度 × 新近度评分,告诉你该补什么知识)、主动脉搏(主动洞察引擎:盲区缺口 + 反馈学习画像 + 索引健康三类信号源即时聚合为洞察卡片,按严重度排序、封顶 6 条,推送克制)、在线学习排序(轴线 28,FTRL-Proximal:点击即训练——skip-above 正负例配对 + 逐坐标自适应学习率 + L1/L2 正则,学到的乘数温和上浮你更可能点开的会话(±30% 封顶、warmup 渐进),模型持久化重启不丢);语义/关键词模式一键切换、语义排名徽章(词法/语义名次)、命中摘要片段;惰性增量索引(updatedAt 漂移检测 + 5 秒节流),语料统计与倒排表增量维护(无过滤查询免全语料扫描,实测提速 37 倍);负向词排除(-词 修饰符:docker 网络 -k8s 把含排除词的会话整体出局——排除是硬约束不是降权,判定与索引同源分词,响应附 negations 溯源);命令面板 find <词> / map [minSize] / blindspots / pulse |
enableRetrieval |
| F · 对话知识资产 | 把对话升级为可积累的知识资产:实体抽取(纯本地规则抽取命令 / 路径 / 技术专名 / 代码标识符 / 中文术语 / 版本号六类实体,零 LLM 调用)、自动标签建议(freq × 类型权重 × IDF 打分推荐标签,一键应用,尊重用户判断)、关联会话推荐(实体重叠 + IDF 加权 + 余弦式归一,回答"还有哪些对话在谈同一件事")、全局实体图谱(点击实体直接发起检索,知识变检索入口)、主题趋势演化(实体动量:近窗口 vs 上一窗口频次变化率,rising / falling / stable 三向判定 + 最近 8 周逐周覆盖时间线,一眼看出"最近在火什么、什么在退烧")、认知引擎(前瞻记忆 / 间隔重复 / 类比检索 / 遗忘预测 / 节律自适应 / 认知负荷调度,轴线 20–25)、图认知引擎(知识大陆:实体共现图上的 Louvain 社区发现,知识域自然聚块 + 骨架实体,轴线 26;星图导航:个性化 PageRank 从查询实体多跳浮现隐性关联,轴线 27;主题漂移:BOCPD 贝叶斯变点检测定位"注意力何时从 A 切到 B",轴线 30;记忆固化:MinHash-LSH 近重复聚类——同一问题的多次出现折叠为强化度,重复从污染变资产,轴线 31);知识考古(轴线 32):会话流时间切片 + 逐纪元 Louvain 社区发现——相邻纪元社区血脉匹配产出板块事件(新生 / 延续 / 分裂 / 合并 / 消亡),回放知识版图的地质史;回声雷达(轴线 33):会话级 MinHash 复发检测——回声簇 + 平均复发周期("你每 12 天重新问一次 docker 网络")+ 近窗回声率,复发 ≥3 次的主题建议固化为交接模板;知识暗物质(轴线 34):实体共现图上的链路预测——CN / Adamic-Adar / Resource Allocation 三指数给"从未同场出现但共享强邻居结构"的实体对打分,检测该连而未连的知识对(你的历史暗示相关、却没有任何一场对话同时谈到的暗区) | enableKnowledge |
| G · 跨会话知识合成(Deep Research) | 面向全部历史对话的深度研究引擎:块级检索(会话按回合分块,词法命中率 + trigram 余弦双通道打分)、证据选择(次模组合优化:设施选址目标 = 块相关分 + 问题方面覆盖,惰性贪婪逼近 (1−1/e) 最优——互补证据优先、冗余证据边际增益自动归零,防单一会话垄断证据)、契约式合成(只用证据作答 + [编号] 引用标注 + 证据不足时明确声明,结论先行、矛盾明示)、知识演化追踪(跨会话信念版本化:同一主题的版本号/数值随时间变化即演化事件,语义化版本比较判定升级/回退,生成"你现在应该相信什么"的信念时间线——答案不是错的,只是旧了)、证据来源一键跳回原会话;研究预演(POST /synthesis/preview:零 LLM 证据预演——先看将采用的证据、方面覆盖与 token 预算占用,再决定是否花钱合成);命令面板 research <问题> 同通道 |
enableSynthesis |
七个模块均为独立 Cordis 子插件,可任意组合启停,互不影响。
认知架构 3.0(轴线 1–34):插件内部沿 34 条「轴线」持续演进——从统计(BM25 / 规则实体抽取 / 指数滑动平均)到学习(FTRL-Proximal 在线排序 / 间隔重复闭环控制 / SM2 遗忘调度)再到推理(Louvain 社区发现 / 个性化 PageRank / 次模证据选择 / BOCPD 变点检测 / MinHash-LSH 记忆固化 / 时间切片板块构造 / 会话级回声雷达 / 共现图链路预测)。全部认知计算纯本地完成:零 LLM 调用、零网络请求、零隐私外泄。
>= 0.1.0^22.19 || >=24npm install -g pnpm)dsh plugin add beijingwahw/dsh-companion --profile web
启动后插件面板自动加载:
dsh web
常用进阶命令:升级
dsh plugin upgrade dsh-companion --profile web;卸载dsh plugin remove dsh-companion --profile web;本地路径安装dsh plugin add ./dsh-companion --profile web。更多方式见「开发期热更新」后附。
| 层 | 方法 | 生效范围 |
|---|---|---|
| 运行配置 | 编辑 dsh 用户层 cordis.patch.yml(~/.dsh/profiles/<name>/ 或 ~/.dsh/),保存即生效 |
dsh 原生监视用户层,事务性重载该行(bundle 层默认值已全量列出,照抄整行覆盖即可) |
| 开发期代码 | npm run dev 起独立 cordis + HMR 进程 |
保存 src/ 下任意文件或 cordis.yml → 旧实例卸载(effect 回卷)→ 新代码挂载,无需重启 |
| 安装产物 | 改代码 → pnpm build → 重新 dsh plugin add beijingwahw/dsh-companion --profile web → 重启 dsh |
更新已安装的插件 |
npm run dev 的组成:仓库根 cordis.yml 依次挂 logger / timer / hmr / 宿主桩 / 本插件(直接加载 src/index.ts,config 与 cordis.patch.yml 逐键一致);
dev/host-stubs.ts 提供 dsh 宿主 7 个服务的最小桩(webServer / storageDomain / credentials / sessionQuery / commands / settings / systemPrompt)——存储域为内存版且按名缓存,热重载后开发数据不丢。
注意:开发 HMR 需 Node ≥ 24.11(24.1.0 等早期 24.x 的 Node 内部接口与 cordis-plugin-loader 1.0.2 不兼容,表现为编辑文件不触发重载)。
git clone https://github.com/beijingwahw/dsh-companion.git
cd dsh-companion
pnpm install
pnpm run build
pnpm test
dsh plugin add . --profile web
开发循环与测试约定详见 CONTRIBUTING.md;变更历史见 CHANGELOG.md。
companion 存储域;/cost/state 仅返回 apiKeyConfigured 布尔)。/cost/test-call)。export。选择格式(Markdown / PDF / JSON / PNG 长图),勾选是否保留时间戳(默认开启)、是否隐私脱敏,确认后文件经浏览器下载到本地。export-batch 仍可直接按 ID 列表导出)。window.print() 对话框——该路径在部分平台(尤其 Windows Chrome)会冻结整个浏览器;无光栅能力的环境(命令面板)退回打印视图由浏览器另存为 PDF。handoff),对话框顶部的会话选择面板默认选中当前会话(带「当前」徽章)并自动生成摘要;也可按标题 / 会话 ID 筛选后选择任意历史会话生成(选中即自动重新生成,切换会取消在途请求并重置编辑状态)。插件调用 DeepSeek API 按固定四段式 Prompt 生成摘要:核心结论 / 已解决的问题 / 关键背景信息 / 待办事项与未解决问题(≤500 字)。GET /handoff/context-health):摘要对话框顶部的压力仪表实时展示选中会话的 token 占用——估算 token 数与占用百分比进度条、按近 N 回合平均增速外推的"还可聊多少回合"耗尽预测、四级健康分级(healthy / watch / advice / critical)与对应交接建议;帮助用户判断"现在交接是否已经太迟"。handoff-import)粘贴摘要。插件将其武装给下一个新对话,自动作为 system 角色第一条消息注入,实现跨对话上下文继承。deepseek-chat,代码生成、推理等复杂任务走 deepseek-coder;支持自定义路由规则覆盖默认策略。usage 可在面板内快速查看本月文本报告。GET /cost/forecast:支出预测——OLS 线性回归拟合「日费用 ~ 时间」趋势并外推未来 N 天,返回趋势斜率、拟合优度 R²、日均费用、逐日预测点与月末费用投影(已花费 + 未来预测到月底);历史不足 5 天时返回 sufficient: false。GET /cost/anomalies:异常检测——中位数 + MAD(绝对中位差)鲁棒 z 分数定位费用异常日,对离群值免疫(均值/标准差会被异常值本身污染);按严重度分级(mild / high / critical)并返回期望值与偏离倍数。POST /cost/what-if:场景沙盘——在历史基线上叠加调用量倍数、目标缓存命中率、模型迁移(from → to 比例)三种算子的任意组合,返回基线 vs 投影的日费用、30 天投影与按模型分解。GET /cost/attribution:变化归因——对比最近 N 天与前 N 天两个等长窗口,按模型分解费用变化贡献份额(降序),回答"这个月多花的钱去哪了"。search):tag 或结果页为会话增删自定义标签,支持按标签筛选。Ctrl/Cmd+F 打开浮动查找栏:Enter / Shift+Enter、F3 / Ctrl+G:下一个 / 上一个命中(环绕);Esc 关闭;↑ / ↓ 浏览查询历史;Aa / ab 开关:区分大小写 / 全词匹配;expansion.notes),检索视图页的智能提示栏以 Pill 展示"auth←鉴权(共现)",扩展行为完全可解释。1 + 0.25 × 2^(-年龄/30天)——排名语义不变,仅把同等相关性向近期轻推(最新文档最多 +25%,相关性仍占主导)。1 + 0.3 × (2p−1) × warmup 温和上浮你更可能点击的会话(±30% 封顶,warmup 随训练量渐进防小样本过调),只调序不颠覆排序语义;模型持久化到存储域,重启不丢。GET /retrieval/status 附 ranker 诊断(训练量 / 点击数 / warmup / 逐特征权重方向——模型学到了什么完全透明)。GET /retrieval/blindspots / 命令 blindspots):零命中(且救援也失败)的查询自动写入日志——"反复想找但历史里没有"是最真实的知识缺口信号。分析时按词元聚合(多主题长查询同时给每个主题锚记一次敲击),盲区评分 = 搜索次数 × log(1 + 首末停留天数) × 新近度(90 天半衰),孤例失败不推送;每个盲区附查询原形与一句话行动建议。GET /retrieval/insights / 命令 pulse):主动洞察引擎——信号提供者注入式架构聚合盲区缺口(轴线 19)、反馈学习画像(轴线 11)、索引健康(覆盖率/最近同步)三类信号源为洞察卡片;按严重度(critical/watch/info)排序、封顶 6 条、单一信号源失败静默隔离;检索视图页「主动脉搏」按钮即开即合成。POST /retrieval/reindex 可手动全量重建。find <检索词> 同样走混合检索,输出附查询扩展溯源与质量摘要行。GET /knowledge/trends):知识面板顶部展示实体动量榜——对比近 N 天与上一 N 天两个等长窗口的实体频次,计算动量(变化率)并判定 rising / falling / stable 三向;每行附迷你周级柱状图(最近 8 周逐周覆盖会话数),点击趋势行直接以实体名发起检索;动量排序优先 |momentum| × log(总频次),避免"3→6 次"的小样本噪声压过真正的长期趋势。GET /knowledge/cognition / /knowledge/intentions / 命令 todo):对话里说过要做的事("明天试试这个方案"、"下周再优化"、"回头重构")自动提取为前瞻意图——时间标记(明天/后天/周末/下周/下个月,模糊标记取 7 天缺省视界)× 意图动词共现判定,问句排除("怎么修复?"是求助不是承诺);到期后主动浮现(超期越久越靠前,≥14 天升级为 critical 洞察)——"5 天前你说要试试 X,做了吗?"兑现或放下,都好过遗忘。POST /knowledge/review/grade / 命令 review):从对话中提取"问题 → 解法"片段作为知识卡片(问题行 × 窗口内解法行配对),SM2 精简版间隔调度(1/3/7/14/30/60 天阶梯)——到期提醒复习,检索式练习(先看问题回忆解法,再翻开核对),"记得"升档、"忘了"归零次日重来;新片段先沉一晚次日首复习,对抗遗忘曲线。GET /knowledge/analogy?q= / 命令 analogy):把问题抽象为结构形状(约束类别 × 解法类别:网络/性能/版本/依赖/并发…),跨全部历史经验做形状级匹配——相似度 = 0.7 × 约束重叠系数 + 0.3 × 解法重叠系数;主题词元重叠低而形状分高判定为跨域类比(领域不同而结构相同,如 docker 网络隔离 ↔ k8s service 互通——主题检索永远找不到的先例),单独标注优先展示。GET /knowledge/forecast / 命令 forecast):为每一条知识片段给出连续的记忆画像——艾宾浩斯指数衰减模型 R(t) = exp(-t/S) 计算当前保持率(含从未进入复习循环的旧片段),稳定性 = 档位间隔 × 个体节律 × 标定因子(标定保证「到期时刻的预测保持率恰等于阈值」,与轴线 21 调度数学自洽);三档分区:≥70% 稳定 / 30–70% 滑落区(最佳巩固窗口,救得回来)/ <30% 深度遗忘区;节律漂移预警——复习日程按当时的节律排定,预测用当前的节律重算,节律变差时未到期的知识也会被提前预警(日程已过期,记忆还在衰减)。GET /knowledge/rhythm / 命令 rhythm):你不是「平均人类」——闭环比例控制器以 85% 命中率(合意困难工作点)为目标动态调整节律系数 ease ∈ [0.5, 2.0],直接乘进间隔阶梯:命中率高 → 间隔拉长省出注意力,命中率低 → 间隔压缩抢在遗忘前巩固;间隔拉长 → 命中率下降 → ease 回落,控制器自稳收敛到「你的」遗忘曲线;冷启动保护(样本不足 3 次不动系数)。GET /knowledge/load?cap=):注意力是稀缺资源——到期复习按「可救性 × 巩固投资」分诊:滑落区知识正处最佳巩固窗口优先安排,深度遗忘区降权(按重新学习节奏,不挤占救得回来的名额),高档位滑落加权保护(60 天档滑落比 1 天档损失更大);每日封顶(默认 8 条)+ 洪峰顺延(不是丢弃),负荷状态透明(clear / normal / overload)——复习是一份每日计划,不是一场倾倒。GET /knowledge/continents / 命令 continents):实体共现图上的 Louvain 社区发现——两阶段迭代(局部移动 → 社区聚合)最大化模块度,把你的知识域切成自然聚块的大陆,无需预设簇数。与内容聚类不同,图社区发现显式惩罚"随机连接的稠密":高频枢纽实体(npm、docker)与谁都共现,但只会归属于它连接最紧密的一块大陆。每块大陆展示成员数、覆盖会话数、内聚度与核心实体(按度数降序的骨干);多层社区逐层聚合自动发现多尺度结构,模块度 Q 量化"大陆划分有多可信"。GET /knowledge/starmap?q= / 命令 starmap):从查询命中的实体(种子)出发,带重启的个性化 PageRank(阻尼 0.85)计算稳态"引力"分布——一个实体与种子在图上连接越密,引力越强。关键价值在多跳关联:距种子 2–3 跳的高分实体(标注跳数)是你没想到的隐性关联(主题检索永远找不到的图上邻居),如从 docker 出发经共现链抵达 k8s service。种子未命中时返回引导文案(换用实体专名)。GET /knowledge/drift?lambda= / 命令 drift):会话流(标题 + 实体名投影,零转录重读)上的 BOCPD 贝叶斯变点检测——unigram 语言模型算逐会话意外度(bit 数),危险率 λ 控制期望运行长度(缺省 16,区间 [6, 96],小 = 对切换更敏感),前向后向平滑得变点概率。输出"注意力何时从 A 切到 B":每个变点带置信度、切换强度(bit 跳变)与前后特征词对照;当前主题段附持续长度与特征词。回答"我这段时间的兴趣轨迹是什么、在哪里换了频道"。GET /knowledge/consolidation / 命令 consolidate):全部「问题→解法」片段上的 MinHash-LSH 近重复聚类——同一个问题换个文件名再问一遍、相似的配置改个参数再来一次:128 维 MinHash 签名(期望相似度 = Jaccard)经 16 带 × 8 行 LSH 分带生成候选对(S 曲线阈值 ≈ 0.71),真实 Jaccard ≥ 0.65 验证,并查集传递归并成簇。每簇的报告即价值:出现次数 = 强化度(间隔重复的天然燃料——重复 N 次的知识天然值得更高复习优先级)、首末出现时间、代表问题与簇紧致度;冗余折叠数与压缩率量化"你的知识库有多虚胖"。把重复从污染变成资产。GET /knowledge/archaeology?windows=N / 命令 archaeology):会话流按 index 均分为 N 个「纪元」(缺省 4,范围 2–12),每纪元独立构建实体共现图并跑同源 Louvain(参数一致保证跨纪元可比),相邻纪元的社区按成员实体键集合算 Jaccard 建立血脉(阈值 0.3),血脉结构分类为五类板块事件——新生(新知识域形成)、延续(大陆跨纪元存活,附成员重叠率)、分裂(关注点分化,如 docker 网络分化出 k8s service 与 istio)、合并(分散主题收拢成一块大陆)、消亡(知识域沉没:换方向/问题已解决)。轴线 26 回答"版图现在长什么样",轴线 32 回答"这块版图是怎么长出来的";与轴线 30 的分工——漂移在会话流上看注意力切换(看浪),考古在纪元间看知识域结构变迁(看洋流)。GET /knowledge/radar?days=N / 命令 radar):比片段级重复更隐蔽的浪费是整场会话的复发——两周前问过"docker 容器怎么互相访问",今天又开了一场几乎一样的会话。雷达把轴线 31 同源的 MinHash-LSH 应用到会话粒度(文本投影 = 标题 + 实体名,零转录重读;阈值 0.55),回答三个问题:回声簇(哪些会话互为近重复)、复发周期(首末间隔 / (次数−1)——"你平均每 12.3 天重新问一次",周期短于遗忘阶梯就意味着总在遗忘后重新发现)、回声率(近 N 天新会话中命中历史回声的占比——你的新对话有多少在"重新发现已知")。行动分层:复发 ≥3 次 → 建议固化为交接模板(直连模块 B);恰好 2 次 → 关注级。GET /knowledge/darkmatter?limit=20 / 命令 darkmatter):轴线 26/27 都只看共现图上看得见的连接,但一张知识图谱最值钱的信息往往是该连而未连的边——docker 与 systemd 从未同场出现,却共享 5 个共同邻居;你的历史在用共现结构暗示"它们相关",只是没有一场对话把它们放到一起。暗物质引擎在实体图上做链路预测(Liben-Nowell & Kleinberg 2003 局部指数族):对每个未连接且存在共同邻居的实体对计算 CN(共同邻居数)、Adamic-Adar(Σ 1/ln(deg)——经过枢纽的"认识"不值钱,低度专业桥才是强证据)与 Resource Allocation(Σ 1/deg——更强折扣)三指数,融合分 = 0.5×AA 归一 + 0.5×RA 归一;候选对按桥节点展开天然跳过无邻居对,枢纽(度数 > 40)不作桥证据,病态稠密图预算熔断。暗连接是研究建议而非事实——它们回答"下一场对话值得把谁和谁放到一起",暗物质清单 = 知识宇宙里最值得点亮的暗区。与轴线 27 的分工:星图沿已有边扩散引力(已知连接的深挖),暗物质预测缺失边(未知连接的发现)。CognitionPanel)一屏整合六轴——到期意图列表(超期徽章 + 即将到来预告)、遗忘预测区(保持率进度条 + 分区徽章 + 距跌破阈值倒计时,滑落区优先展示)、复习卡片(负荷分诊结论 + 回忆 → 核对 → 自评闭环 + 节律系数标记)、类比检索框;洪峰时复习区顶部显示顺延徽章与负荷摘要;「主动脉搏」同时聚合认知脉搏(到期意图 / 复习 / 片段资产 / 遗忘预测 / 节律 / 负荷 / 主题漂移 / 记忆固化八类信号),认知信号与检索信号统一推送。insight(全局图谱)或 insight <会话ID>(单会话洞察)。research <问题>(如 research 我之前对性能优化得出过哪些结论?)。[编号] 引用标注、先给直接结论再列依据且矛盾明示;回答即带引用的"迷你研究报告"。POST /synthesis/answer(body: { question })、POST /synthesis/preview(零 LLM 证据预演)→ { answer, model, sources[], evolution, stats },供外部集成消费。根配置(cordis.patch.yml 可覆盖任意字段):
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
enableExport |
boolean | true |
启用模块 A |
enableHandoff |
boolean | true |
启用模块 B |
enableCost |
boolean | true |
启用模块 C |
enableSearch |
boolean | true |
启用模块 D |
enableRetrieval |
boolean | true |
启用模块 E(本地语义检索) |
enableKnowledge |
boolean | true |
启用模块 F(对话知识资产) |
enableSynthesis |
boolean | true |
启用模块 G(跨会话知识合成) |
apiBaseUrl |
string | https://api.deepseek.com |
DeepSeek API 基址(manifest 已放行该域名) |
apiTimeoutMs |
number | 60000 |
单次 API 调用超时(毫秒) |
停用单个模块:将对应开关置为 false(配置层),或在 manifest.json 的模块声明中关闭。模块之间零耦合,停用一个不影响其余模块。
src/
├── index.ts # 宿主入口:挂载核心服务 + 按配置挂载七个模块子插件
├── config.ts # 根配置 schema(schemastery 校验)
├── core/ # 核心基础设施
│ ├── service.ts # CompanionCore 根服务(ctx.companion,持有动态计价引擎)
│ ├── vault.ts # SecretVault:AES-256-GCM 加密保险库
│ ├── crypto.ts # AES-256-GCM 原语(Node crypto)
│ ├── deepseek.ts # DeepSeek Chat Completions 客户端
│ ├── usage.ts # 用量记账存储(日粒度,含缓存命中 tokens)
│ ├── pricing.ts # 计价桥接层(官方 usage → 计价引擎用量形状)
│ ├── price/ # 动态计价引擎(移植自 dsh-usage-ledger):
│ │ # types / catalog(多厂商刊例价目录)/ scrapers(官方定价页解析)/ service
│ ├── retrieval/ # 本地混合检索引擎(轴线 1/8/9/10):
│ │ # tokenize(分词/trigram)+ engine(BM25 + 哈希向量
│ │ # + RRF 融合 + 时序加成 + 增量统计/倒排 + 摘要片段)
│ │ # + query(查询智能:拼写纠错 + 共现扩展)
│ │ # + quality(检索质量诊断:四级判定 + 通道覆盖 + 建议)
│ │ # + ranker(FTRL-Proximal 在线学习排序,轴线 28)
│ ├── graph/ # 实体共现图与图算法(轴线 26/27):
│ │ # graph(共现图构建)+ louvain(社区发现:模块度最大化,
│ │ # 两阶段迭代 + 多层聚合)+ ppr(个性化 PageRank:带重启
│ │ # 随机游走稳态分布 + BFS 跳数)
│ ├── cognition/ # 认知三轴(轴线 20/21/22)+ 元认知三轴(轴线 23/24/25)
│ │ # + 漂移与固化(轴线 30/31)+ 考古与雷达(轴线 32/33):
│ │ # prospective(前瞻记忆:意图提取 + 到期计算)
│ │ # + episodes(问题→解决片段提取与结构形状)
│ │ # + spaced(SM2-lite 间隔重复调度,含 ease 节律乘子)
│ │ # + analogy(结构形状跨域类比匹配)
│ │ # + forecast(遗忘预测:保持率画像与分区)
│ │ # + rhythm(个体节律:ease 闭环控制)
│ │ # + load(认知负荷调度:分诊 + 封顶 + 顺延)
│ │ # + drift(BOCPD 主题漂移:unigram 意外度 + 变点检测)
│ │ # + consolidation(MinHash-LSH 记忆固化:近重复聚类)
│ │ # + archaeology(知识考古:纪元切片 + 板块事件分类)
│ │ # + radar(回声雷达:会话级复发检测 + 回声率)
│ │ # + darkmatter(知识暗物质:共现图链路预测)
│ ├── synthesis/ # 次模证据选择(轴线 29):设施选址目标 + 惰性贪婪 (1−1/e)
│ ├── insights/ # 主动脉搏引擎(轴线 18):信号提供者注入式聚合
│ │ # (盲区/学习/索引/意图/复习/片段/预测/节律/负荷/漂移/固化 → 洞察卡片)
│ ├── time.ts # 北京时间峰谷窗口计算
│ ├── transcript.ts # 对话转录格式化(MD/JSON)
│ ├── privacy.ts # 隐私脱敏(手机/邮箱/身份证/银行卡)
│ ├── pdf.ts / zip.ts # 零依赖 PDF 生成 / ZIP 打包
│ └── http.ts # 私有 HTTP 路由器(前缀 /companion)
├── modules/
│ ├── export/ # 模块 A:导出 + 批量 ZIP + 光栅载荷(PNG/免打印 PDF)
│ ├── handoff/ # 模块 B:摘要生成 / 模板 / 武装导入
│ │ # + hierarchical(map-reduce 分层摘要)+ lineage(血缘图谱)
│ │ # + context-health(上下文压力监测:token 估算 + 耗尽预测)
│ ├── cost/ # 模块 C:网关 / 调度器 / 路由 / 日/月双档预算 / 设置
│ │ # + forecast(预测性成本智能:预测/异常/what-if/归因)
│ ├── search/ # 模块 D:检索 + 标签
│ ├── retrieval/ # 模块 E:语义检索插件(混合排序接线 + 增量索引)
│ ├── knowledge/ # 模块 F:对话知识资产(entities 实体抽取 + 倒排索引接线)
│ │ # + trends(主题趋势演化:实体动量 + 周级时间线)
│ │ # + 认知六轴接线(意图/片段/复习三表 + 认知端点与命令)
│ │ # + 图认知四轴接线(大陆/星图/漂移/固化端点与命令)
│ └── synthesis/ # 模块 G:跨会话知识合成(Deep Research)
│ # retrieval(块级检索)+ submodular 次模证据选择(轴线 29)
│ # + 合成 Prompt 构建
├── client/ # 浏览器端 UI(slots 注入,官方组件库)
│ ├── index.tsx # 客户端入口:slot 注册 + 对话内搜索控制器生命周期
│ ├── api.ts # 类型化 fetch 封装(全部模块的私有 HTTP API)
│ ├── raster.ts # 客户端光栅导出引擎(移植自 dsh-conv-export):
│ │ # PNG 长图 / 免打印多页 PDF(foreignObject → canvas → JPEG → PDF 组装)
│ ├── convsearch/ # 对话内搜索(移植自 dsh-conv-search):
│ │ # engine(Highlight API)/ controller(浮动栏+快捷键)/ styles
│ └── components/ # 导出弹窗 / 摘要弹窗(聚焦+血缘+压力仪表)/ 导入 dock /
│ # 检索视图(语义开关+知识面板+趋势榜+认知面板+深度研究)/ 报表视图
└── types/ # Harness 子系统适配层类型声明
关键设计:
ctx.companion(核心服务)或 ctx.companionCost(成本网关)。/companion/*)复用同一套模块服务函数,无重复逻辑。conversation.session.header.actions、conversation.input.dock、conversation.view),组件取自官方 UI 原语库,颜色仅用语义令牌,无悬浮窗、无全局样式。完整的内部契约(服务签名、HTTP API、命令表、slot 清单)见 DESIGN.md。
| 要求 | 实现 |
|---|---|
| 数据本地化 | 对话内容、设置、API Key 仅写入 Harness 插件沙箱的 companion 存储域,不上传任何第三方服务器 |
| API Key 加密 | AES-256-GCM(12 字节随机 IV + 认证标签),自描述载荷 v1.<iv>.<tag>.<ciphertext>;密钥与密文分离存储 |
| 网络权限 | manifest.json 全量放行 DeepSeek 官方 API、全部国产与海外主流模型厂商端点、各厂商定价页及常见中转/聚合网关,供动态计价引擎实时抓取;存储域仅 companion;服务清单逐项列明 |
| 无追踪 | 无任何遥测 / 行为分析代码;manifest.json 显式声明 tracking: false, telemetry: false |
| Key 不外泄 | 任何响应、日志、事件中不出现 Key 明文;导出与摘要内容仅在浏览器本地生成 |
src/,TypeScript strict)manifest.json(权限与隐私声明)、package.json、cordis.patch.yml(bundle patch 层)、tsconfig.jsonREADME.md / README.en.md(双语):功能介绍、安装指南、使用说明DESIGN.md:架构契约与开发规范;CONTRIBUTING.md:贡献指南;CHANGELOG.md:变更历史pnpm test 统一入口(11 套件 / 226 项断言)+ GitHub Actions(Node 22/24)本插件在原有四大模块基础上,吸收并整合了以下三个同系仓库的核心能力:
| 来源仓库 | 吸收的能力 | 落点 |
|---|---|---|
dsh-usage-ledger |
官方定价页动态计价引擎(实时抓取/解析/兜底快照)、峰谷分时计价、多厂商价格目录与专用解析器、缓存命中折扣、日/月双档预算 | src/core/price/、src/modules/cost/ |
dsh-conv-export |
PNG 长图光栅导出、免打印对话框多页 PDF(foreignObject → canvas → JPEG → 零依赖 PDF 组装)、图片 data-URL 内联、回合级选择导出(回合预览列表 + 勾选面板 + 进度/中止交互) | src/client/raster.ts、src/modules/export/(kind:'raster' 载荷、GET /export/turns + turns 请求字段)、src/client/components/ExportDialog.tsx |
dsh-conv-search |
对话内搜索引擎(CSS Custom Highlight API 无侵入高亮)、浮动查找栏(快捷键/查询历史/大小写与全词开关)、流式输出 MutationObserver 重同步与命中锚点保持 | src/client/convsearch/ |
移植时统一了命名空间(companion-*)、注释语言与错误处理纪律,并按本插件的 slots/双通道架构重新接线;全部改动通过 tsc -p tsconfig.json 严格类型检查与累计 226 项冒烟断言(十一套套件:核心原语 28 项——隐私脱敏 / AES-256-GCM / ZIP / PDF / 北京时间峰谷 / 转录派生 / 计价换算;轴线 8/9/10 及引擎一致性 22 项;轴线 11/12/13 19 项;轴线 14/15/16 17 项;轴线 17/18/19 20 项;轴线 20/21/22 29 项;轴线 23/24/25 29 项;轴线 26–31 25 项;轴线 32/33 14 项——板块事件五类分类〔新生/延续/分裂/合并/消亡〕+ 回声簇 / 复发周期 / 回声率 / 行动分层;轴线 34 6 项——CN/AA/RA 三指数、度数折扣与已连对排除;七模块升级 17 项——脱敏 v2〔IP/密钥/JWT〕、摘要质量评分、节能顾问、自然语言时间范围、负向词排除、回声脉搏;另含 Louvain 双语料模块度、PPR 多跳引力、FTRL 收敛性、次模覆盖单调性、BOCPD 变点定位与 MinHash-LSH 传递闭包)。pnpm test 一键执行全部套件,CI(GitHub Actions,Node 22/24 矩阵)逐提交守护。
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。