- DSH
- 0.2.0-rc.2
- 系统
- Windows / macOS / Linux
- 风险
- high
本页目录(11)
先查看功能、兼容性、权限和同类选择,再按本文操作。
2026-10-06 更新到 dsh-context 0.64.0,适配 DSH 0.2.0-rc.2
本页安装目标更新为 [email protected],命令固定使用 DSH 0.2.0-rc.2。本站只做了固定版本的源码与发布包静态复核,没有安装或运行。
- 打开“上下文洞察”页会用你的 DeepSeek API Key 查询余额。 宿主取出 Key,请求接口地址下的
/user/balance,只把金额返回浏览器(balance.ts(外部链接,在新标签页打开))。作者的 README 没有提到这一点。 - 用
DEEPSEEK_BASE_URL走中转或内部网关的用户要注意。 余额查询只读配置里的baseURL,没有配置时固定请求https://api.deepseek.com;而 DSH 自己在没有配置时会回退到这个环境变量(外部链接,在新标签页打开)。这类部署的 Key 会被发往 DeepSeek 官方接口。 - 余额查询没有单独的开关。不想触发时,在“插件 → dsh-context → 配置”把“上下文洞察入口”设为隐藏(
insightsEntry: hide,config.ts(外部链接,在新标签页打开)),界面不再打开洞察页;其他功能不受影响。 - 第一次打开洞察页时,插件会在后台读取全部历史会话来补齐统计(backfill.ts(外部链接,在新标签页打开))。
- 版本声明是没有上限的
>=0.1.5-rc.1,以后任何 DSH 版本都会通过安装检查,这不代表作者测试过。作者声明支持的只有 0.1.5-rc.1、0.1.7-rc.2 和 0.2.0-rc.2(compatibility.md(外部链接,在新标签页打开))。 - 发布包里的 3 个构建文件不在仓库中,本站没有独立重建;其余文件与固定提交逐字节一致。
仍在使用 DSH 0.1.2 至 0.1.4: 不要安装 0.64.0,它在低于 0.1.5-rc.1 的 DSH 上只显示空数据和升级提示。本站此前记录的组合是 dsh-context 0.46.0 + DSH 0.1.2-rc.1(提交 466d96e3a2a4)。
升级 DSH 前怎样处理已装插件,见更新或卸载插件。
依据:固定证据 1(外部链接,在新标签页打开)、固定证据 2(外部链接,在新标签页打开)、固定证据 3(外部链接,在新标签页打开)、固定证据 4(外部链接,在新标签页打开)、固定证据 5(外部链接,在新标签页打开)。
<!-- END REVIEWED GUIDE SUPPLEMENT -->dsh-context 0.64.0 展示 DSH 上下文组成、趋势、文件活动与 Agent 关系,新增跨会话的上下文洞察页和 DeepSeek 余额显示;余额功能会让宿主读取 API Key 并请求 DeepSeek 平台。
如果你的目标是在 DeepSeek Harness 查看上下文组成、趋势、文件活动、Agent 图和跨会话用量,本教程会说明如何在 DeepSeek Harness(DSH)中准备、安装、配置、验证和回退 dsh-context。本文锁定作者仓库提交 bcb73fca8cef;已复核固定提交的原始资料,未进行运行实测。
对应插件:查看 dsh-context 的功能、权限与兼容性说明。先确认它适合你的工作流,再执行安装。
先确认是否适合你
- 分类:知识与记忆
- 风险等级:high
- 核验证据:source_reviewed
- 兼容性边界:0.64.0 的三个 DSH peer 均为 >=0.1.5-rc.1,版本声明通过 DSH 0.2.0-rc.2 的检查;该范围没有上限,通过检查不代表作者测试过更高版本。作者声明支持 0.1.5-rc.1、0.1.7-rc.2、0.2.0-rc.2,Node.js ^22.19.0 或 >=24。52DSH 仅做静态源码与发布包复核,未运行验证。
- 主要权限关注:读取全部会话的事件、正文、路径与统计;经凭据服务读取 DeepSeek API Key 并向平台余额接口发起请求;agent/pre-step 钩子可为缺少 ID 的消息写入新标识;首次打开洞察页会冷读全部历史会话并写入投影缓存。不能描述为只读插件。
如果你准备在重要工作区使用,先阅读插件详情页的权限和数据流说明;“源码已审阅”或“资料已整理”都不等于安全认证。
安装前准备
本页 DSH 命令版本: 0.2.0-rc.2。0.64.0 声明的 DSH 版本范围是没有上限的 >=0.1.5-rc.1,通过 0.2.0-rc.2 的检查;作者声明支持 0.1.5-rc.1、0.1.7-rc.2、0.2.0-rc.2。本页固定 DSH 0.2.0-rc.2,Node.js ^22.19.0 或 >=24。仅静态复核,未在本站运行验证。
- DSH 0.2.0-rc.2:0.64.0 的 DSH peer 为 >=0.1.5-rc.1,版本声明通过 0.2.0-rc.2 的检查;作者声明支持 0.1.5-rc.1、0.1.7-rc.2、0.2.0-rc.2。Node.js 需 ^22.19.0 或 >=24。
- 独立 web Profile:先在测试 Profile 中安装,安装前备份 profiles/web 下的 package.json、cordis.patch.yml 与 pnpm-lock.yaml。
- 不含敏感内容的测试会话:插件会读取并展示会话正文、工具结果和文件路径,先用无敏感内容的短会话查看。
- 确认 DeepSeek 端点配置:打开上下文洞察页时,宿主会用你的 DeepSeek API Key 请求余额接口。用环境变量 DEEPSEEK_BASE_URL 指向内部网关或中转、且未在配置里写 baseURL 的部署,Key 会被发到 https://api.deepseek.com;这类部署先把上下文洞察入口设为隐藏,或暂不升级。(外部链接,在新标签页打开)
- 安装 Node.js 22.19、Node.js 24 或项目当前声明支持的更高版本,并确认
pnpm可用。 - 使用独立的
webProfile 和可丢弃测试工作区,不直接连接生产目录。 - 备份当前 Profile 配置,并记录安装前的
--dump-config输出。 - 核对固定来源中的外部服务、账号、运行时和平台限制。
- 需要凭据时只准备测试凭据;本页识别到的候选变量包括
DEEPSEEK_API_KEY。
安装 dsh-context
52DSH 使用目录中记录的精确安装目标,避免直接跟随可能变化的默认分支:
npx --yes @deepseek-ai/[email protected] plugin --profile web add [email protected]
GitHub 源码插件如果被 pnpm 拦截构建脚本,先检查终端提示的具体包和脚本。只在 web Profile 中放行确实需要的构建项,不要全局放行未知依赖。
插件专属配置
配置目标
插件 → dsh-context → 配置:DSH 0.1.7 及以上在主侧栏插件页编辑 8 项显示偏好:入口位置、上下文洞察入口、趋势图默认粒度、默认展示方式、耗时曲线、对比基线、工具定义排序、文件活动排序。$DSH_HOME/profiles/web/cordis.patch.yml:dsh-context 条目的 config 保存上述偏好,以及 6 个保留上限:maxRequestSteps 1500、maxKeptTurns 300、maxEvents 400、maxNodes 2000、maxArchiveNodes 400、maxFileOps 400。修改上限会重新加载该条目。浏览器 localStorage 键 dsh-context:platform-balance:保存上一次查询到的余额数字,用于下次打开时先显示;不含 API Key。
环境变量
DEEPSEEK_API_KEY(可选),敏感:插件不直接读环境变量,而是通过 DSH 凭据服务解析 DeepSeek 提供方配置里的凭据引用(默认名为 DEEPSEEK_API_KEY),仅用于余额查询。没有该凭据时余额不显示,其余功能不受影响。
安装 0.64.0 固定版本
证据:固定来源(外部链接,在新标签页打开)。将路径、账号和凭据占位符替换为测试值。
npx --yes @deepseek-ai/[email protected] plugin --profile web add [email protected]
隐藏上下文洞察入口(同时不再触发余额查询与历史回填)
证据:固定来源(外部链接,在新标签页打开)。将路径、账号和凭据占位符替换为测试值。
- id: dsh-context
config:
insightsEntry: hide
安装后设置
- 停止正在运行的 DSH 后执行安装命令,再运行 npx --yes @deepseek-ai/[email protected] web 并刷新浏览器。
- 打开一个测试会话,在会话视图切到「上下文」标签,或输入 /context 打开弹窗。
- 不希望宿主用 API Key 查询余额时,先在 插件 → dsh-context → 配置 把「上下文洞察入口」设为隐藏,再使用其他功能。
- 需要跨会话概览时,点击主侧栏面板列表中的「上下文洞察」;首次打开会在后台读取全部历史会话来补齐统计。
配置验证与成功结果
先导出配置,再启动同一版本的 DSH Web:
npx --yes @deepseek-ai/[email protected] --profile web --dump-config
npx --yes @deepseek-ai/[email protected] web
-
在输出中查找 id: dsh-context 条目。
npx --yes @deepseek-ai/[email protected] --profile web --dump-config期望结果:合并配置中只有一个 dsh-context 条目,name 为 dsh-context。
-
在测试会话中打开「上下文」标签,展开一个分类查看明细。
期望结果:能看到组成、趋势和事件汇总;展开后才加载该会话的明细。
-
在 插件 → dsh-context → 配置 修改一项显示偏好(如趋势图默认粒度)并刷新页面。
期望结果:偏好在刷新后保留,cordis.patch.yml 的 dsh-context 条目 config 中出现对应值。
-
把「上下文洞察入口」设为隐藏后查看主侧栏。
期望结果:面板列表不再出现「上下文洞察」,浏览器不再请求 /api/dsh-context/balance。
第一次使用
- 查看当前测试会话中系统提示、工具定义、工具结果和用户消息各占多少上下文。
- 在上下文浏览器中选一个步骤,对比上一轮新增或回收了哪些内容。
数据、权限与凭据
**数据流:**DSH 会话事件 → 宿主投影(时间线、请求头、每日活动)→ 已通过 DSH 鉴权的 Web 客户端;按需经 /api/dsh-context/detail 返回单个会话明细;/api/dsh-context/balance 由宿主取出 API Key 后请求 <baseURL>/user/balance(默认 https://api.deepseek.com),只把金额返回浏览器并缓存在(外部链接,在新标签页打开) localStorage;浏览器另向 registry.npmjs.org(失败时 registry.npmmirror.com)查询插件最新版本号。
**权限关注:**读取全部会话的事件、正文、路径与统计;经凭据服务读取 DeepSeek API Key 并向平台余额接口发起请求;agent/pre-step 钩子可为缺少 ID 的消息写入新标识;首次打开洞察页会冷读全部历史会话并写入投影缓存。不能描述为只读插件。
**数据存储:**显示偏好和保留上限保存在当前 profile 的 cordis.patch.yml 条目 config(旧版 DSH 为 settings.yaml 的 dsh-context 段)。时间线、请求头和每日活动三类投影由 DSH 的投影缓存持久化在本机会话数据中。执行前补全的 dshctx- 前缀消息 ID 会进入会话日志。余额数字保存在浏览器 localStorage;API Key 只在宿主进程内使用,不写入插件自己的文件,也不下发浏览器。
真实 Token、API Key、Cookie 和账号 ID 不应写进 Git 仓库、网页截图或公开 Issue。测试结束后撤销临时凭据。
卸载、回退与清理
停止 DSH 后,从同一个 Profile 移除包:
npx --yes @deepseek-ai/[email protected] plugin --profile web remove dsh-context
- 等当前任务结束后停止 DSH,运行 npx --yes @deepseek-ai/[email protected] plugin --profile web remove dsh-context。
- 删除 cordis.patch.yml 中 dsh-context 条目遗留的 config 覆盖项,重启 DSH 并刷新浏览器,确认「上下文」标签和「上下文洞察」入口消失。
- 在浏览器开发者工具中删除 localStorage 键 dsh-context:platform-balance。
- 已写入会话日志的 dshctx- 消息 ID 与 DSH 投影缓存中的统计行不会随卸载清除,也不影响会话加载;不要为清理它们删除会话。
常见问题
上下文面板全是 0 并提示升级 DSH
插件检测到 DSH 低于 0.1.5-rc.1 时只显示空数据和升级提示。确认当前运行的是本页固定的 DSH 版本;不要通过版本豁免在更旧的 DSH 上使用。
上下文洞察页没有显示 DeepSeek 余额
余额只在使用 DeepSeek API Key 提供方、凭据可解析且平台接口正常返回时显示;账号登录方式、第三方端点或网络失败时不显示,属于预期行为,不影响其他统计。
首次打开上下文洞察页后磁盘读取明显增加
插件正在后台逐个读取历史会话补齐统计,每个进程只做一次;等待完成即可。无法读取的旧格式会话会被跳过,原文件不会被修改。
上下文详情持续显示无法按需获取
0.64.0 的详情改走 /api/dsh-context/detail。确认 DSH 已重启并刷新页面,浏览器仍处于登录状态;仍失败时保留脱敏错误,不删除会话。
费用或余额与平台账单不一致
分类占比是估算,费用按内置价格表计算,余额是打开页面时的一次查询;都不能替代平台账单。
安装成功但页面或命令没有出现
先运行 --dump-config 确认 Bundle 已进入 web Profile,再重启 DSH Web 并硬刷新浏览器。不要通过反复扩大权限来解决加载问题。
插件运行后没有得到预期结果
把问题缩小到本页的最小验证任务,检查作者文档要求的变量、外部服务和平台限制。保存终端错误原文,并核对当前安装目标是否仍对应本页固定提交。
作者固定资料中未识别到独立故障章节。遇到插件特有错误时,应先停止 DSH、保留日志并回退插件。
固定来源证据
以下资料是本文配置结论的依据:
继续查看:返回 dsh-context 插件详情页,重新核对兼容性、权限、同类插件和来源状态。
来源与维护信息
本文根据以下原始资料整理。版本变化后,请以官方资料和页面标注的验证日期为准。
- GitHub:bowenliang123/dsh-context(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 package.json(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 compatibility.md(外部链接,在新标签页打开)
- GitHub:deepseek-ai/deepseek-harness 固定提交 plugin-compatibility.ts(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 README.md(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 balance.ts(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 config.ts(外部链接,在新标签页打开)
- GitHub:bowenliang123/dsh-context 固定提交 backfill.ts(外部链接,在新标签页打开)