dsh-operating-context:在 DeepSeek Harness 中统一管理模型工作窗口

前言

DeepSeek Harness 通过插件扩展 Web Settings。对于已经接入多个 configured model service 的使用者,上下文窗口大小通常需要分别确认;如果设置得过大,也可能要求模型承载超过其实际能力的内容。

dsh-operating-context 为 Harness 增加一个“工作窗口”页面,用于把每个 configured model service 限制到一个 working context window,并保持在模型可承载范围内。

这是什么

dsh-operating-context 是一个 DeepSeek Harness 插件,由 AIMFllyYS 维护,采用 MIT 许可证,当前版本为 v0.1.0。

它是一个 Harness bundle,不能独立运行;官方入口是:

npx @deepseek-ai/dsh

它的定位是提供 DeepSeek Harness 的“工作窗口”settings page,并复用 adapter、ContextMeter 和 official compaction 已经读取的 contextWindow

核心功能

下面介绍 v0.1.0 中已核实的主要行为。

  • 提供 DeepSeek Harness 的“工作窗口”settings page。
  • 将每个 configured model service 限制到一个 working context window,且不超过模型可承载范围。
  • 通过 user layer 的 settings.mutate 写入,不挂载第二压缩引擎、不 wrap resolveModel、不使用会覆盖整行的 bundle patch。
  • 根据 route shape 写入不同的字段:modelOverrides.<id>.contextWindowmodels[].contextWindowdefaultContextWindow
  • 通过 llm.discoverModels 读取已安装 catalog 的 ceiling;未知 ceiling 时不猜测。
  • 当选择的窗口不高于模型 ceiling 时,移除 override,使 apply 幂等并恢复 native capacity。
  • 更新带 explicit models 列表的 route 时,保留 endpoint、protocol、credential、names、output limits 和 unknown metadata。
  • 安装 v0.1.0 时提供预构建 lib/ artifacts,安装不执行 package code。

安装与启用

首次使用需要 Node.js ^22.19.0>=24,并且 PATH 中可用 pnpmdsh plugin 会转发到 pnpm

先安装推荐版本 v0.1.0:

npx @deepseek-ai/dsh plugin --profile web add github:AIMFllyYS/dsh-operating-context#v0.1.0

如果在 DeepSeek Harness 源码仓库中操作,使用 pnpm dsh

pnpm dsh plugin --profile web add github:AIMFllyYS/dsh-operating-context#v0.1.0

安装完成后,检查配置层是否出现:

npx @deepseek-ai/dsh --profile web --dump-config

在输出中查找 # == dsh-operating-context layer。

启动 Web UI:

npx @deepseek-ai/dsh web

进入 Settings → 工作窗口,选择 size 并 apply。

如果之后不再需要该插件:

npx @deepseek-ai/dsh plugin --profile web remove dsh-operating-context

注意,写入值会保留在 ~/.dsh/settings.yaml;移除插件不会回滚这些值。

典型用法

经过上面的步骤,一个常见使用流程是:

1、安装 v0.1.0 并确认 # == dsh-operating-context layer。

2、运行 npx @deepseek-ai/dsh web 打开 Web UI。

3、打开 Settings → 工作窗口,选择希望使用的上下文窗口大小。

4、apply 后,再次运行 npx @deepseek-ai/dsh --profile web --dump-config,核对实际写入的 modelOverridesmodelsdefaultContextWindow 字段。

5、如果不再使用,执行 remove 命令;已写入值仍保留在 ~/.dsh/settings.yaml

适用场景与注意

适合在 DSH Web profile 下管理多个 configured model service 的开发者。它适合需要把上下文窗口集中到一个 settings page 中调整,同时希望写入值不超过模型已知 ceiling 的场景。

使用前需要注意:

  • 该插件以当前 dsh 进程权限运行,安装前应检查源码与 MIT 许可证。
  • 插件已与 DeepSeek Harness 0.1.0-rc.5(commit 47f943859bef60e4160492346772ded9b24f765a,2026-08-14)做过兼容复核;Harness plugin surface 仍是 release-candidate,迁移到更新版本时应重新确认。
  • unknown ceilingsexplicit models lists 不能通过达到已知 native ceiling 的方式重置。
  • 如果 catalog 不再包含仍有 modelOverrides 条目的模型,adapter 会拒绝 stale entry,并可能影响整条 route;页面会报告将移除的数量,catalog 未知时不尝试移除。
  • 当前 v0.1.0 包含 compiled lib/ 文件,并且定义无 Git build triggers;旧修订版 Git install 可能因 frozen-lockfileautoInstallPeersallowBuilds 失败。
  • peerDependencies 包括 @deepseek-ai/cordis@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-schema-form@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-web-reactreact ^18.2.0

结尾

dsh-operating-context 提供的是一个集中的工作窗口配置页面:它把每个 configured model service 限制到可承载范围内,并按 route shape 写入相应字段。

GitHub:https://github.com/AIMFllyYS/dsh-operating-context

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

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

Xiaoye