beijingwahw/dsh-companion2

dsh-companion

DeepSeek Companion — DeepSeek Harness 官方伴侣插件:对话智能导出、上下文交接摘要、API 成本优化、全局对话检索。

AI 分析

核心用途是增强 DSH 的日常对话管理与导出能力,并提供 API 密钥安全管理与成本统计。适合对对话备份、检索及 API 费用监控有高要求的用户。

パッケージ
dsh-companion
バージョン
0.1.0
ライセンス
MIT
最終更新
2026/08/17

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:beijingwahw/dsh-companion

ドキュメント

README 全文を読む ↗

使用说明

配置 DeepSeek API Key(模块 C 前置)

  1. 打开插件设置页的「开发者模式」总开关。
  2. 在「API Key 管理」输入框粘贴你的 DeepSeek API Key 并保存。
    • Key 通过 AES-256-GCM 加密后存入 Harness 插件沙箱的 companion 存储域;
    • 任何接口响应、日志、事件中均不会出现 Key 明文(/cost/state 仅返回 apiKeyConfigured 布尔)。
  3. 可选:点击「测试连接」验证 Key 有效性(对应 /cost/test-call)。

模块 A:导出对话

  • 单次导出:对话界面头部操作区点击「导出」,或命令面板执行 export。选择格式(Markdown / PDF / JSON / PNG 长图),勾选是否保留时间戳(默认开启)、是否隐私脱敏,确认后文件经浏览器下载到本地。
  • PNG 长图:整篇对话经客户端 canvas 光栅化(SVG foreignObject,2x 视网膜)为一张纵向长图直接下载;仅客户端界面可用(命令面板无 canvas),不参与批量 ZIP。
  • 批量导出:历史对话列表勾选多个会话,点击「批量导出」(或命令 export-batch),自动打包为 ZIP 下载(单次最多 100 个会话,自动去重)。
  • PDF 说明:纯 Latin-1 内容直接生成结构化 PDF 文件;含中文等非 Latin-1 字符时由客户端光栅化为免打印多页 PDF(A4 分页、JPEG 编码、零依赖 PDF 组装),全程无 window.print() 对话框——该路径在部分平台(尤其 Windows Chrome)会冻结整个浏览器;无光栅能力的环境(命令面板)退回打印视图由浏览器另存为 PDF。

模块 B:交接摘要

  • 生成:对话头部点击「交接摘要」按钮(或命令 handoff),插件调用 DeepSeek API 按固定四段式 Prompt 生成摘要:核心结论 / 已解决的问题 / 关键背景信息 / 待办事项与未解决问题(≤500 字)。
  • 编辑与复用:摘要在可编辑弹窗中展示,支持「复制到剪贴板」与「保存为模板」;模板可后续查看、删除,生成摘要时也可指定已有模板作为指令文本(缺省回退固定契约 Prompt)。
  • 导入继承:新建对话时通过输入区 dock 的「导入历史摘要」入口(或命令 handoff-import)粘贴摘要。插件将其武装给下一个新对话,自动作为 system 角色第一条消息注入,实现跨对话上下文继承。

模块 C:成本优化

  • 官方动态计价:计价引擎每小时抓取 DeepSeek 官方定价页(含峰谷分时计划)与智谱/百度文心/字节豆包/Kimi 等国产厂商定价页,自动发现带价模型并导入;官方价格内容变化时持久化新快照,重启后沿用;抓取失败静默降级为内置刊例价快照,不影响实时计价。用户可按模型 id 自定义单价覆盖(最长前缀匹配)。
  • 峰谷分时计价:官方定价页声明的高峰时段(缺省北京时间 9:00–12:00、14:00–18:00)按高峰价计费,空闲时段按空闲价;缓存命中的输入按折扣价计费。
  • 峰谷自动调度:开启后,任务可标记「紧急 / 普通」。「普通」任务在高峰时段进入延迟队列(容量上限 100),自动等到空闲时段再发起 API 调用;高峰窗口优先取计价引擎对官方定价页的实时解析,异常时回退内置缺省窗口;预算暂停期间排队任务会在执行前被复检拦截;交互式操作(如生成交接摘要)按「紧急」处理,不参与延迟。
  • 模型智能路由:开启后按任务类型自动选模 —— 翻译、摘要等简单任务走 deepseek-chat,代码生成、推理等复杂任务走 deepseek-coder;支持自定义路由规则覆盖默认策略。
  • 日/月双档预算:分别设置日预算与月预算上限(CNY,0=不限)。任一档消耗达 80% 时通过 Harness 通知系统提醒;达 100% 时再次提醒并自动暂停非必要 API 调用(必要调用仍放行但持续告警)。
  • 成本报表:独立视图页展示每日/每周 Token 消耗、费用估算(动态计价引擎实时解析)、日/月预算进度条(80% 黄、100% 红)、定价来源(官方实时/内置快照)与峰谷计划,支持手动触发官方定价刷新,以及峰谷调度节省的金额。命令 usage 可在面板内快速查看本月文本报告。

模块 D:全局检索与对话内搜索

  • 历史对话列表顶部注入全局搜索框(或命令 search):
    • 关键词:模糊匹配全部历史对话内容;
    • 时间:日期选择器按范围过滤;
    • 标签:命令 tag 或结果页为会话增删自定义标签,支持按标签筛选。
  • 搜索结果以列表呈现,附命中片段,点击直达对应对话。
  • 对话内搜索(吸收自 dsh-conv-search):对话头部点击「对话内搜索」或按 Ctrl/Cmd+F 打开浮动查找栏:
    • Enter / Shift+EnterF3 / Ctrl+G:下一个 / 上一个命中(环绕);Esc 关闭; / 浏览查询历史;
    • Aa / ab 开关:区分大小写 / 全词匹配;
    • 高亮经 CSS Custom Highlight API 以覆盖层绘制,不触碰 React 管理的转录 DOM;模型流式输出或加载更早消息时经 MutationObserver 自动重同步,激活命中按「文本节点 + 偏移」身份保持,不跳动读者的滚动位置;
    • 匹配只扫描对话滚动视口,自动排除输入区草稿与搜索栏自身,无幻影命中。

配置 DeepSeek API Key(模块 C 前置)

  1. 打开插件设置页的「开发者模式」总开关。
  2. 在「API Key 管理」输入框粘贴你的 DeepSeek API Key 并保存。
    • Key 通过 AES-256-GCM 加密后存入 Harness 插件沙箱的 companion 存储域;
    • 任何接口响应、日志、事件中均不会出现 Key 明文(/cost/state 仅返回 apiKeyConfigured 布尔)。
  3. 可选:点击「测试连接」验证 Key 有效性(对应 /cost/test-call)。

配置参考

根配置(cordis.patch.yml 可覆盖任意字段):

字段类型默认值说明
enableExportbooleantrue启用模块 A
enableHandoffbooleantrue启用模块 B
enableCostbooleantrue启用模块 C
enableSearchbooleantrue启用模块 D
apiBaseUrlstringhttps://api.deepseek.comDeepSeek API 基址(manifest 已放行该域名)
apiTimeoutMsnumber60000单次 API 调用超时(毫秒)

停用单个模块:将对应开关置为 false(配置层),或在 manifest.json 的模块声明中关闭。模块之间零耦合,停用一个不影响其余模块。