Apageoflove/DSH-arena 预览 preview

Apageoflove/DSH-arena

DeepSeek Harness(DSH)的本地优先实验与评估工作台插件。

Project Overview项目介绍

This is a native plugin built exclusively for DeepSeek Harness (DSH), acting as a local experimental and evaluation workbench for AI agent configuration profiles. To install it from source, you first run npm run build in the cloned plugin directory, then add the plugin to your local DSH installation via the DSH CLI command pnpm dsh plugin --profile arena add <local-plugin-path>. For users who prefer to install from a pre-built archive, you can run npm pack to generate a local tgz file, then add that packaged archive directly to DSH via the same DSH CLI installation command.

The core workflow of this plugin lets you run the same task across multiple candidate profiles, compare their outputs against consistent metrics, and generate a ranked evaluation report. First, it filters out any runs that do not pass pre-configured hard gates, eliminating failing results before sorting remaining candidates by Pareto efficiency. The built-in live web interface renders a real-time updating matrix of run results and metrics, and you can also export offline JSON reports that render fully in-browser without requiring an active running DSH backend. All report data stays local to your browser, with no uploading or telemetry.

The plugin requires Node.js 24 to build and run, but you do not need any additional dependencies beyond what is included in a standard Node 24 installation to build or test the code. It currently has a known limitation: full Web and Headless end-to-end compatibility with production DSH has not yet been validated, so the project does not claim 100% compatibility at this time. It is released under the open-source MIT license, is currently private and not published to npm, keeps all persistent data restricted to the configured data root directory, and automatically redacts common sensitive credentials before exporting evaluation reports.

DSH-Arena 是专为 DeepSeek Harness (DSH) 设计的原生本地实验与评估工作台插件。它可以使用同一个任务、同一份仓库快照对比多个候选配置文件,先过滤掉不满足硬性门槛的运行结果,再进行 Pareto 排序,导出报告时会自动脱敏常见凭据,还自带一个可实时交互的 Web 实验台。

它提供原子化本地持久化存储,运行队列带有并发上限,支持任务中止和超时处理,内置确定性硬门槛检查、Pareto 排名与结果汇总,还提供可实时刷新的 Web 矩阵界面。开发遵循官方文档化的 Cordis 契约规范,不访问未文档化的 DSH 内部接口,使用特性探测完成能力识别。

项目基于 Node.js 24 开发,构建无需额外依赖,可通过源码或打包后的 tgz 包安装到 DSH 环境。开发阶段支持修改后直接刷新,所有持久化数据默认写入当前目录,导出报告前会自动脱敏敏感字段,采用 MIT 许可开源,目前暂未发布到 npm。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:Apageoflove/DSH-arena

把 Apageoflove/DSH-arena 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

DSH Arena

DSH Arena 是 DeepSeek Harness(DSH)的本地实验与评估工作台插件。它拿同一个任务、同一份仓库快照去对比多个候选 profile:先把没过硬性门槛(hard gate)的跑法拦下来,再做 Pareto 排序;导出报告时自动脱敏常见凭据;还带一个 Web 实验台。

DSH Arena 界面截图 1

DSH Arena 界面截图 2

现在能做什么

  • 原子化的本地持久化存储,运行队列有并发上限,支持中止和超时
  • 确定性 hard gates:不满足直接判失败,不进入排序
  • Pareto 排名与 winner 汇总
  • Web 矩阵界面,实时刷新
  • 执行走 adapter 驱动,不猜、不调 DSH 没文档化的 headless 命令

兼容性边界

  • 只按官方文档化的 Cordis 契约写:name、apply(ctx, config)、Schemastery 的 Config schema
  • 不碰 DSH Client/Host 没文档化的内部接口;能力识别用特性探测(ctx.arena),不用私有槽位
  • 真实 DSH 上的 Web / Headless E2E 还没跑通,所以本仓库不声称 100% 兼容。等真机验证过了再改口

构建

Node 24 自带 TypeScript 类型剥离,构建不需要额外依赖:

cd dsh-arena
npm run build
npm test

产物是 lib/index.js(host 入口)和 lib/client.js(浏览器入口)。package.json 里声明了 dsh.bundle.patch 和 dsh.client;目前 private: true,还没发 npm。

装进 DSH

先构建:

npm run build

然后在官方 DeepSeek Harness 检出目录里执行(或把 pnpm dsh 换成全局安装的 dsh 命令):

pnpm dsh plugin --profile web add <本目录路径>
pnpm dsh --profile web --dump-config
pnpm dsh web

装到 web profile 后,浏览器访问和 DeepSeek Harness Desktop 桌面端都能看到——桌面端管理的就是这个 profile 的服务,不用装两遍。

不想走源码目录安装的话,先 npm pack 打出本地 tgz,再直接 add 那个文件:

pnpm dsh plugin --profile web add dsh-arena-0.2.1.tgz

装完可以用 pnpm dsh --profile web --dump-config 查一下,输出里有 # == dsh-arena 就说明装上了。卸载:

pnpm dsh plugin --profile web remove dsh-arena

cordis.patch.yml 是发布用的补丁,解析为 name: dsh-arena,里面没有本机绝对路径。

本地开发

cordis.local.patch.yml 直接指向工作区里的 TypeScript 入口,改完刷新即可。从 DSH 检出目录跑:

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

项目挪了位置,只需要改这个文件里的绝对路径。

服务接口

host 服务暴露的操作都是显式的:

startExperiment(input)、recordRun(run)、getSnapshot()、report(directions)、subscribe(listener)、clear()、flush()、getPersistenceStatus()、bindExecutor(adapter, options)

  • 第一次修改前先 await arena.ready
  • 只有 bindExecutor 能创建运行编排器,adapter 必须由调用方传入——它不会自己发明 DSH headless 命令,也不会悄悄发起模型调用

持久化默认写到 .dsh-arena/state.json(同目录临时文件 + 原子重命名),想关掉就设 persistencePath: false。路径都限制在 dataRoot 内,越界路径直接拒绝。

Web 实验台与离线报告

界面是 Shadow DOM 组件:当 ctx.arena 服务可用(提供 getSnapshot / report / subscribe)时实时渲染。没有假设一定有浏览器 Host bridge,所以提供了「导入报告」:选一个本地 Arena JSON 报告,离线渲染出:

  • 候选/模型运行矩阵
  • run 与 hard gate 状态
  • 质量、时长、token、成本指标
  • Pareto 候选与建议 winner
  • 审计告警

导入的内容只用 DOM API 和 textContent 渲染,不拼动态 HTML。文件留在浏览器里,没有上传或遥测。

测试与安全

npm test 在 Node 24 上直接跑,不需要装运行时依赖。

  • 核心不会自动执行生成的 DSH 命令,不会删 worktree,git 参数一律用数组构建
  • 实验 runner 执行的是你自己配置的候选命令(--dsh)——Windows 上 pnpm/dsh 是 .cmd 启动器,必须经命令解释器拉起;任务文本拼入命令前已做引号转义。信任边界:跑的是你自己机器上、你自己写的命令
  • 导出 JSON/JSONL/Markdown 前,按字段名和值对内联的 authorization / token / key / secret / password / cookie 做脱敏
← 上一个 Prev dsh-custom-instructions 下一个 Next dsh-remote-ssh-ops →