🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

编码竞技场 LeemanCheung/dsh-agent-arena

DeepSeek Harness
LeemanCheung60 天前有提交已提供中文文档扫描:含敏感能力

让多个模型在隔离环境中同题竞技并验证择优

30.1/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add LeemanCheung/dsh-agent-arena
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · dev
装得上吗
实装验证未通过(dependency_conflict),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 60 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(dependency_conflict · 2026/11/3) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-agent-arena(未发布到 npm,仅可源码安装)
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/7 14:41:52

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 13 处,展示前 9 条)
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:87
    if ((await lstat(parent)).isSymbolicLink()) throw new Error("Arena match directory cannot be a symbolic link or junction.");
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:88
    this.assertRealContained(realRoot, await realpath(parent), "Arena match directory escapes the worktree root.");
  • 写入本地文件
    packages/dsh-agent-arena/lib/index.js:92
    await mkdir(parent, { recursive: true });
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:93
    this.assertRealContained(realRoot, await realpath(parent), "Arena match directory escapes the worktree root.");
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:95
    await lstat(worktree);
  • 删除本地文件
    packages/dsh-agent-arena/lib/index.js:209
    await rm(target, {
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:222
    rootInfo = await lstat(root);
  • 读取本地文件
    packages/dsh-agent-arena/lib/index.js:229
    if ((await lstat(target)).isSymbolicLink()) throw new Error(`Refusing to clean a symbolic-link worktree: ${worktree}`);
  • 写入本地文件
    packages/dsh-agent-arena/lib/index.js:245
    await mkdir(root, { recursive: true });
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-typert-generator@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-client-ui-renderer@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-ui-theme@deepseek-ai/dsh-llm@deepseek-ai/dsh-session@deepseek-ai/dsh-storage-domain@deepseek-ai/dsh-subprocess
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 多模型隔离编码对决
  • 确定性验证
  • 评分与报告

隔离多模型编码对决,带确定性验证、评分和报告

README

由 DeepSeek 最新模型翻译生成
dsh-agent-arena DSH 编码竞技场:在隔离 Git worktree 中比较 2–4 个已配置模型,用确定性命令验证改动,审阅每份 diff,并由用户显式应用一名获胜者。 界面截图 Agent Arena 结果与 Diff 审阅 使用 GPT Image 根据已实现的 Client 布局和功能生成;实际外观会随 DSH 主题和视口变化。 执行与持久化 - 在操作系统临时目录创建 detached worktree,与被比较仓库分离。 - 递归清理只允许作用于 Arena 专用目录下严格的“比赛/选手”两级路径,并校验目录联接和符号链接解析后的真实位置。 - 通过公开的 ctx.agents.create、SessionId、createUserMessage 和 Agent.followup API 启动选手。 - Git 和验证 argv 都通过 ctx.subprocess.spawn 执行;绝不经过 shell,并拒绝 shell 操作符。 - 使用 storageDomain 保存比赛报告;Host 重启后,未结束的比赛会标记为失败。 - Settings 通过生成的 agentArena Remote 轮询状态,提供 Start、Cancel、diff 审阅和 Apply winner,不依赖浏览器全局变量。
展开完整文档(README 剩余 1 节)
dsh-agent-arena

DSH 编码竞技场:在隔离 Git worktree 中比较 2–4 个已配置模型,用确定性命令验证改动,审阅每份 diff,并由用户显式应用一名获胜者。

界面截图

Agent Arena 结果与 Diff 审阅

使用 GPT Image 根据已实现的 Client 布局和功能生成;实际外观会随 DSH 主题和视口变化。

执行与持久化

- 在操作系统临时目录创建 detached worktree,与被比较仓库分离。
- 递归清理只允许作用于 Arena 专用目录下严格的“比赛/选手”两级路径,并校验目录联接和符号链接解析后的真实位置。
- 通过公开的 ctx.agents.create、SessionId、createUserMessage 和 Agent.followup API 启动选手。
- Git 和验证 argv 都通过 ctx.subprocess.spawn 执行;绝不经过 shell,并拒绝 shell 操作符。
- 使用 storageDomain 保存比赛报告;Host 重启后,未结束的比赛会标记为失败。
- Settings 通过生成的 agentArena Remote 轮询状态,提供 Start、Cancel、diff 审阅和 Apply winner,不依赖浏览器全局变量。

评分与应用

每条验证命令有正权重。选手得分等于成功退出的验证权重占总权重的百分比;同分时按选手 id 稳定排序。不会使用 LLM 评委。表单不再预填通用验证,因为 git status --porcelain=v1 即使打印出改动通常也会成功退出;开始前必须添加该项目自己的测试、类型检查或构建命令。

创建 worktree 前要求 git status --porcelain=v1 干净。获胜者 worktree 会保留到用户显式应用。应用时再次检查仓库干净、确认 HEAD 仍等于比赛开始时记录的 revision,先运行 git apply --check,再运行 git apply --index --whitespace=error。Arena 不会自动应用、提交、推送或改写历史。

Settings 使用流程

1. 填写工作区干净的 Git 仓库路径和明确的任务目标。
2. 配置 2–4 位选手的显示名称、provider 与 model;每位选手都在独立会话和 worktree 中运行。
3. 添加 1–12 条验证 argv,并为每条设置正权重和 1–900 秒超时。界面会预先标出不安全的命令字符。
4. 在比赛面板查看阶段状态、事件时间线、加权得分、每条验证输出、改动文件和 diff;活跃比赛可取消。
5. 比赛完成后先审阅 diff,再点击“申请应用胜者”,并在确认面板中明确应用。应用前仍会检查仓库干净、起始 revision 漂移和补丁可用性。

Settings 通过生成的 agentArena Remote 轮询比赛状态;客户端不会把 API 放在浏览器全局变量中。

验证命令语法

Settings 字段接受保守的空格分隔 argv,例如 corepack pnpm test 或 corepack pnpm typecheck。引号、shell 变量、管道、重定向、命令分隔符、反引号和换行都会被拒绝。请选择参数本身不含空格的命令。

安装

dsh plugin --profile web add github:LeemanCheung/dsh-agent-arena

安装后重启原有 DSH Web 进程并刷新页面。profile 必须提供 agents、subprocess、storageDomain、Typert Remotes、Settings,以及至少两条可用 provider/model 路由。完整说明见套件安装指南。

模型体验

每个选手都在独立会话和 worktree 中接收一条包含 Arena 任务目标的用户消息,因此 token 和 KV cache 使用量会按 2–4 个独立选手会话增长。验证、评分、比较、取消、持久化与应用不会再调用其他模型。

已知限制

验证 argv 使用刻意保守的分词规则,无法表达本身包含空格的参数。取消依赖所选 provider 正确响应 abort signal。Host 使用支持二进制的 git diff HEAD,确保已暂存、未暂存和 intent-to-add 文件在审阅与应用时一致。超过 1 MB 审阅/应用上限的补丁会在修改原仓库前明确拒绝,而不是被截断。

开发

在仓库根目录运行 corepack pnpm typecheck、corepack pnpm test、corepack pnpm build 和 corepack pnpm pack:check。

1.0.1 已标记兼容 DSH 0.1.2-rc.1 的 web Profile。Windows 实测已在 3081 隔离 QA 实例和 3080 现有本地 Profile 中加载 Host 服务、浏览器 Client、生成的 Remote 命名空间和 Settings 面板;表单没有误导性的预填验证,必要字段未填写时“开始”保持禁用。自动化覆盖共 15 项测试。本次 QA 没有启动真实模型比赛,因此兼容结论不包含 Provider 执行和取消行为。
CI 已配置为在 Windows 和 Linux 上重新构建已提交的 lib 产物;任何已跟踪或未跟踪差异都会使检查失败。

MIT,见 LICENSE。
预览分享卡片长什么样 ↓LeemanCheung/dsh-agent-arena
分享 · DeepSeek Harness Hub
LeemanCheung/dsh-agent-arena

让多个模型在隔离环境中同题竞技并验证择优

这是你的仓库?认领条目

回到顶部