clear-ui:輸入框上方的「清爽」工作詳情開關

前言

在 DeepSeek Harness(DSH)裏做智能體開發,長會話裏往往會堆滿工具調用、思考過程、按步展開的執行記錄。這些行對排錯有用,但日常閱讀會把正文撐得很長。DSH 自帶「工作詳情」四檔(精簡 / 標準 / 詳細 / 冗長),需要進設置 → 通用裏改 transcriptView。若你只是偶爾想「看一眼結果、少看日誌」,反覆切設置並不順手。

社區插件 clear-ui(維護者 HoaXQuill,分類:客戶端)在輸入框上方加一個「清爽」開關:一鍵把會話正文切到內置「精簡」形態,再點一次回到切換前的檔位。它不重寫渲染,只讀寫 Host 已有的 ui-chat.transcriptView。

這是什麼

clear-ui 是 DSH 客戶端插件:在 conversation.input.dock 槽位註冊一個切換控件,把 transcript 切到 DSH 內置 compact 工作詳情視圖(並可恢復)。倉庫:https://github.com/HoaXQuill/clear-ui,許可證 MIT,當前 package 版本 0.1.0。SkillHub 目錄頁:https://www.skillhub.cn/plugins/HoaXQuill/clear-ui(社區站點,與 DeepSeek / 幻方無官方從屬關係)。

核心功能

下面分點說明已文檔化的行爲(以倉庫 README 爲準)。

清爽開 / 關與檔位

  1. 清爽 · 開:transcriptView = "compact"。進行中的回合不再逐條展開工具行;歷史回合按分組摺疊,只留結果。
  2. 清爽 · 關:回到切換前那一檔(默認「標準」);回退檔寫在 localStorage["clear-ui:prev-transcript-view"]。
  3. 你在設置頁改「工作詳情」檔位時,按鈕狀態會跟隨 Host 設置實時更新。
  4. 設置尚未加載完或當前不可寫時,按鈕置灰並給出原因,不會假裝切換成功。

槽位與橫排樣式

  • 槽位:conversation.input.dock(list / session 作用域),註冊 id clear-ui,order 41。
  • 與「追問澄清」「復盤本會話」等 dock 條目並列。插件在 apply() 裏向 <head> 注入樣式 id clear-ui-dock-row,把 div[data-slot="conversation.input.dock"] 從默認的縱向佔行改成橫排 flex,槽位內條目寬度按內容自適應,放不下才換行。

實現邊界

  • 只切檔,不改 DSH 行渲染:摺疊策略由 @deepseek-ai/dsh-client-ui-chat 的 POLICIES 決定。
  • 瀏覽器側通過 ctx.configForms.get("ui-chat") 訂閱並寫入,不直接碰 remote.settings;Host 側 lib/index.js 爲空殼,用於加載 lib/client.js。
  • 橫排樣式作用於整個 dock 槽位:同槽位裏若有待辦、隊列等面板型條目,也會進同一行並按內容收縮。
  • 若 Host 禁用設置持久化(非 loopback 頁面),writable 爲 false,按鈕禁用,屬設計行爲。

安裝與啓用

安裝命令須指向本包 package.json 所在目錄,任選一種來源。

克隆倉庫後從本地路徑安裝(示例):

git clone https://github.com/HoaXQuill/clear-ui.git
dsh plugin add file:<clone 出來的目錄> --profile desktop

若本地已有副本,可直接:

dsh plugin add file:C:/Users/HoaXQ/Desktop/插件/clear-ui --profile desktop

安裝後重啓 DSH(客戶端插件在啓動時掃描並加載;改 lib/client.js 後同樣需要重啓)。運行環境要求 Node >=20(見 package.json 的 engines)。

開發時若用 dsh plugin add 裝進 profile,編輯器保存可能切斷硬鏈接;改完 lib/*.js 後需重跑 dsh plugin add 或 npm run sync,再重啓 DSH 或刷新窗口。

典型用法

  1. 按上一節安裝並重啓 DSH,打開任意會話。
  2. 在輸入框上方 dock 區域找到「清爽」開關。
  3. 開啓:會話正文按「精簡」工作詳情展示,日誌類行收成精簡形態。
  4. 關閉:恢復你開啓前的檔位(未切換過則多爲「標準」)。
  5. 也可在 設置 → 通用 → 工作詳情 中改四檔;按鈕會與設置頁保持同步。

本地自測(維護者提供的命令,不要求終端用戶必跑):

node test/smoke.mjs        # Host 半邊
node test/client-smoke.cjs # 瀏覽器半邊
node scripts/sync.mjs      # 同步進 profile

適用場景與注意

適合誰:經常在 DSH 桌面端長聊、又需要偶爾「少看工具日誌、多看結果」的開發者;不想每次進設置改「工作詳情」檔位的用戶。

權限與安全:插件以當前 DSH 進程在瀏覽器上下文中運行,讀寫的是 UI 配置與 localStorage,不替代你對第三方插件源碼與 MIT 許可證的自查。安裝前可在 GitHub 閱讀 lib/client.js 與 cordis.patch.yml。

兼容性:若未來 DSH 改掉 ui-chat / transcriptView 字段名,按鈕會進入「設置不可寫」或「仍在讀取」狀態而非靜默失敗,屆時需改 lib/client.js 中的 NS / FIELD。

結尾

clear-ui 的價值很直接:在 composer 上方多一個切換器,複用 DSH 內置 compact 工作詳情,少動設置、少改渲染。需要源碼與問題反饋見 GitHub:https://github.com/HoaXQuill/clear-ui;社區索引見 https://www.skillhub.cn/plugins/HoaXQuill/clear-ui。

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

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

小夜