Models & Providers

dsh-switch

degurechaff57/dsh-switch · ★ 3

degurechaff57

Desktop provider and model switcher for DeepSeek Harness

README body is shown in Chinese.

Repository is no longer available (checked 2026-11-15). This entry is retained for tracking and cannot be installed.

License
MIT
Added
2026-08-23
Maintenance
active
Install kind
github

No manifest check is available; listing does not imply compatibility or security review.

README

Source README · body: zh · Read Chinese README

Table of contents
  1. 下载
  2. 功能
  3. 快速开始
  4. 开发
  5. 数据位置
  6. 切换写入
  7. 安全说明
  8. 致谢
  9. License

专为 DeepSeek Harness 设计的桌面供应商与模型切换器。它将 Harness 的供应商、模型、API Key 与配置回退集中在一个本地工作台中。

[!IMPORTANT] DSH Switch 是非官方社区项目,与 DeepSeek 没有隶属或背书关系。当前版本为 beta,请先保留重要配置的外部备份。

下载

从 GitHub Releases 下载对应平台的构建:

  • Windows:NSIS 安装包或 Portable 版
  • macOS:DMG 或 ZIP(未签名)
  • Linux:AppImage 或 DEB

未签名构建可能触发操作系统安全提示。发布产物由 GitHub Actions 从仓库标签构建;请核对 Release 中的 SHA-256 校验文件。

功能

  • 一键切换 DeepSeek 原生或 pi-ai 通用供应商,并利用 Harness 的设置热重载生效。
  • 支持 OpenAI Chat Completions、OpenAI Responses 与 Anthropic Messages 协议。
  • 管理模型列表、默认模型、推理强度、API 地址与 API Key。
  • 密钥只写入 $DSH_HOME/.credentials.yaml,不会出现在应用状态、备份或导出文件中。
  • 保留 settings.yaml 的未知分节和 YAML 注释,以同目录临时文件进行原子替换。
  • 每次切换前自动快照,最多保留 30 份,可一键恢复。
  • 支持配置导入、导出,以及用户主动触发的真实端点连接测试。
  • 自动检测全局 dsh,也可在“设置”中选择本地 Harness 源码目录,或使用 DSH_SOURCE_HOME。

快速开始

  1. 先安装 DeepSeek Harness。
  2. 启动 DSH Switch;如果没有检测到 CLI,在“设置 → 运行环境”选择 Harness 源码目录。
  3. 添加供应商和模型,保存 API Key。
  4. 先执行“测试连接”,再点击“一键切换”。
  5. 可从 DSH Switch 启动 Harness Web,也可继续使用自己的 dsh web 命令。

开发

需要 Node.js 22.19+ 或 24+,以及 pnpm 11。

pnpm install --frozen-lockfile
pnpm dev

验证与生产构建:

pnpm run typecheck
pnpm test
pnpm build
pnpm dist

数据位置

内容 默认路径
应用供应商状态 ~/.dsh-switch/state.json
自动快照 ~/.dsh-switch/backups/
Harness 动态设置 $DSH_HOME/settings.yaml,默认 ~/.dsh/settings.yaml
Harness 受管凭据 $DSH_HOME/.credentials.yaml,默认 ~/.dsh/.credentials.yaml

DSH_SWITCH_HOME 可覆盖应用状态目录,DSH_HOME 可覆盖 Harness Home,DSH_SOURCE_HOME 可指向 Harness 源码仓库。源码路径也可以在应用设置中选择,并仅保存到 DSH Switch 自己的状态文件。

切换写入

  • DeepSeek 原生配置写入 llm-deepseek。
  • 通用供应商写入 llm-pi-ai.providers.<provider-id>。
  • 当前选择写入 agent-default-model。

DSH Switch 不修改 profile 的 cordis.patch.yml,也不会重建整个 settings.yaml。删除供应商时会移除它负责的设置路由,但保留凭据值,避免误删被其他配置引用的密钥。

安全说明

  • 导出文件包含凭据引用名,但不包含凭据值;导入时引用名会按配置 ID 重新生成。
  • 连接测试会向所配端点发送一条最小的 Reply with OK. 请求,需由用户主动触发。
  • 应用不会收集遥测,也不会自动上传 Harness 配置。
  • Windows 上无法完全表达 POSIX 0600 权限;凭据文件安全边界与 Harness 本身一致。
  • 安全问题请遵循 SECURITY.md,不要在公开 Issue 中粘贴 API Key 或配置文件原文。

致谢

产品交互思路受到 CC Switch 启发。DSH Switch 面向 DeepSeek Harness 独立实现,没有复制 CC Switch 的代码或资源。

License

MIT