dsh-context-lite:DeepSeek Harness 只读上下文时间线与来源侧栏

前言

在 DeepSeek Harness(DSH)里跑智能体时,模型每一轮实际带了哪些上下文、各段来自哪个插件或入口、历史是原文还是压缩摘要,往往只能翻日志或猜。DSH 生态主张「一切皆插件」,社区插件在独立目录站点分发,与 DeepSeek / 幻方无官方从属关系。下面介绍社区维护的 dsh-context-lite:在不动注入、压缩与模型执行的前提下,用侧栏时间线和来源追溯回答上述问题;v0.3.0 起还复用宿主日志,为开发者提供结构化快照、差异与导出接口。

这是什么

dsh-context-lite(GitHub:hope586/dsh-context-lite)是面向 DSH 的非官方社区插件,分类为客户端。维护者为 hope586,许可证 MIT。定位是一句 README 里的概括:只读的上下文时间线与自动来源(provenance)侧栏——Read-only context timeline and automatic provenance sidebar for DeepSeek Harness。

它不控制注入、压缩、权限或模型执行,不额外调用模型,不提供独立统计圆环或 /context 技能;侧栏向当前 DSH 宿主发送已鉴权的读取请求,与其他插件同进程运行,「只读」描述实现行为,不代表安全隔离。

当前源码版本 0.3.1(package.json),要求 DSH 0.2.1-rc.5 或更高的兼容 0.2.x 版本(engines.dsh: >=0.2.1-rc.5 <0.3.0)。公开发布的安装包对应 v0.3.0;0.3.1 的修复尚未打新 Release,测试修复版需构建源码或使用已审阅提交中的 lib/。

核心功能

侧栏:时间线与来源

默认展示组成色带、来源、本轮新增和当前上下文大小;悬停可看含义,点击可追溯正文、工具结果与压缩来源。

  • 一轮从用户请求开始,到最终回复或实际中断结束;不中断的中途引导仍算同一轮。
  • 历史原文、历史压缩信息、用户输入、插件贡献、模型工作和最终汇报分块展示;同源、相邻、同阶段内容可合并。
  • 自动观察来源,不要求其他插件填特殊字段或改代码;启动时轻量补查现存注册项,无法确认的调用方显示「来源方未确认」。
  • 复用 DSH 的会话、主题、侧栏与固定估算器;界面随 DSH 中英文设置切换,用户原文、插件名、路径和标识符保持原样。细节见仓库 来源说明 与 兼容性。

开发者上下文审计(v0.3.0+)

复用 DSH 原生日志,只注册 GET,不增加模型工具或额外服务;所有接口需宿主鉴权,且每次查询都要带 sessionId。

接口 用途
/api/dsh-context-lite/v1/snapshot 查询当前、指定日志位置、轮次或逻辑请求的上下文,保留来源与占用估算
/api/dsh-context-lite/v1/diff 比较首尾净变化,列出期间上下文更新(含中途注入后又移除的内容)
/api/dsh-context-lite/v1/export 导出同一观察切片的 JSON/JSONL,附完成计数和校验值

默认导出不含正文、工具参数或原始事件;显式 includeContent=true 才含原始事件与导出时有效内容。默认上限 32 MiB(配置项 maxExportBytes),超限返回 413。边界与示例见 开发者 API 文档。

来源元数据与存储

来源主名为实际插件包或脚本入口,辅助显示进入方法与原标识符。运行时采集优先;数据在宿主 storageDomain 的 context_lite_origins,默认最多 64 个会话,每会话最多 2000 条最新归因及 2000 条证据观察。插件无独立云服务、API key 或遥测。

安装与启用

需要已安装的 DeepSeek Harness 和 pnpm。首发通过 GitHub 分发,尚未发布到 npm。

从 v0.3.0 Release 下载预构建的 dsh-context-lite-0.3.0.tgz,对照同页 SHA256SUMS 校验后安装:

dsh plugin --profile web add ./dsh-context-lite-0.3.0.tgz

也可以安装带预构建产物的 Git tag:

dsh plugin --profile web add github:hope586/dsh-context-lite#v0.3.0

按你管理 Web 的原有方式重启后端,然后打开会话标题栏的「上下文」图标,或右侧栏开始页的「上下文」。不要为重载再启动第二个 Web 服务。Desktop 请通过官方插件管理页添加本地解压目录并启用;不要从 CLI 绕过 Desktop 对 profile 的管理。

卸载 Web 端:

dsh plugin --profile web remove dsh-context-lite

卸载后重载;清理元数据应在所有使用该存储的 DSH 进程停止后,备份并移除 DSH_HOME 下 storages/context_lite_origins 目录。

典型用法

  1. 安装并重载后端后,在会话 UI 打开「上下文」侧栏,按轮次查看色带、新增块与估算大小。
  2. 对某段内容悬停看说明,点击进详情追溯正文、工具结果或压缩来源;来源未确认时会明确标注。
  3. 排查插件注入或压缩问题时,对已鉴权会话调用审计 API,例如先取 snapshot,再用 diff 看轮次间变化;需要离线分析时用 export(注意默认不含正文,分享导出前评估来源路径是否含私有信息)。

插件配置通过 DSH 插件配置编辑,无独立控制面板。常用项包括:collectOrigins(默认 true)、persistOrigins(默认 true)、maxVisibleRounds(默认 120)、previewCharacters(默认 12000)等,完整表见 README「设置与卸载」一节。

适用场景与注意

适合谁: 日常在 DSH Web 会话里想快速看清「这一轮上下文从哪来、占多少」的用户;编写或调试 DSH 插件、需要对照宿主日志做上下文审计的开发者。

使用前请知悉:

  • 插件以当前 dsh 进程权限运行,安装前应自行查看源码与 MIT 许可证及 THIRD-PARTY-NOTICES。
  • 快照按结算前日志重建,不是提供方适配后的完整抓包;缺少记录不能证明未发生注入;证据有延迟写入,崩溃可能丢尾部。
  • 系统提示词、环境快照、工具定义仍整体计量,详情列贡献方,不虚构逐插件 token 分摊。
  • 远程部署时侧栏读取请求经你的网络;导出即使不含正文,来源路径也可能是敏感信息。

结尾

dsh-context-lite 把「模型带了什么、来自哪里」做成只读侧栏与可选审计 API,与 DSH 原生 UI 和估算器对齐,适合作为客户端观测层而不是第二套上下文控制器。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜