前言¶
在 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 会被拒绝,需手动注册:
- 在 profile 的
package.json的dependencies中加入"dsh-design-symposium": "link:<本仓库路径>"; - 在
dsh.profile.bundles中追加本包; - 在
node_modules/dsh-design-symposium建立 junction 指向本仓库(hoisted linker,免跑 pnpm); - 重启 App(插件在组装期加载一次)。
安装前请阅读源码与 MIT 许可证;插件以当前 DSH 进程权限运行,配置中的模型调用会消耗 token 并写入成本账本。
典型用法¶
- 编辑
$DSH_HOME/symposium.json,按档位补全brief与sages,并用symposium_config list/set绑定 provider 与 model。 - 在 Agent 会话中调用
symposium_start,传入议题包、档位与轮数;若执行超过 120 秒,用symposium_status轮询直至完成。 - 若出现【求证】暂停,主模型查证后调用
symposium_answer注入事实再继续。 - 用
symposium_report获取纪要;需要长期跟踪决策质量时,用symposium_journal登记反对并在实施后reconcile。
右栏提供「研讨现场」面板(client 半),与上述工具及配置文件配合使用;相对上游 roundtable,本插件零 docx 运行时依赖。
与上游 roundtable-harness 的差异(摘要)¶
| 维度 | 上游 | 本插件 |
|---|---|---|
| 席位身份 | 不同模型竞技 | 不同设计立场 |
| 输入 | 无契约 | 议题包契约(按档位校验) |
| 产物 | Markdown 战报 + docx | 设计纪要 + 决策日记 |
| 交互 | 一次性出结果 | 求证暂停、反对条目可对账 |
适用场景与注意¶
适合需要在 DSH 内做结构化方案评审、希望保留分歧与否决理由、并愿意用议题包约束输入的团队或个人。不适合期望自动打分、模型排行榜或一键 docx 战报的场景(这些属于上游 roundtable 形态)。
社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系;安装与模型路由以本机 DSH 环境为准。
结尾¶
dsh-design-symposium 把多智能体讨论从「竞技评分」收束为「立场研讨 + 主席纪要」,并用议题包、档位预算与决策日记约束输入与复盘。进一步细节见 GitHub 仓库 README 与 SkillHub 目录页。