dsh-arena:DeepSeek Harness 的本地实验与评估工作台插件

前言

做 DSH 插件或候选 profile 对比时,常见的问题是:同一个任务、同一份仓库快照下,多个候选 profile 谁更稳?哪些跑法应该先被硬门槛拦下来?质量、时长、token、成本之间怎么做取舍?

dsh-arena 针对这类本地实验:用同一个任务、同一份仓库快照对比多个候选 profile,先做确定性 hard gates,再做 Pareto 排名与 winner 汇总,并能在 Web 矩阵里查看结果。下面介绍它的定位、能力、安装方式和适用边界。

这是什么

dsh-arena 是 DeepSeek Harness(DSH)的本地实验与评估工作台插件。维护者是 Apageoflove,许可证为 MIT

package.json 中声明版本为 0.2.0,并设置 private: true;已核实资料说明它还没发 npm。

它把下面这些事情放在一个本地工作台里:

  • 同一个任务、同一份仓库快照下的候选 profile 对比
  • 确定性 hard gates
  • Pareto 排名与 winner 汇总
  • 本地持久化、运行队列、中止和超时
  • Web 矩阵界面
  • 导出报告前自动脱敏常见凭据
  • 导入本地 Arena JSON 报告并离线渲染

核心能力

候选 profile 对比

先做同一任务、同一份仓库快照下的对比,再比较多个候选 profile 的运行结果。

hard gates 与 Pareto

  • Hard gates 是确定性的:不满足直接判失败,不进入排序。
  • 排序使用 Pareto 排名,并汇总 winner。
  • 报告相关视图包含 run 与 hard gate 状态、质量、时长、token、成本指标、Pareto 候选与建议 winner、审计告警。

本地运行与持久化

  • 本地持久化是原子化的。
  • 运行队列有并发上限。
  • 支持中止和超时。
  • 路径都限制在 dataRoot 内,越界路径直接拒绝。
  • 可以通过 persistencePath: false 关闭持久化。

adapter 驱动

执行走 adapter 驱动,不猜、不调 DSH 没文档化的 headless 命令。

只有 bindExecutor 能创建运行编排器,adapter 必须由调用方传入。它不会自己发明 DSH headless 命令,也不会悄悄发起模型调用。

Web 矩阵与离线报告

  • Web 矩阵界面实时刷新。
  • 支持导入本地 Arena JSON 报告,并离线渲染候选/模型运行矩阵、run 与 hard gate 状态、质量/时长/token/成本指标、Pareto 候选与建议 winner、审计告警。
  • 导出 JSON/JSONL/Markdown 前,会按字段名和值对内联的 authorization / token / key / secret / password / cookie 做脱敏。
  • 文件留在浏览器里,没有上传或遥测。

安装与启用

先构建,再执行安装和验证命令:

npm run build
npm test
pnpm dsh plugin --profile arena add <本目录路径>
pnpm dsh --profile arena --dump-config
pnpm dsh --profile arena web

如果用本地 tgz 文件安装,可以使用:

pnpm dsh plugin --profile arena add dsh-arena-0.2.0.tgz

经过上面的步骤后,pnpm dsh --profile arena --dump-config 用来查看配置,pnpm dsh --profile arena web 用来启动 Web 端。

典型用法

构建与测试

npm run build
npm test

已核实资料中,package.jsonengines 要求 node >=22.18.0,并提到 Node 24 上构建和测试不需要额外依赖。

本地开发 patch

本地开发可以使用 cordis.local.patch.yml

pnpm dsh web --patch <本目录>/cordis.local.patch.yml

这个命令使用本目录下的 cordis.local.patch.yml 作为本地 patch。

运行边界

  • 第一次修改前先 await arena.ready
  • 只有 bindExecutor 能创建运行编排器,adapter 必须由调用方传入。
  • 路径都限制在 dataRoot 内,越界路径直接拒绝。
  • Windows 上 pnpm/dsh.cmd 启动器,必须经命令解释器拉起。
  • 任务文本拼入命令前已做引号转义。

适用场景与注意

适合在本地做 DSH 候选 profile 对比、hard gates 判定、Pareto 排名、报告导出和 Web 查看的开发者。

安装前建议检查源码与许可证。本项目许可证为 MIT。插件会以当前 dsh 进程权限运行,安装前确认你信任该目录中的代码。

需要注意的边界:

  • 只按官方文档化的 Cordis 契约写;不碰 DSH Client/Host 没文档化的内部接口。
  • 能力识别用特性探测(ctx.arena),不用私有槽位。
  • 真实 DSH 上的 Web / Headless E2E 还没跑通,所以本仓库不声称 100% 兼容。
  • dsh.compatibility.dshReleases0.1.0-rc.80.1.1-rc.10.1.1-rc.2 均为 unknown
  • peerDependencies 要求 @deepseek-ai/cordis ^4.0.1@deepseek-ai/schemastery ^3.18.1
  • 已核实资料只给出本地路径或本地 tgz 的安装命令,没有给出 npm 包安装方式或远端安装命令。

结尾

dsh-arena 的价值是把 DSH 候选 profile 的本地评估流程集中起来:hard gates、Pareto、指标、脱敏报告和本地 Web 查看都在一个工作台里完成。

GitHub:https://github.com/Apageoflove/DSH-arena

社区目录页:已核实资料未提供 URL。

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

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

小夜