dsh-design-symposium: Multi-perspective Design Seminar and Chair's Summary

前言

在 DSH 里做架构或方案评审时,常见做法是单模型一次性给意见,或让多个模型各说各话再人工拼结论。前者容易漏掉对立面,后者缺少共享上下文和可归档的决策结构。社区插件 dsh-design-symposium(维护者 Lutra23,分类:工作流)把流程改成「多贤者按立场多轮研讨 + 主席收敛设计纪要」,并继承上游 roundtable 的共享上下文、压缩护栏、成本归因与崩溃保发言等骨架。本文基于仓库 README 与 package.json(当前版本 0.5.0)介绍其定位、能力与安装方式。

这是什么

dsh-design-symposium 是 DeepSeek Harness 的设计研讨会插件:多个持不同设计立场的贤者(Sage)围绕同一议题多轮研讨,共享上下文,由主席(Chair)收敛为设计纪要(一致点、分歧、否决方案、建议决策、术语定名等),输出为自由 Markdown,不做六维评分与排名。

插件 fork 自 HSM266/dsh-roundtable-harness v0.3.14(MIT),按 VCPToolBox MagiAgent 立场辩论思路改造;原「多模型辩论赛 + docx 战报」已转为「立场研讨会 + 主席纪要」。0.5 起采用议题包契约 + 三档预算 + 求证暂停 + 决策日记,契约说明见仓库 docs/blueprint-v0.5.md。

  • 目录页:https://www.skillhub.cn/plugins/Lutra23/dsh-design-symposium
  • 源码:https://github.com/Lutra23/dsh-design-symposium
  • 许可证:MIT
  • 运行时:Node.js >= 20;与 DSH 兼容范围 >=0.2.0-rc.1 <0.3.0-0(见 package.json)

核心概念与能力

贤者与主席

贤者以立场(stance)与评审职责(duties)为身份锚点,模型绑定仅为可调参数;立场文件镜像到 $DSH_HOME/symposium/personas/<id>.md,直接编辑即生效。

主席取代上游六维裁判:阅读完整发言记录,产出自由 Markdown 纪要并原样嵌入报告;失败时纪要标记 unchaired 并保留完整记录,不伪造结论。

每轮发言末尾要求结构化立场行 【立场】坚持|修正|让步:一句话理由,主席在纪要中还原立场演化。

议题包(brief,v0.5)

议题包包含 topic、background / materials、proposal、decisionPoints(D1/D2…,各档位必填要求不同)、locked、invariants、assumptions(verified 区分事实与推测)、rejected 等。缺项按档位拒启动并逐条点名:quick 仅需 topic + 决策点;standard / deep 要求整包声明。

档位与可见性

档位 quick / standard / deep 分别对应不同轮数、单轮输出上限、整场 token 硬顶与求证额度;未写死的字段回落 tiers 配置与内置默认。

首轮盲评(firstRoundBlind,默认开启):第一轮各席只见议题包不见彼此,第二轮起共享 transcript;可关闭。visibilityPolicy 默认 previous_rounds(同轮互不可见),可选 incremental。

求证暂停与决策日记

贤者在额度内可写【求证】问题,研讨会暂停并落盘;主模型查证后通过 symposium_answer 将结论以「已核实事实」注入后续轮次,查不到则记 unverifiable。

决策日记目录为 $DSH_HOME/symposium/journal,记录场次摘要与反对条目;施工后可用 symposium_journal action=reconcile 对账,按贤者聚合成应验率(样本少于 5 时标注不足)。

成本账本

继承上游精确归因:每次调用前后读取 dsh-cost-meter 账本,按 provider:model 归因;无法归因的贤者整体剔除并声明原因,缺数据不读作零成本。

Agent 工具

工具 作用
symposium_start 发起研讨会;超过 120 秒转后台,用 symposium_status 轮询
symposium_status 轮次进度、发言、主席纪要、异常
symposium_answer 回答【求证】并继续;finish=true 可放弃剩余轮次直接收敛
symposium_config list 看席位与模型;set 改某席或主席的 provider/model,下一场生效
symposium_journal 反对登记、裁决、对账、应验率、场次列表
symposium_report 取或重渲染纪要 Markdown

配置要点

主配置文件为 $DSH_HOME/symposium.json;persona 镜像目录 $DSH_HOME/symposium/personas/,报告默认 $DSH_HOME/symposium/reports/。

下面片段摘自 README,展示关键字段结构;完整说明与示例见仓库 examples/symposium.example.json。

{
  "brief": {
    "topic": "…",
    "background": "…",
    "materials": ["…"],
    "proposal": "…",
    "decisionPoints": [{ "id": "D1", "title": "…", "options": ["…"], "lean": "…" }],
    "locked": [], "invariants": [],
    "assumptions": [{ "text": "…", "verified": true }],
    "rejected": [{ "proposal": "…", "reason": "…" }]
  },
  "defaultTier": "standard",
  "tiers": {
    "quick":    { "rounds": 1, "maxTokensPerTurn": 16384, "maxTokens": 200000, "maxQuestions": 0 },
    "standard": { "rounds": 2, "maxTokensPerTurn": 16384, "maxTokens": 200000, "maxQuestions": 3 },
    "deep":     { "rounds": 4, "maxTokensPerTurn": 16384, "maxTokens": 600000, "maxQuestions": 8 }
  },
  "firstRoundBlind": true,
  "visibilityPolicy": "previous_rounds",
  "sages": [ { "id": "architect", "name": "架构贤者", "stance": "…", "duties": ["…"], "provider": "…", "model": "…" } ],
  "chair": { "enabled": true, "provider": "", "model": "", "persona": "" }
}

环境变量可覆盖(免重启):CHAIR_MODEL、CHAIR_PERSONA、SYMPOSIUM_OUTPUT_DIR。

provider / model 留空表示不绑定,该席会被跳过并记 anomaly。示例配置中绑定故意留空,运行前先用 symposium_config list 查本机路由再填。

安装与启用

README 说明:desktop profile 由 Electron 独占管理,dsh plugin add 会被拒绝,需手动注册:

  1. 在 profile 的 package.json 的 dependencies 中加入 "dsh-design-symposium": "link:<本仓库路径>";
  2. 在 dsh.profile.bundles 中追加本包;
  3. 在 node_modules/dsh-design-symposium 建立 junction 指向本仓库(hoisted linker,免跑 pnpm);
  4. 重启 App(插件在组装期加载一次)。

安装前请阅读源码与 MIT 许可证;插件以当前 DSH 进程权限运行,配置中的模型调用会消耗 token 并写入成本账本。

典型用法

  1. 编辑 $DSH_HOME/symposium.json,按档位补全 brief 与 sages,并用 symposium_config list / set 绑定 provider 与 model。
  2. 在 Agent 会话中调用 symposium_start,传入议题包、档位与轮数;若执行超过 120 秒,用 symposium_status 轮询直至完成。
  3. 若出现【求证】暂停,主模型查证后调用 symposium_answer 注入事实再继续。
  4. 用 symposium_report 获取纪要;需要长期跟踪决策质量时,用 symposium_journal 登记反对并在实施后 reconcile。

右栏提供「研讨现场」面板(client 半),与上述工具及配置文件配合使用;相对上游 roundtable,本插件零 docx 运行时依赖。

与上游 roundtable-harness 的差异(摘要)

维度 上游 本插件
席位身份 不同模型竞技 不同设计立场
输入 无契约 议题包契约(按档位校验)
产物 Markdown 战报 + docx 设计纪要 + 决策日记
交互 一次性出结果 求证暂停、反对条目可对账

适用场景与注意

适合需要在 DSH 内做结构化方案评审、希望保留分歧与否决理由、并愿意用议题包约束输入的团队或个人。不适合期望自动打分、模型排行榜或一键 docx 战报的场景(这些属于上游 roundtable 形态)。

社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系;安装与模型路由以本机 DSH 环境为准。

结尾

dsh-design-symposium 把多智能体讨论从「竞技评分」收束为「立场研讨 + 主席纪要」,并用议题包、档位预算与决策日记约束输入与复盘。进一步细节见 GitHub 仓库 README 与 SkillHub 目录页。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye