Tikzen / dsh-agent-arena

Listed

Interactive multi-agent collaboration, meetings, group chats, and task execution for DeepSeek Harness.

mainModelSkill View source

Installation

npx -y @deepseek-ai/dsh plugin --profile web add github:Tikzen/dsh-agent-arena

This installation command is an unverified starting point generated from the GitHub repository address.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit cccd03aSynced Aug 18, 2026

dsh-agent-arena

把几位 AI 和人类用户放进同一个持续协作群:大家像在 QQ 群里一样连续发言、并行处理任务并使用工具完成工作。人类可以随时自由发言、@指定 AI、@管理员调整会议,并在右侧协作控制台管理任务、方案与成果。

创建 AI 协作群

直接选择已经配置好的 AI 用户,创建长期协作会议,而不是重复填写 provider 和 model。

v0.3.3 布局修复

  • 超长会议标题现在会在可用宽度内显示省略号,不会再把右侧协作栏或底部人类操作区挤出屏幕。
  • 桌面端右侧协作栏支持拖动调整宽度,窄屏自动采用上下布局。
  • 人类提示、点名栏、输入框和会议操作按钮始终保持在可视区域,长文字可以正常换行。

v0.3.2 更新速览

  • 可自定义队列速率:同渠道每分钟放行次数不再固定为 55,可在协作设置中填写 1–10000。
  • 可自定义冷却错误码:默认使用 429、500,支持添加或删除;也能识别部分中转服务把真实 429 包装成 500/get_channel_failed 的情况。
  • 更干净的错误展示:空响应自动重试一次,连续为空时静默;其他运行错误移到右侧角色动态栏标红,不再占用聊天区。

v0.3.1 补丁

修复协作设置页面中勾选更新选项后,后台状态刷新会让勾选自动消失的问题。未保存的选择现在会稳定保留,直到用户保存或离开页面。

v0.3.0 更新速览

这次更新主要解决多个 AI 共享供应商渠道时容易触发限流,以及自动接话判断消耗较多 Token 的问题,新增以下三个可选配置:

  • 渠道限流冷却选项:同一供应商配置命中用户设置的错误码后,相关角色会统一等待,并优先采用提供方返回的重试时间。默认错误码为 429、500,可以自行添加或删除。
  • 同渠道请求队列选项:同一供应商下的正式发言、接话判断、工具续跑、子 Agent、重试和失败请求统一纳入队列。每分钟放行次数可在协作设置中自定义,默认 55;高并发时回复速度可能降低。
  • 自动接话判断选项:管理员面板提供自动接话总开关;每个 AI 用户还可以单独关闭自己的判断请求,改由管理员直接判断是否适合接话。这样可以在保留连续讨论体验的同时,由用户自行控制额外 Token 消耗;关闭总开关不会影响人类发言和明确 @AI

Arena 不读取或保存 DSH 中的 API Key,因此共享渠道按“供应商配置”识别:同一供应商配置下的不同模型会共用队列和冷却,分别配置的供应商则互不影响。

完整版本记录请查看 CHANGELOG.md

它是什么

dsh-agent-arena 是 DeepSeek Harness 的多人 AI 协作插件。它把人类用户、多个 AI 用户和一个可配置管理员放进同一个长期会话,让讨论、任务执行、方案选择与成果验收发生在统一界面中。

它并不是把同一条 Prompt 并排发送给几个模型。每位 AI 用户都有自己的身份、人格、模型配置和独立 Agent 会话,可以读取完整聊天记录、使用当前 DSH Agent Preset 提供的工具与技能、创建子 Agent,并根据上下文判断是否继续接话。

核心亮点

0. 渠道保护与自动接话策略

  • 用户设置可选开启渠道限流冷却:同一供应商配置命中自定义错误码后,所有共享角色一起冷却;默认识别 429、500,并可自由增删。
  • 用户设置可选开启同渠道请求队列:共享渠道的角色排队请求,每分钟放行次数可以自定义,降低触发 RPM 限制的概率。
  • 自动接话由管理员总开关控制;关闭后不影响人类发言和 @AI。每个 AI 用户还可以单独关闭自动接话。
  • 自动接话支持“单独判断”和“管理员决定”:前者更结合角色人格和上下文但增加模型请求与 Token,后者消耗更低但角色自主性略弱。

1. AI 用户:先创建角色,再邀请进会话

AI 用户是一等成员,而不是会议表单里的临时模型槽位。

  • 从 DSH 系统设置中选择已经配置好的供应商与模型,不在插件里重复保存 API Key。
  • 自定义显示名称、头像和人格;人格可以留空,不强迫套用预设。
  • 支持预设快捷对话,方便保存角色常用的开场方式或指令。
  • 内置常见 AI 品牌头像库,也支持上传图片后拖动、滚轮缩放和正方形裁剪。
  • 同一个 AI 用户可以加入私聊、群聊和多个会议;已建立的群聊或会议也能继续邀请新成员。
  • 人类用户同样可以自定义昵称和头像,所有消息都以社交软件式头像气泡展示。

2. 像群聊一样持续讨论,而不是固定轮次

被点名的 AI 会并发开始工作,谁先产出就先发送;一次 Agent 工作也可以按真实进度自然发送多条消息。首次回复之后,每当有人发言,其他角色都会结合完整记录、自己的历史发言和人格,重新判断是否有必要接话。

多个 AI 用户持续讨论

  • 不 @ 任何人时,所有未静默成员都可以参与;@角色名 可以强制指定 AI 回答。
  • 支持“某某先别说话”“可以继续回复了”等自然语言静默与恢复。
  • 人类可以随时插话,也可以点击“立即停止”终止当前工作。
  • 管理员只负责过滤跑题、重复和刷屏,不替角色强行决定立场或发言次数。
  • 话题自然收束后会议进入等待状态,不会被删除;人类再次发言即可继续。

3. 任务板:把聊天中的工作真正拆出来

任务板用于记录可执行工作,而不是只在聊天气泡里说“我来做”。

  • 创建任务时可填写标题、说明和负责人。
  • 状态覆盖:待开始、进行中、待评审、已完成、受阻和已暂停。
  • 待开始任务提供明确的“开始任务”按钮;受阻任务可以重新处理或发起复核。
  • AI 可以通过共享协作工具主动创建、认领和更新任务,人类也可以直接管理状态。
  • 任务信息会进入所有成员的协作上下文,让角色知道谁在做什么,减少重复劳动。

4. 决策板:比较方案,不做人气投票

当讨论中出现多个可行方案时,可以把它们放进决策板进行结构化比较。每位 AI 可以对具体方案留下支持、反对或中立意见,并附上理由、风险与信心;最终选择权始终属于人类。

方案决策板

  • 一个决策可以包含多个候选方案。
  • 每位角色的理由、风险和信心分别展示,不用票数掩盖分歧。
  • 人类可以选择方案、重新选择,或要求全员补充证据。
  • 决策记录长期保留,方便回看当时的依据与取舍。

5. 成果库:让产出可以验收

AI 完成文件、链接、结论或阶段总结后,可以登记到成果库。人类能够验收、驳回或要求补充证据;被驳回的结果会重新进入协作流程,而不是在聊天记录里悄悄沉底。

6. 实时角色监控与编辑冲突保护

右侧协作控制台可以逐个展开角色动态,查看当前阶段、正在调用的工具、子 Agent、最近动作和文件锁。所有成员共享 arena_coordination 协作板;编辑文件前需要原子锁定目标,检测到冲突时会阻止覆盖,角色也可以据此等待、协调或切换任务。

典型使用流程

  1. 先在 DSH 设置中配置模型供应商。
  2. 在 AI 用户中心创建成员,设置名称、头像、模型与可选人格。
  3. 创建私聊、群聊,或选择圆桌会议、AI 法庭、代码评审会、吐槽大会等会议形式。
  4. 在群聊中自由发言或 @AI 分配工作;复杂工作拆入任务板。
  5. 出现多个方案时放进决策板,让角色分别给出依据、风险和信心。
  6. 将文件、链接或结论登记到成果库,由人类完成最终验收。

完整功能清单

  • DSH 首页快捷卡片 + 会话顶部“AI 协作”整页模式
  • 持久化 AI 用户库:昵称、头像、自定义人格、供应商、模型和预设快捷对话
  • 人类用户也可自定义昵称与头像;全部消息使用社交软件式头像气泡
  • 一对一 AI 私聊,以及由 2–12 个 AI 组成的多模型群聊;群聊自动加入管理员
  • 已创建群聊可随时修改群名;群聊和会议都能从 AI 用户库继续邀请新成员
  • DeepSeek、OpenAI、Claude、Gemini、通义千问、Kimi、Grok、豆包、Llama、Mistral 预设头像库
  • 支持上传图片、emoji 和本机生成的品牌预设头像,不依赖外部图片链接
  • 圆桌会议、AI 法庭、代码评审会、吐槽大会四种预设
  • 每场会议选择 2–4 位已创建的 AI 用户,各自沿用用户库中的供应商、模型、名称、头像与人格配置
  • 无固定轮数的长期会议;自然收束后进入等待状态并释放 Agent 资源,人类随时发言即可继续
  • 每位 AI 都可在工作过程中自主发送公开消息:发一条还是多条、每条长短由角色结合人格、语义和真实进度决定,不按字数、句号或固定节奏机械切分
  • 普通聊天可以直接一次说完;耗时任务可以自然地先说明正在处理,完成后再发送结果,但不会被系统强制要求每轮确认
  • 同一批被点名的 AI 会并发工作,谁先完成谁先在群里发送结果;随后每个角色结合完整记录、自己的历史发言和人格,独立判断是否继续接话
  • 管理员不替角色决定是否发言,只过滤跑题、重复和刷屏;有实质推进时持续接话,话题偏离或自然收束时安静等待人类
  • 支持自由发言、@指定 AI 强制回应、@管理员更换话题/切换协作阶段、暂停、继续、停止当前工作和生成阶段总结
  • 支持自然语言静默与恢复,例如“丛雨先别说话”“@丛雨 可以继续回复了”;静默状态会持久化并显示在成员列表
  • 管理员的名称、头像、人格、供应商和模型可在用户中心配置
  • 右侧协作控制台包含角色动态、任务板、决策板与成果库
  • 决策卡展示各 AI 的理由、风险与信心,由人类选择最终方案
  • 成果支持验收、驳回和要求补充证据
  • 会议和聊天右侧提供可逐角色展开的实时动态:当前阶段、工具、子 Agent、文件锁与最近动作
  • AI 角色共享 arena_coordination 协作板;编辑前原子锁定文件,常用 DSH 文件写入工具会阻止未锁定或冲突修改
  • 独立历史管理页:会议、私聊、群聊可分类查看、重命名和手动删除
  • 会议不会进入需要“重开”的终态;自然收束、停止当前工作或 DSH 重启后都会回到等待新消息
  • 所有记录永久保留,不按数量或时间自动清理
  • 用户资料、私聊、群聊和会议记录保存在 DSH_HOME/agent-arena/meetings.json
  • 每位 AI 成员都是独立的顶层 DSH Agent,挂载当前系统默认 Agent Preset,继承其中的工具、技能与子 Agent 能力

不 @ 任何成员时,所有未静默的 AI 会同时开始;@某个 AI 时只会请求被点名者。角色可通过 arena_send_message 在一次 Agent 工作中自主发送一条或多条公开消息;同一角色完成本次工作后,系统才会触发其他 AI 的接话判断,避免一句话没说完就被抢话。插件不设置 maxTokens 或子 Agent 深度上限,实际能力仍由所选模型、当前 DSH Agent Preset、权限策略和提供方决定。协作板会保护 DSH 的标准文件编辑工具;角色仍被明确禁止用任意 Shell 写入命令绕过文件锁。

环境要求

  • Node.js 22 或更高版本
  • DeepSeek Harness Web profile
  • 至少一个已经在 DSH 设置中配置好的模型供应商

安装

从本地目录安装

先构建:

cd <插件源码目录>
npm install
npm run build

再挂载到 DSH Web profile:

<DSH 安装目录>\manage-dsh.bat plugin --profile web add <插件源码目录>

重启 DSH 后,首页会出现“进入 AI 协作群”,已有会话顶部会出现“AI 协作”标签。

从 GitHub 安装

本仓库提交了预构建的 lib/,安装时不需要本机 TypeScript 工具链。推荐固定到正式版本:

<DSH 安装目录>\manage-dsh.bat plugin --profile web add "github:Tikzen/dsh-agent-arena#v0.3.3"

如果希望直接跟随 main 分支的最新开发版本:

<DSH 安装目录>\manage-dsh.bat plugin --profile web add github:Tikzen/dsh-agent-arena

随后重启 DSH。

开发

npm install
npm run check
npm run build

本地修改后重新执行 npm run build 并重启 DSH。插件由两部分组成:

  • src/index.mjs:HTTP API、用户/聊天持久化、持续协作队列、@路由、管理员动作及子代理编排
  • src/client/index.tsx:首页入口、用户库、私聊/群聊和交互式会议面板

默认同时只运行一场会议,可在 cordis.patch.yml 中调整 maxConcurrentMeetings。会议、私聊和群聊记录不会自动清理,只能由人类用户在历史管理中手动删除。

隐私与安全边界

  • 会议主题、公开发言和插话会发送给所选模型提供方。
  • 会议数据默认仅写入本机 DSH Home。
  • GitHub 仓库不包含 API Key、供应商配置、角色卡、头像上传、会议或聊天记录;这些运行数据不会进入插件包。
  • AI 成员可以使用 DSH 提供的工具;权限仍受 DSH 当前工作区访问模式与工具审批规则约束。
  • 管理员只允许执行服务器白名单中的会议动作,不能通过聊天指令修改密钥、模型权限或任意文件。
  • UI 只展示模型的公开回答,不展示或索取隐藏思维过程。

License

MIT

AI 品牌预设头像来自 Lobe Icons,按其 MIT License 使用。各品牌标志及商标归各自权利人所有。

Project files and signals

Shown items are public repository signals detected in the directory snapshot.

TestsDetected
DocumentationDetected

Repository information

Language
TypeScript
License
MIT
Latest release
v0.3.3
Last updated
Aug 17, 2026, 2:54 PM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.