前言¶
用 DeepSeek Harness(dsh)做智能体或对话开发时,模型请求往往要走自建或第三方的 new-api 系中转面板(one-api、new-api、Veloera、done-hub 等)。常见做法是手写 base URL、在环境里塞 API Key、再单独打开面板网页查余额和日志——面板换一家,配置又要改一轮。
dsh-plugin-relay(维护者 jdz321,GitHub:jdz321/dsh-plugin-relay)把「连面板、管密钥、同步模型、看用量、补能力元数据」收进 dsh 的 Plugins 设置页,走图形界面即可,不必为每个面板手写配置文件。自 v0.6.0 起可同时连接多个面板,每个面板在 dsh 里对应独立的模型提供方,在模型选择器里并列可选。
这是什么¶
插件分类为模型推理。一句话定位:把 dsh 的模型流量路由到任意 new-api 家族中转面板,并在 dsh 内完成连接、密钥与模型目录管理。当前 package 版本为 0.7.1,许可证 MIT。
插件不内置某一家面板的默认地址;连接信息由你在 UI 里填写。插件也不替你设 dsh 的默认模型——默认模型仍在 dsh 本体里选择。
核心功能¶
下面按 README 已说明的能力归纳,均可在安装后于 Settings → Relay 使用。
多面板连接(Connection)¶
- Connection 页用手风琴列表展示已连接面板:折叠行可概览账号、余额、已同步模型、当前生效密钥(账号信息懒加载,单个面板不可达不会拖死整表)。
- 展开某一行后,在同一行内嵌四个子页:API keys、Models、Dashboard、Usage logs;同一时间最多展开一个面板。
- 通过 Add panel 新增:名称(创建后不可改,且作为 dsh 里该提供方的名称)、base URL、access token(仅写入、不回显)、user ID。没有「编辑连接」表单;要改连接需删除后重建。
- Test connection 会区分:网络不可达、token 无效、user ID 不匹配。
- 删除面板时会提示:该面板的 capability 覆盖会被移除,且若 dsh 默认模型指向该面板也需留意。
API 密钥(按面板)¶
- 创建、编辑(名称 / 分组 / 额度 / 过期 / 启用禁用)、删除;点 Use 一键切换当前密钥。
- 编辑方式为行内展开卡片(与 dsh 官方 Models 页类似),Apply 立即写入;失败时卡片保持打开。删除有确认对话框。
- 密钥明文不进入浏览器:创建响应在服务端剥离;「创建并设为当前」走常规切换流程,密钥只进入 dsh 凭证存储。
模型列表与定价(Models)¶
- 展示当前生效密钥可调用的模型及定价,覆盖该面板家族常见的三种计费表述:按 token 的美元价($/1M tokens)、按次固定价、以及 ratio(模型倍率 × 分组倍率)。
- 刷新列表会同步进 dsh,运行中的会话在下次请求即可用到更新后的目录。
仪表盘与日志(Dashboard / Usage logs)¶
- Dashboard:余额、今日消费、汇总,以及手绘 SVG 的按模型堆叠用量图;指标可在花费 / token / 双轴之间切换(双轴时左侧为花费柱、右侧为每日 token 合计线)。支持 7 / 14 / 30 天范围;Top-N 折叠(超出前 7 的模型合并为灰色「Other」);图例可点击隐藏。摘要四卡固定单行排列。
- Usage logs:面板请求日志,带 usage / RPM / TPM 摘要;可按时间、模型、密钥、分组筛选;单条记录含 cache、reasoning token 及首包时间等。
模型能力(Capabilities)¶
- 结合 预设知识库(运行时从 models.dev 拉取主流模型:官方作者提供方、近一年内发布、对话类模型;每天自动刷新一次并缓存在 dsh 本地存储;Refresh presets 可立即重拉)与你自定义条目、以及按面板按模型 id 的覆盖。
- 各区块行内编辑,Done 即保存,无全局保存按钮。上下文窗口与 输出上限 支持
128K、1M等 1024 进制简写,并带实时换算提示。 - 匹配规则分层:覆盖 → 知识库(精确 → 大小写折叠 → 去变体后缀 → 版本分隔符互换 → 唯一变体补全 → 策划别名);近似命中会标记并显示匹配到的名称。
- Platform models 按面板分组,覆盖指示条各段可点击,按来源筛选(preset / knowledge / override / unconfigured)。
多提供方与热更新¶
- 每个面板是独立的 pi-ai 提供方(
openai-completions,baseURL为<面板>/v1,各自凭证引用),会话里可同时看到所有面板的模型,按提供方命名空间区分。 - 凭证、模型目录、能力配置经 dsh 的 settings/credentials 服务下发;运行中的会话在下一次请求应用变更,无需重启 dsh。
安装与启用¶
环境要求(来自 README):dsh ≥ 0.2.1-alpha.2、Node ≥ 20,且 pnpm 在 PATH 中(dsh 通过 pnpm 安装插件)。
# from npm (once published)
dsh plugin --profile web add dsh-plugin-relay
# or from a local clone
npm install && npm run build
dsh plugin --profile web add /path/to/dsh-plugin-relay
若使用 headless 会话,将 --profile web 换成 --profile headless 即可。安装后重启 dsh web,打开 Plugins 面板 → Relay。
插件以当前 dsh 进程权限运行;安装前请自行查看 仓库源码 与 MIT 许可证,确认可接受其网络访问与凭证处理方式。
典型用法¶
按 README 用法顺序,可复现如下流程。
- 打开 Settings → Relay → Connection,点 Add panel,填写:名称(字母、数字、
_、-,≤32 字符,即模型提供方名)、面板根地址(不要带/v1后缀)、面板个人页上的 access token(client token / access token)、以及同页显示的 user ID。先用 Test connection 校验三项再建密钥。 - 点击面板行行内展开。在 API keys 下创建密钥,或在已有密钥上点 Use。插件把密钥写入 dsh 凭证存储、建立该面板的模型路由,并同步该密钥的模型目录。可对多个面板重复此步,彼此并行生效。
- 在 Models 核对各模型定价;需要时刷新,使 dsh 路由目录与密钥实际可调用的模型一致。
- 在 Dashboard、Usage logs 只读查看余额与消费(调用面板报表类 API)。
- 在 Capabilities 主页浏览预设(可搜索,默认折叠),需要微调时可复制到 My entries;预设首次使用自动拉取,之后每天更新一次。仅当某个模型 id 在某面板上需要不同参数时,编辑对应 platform-model 卡片,Done 立即对该面板生效。
选模型时,在 dsh 模型选择器里按各面板对应的提供方名称挑选即可;插件不管理 dsh 默认模型。
适用场景与注意¶
适合谁:已经在用或打算用 one-api、new-api、Veloera、done-hub 等 new-api 系面板,希望 dsh 会话统一走这些面板,且希望在 dsh 内完成多面板、多密钥与模型目录运维的开发者。
注意:
- 社区插件目录页(skillhub.cn 上的条目)为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以 GitHub README 为准。
- 连接字段(含 token)保存在插件 composition 配置中,token 为机密字段、传输时会脱敏;仍建议在可信环境中运行 dsh,并定期轮换面板 token。
- 删除面板会移除对应 pi-ai 提供方、该面板的 capability 覆盖与凭证引用;全局知识库条目保留。
结尾¶
dsh-plugin-relay 把 new-api 系中转面板接进 dsh 的插件体系:多面板并列、密钥与模型目录在 UI 内闭环,用量与能力配置也跟面板和 models.dev 预设对齐。若你正在 dsh 里接中转站,可从目录页或仓库 README 的安装命令起步。
- 目录页:https://www.skillhub.cn/plugins/jdz321/dsh-plugin-relay
- GitHub:https://github.com/jdz321/dsh-plugin-relay