dsh-fullscreen-settings:把 DSH 設置彈窗變成 Codex 風格整頁設置頁

前言

在使用 DeepSeek Harness (DSH) 時,默認的設置彈窗通常是一個固定在屏幕中央的模態框,背景有遮罩。這種方式在查看長列表或複雜配置時,視野受限,且容易遮擋主界面。

dsh-fullscreen-settings 插件將這個體驗改成了類似 Codex 的整頁全屏設置頁:窗口鋪滿整個屏幕,移除遮罩,左上角提供顯眼的返回按鈕,內容區採用單列布局。

是什麼

這是一個把 DSH 設置彈窗重構爲全屏頁面的插件。

  • 作者:functy23
  • 許可證:MIT
  • 定位:UI 樣式增強,不改變邏輯,不修改官方源碼。

核心功能

佈局與視覺

  • 全屏鋪滿:設置頁鋪滿整個窗口,移除了原本的背景遮罩。
  • 左上角導航:左上角增加了一個整行寬度的“← 設置”按鈕,箭頭與文字同色塊,點擊返回。這與主界面左側菜單的交互邏輯一致。
  • 左右分欄:左側分類欄寬度爲 248px,帶髮絲分隔線;右側內容區單列最大寬度 880px,長行文字不再被拉伸過長。
  • 系統級適配:在 macOS 上,頂部會自動留出空間給紅綠燈(紅黃綠按鈕),該留白同時也是窗口拖動區;窗口進入全屏時,留白自動收起。

技術實現

  • 無哈希類名依賴:樣式錨定在官方的 div[data-shortcut-modal="settings"] 屬性上,使用元素選擇器。即使官方產品更換構建工具或 CSS Modules 策略,插件樣式通常也能保持生效。
  • 不修改官方文件:插件不修改、不打包官方任何文件。通過 Cordis Slot 機制修改渲染邏輯。
  • 優先級控制:通過設置 slot priority 爲 -1000,覆蓋了官方默認的 settings.header 渲染。
  • 關閉邏輯:關閉動作直接調用官方的 closeTopModal() 函數,保證與快捷鍵關閉行爲一致。

安裝與啓用

執行以下命令將插件安裝到指定的 profile:

dsh plugin --profile <profile> add dsh-fullscreen-settings

安裝完成後,刷新頁面或重啓 DSH 客戶端即可生效。

開發與測試

該插件無需構建步驟,源碼位於 lib/ 目錄。

在開發過程中,可以通過以下命令進行測試和校驗:

# 運行單元測試
node --test tests/

# 校驗代碼語法
node --check lib/client.js

兼容性與回滾

  • 兼容版本:按 DSH 0.2.0-rc.1 實測。
  • 升級安全:不修改、不打包官方文件。即使 DSH 升級導致樣式細節變化,最壞情況也只是樣式回退到默認狀態,不會破壞功能。
  • 回滾:刪除對應的 cordis.patch.yml 配置或通過插件管理界面卸載,刷新頁面後恢復默認居中彈窗。

資源

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

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

小夜