前言¶
在 DSH Web 裏做連續對話時,中間對話流如果夾雜大量工具調用卡片,閱讀焦點很容易被打斷。另一方面,開發過程中經常還需要同時查看當前會話工作區裏的文件、git 狀態、分支,以及當前模型來源的餘額或用量。
下面介紹 dHR-P/dsh-layout-tools。它是一個面向 DSH Web 的佈局插件,核心目標是把中間對話流整理得更乾淨,同時在左側提供帶 git 狀態的工作區文件樹,並在底部狀態欄補充餘額/用量信息。
這是什麼¶
dHR-P/dsh-layout-tools 由 dHR-P 維護,許可證爲 MIT。它支持 web profile,主要解決兩個問題:
1、中間對話流只保留 AI 文本輸出,工具調用卡片不再出現,但模型思考過程仍可展開查看。
2、左側面板展示當前會話工作區的文件樹,文件按 git 狀態着色,頂部顯示當前分支。
本插件不再自帶工具面板;工具調用詳情建議繼續使用 DSH 官方軌跡視圖。
核心功能¶
對話流淨化¶
中間對話流只保留 AI 文本輸出。工具調用卡片通過官方 slot 機制 shadow + CSS 隱藏,不再出現在對話區中。
思考過程展示¶
模型輸出時,對話區內會顯示 Thinking / Think 行,可點擊展開完整內容。這裏使用的是官方 ReasoningRow 形態,而不是額外右側面板。
左側工作區文件樹¶
左側面板展示當前會話工作區的目錄樹:
- 點擊目錄懶加載展開或收起子目錄。
- 跳過
.git/node_modules。 - 頂部顯示當前分支。
- 文件名按 git 狀態着色:
M修改、A新增、D刪除、R重命名、??未跟蹤、U衝突。 - 目錄內包含變更時標紅。
- git 着色隨分支切換和文件變更自動刷新。
面板頭部提供兩個按鈕:
⟳:刷新文件樹與 git 狀態。«:收起面板。
點擊文件打開¶
點擊文件會用系統默認程序打開,行爲類似 Windows 資源管理器雙擊文件。
這裏需要注意:open-file 通過 cmd /c start 調用系統 ShellExecute,僅在 Windows 上可用。
對話字號調節¶
右下角提供 A− / A+ 按鈕,用於調節對話區字體大小,範圍爲 12–28px。該設置僅作用於對話流節點。
側邊欄會話狀態着色¶
左側工作區列表中的會話條目,會整行跟隨官方狀態點着色:
- 對話結束:綠底。
- 等待回覆:黃底。
- 運行中:藍底。
- 出錯:紅底。
該着色僅作用於官方會話行本身的範圍,跟隨官方行的尺寸與圓角。
底部狀態欄¶
對話區底部,即輸入框下方,會顯示一行統計信息。這裏與官方 StatsLine 同位置,通過 portal 渲染進官方容器替換。
主要內容包括:
- 當前所選模型來源的餘額/用量,替換原有“輪/步”計數。
- 保留耗時、速度、token 統計。
- 點擊
⟳可刷新余額。
刷新余額時,密鑰僅在 host 側從 ~/.dsh/.credentials.yaml 讀取。
面板顯隱¶
窗口寬度會決定左側面板默認狀態:
- 窗口寬度
> 1700px時,左側面板自動展開。 - 窗口寬度
≤ 1700px時,面板隱藏,避免擠壓對話區。 - 需要臨時查看時,可點擊屏幕邊緣的
▶手柄展開。
安裝與啓用¶
前置條件:
- 已安裝 DSH,且
dsh web可運行。 - Node.js ≥ 22。
- pnpm ≥ 10。
安裝命令:
dsh plugin --profile web add "github:dHR-P/dsh-layout-tools"
安裝完成後,重啓 dsh web,再刷新頁面即可生效。
典型用法¶
下面是比較常見的使用路徑。
1、窗口足夠寬時,左側文件樹會自動出現。
2、在左側面板頂部點擊 ⟳,刷新文件樹與 git 狀態。
3、點擊目錄,懶加載展開子目錄。
4、點擊文件,用系統默認程序打開;該能力依賴 Windows 下的 cmd /c start。
5、模型輸出思考內容時,在對話區點擊 Thinking / Think 行展開完整內容。
6、用右下角 A− / A+ 調整對話區字號。
7、在底部狀態欄點擊 ⟳ 刷新當前模型來源的餘額/用量。
8、窗口變窄後,左側面板會隱藏;需要時點擊邊緣 ▶ 手柄臨時展開。
如果窗口較窄,建議優先保留對話區寬度,只在需要查看文件樹時臨時展開側欄。
本地調試¶
本地調試時使用 link 安裝,改完刷新即可生效:
dsh plugin --profile web add link:/絕對/路徑/dsh-layout-tools
卸載¶
卸載命令:
dsh plugin --profile web remove dsh-layout-tools
卸載後重啓 dsh web,即可完全恢復官方佈局。
兼容性與實現邊界¶
dHR-P/dsh-layout-tools 的 peerDependencies 釘定 ^0.1.0-rc.6。按已覈實資料,該插件在 @deepseek-ai/dsh 0.1.0-rc.6 上開發驗證,當前隨 0.1.1-rc.2 實例正常運行;不承諾其他版本線。升級 DSH 前,建議先在隔離環境驗證。
該插件的實現依賴官方 UI 的穩定標記,包括:
data-chat-flow-kind
data-variant="think"
conversation.chat.node
conversation.input.dock
如果後續官方 UI 升級調整了這些標記,本插件可能出現失效。
host 側提供以下路由:
/dsh-layout/fs-list
/dsh-layout/git-status
/dsh-layout/git-branches
/dsh-layout/git-switch
/dsh-layout/git-log
/dsh-layout/open-file
這些路由訪問路徑時會經過 realpath 校驗,且路徑必須位於已註冊工作區內。open-file 依賴 Windows Shell 調用,因此僅在 Windows 上可用。
適用場景與注意¶
這個插件比較適合以下場景:
- 使用 DSH Web 進行多輪對話,希望中間對話流少被工具卡片打斷。
- 開發過程中需要同時查看當前會話工作區的文件結構。
- 希望按 git 狀態快速識別修改、新增、刪除、重命名、未跟蹤和衝突文件。
- 希望查看當前分支,並在底部狀態欄查看模型來源餘額/用量。
- 在 Windows 環境中,希望點擊文件後用系統默認程序打開。
安裝前需要注意:
- 插件會在當前 dsh 進程權限下運行,安裝前應檢查源碼、路由行爲與依賴範圍。
- 許可證爲 MIT,見
LICENSE。 - 該插件依賴 DSH 官方 UI 標記,版本升級可能影響穩定性。
- 點擊文件打開能力依賴 Windows 環境。
- 這裏提到的目錄頁是獨立社區目錄,不等同於官方應用商店;該插件與 DeepSeek / 幻方之間不存在官方從屬關係。
結尾¶
dHR-P/dsh-layout-tools 的價值比較具體:它不改變 DSH 的核心工作流,而是把 DSH Web 的界面佈局整理得更適合連續對話與本地工作區操作。中間對話流更乾淨,左側能看文件和 git 狀態,底部能看餘額/用量,工具調用詳情仍回到官方軌跡視圖處理。