DeepSeek Harness 插件

dsh-switch

Evidence-first model control plane for DeepSeek Harness(英文原文)

跳到安装方式

来源信息

GitHub 仓库
dongsheng123132/dsh-switch
最近更新
2026年8月14日
分类
模型与服务商
GitHub stars
3
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/dongsheng123132/dsh-switch
插件名:dsh-switch
作者:dongsheng123132

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.zh-CN.md来源说明 · 只读预览
README 语言

dsh-switch

![CI](https://github.com/dongsheng123132/dsh-switch/actions/workflows/check.yml) ![MIT 许可证](LICENSE) ![Node.js 22+](package.json) ![Awesome DSH Plugins](https://github.com/dongsheng123132/awesome-dsh-plugins/blob/main/README.zh-CN.md#2origin-%E6%8F%92%E4%BB%B6%E5%AE%9E%E9%AA%8C%E5%AE%A4)

> 给 DeepSeek Harness 用的证据优先模型控制面。

English

dsh-switch 刻意把两件事分开:

1. DSH bundle 提供模型工具:读取已经注册的 provider、通过官方 ctx.llm 验证精确的 provider/model,再通过 ctx.agentDefaultModel 保存新会话默认值。 2. 独立 CLI 探测 OpenAI-compatible /models 端点,报告可达性、HTTP 状态、延迟、模型数量和凭据环境变量是否已配置。

它不拦截模型请求、不再造一个 OpenAI adapter,也不静默改正在运行的会话。dsh-polyglotdsh-llm-fallbacks 等项目负责 adapter/fallback;本项目负责 DSH 已有路由之外的可观察控制面。

安装 DSH bundle

从 GitHub 安装时请固定审查过的 commit:

dsh plugin --profile web add github:dongsheng123132/dsh-switch#<commit>
dsh --profile web --dump-config

本 bundle 直接交付 JavaScript,没有安装/构建生命周期脚本。

工具

dsh_switch_status({ includeModels? })

  • 显示新会话采用的默认模型;
  • 列出已经注册的 provider route;
  • 可选读取每个 adapter 公布的模型目录;
  • 自身不发送 provider 网络健康请求。

dsh_switch_default({ provider, model, reasoningEffort?, expectedProvider?, expectedModel? })

  • 先用 ctx.llm.resolveModelInfo() 验证精确路由;
  • 拒绝不支持的 reasoning effort;
  • 支持 expected pair 乐观并发检查;
  • 只通过 ctx.agentDefaultModel.saveSelection() 写入;
  • 写后回读,不可观察就报错;
  • 只影响新会话。已有会话继续使用日志里已经记录的路由。

探测 provider 端点

把 [providers.example.json](providers.example.json) 复制到不入库的本地文件,例如 providers.json。JSON 只写环境变量名,绝不写密钥值。

node bin/dsh-switch.mjs validate --config providers.json
node bin/dsh-switch.mjs check --config providers.json
node bin/dsh-switch.mjs best --config providers.json
node bin/dsh-switch.mjs check --config providers.json --json

示例:

✓ deepseek-official          83.4 ms  HTTP 200, 2 models  credential:configured
✗ local-vllm                 1.2 ms  network-error  credential:not-required

探针发送 GET <baseURL><modelsPath>,不发送对话请求,因此不消耗推理 Token。/models 成功只证明端点可达,不等于端到端生成一定正确。

安全与证据边界

  • 拒绝 apiKey 字段和 URL 内嵌凭据。
  • 输出只出现 configuredmissingnot-required,不返回密钥值。
  • 401/403 表示端点可达但不健康。
  • DSH 工具切换验证的是 adapter 元数据,不是假装做过 provider 网络 I/O。
  • v0.1 不启用自动 fallback 或按成本路由。

开发

npm test
npm run check

插件 smoke test 需要能解析官方 DSH runtime 包:

npm run smoke:plugin

许可证

MIT © 2026 hfshfg