dsh-design-symposium
Manifest valid设计研讨会插件:多贤者立场研讨 + 主席收敛设计纪要(DSH 插件)。fork 改造自 HSM266/dsh-roundtable-harness。
dsh-design-symposium
设计研讨会插件:让多个持不同设计立场的贤者围绕同一议题多轮研讨,共享上下文, 主席收敛为设计纪要(一致点 / 分歧 / 否决方案 / 建议决策 / 术语定名)。
fork 自 HSM266/dsh-roundtable-harness v0.3.14(MIT), 按 VCPToolBox
MagiAgent立场辩论哲学大刀阔斧改造。原插件的「多模型辩论赛 + 六维评分 + docx 战报」 已转型为「立场研讨会 + 主席纪要」;架构骨架(共享上下文强制、上下文压缩护栏、成本精确归因、崩溃保发言) 继承自上游。0.5 起加上议题包契约 + 三档预算 + 求证暂停 + 决策日记,当前契约以 docs/blueprint-v0.5.md 为准(0.4 的改造过程留在 docs/refactor-blueprint.md)。
核心概念
- 贤者(Sage):研讨席位。身份锚点是立场(stance)与评审职责(duties),不是模型——
模型绑定只是可调参数,全场同模型也完全成立。立场文件镜像到
personas/<id>.md,直接编辑即生效。 - 议题包(brief,v0.5 契约):
topic+background/materials(首轮逐条注入的工程材料)+proposal(被评审草案)+decisionPoints(D1/D2…,所有档位必填)+locked(已拍板不许翻案)+invariants(必须成立的不变量)+assumptions(verified区分事实与推测)+rejected(已否方案与理由)。 缺项按档位拒启动并逐条点名:quick只要 topic + 决策点,standard/deep要求整包声明。 - 首轮盲评(firstRoundBlind,默认开):第一轮各席只见议题包不见彼此,防止锚定从众;
第二轮起共享 transcript 全量可见。可配置关闭,回退 MagiAgent 式全程明辩。
visibilityPolicy=previous_rounds(默认)时同轮互不可见,incremental为同轮增量可见。 - 档位(tier):
quick/standard/deep,各带轮数、单轮输出上限、整场 token 硬顶、 求证额度与可选的席位/主席模型覆盖(seatModel/chair);未写死的字段回落tiers块与内置默认。 - 求证暂停(P2):贤者遇到事实疑问写【求证】Q1/Q2,额度内研讨会暂停并落盘;
主模型查证后用
symposium_answer把结论以「已核实事实」注入后续每轮,查不到写unverifiable。 - 立场修正轨迹:每轮发言末尾要求结构化立场行
【立场】坚持|修正|让步:一句话理由, 主席据此在纪要中还原每位贤者的立场演化。 - 主席(Chair):取代上游的六维裁判。读完整发言记录,产出自由 Markdown 纪要 (一致点 / 分歧 / 否决方案 / 建议决策 / 术语定名 / 立场轨迹),原样嵌入报告——不解析结构化字段、 不做裁决矩阵,模型写什么就留什么。主席失败时纪要标记 unchaired 并保留完整记录,不伪造结论。
- 成本账本:继承上游精确归因——每次调用前后读 dsh-cost-meter 账本,按 provider:model 归因; 无法归因的贤者整体剔除并声明原因,缺数据绝不读作零成本。
- 决策日记(P3):
$DSH_HOME/symposium/journal记录每场摘要与反对条目; 施工后用symposium_journal action=reconcile逐条对账,按贤者聚合成应验率(样本 <5 标注不足)。
Agent 工具
| 工具 | 作用 |
|---|---|
symposium_start | 发起研讨会:议题包 + 档位 + 模式 + 轮数;超过 120 秒转后台,symposium_status 轮询 |
symposium_status | 实时状态:轮次进度、全部发言、主席纪要、异常记录 |
symposium_answer | 回答【求证】暂停的问题并继续;finish=true 放弃剩余轮次直接收敛 |
symposium_config | list 看席位与模型绑定;set 一句话改某席或主席的 provider/model,下一场生效 |
symposium_journal | 决策日记:objection 登记反对 / ruling 记裁决 / reconcile 对账 / stats 应验率 / list 场次 |
symposium_report | 取/重渲染纪要 Markdown(主席原文原样嵌入) |
配置
配置文件 $DSH_HOME/symposium.json(persona 镜像目录 $DSH_HOME/symposium/personas/,
报告默认写 $DSH_HOME/symposium/reports/)。关键字段:
{
"brief": {
"topic": "…",
"background": "…",
"materials": ["…"],
"proposal": "…", // 被评审草案(standard/deep 必填)
"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 }
},
"maxRounds": 3, // 1–20(显式 rounds 优先于档位)
"firstRoundBlind": true, // 首轮盲评(防锚定)
"visibilityPolicy": "previous_rounds", // 同轮互不可见;incremental 为增量可见
"maxRunTokens": 0, // 整场 token 硬顶,0 = 不限
"maxQuestions": 0, // 求证额度,0 = 不暂停
"tokenBudget": 60000, // 超限触发旧轮压缩
"keepRecentRounds": 2,
"sages": [
{
"id": "architect",
"name": "架构贤者",
"stance": "守护长期可维护性与模块边界……",
"duties": ["检查模块耦合", "质疑过度设计"],
"provider": "…", "model": "…", // 可选差异,可全场同模型
"cheap": false
}
],
"chair": { "enabled": true, "provider": "", "model": "", "persona": "" },
"sensitive": { "builtin": true, "words": [], "patterns": [] }
}
环境变量覆盖(免重启):CHAIR_MODEL / CHAIR_PERSONA / SYMPOSIUM_OUTPUT_DIR。
provider/model留空表示不绑定:该席会被跳过并记 anomaly。examples/symposium.example.json里的绑定故意留空,跑之前先用symposium_config list查本机路由再填。
安装(desktop profile,手动注册配方)
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(插件在组装期加载一次)。
与上游 roundtable-harness 的差异
| 维度 | 上游 | 本插件 |
|---|---|---|
| 席位身份 | 不同模型竞技 | 不同设计立场 |
| 输入 | 无契约,凭 prompt | 议题包契约(按档位校验,缺项拒启动) |
| 评分 | 六维裁判 + 性价比榜 | 主席自由 Markdown 纪要(不评分、不排名) |
| 产物 | Markdown 战报 + docx | 设计纪要 Markdown + 决策日记 |
| 交互 | 一次性出结果 | 求证暂停可中途注入事实;反对条目施工后对账 |
| UI | 设置页(Typert Remote) | 右栏「研讨现场」面板(client 半)+ 配置文件 + 工具驱动 |
| 运行时依赖 | docx | 零依赖 |
许可证
MIT。原作 HSM266,衍生改造 MingYue workshop。 上游历史完整保留于 git log 与 CHANGELOG 0.3.x 条目。
Comments
Loading…
Similar plugins
by Fishsb
圆桌会议 RoundTable — DeepSeek Harness (DSH) 插件:把一次会话变成可视化、可辩论、可拍板的专家圆桌会议;含三种协作模式、调度面、红队评审与 28 席专家团 | 需 DSH 0.1.5-rc.1+ · MIT License
★ 0
MIT
TypeScript
Sep 26, 2026
dsh plugin --profile web add dsh-plugin-roundtableby Diluka
DSH 侧边临时会话插件(Claude Code /btw 风格):fork 主会话 + 近期上下文补全,主会话同款 UI,关闭即销毁
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add @dsh-external/dsh-side-sessionby WindFromKadath
DSH (DeepSeek Harness) plugin for people who fork sessions: it labels each fork with the conversation it came from — a title prefix (⤷ 来源:) plus a sidebar badge that survives renaming. Zero dependencies; v0.1.2, MIT.
★ 0
MIT
JavaScript
Oct 7, 2026
dsh plugin --profile web add dsh-plugin-branch-originby yaodongH
DSH Web 插件:Codex 风格的改动汇总卡片,替换对话末尾的产出 chip 行。
★ 0
MIT
TypeScript
Sep 24, 2026
dsh plugin --profile web add dsh-better-summaryby AndroidSix
DeepSeek Harness 会话工具箱:图片草稿保险箱、项目分组与会话迁移、归档池、文件检查点恢复、多引用回复、后续任务联想。第三方插件,数据只存本机。
★ 4
↓ 478/wk
MIT
JavaScript
Oct 23, 2026
dsh plugin --profile web add dsh-session-toolboxby Witherwithwinter
DeepSeek Harness 的代码编辑器风格输入面板(CodeMirror 6):普通 / 悬浮 / 侧栏标签三态单实例,与官方输入机同源。 | Code-editor style input panel for DeepSeek Harness (CodeMirror 6) — inline, floating or sidebar tab, always exactly one, sharing the official input machine.
★ 11
↓ 475/wk
MIT
TypeScript
Oct 30, 2026
dsh plugin --profile web add dsh-codinput