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。
请帮我安装这个 DSH 插件。安装前先完成【兼容性检查 + 安全性检查】,检查通过再动手。
插件:DSH-arena(Apageoflove/DSH-arena)
仓库:https://github.com/Apageoflove/DSH-arena
本站详情页:https://www.yhbd.top/plugins/apageoflove-dsh-arena/
本站登记:类型 plugin · 归类 原生 DSH 插件 · 许可证 MIT · ⭐ 3 · 最近提交 2026-09-18 · 主语言 JavaScript
按下面顺序执行,每步先把结论告诉我,再进入下一步:
【1 兼容性检查】
① 我这边:DSH 版本、Node 版本、操作系统、当前 profile(web / desktop)。
② 读它的 README、package.json、插件 manifest,列出它要求的 DSH 版本 / Node 版本 / 操作系统 / 外部依赖 / 需要另外先装的运行时。
③ 逐条比对,结论只写「满足 / 不满足 / 未知」三种;不满足的给出可行替代方案。
④ 检查是否和我已装的插件冲突:命令名重复、skill / tool 重名、端口占用、重复注册的 MCP server。
【2 安全性检查】
① 仓库可信度:和上面「本站登记」是否一致;star / fork 数、创建时间、最近提交,是否归档或长期停更。
② 安装脚本:逐行看 package.json 的 preinstall / install / postinstall,以及 install.sh、setup.ps1 之类脚本。出现 curl|bash、下载后直接执行、混淆代码、访问与插件功能无关的域名,立刻停下来告诉我,不要继续装。
③ 依赖:列出新增依赖,标出无人维护、或与知名包拼写近似的可疑包(typosquatting)。
④ 权限与副作用:它会读写哪些目录、访问哪些域名、需要哪些 DSH 权限(filesystem / network / shell / clipboard 等),以及怎么卸载和回滚。
⑤ 如果它要求 sudo / 管理员权限,或权限明显超出功能所需,先停下来问我。
【3 安装】
上面两步没有「不满足」和「高危项」时才执行;用官方推荐方式安装,不要自行提权。
【4 汇报】
用表格输出:检查项 / 结论 / 依据 / 是否需要我决策。拿不准的一律写「未知」并说明要我怎么确认——不要猜,也不要替我决定。
Send this message to DSH in your current session: it verifies compatibility and security first (answering met / not met / unknown item by item) and only installs once everything checks out — it will stop and ask you if it finds a high-risk item. The box scrolls; the copy is the full prompt. CLI install commands may not be accurate across systems, so DSH is the safer route.把上面这条消息直接发给当前会话里的 DSH:它会先核对兼容性与安全性(逐条给「满足 / 不满足 / 未知」),确认没问题再安装,有高危项会停下来问你。框内可滚动,复制到的是完整提示词;安装命令不一定准确,发给 DSH 更稳。
- 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 实验台。


现在能做什么
- 原子化的本地持久化存储,运行队列有并发上限,支持中止和超时
- 确定性 hard gates:不满足直接判失败,不进入排序
- Pareto 排名与 winner 汇总
- Web 矩阵界面,实时刷新
- 执行走 adapter 驱动,不猜、不调 DSH 没文档化的 headless 命令
兼容性边界
- 只按官方文档化的 Cordis 契约写:
name、apply(ctx, config)、Schemastery 的Configschema - 不碰 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 做脱敏
boogoo619/dsh-focus-overlay
lwklbb/DSH-SessionGraph