dsh-speed:为 DSH 提供 Standard / Fast / Ultrafast 模型速度选择

前言

在 DeepSeek Harness(DSH)里跑智能体时,同一条模型路由往往只有一套默认传输参数。若账号支持 Codex 或代理侧的「优先 / 超快」档位,开发者通常需要在客户端外单独改配置,或在 Web 与终端之间各维护一套习惯。jakehemmerle 维护的 dsh-speed 把 Standard、Fast、Ultrafast 三档速度收进 DSH 已有的 Model / Effort 菜单,并在终端用 /speed 系列命令切换;变更作用于后续请求,且按会话、Provider、模型分别记忆。

这是什么

dsh-speed(npm 包名 dsh-speed,当前资料版本 0.2.1-alpha.2)是面向 DSH Web、终端命令与 Agent 模型请求的加速档位插件。托管构建来源见 nix-config/pkgs/dsh-speed。插件在构建期对 pinned DSH 0.2.1-alpha.2 的 Model/Effort 子槽做补丁,运行时传输兼容在资料中写明针对 pi-ai 0.87.1 与 1.1.0 做过审计,其他版本会失败而不是静默忽略速度选项。

核心功能

Web 与界面反馈

打开已有的 Model / Effort 菜单,选择 Speed 下的 Standard、Fast 或 Ultrafast。启动页与底栏会显示 Speed: Standard、Speed: ⚡(Fast)或 Speed: ⚡⚡(Ultrafast)。流式输出过程中在 Web 里改选项不会改变当前进行中的请求;终端侧执行 /speed 相关命令则要求 Agent 处于空闲。

终端命令

在 dst 中:

  • /speed:三档都可用时用方向键选择,Enter 确认,Escape 取消;仅 Standard 与 Fast 可用时在两者间切换。
  • /speed status:查看当前档位。
  • /speed standard、/speed fast、/speed ultrafast:直接设定。

协议与档位映射

资料明确:Fast 发送 priority,Ultrafast 发送 ultrafast;本地 Codex 原生请求还会发送 x-codex-routing-hint。显式选 Standard 后发送 default;未选择前仍沿用原有传输默认值。

路由 凭据来源 速度档位可用性
Local openai-codex 本地 Codex auth.json 该账号原生模型目录
Configured providerproxy ProviderProxy 客户端密钥 代理 /v1/models 目录
Official openai API 已有 DSH API 凭据 显式支持的模型列表 / 配置的 opt-in

Titles 等辅助请求不继承对话速度。Teammate 各自从 Standard 起步;父会话的 Fast / Ultrafast 不会静默泄漏给 Teammate。

认证与凭据边界

托管配置会直接读 ~/.codex/auth.json 做本地 Codex 请求(含 Agent),不把 refresh token 复制进 DSH 凭据库;账号切换后下一次请求即跟随文件内容。临近过期时由配置的 Codex 可执行文件通过 account/read 自行刷新,DSH 再重读文件。凭据缺失或无效会明显失败;设备从未登录时需在该设备执行 codex login。

ProviderProxy 是独立凭据平面:启动器从托管 token 文件读客户端密钥,代理自行维护上游 OAuth;本地 Codex token 不会转发给代理。只有显式配置且 base URL 在允许列表内的 Provider 才能使用代理侧速度选项。

原生模型目录缓存 5 分钟,代理目录 1 分钟,按凭据键控;刷新会强制重新拉目录。未知模型、凭据不可用或目录失败时对外只暴露 Standard。已保存档位被撤销时会警告并拒绝生成,直到重新选择有效速度。

偏好默认写入 ~/.dsh/dsh-speed.json.d/,每个 session/provider/model 一条原子替换、权限 0600 的记录,目录 0700;Web 与终端进程不会互相覆盖无关记录。旧版数组格式 dsh-speed.json 只读迁移;stateFile: false 则仅内存。

加速能否使用取决于所选账号权益,可能消耗更多额度或更高费用;工作账号可能只有 Fast 没有 Ultrafast,插件不能授予 entitlement。README 还说明:即使原生 Codex 客户端,请求的 tier 与 response.completed 里报告的 service_tier 也可能不一致;应把「请求是否符合协议」与延迟、计费证据分开看。

安装与启用

资料未给出 dsh plugin add github:... 一类命令。推荐路径是使用 Nix 托管 profile 升级插件,不要再装一条重复的 host 条目。DSH 加载新 host 插件后需要重启进程。

在 DSH host 配置中注册插件入口,并按环境填写 Codex 与可选代理,例如 README 中的示例(路径需换成你机器上的绝对路径):

- id: dsh-speed
  name: /absolute/path/to/dsh-speed/index.js
  config:
    codexAuthFile: /home/you/.codex/auth.json
    codexCommand: /absolute/path/to/codex
    codexClientVersion: 0.160.1
    proxyProviders:
      providerproxy:
        baseURL: http://gpu.tail47033e.ts.net:4000/v1
        apiKeyEnv: PROVIDERPROXY_API_KEY

插件以当前 DSH 进程的权限运行;安装前请自行审阅 GitHub 仓库 源码与 MIT 许可证。

典型用法

  1. 完成 host 配置并重启 DSH 后,在 Web Model / Effort → Speed 选择档位,或对空闲 Agent 在终端执行 /speed fast 等命令。
  2. 用 /speed status 确认当前选择;底栏图标应与档位一致。
  3. 若走本地 Codex,确保 codexAuthFile 指向有效 auth.json;从未登录则先 codex login。

资料中给出用 Codex CLI 复现原生 Ultrafast 请求的 smoke 命令(需本机已有 CLI 登录,模型名可按需替换):

codex --no-daemon --disable apps --disable plugins exec \
  --ignore-user-config --ignore-rules --ephemeral --skip-git-repo-check \
  -s read-only -m gpt-6.1-sol \
  -c 'service_tier="ultrafast"' -c 'model_reasoning_effort="low"' \
  'Reply only SPEED_OK. Do not use tools.'

适用场景与注意

适合已经在 DSH 中使用 openai-codex、配置好的 providerproxy 或官方 openai 路由,且账号目录里确实 advertised Fast / Ultrafast 的开发者。不适合指望插件「凭空开通」未购买的加速档位。

运行环境需 Node >= 22.19(见 package.json)。修改 host 插件或升级 Nix 托管包后记得重启 DSH。社区目录 skillhub.cn 插件页 与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方从属关系;选型以仓库 README 与本地审计为准。

结尾

dsh-speed 把 DSH 里分散的「要不要开加速」收成统一的 Speed 档位与 /speed 命令,并在多路由、多会话下隔离偏好与凭据。进一步细节与测试说明见 GitHub:jakehemmerle/dsh-speed 与目录页 https://www.skillhub.cn/plugins/jakehemmerle/dsh-speed。

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

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

小夜