前言¶
在 DSH 開發流程中,會話簡報通常包含任務進展和產出物信息,但默認狀態下這些信息分散或難以集中查看。dsh-brief-sidebar 插件解決了這個問題,它作爲一個 dsh-better-sidebar 的消費方,將簡報內容以“概要”標籤的形式渲染在右側邊欄,並遮蔽官方的 todo 面板,使其成爲任務進度的唯一可見載體。
核心功能¶
- 右側欄概要標籤:將會話簡報渲染爲右側邊欄內的一個摘要標籤頁。
- 雙列表展示:
- 進展看板:展示todos投影的任務進度,包含三態與摘要。
- 產物列表:展示dshSummaryDeliverables投影的產出物,實時顯示成功寫入的文件,codeplan 規劃產物會有“規劃”標籤。 - 遮蔽官方面板:當
better-sidebar激活時,該插件會通過註冊優先級競爭,遮蔽官方 composer-band 頂部的 todo 面板。 - 只讀模式:僅提供展示,不支持編輯、寫回或多會話聚合。
安裝¶
安裝前請確保 DSH 版本在 0.2.0 線上(engines.dsh >=0.2.0-rc.1)。
dsh plugin --profile web add dsh-brief-sidebar@dsh-0.2.0
安裝後刷新頁面即可生效。
使用方法¶
- 安裝完成後,右側邊欄會出現“概要”標籤頁。
- 在“概要”標籤頁中查看當前會話的任務進展和產出物列表。
- 點擊產物列表中的文件路徑,會通過
ctx.sidebarRight.openResource在側邊欄中打開對應資源。
設計要點¶
- 數據鏈路:插件不依賴框架的
useProjection,而是直接通過ctx.get('sessions')獲取 SessionBinding 和投影面(ProjectionsFace),分別解析todos和dshSummaryDeliverables。 - 遮蔽邏輯:利用 SlotCore 的註冊機制,以
priority: -1註冊id: 'todo'的條目,使其優先級高於官方默認的order: 0,從而在better-sidebar激活時實現遮蔽。 - 產物摺疊:產物列表的摺疊口徑與官方
turn-deliverables保持一致,僅統計成功寫入(write/edit/str_replace_editor)的文件,去重並忽略失敗項。 - 點擊打開:產物路徑點擊後,走與對話流同一條 Sidebar 預覽通道(
fileAddressFor),支持相對路徑和絕對路徑。
限制與注意事項¶
- 只讀限制:插件不做任何編輯或寫回操作,也不復制第三方渲染層,確保數據流向單一。
- 兼容性:僅支持 DSH 0.2.0 線。在 0.1.x 線上,如果
better-sidebar未激活,該插件處於 inert 狀態(不渲染標籤,不報錯)。 - 記憶分區:簡報的第三個分區“記憶召回”目前僅預留佈局插槽,處於規劃中,本期不渲染。
總結¶
dsh-brief-sidebar 爲 DSH 會話提供了一個清晰的、只讀的概覽視圖。通過將任務看板和產物列表集中在右側欄,開發者可以更直觀地追蹤會話進展和產出物,而無需在官方面板和簡報之間切換。
- 倉庫地址:https://github.com/drscrewdriver/dsh-brief-sidebar
- 目錄頁:https://www.skillhub.cn/plugins/drscrewdriver/dsh-brief-sidebar