lkshjd/dsh-debate

lkshjd★ 0TypeScript最后同步: 2026-08-17

在 GitHub 打开

DeepSeek Harness multi-agent debate plugin: isolated research, cross-examination, judge convergence (background job + resume + parallel waves)

README 摘要

多 agent 隔离辩论插件(@sky sun/dsh-debate) 给 DeepSeek Harness 增加一个面向模型的 debate 工具:提出一个议题,多个不同"底色"(怀疑论者 / 乐观派 / 务实派 / 创意派)的子 agent 会: 1. 隔离发散 —— 各自独立联网取证、独立论证,互不可见(防人云亦云 / 羊群效应) 2. 交叉辩论 —— 汇总各方论点,互相反驳、修正、补充(纠错 + 激发新观点) 3. 评审收敛 —— 多个评审各自独立评审,再交叉辩论,产出最终结论 + 分歧点 特性 :辩论作为 后台 job 运行,立即返回 job id;用 job output 查看每个 agent 的实时进度(Web UI 的 jobs 列表也会显示)。同一波次内的 agent 并行 执行(隔离发散的 4 个辩手同时跑),总耗时约为串行的 1/3。中途断网后 再次调用会自动断点续跑 ——已完成的 agent 直接复用,只补跑剩下的。 技术要点 - 编排复用 ctx.subagents seam :每个子 agent 是独立 session,天然严格隔离(spawn provider 不共享对话历史)。 - 后台 job( ctx.jobs ) :辩论注册为 debate kind 的后台任务, readOutput 增量输出每个 agent 的进度。 - 波次并行 :隔离发散、每轮交叉辩论、评审各自为一个波次,波内 Promise.allSettled 并行、波间串行(后一波依赖前一波产出)。 - 断点续传(session 引用) :存档只存每个已完成步骤的 子 agent session id (内容权威来源是子 agent 自己的持久化会话,DSH 原生),不复制文本;中断后重调时从 sessionPersistence.load(sessionId) 读回正文,已完成的 agent 直接复用。每个 agent 完成后立即存档(串行化写避免并发竞态),所以 kill/断网都能保留进度。 - 底色差异靠 persona :子 agent 的 deployment:persona section 被遮蔽为各自的立场人设。 - 抗幻觉靠"强制取证" :每个子 agent 的 prompt 都要求联网搜索、附来源、区分"查证事实"与"推理"。 - 能力继承 :子 agent 通过 composeFrom 继承父 agent 的 preset,所以能调用 web search 等工具。 ⚠️ 关于 temperature :当前 DSH 版本的请求路径尚未消费 temperature ( LlmCallConfig.temperature 字段存在,但源码中没有消费方)。本插件的 DebateAgent.temperature 字段已 预留 ,底色差异目前…

在 GitHub 查看完整 README →
Agent/智能体dsh-pluginweb uiagentsearch

分类