dsh-rail-zero:清零 DSH 左側欄收起後的 56px 空軌道

DeepSeek Harness (DSH) 的左側會話欄在收起時,其寬度邏輯寫死在 @deepseek-ai/dsh-client-ui-layout 的 AppFrame 中。在 macOS 上,收起後寬度爲 0;但在 Windows/Linux 上,收起後始終保留 56px 的空軌道,擠佔對話區的可用空間。dsh-rail-zero 是一個用於修復這一問題的瀏覽器端補丁插件。

這是什麼

該插件由 HelloQingTao 維護,屬於“趣味換裝”類別。它通過純瀏覽器端的 CSS/DOM 操作,將這條 56px 的空軌道清零,把空間還給對話區。插件不修改 DSH 的任何源碼或 Bundle 文件,也不依賴任何宿主 API 或 Peer 依賴。

核心功能

只改寫首段 grid-template-columns

插件只改寫左側欄容器內聯樣式的首段 grid-template-columns,使用 !important 覆蓋原有內聯樣式,右側面板的軌道不受影響。爲了對抗 React 的重渲染,插件內部使用 MutationObserver 重新應用樣式,並加入了防循環機制。

三級展開控制,絕不重複

插件提供展開按鈕,並根據環境自動選擇最佳實現,避免與現有按鈕衝突:

  1. 優先複用 dsh-qol:如果安裝了 dsh-qol,插件會自動檢測並使用其頂欄常駐漢堡按鈕(.astb-sidebar-toggle),本插件自身的按鈕會隱藏。
  2. 使用官方按鈕:如果沒有安裝 dsh-qol,則使用 DSH 官方的側邊欄 Toggle 按鈕。
  3. 兜底按鈕:如果既沒有 dsh-qol 也沒有官方按鈕,左上角會出現一枚 26px 的浮點按鈕「»」作爲最後的展開手段。

零依賴與純瀏覽器端

插件不 require 任何宿主模塊,避免了 client-modules 的版本漂移問題,完全運行在瀏覽器端。

安裝與啓用

在終端執行以下命令安裝:

dsh plugin --profile web add dsh-rail-zero

安裝完成後,重啓 dsh web 即可生效。卸載該插件會完全還原原始狀態。

適用場景與注意

該插件適合希望在 Windows/Linux 環境下最大化利用 DSH 對話區寬度的開發者。

  • 平臺差異:僅 macOS 完全隱藏側邊欄軌道;在 Windows/Linux 上,收起後軌道寬度爲 0,但視覺上會留出空間。
  • 共存性:與 dsh-qol、dsh-better-sidebar、dsh-sidebar-qa 可以共存,不會產生衝突。

總結

對於追求界面整潔、希望最大化對話區寬度的 DSH 用戶,dsh-rail-zero 提供了一個輕量級的解決方案。它不侵入 DSH 源碼,安裝即用,卸載即還原。

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

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

小夜