DSH Web 設置面板搜索插件

在使用 DeepSeek Harness (DSH) 的 Web 模式時,設置面板往往包含大量分區和選項。在長列表中定位具體配置項需要多次翻頁。dsh-settings-search-plugin 插件通過在設置面板增加搜索入口,提供獨立的候選列表,幫助快速定位到目標分區並聚焦具體設置項。

插件簡介

這是一個僅運行於瀏覽器的插件。它爲 DSH Web 設置面板增加了一個搜索字段,在輸入時覆蓋內容列展示獨立候選列表,點擊後導航至所屬分區並聚焦對應設置。

安裝與啓用

按照以下步驟將插件掛載到 Web 配置文件中:

  1. 克隆倉庫並安裝依賴
   git clone https://github.com/DoiiarX/dsh-settings-search-plugin
   cd dsh-settings-search-plugin
   pnpm install

注:構建後的 lib/ 輸出已提交,peer 依賴由 harness 運行時提供。

  1. 編輯配置文件
    編輯 $HOME/.dsh/profiles/web/package.json,在 dependencies 下添加:
   "@doiiarx/dsh-settings-search-plugin": "link:<絕對路徑到該目錄>"

同時在 dsh.profile.bundles 下添加:

   "@doiiarx/dsh-settings-search-plugin"
  1. 安裝依賴並重啓
    在 Web 配置目錄下運行 pnpm install,然後重啓 Web 進程。驗證設置面板是否出現搜索字段。

核心功能

  • 搜索入口與獨立列表
    在設置面板中新增搜索輸入框。輸入內容後,會在內容列上方展示獨立的候選列表。
  • 導航與聚焦
    點擊候選項後,瀏覽器會自動導航至該設置所屬的分區,並滾動至對應設置項,同時高亮顯示其輪廓。
  • 索引構建機制
    插件通過三種方式構建搜索索引:
    1. Slot Ledger(聲明式):讀取注入的 slots 服務,所有註冊的 settings.section 都是候選項,無論是否被訪問。
    2. Registration Surface(可選增強):插件可調用全局接口註冊更詳細的 item 級數據。
    3. Rendered-DOM Scan(已訪問分區):觀察已打開分區的 DOM,提取標題和文本生成 item 級候選項。
  • 註冊表面支持
    插件提供了一個全局對象 window.__DSH_SETTINGS_SEARCH__,允許其他設置插件註冊 item 級搜索項,包括自定義關鍵詞和 data-settings-item 錨點。

典型用法

如果需要在設置插件中註冊搜索項,可在客戶端的 apply 方法中調用:

window.__DSH_SETTINGS_SEARCH__?.register('local-shell-tools', {
  label: 'Shell',
  keywords: 'shell 終端 命令 cmd bash powershell pwsh 語言環境',
  items: [
    { 
      id: 'bashLang', 
      label: '語言環境', 
      desc: '寫入 LANG 與 LC_ALL', 
      keywords: '語言 locale lang 環境' 
    },
  ],
})

注意事項

  • 瀏覽器端運行:該插件僅運行於瀏覽器環境,不涉及設置命名空間或模型工具,因此無需配置 WEB_SETTINGS_NAMESPACES 且無需重建宿主。
  • 未訪問分區的索引限制:對於用戶從未打開過且插件未註冊的分區,搜索僅返回分區名稱(Tab 級),無法提供具體的 Item 級候選項。
  • 匹配邏輯:候選項文本僅進行標準化處理,不做詞幹提取或拼音匹配,不支持模糊召回。
  • 覆蓋層特性:搜索覆蓋層是頁面局部的,尺寸在安裝時測量。如果主題在對話框掛載後改變了導航欄或內容的寬度,可能需要重新打開設置面板以重新計算尺寸。

相關資源

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

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

小夜