前言¶
在 DSH 的日常對話中,常需要讓不同 AI 角色圍繞一個議題發表意見:需求邊界、代碼分層、方案傾向、安全隱私等。dsh-round-table 採用 @ 提及範式:在左側邊欄創建角色,在主輸入框輸入 @ 選擇角色,單角色直接以該角色身份回答,多角色則以獨立 Agent 會話串行討論一輪,最後由主持人收斂共識點、分歧點和行動建議。
這是什麼¶
vuchisu069-source/dsh-round-table 是 DSH 官方 bundle 格式插件,許可證爲 MIT。package.json 中聲明 web 客戶端平臺。
它把角色庫接入 DSH 主輸入框,支持角色創建、@ 候選、單角色回答、多角色接力討論、宿主工具調用,以及角色狀態持久化。
核心功能¶
角色庫¶
左側邊欄提供「+ 新建角色」入口,打開 New Agent 模態,可配置:
- 形象
- 名稱
- Title
- 描述
- System Prompt
- 性格參數
- Advanced 區
SOUL.md人設文檔
SOUL.md 有 2000 字符硬上限,超長會截斷。
角色數據持久化到:
~/.dsh/data/round-table/state.json
持久化採用原子寫,並跨重啓保留。
@ 輸入與候選¶
插件通過官方 @ 輸入觸發管線註冊角色候選源。在主輸入框輸入 @ 後彈出角色候選,選中後插入 @角色名。
@ 解析支持精確匹配、去重,並排除郵箱、URL 中的 @。單次討論最多 4 個角色。
單角色模式¶
發送 @角色名 後,主會話以該角色身份、第一人稱回答。
角色 @ 時可使用 DSH 宿主自帶工具,例如:
- 讀文件
- 搜索
- 執行命令
多角色模式¶
多個角色 @ 時,各角色以獨立 Agent 會話串行接力討論。每個角色僅一輪,避免死循環。討論結束後,主持人收斂出:
- 共識點
- 分歧點
- 行動建議
多角色討論的協調等待階段會禁用/清空工具;角色獨立會話與單角色模式不受該限制。
超時保護爲:
- 單角色發言 90 秒
- 整體討論 120 秒
超時後自動推進或結束。
安裝與啓用¶
安裝命令:
dsh plugin --profile web add "github:vuchisu069-source/dsh-round-table#main"
安裝後需要重啓 web。該插件經 profile 管理,bundle 層在啓動時合成,因此重啓後生效。
典型用法¶
先創建至少一個角色,再在主輸入框使用 @。
單角色示例:
@架構師 看看這個項目的 lib/src 結構,評估一下分層是否合理
@安全專家 這段話有沒有泄露隱私的風險
多角色示例:
@架構師 @產品經理 一句話:導出功能該不該做?
@產品經理 @架構師 @安全專家 討論新功能的需求邊界
如果 @ 后角色未如預期觸發,可檢查角色名稱是否與候選一致,因爲 @ 按名稱精確匹配。多角色討論有 90 秒單角色超時與 120 秒整體超時保護。
配置¶
配置位於:
<dshHome>/settings.yaml
其中 round-table 段包含:
enabledmaxRoundsdefaultModepauseOnPageLeave
maxRounds、defaultMode、pauseOnPageLeave 爲 v1 房間範式遺留配置;v2 @ 範式下討論固定一輪。
適用場景與注意¶
適合 DSH 用戶或智能體開發者在日常對話中做角色化評審、方案對比、代碼結構檢查、安全隱私檢查。
需要注意:
- 角色 @ 時可使用 DSH 宿主全部工具,包括執行命令等宿主能力
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證
- 單次 @ 最多 4 個角色
- 多角色討論固定一輪
- 單角色發言 90 秒超時,整體討論 120 秒超時
SOUL.md有 2000 字符硬上限- 角色數據保存在
~/.dsh/data/round-table/state.json
結尾¶
dsh-round-table 把角色討論併入 DSH 主輸入框:單角色時直接扮演,多角色時串行接力討論並收斂結論。
社區目錄頁地址未提供;倉庫地址:
https://github.com/vuchisu069-source/dsh-round-table