dsh-layout-tools:DSH Web 佈局插件(對話流淨化 + 工作區文件樹)

前言

在 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 狀態,底部能看餘額/用量,工具調用詳情仍回到官方軌跡視圖處理。

目錄頁:https://www.skillhub.cn/plugins/dHR-P/dsh-layout-tools

GitHub:https://github.com/dHR-P/dsh-layout-tools

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜