前言¶
用 DSH Desktop 做長對話或盯多輪任務時,主窗口往往被別的應用蓋住:待辦寫在備忘錄裏、提醒靠系統鬧鐘、新消息只能反覆切回 DSH。DSH 的對話頁本身能承載輸入與歷史,但缺少一塊始終貼在工作區邊緣、又能和 Host 同步狀態的輕量入口。下面介紹維護者 cinewave0 發佈的客戶端插件 dsh-quick-panel-mac(當前正式版 1.0.4):在 DSH 窗口內提供浮島與下拉麪板的快捷入口,並可選拉起基於 Electron 43.x 的獨立小應用,把待辦、提醒、實時消息、快速輸入和審批接管集中到同一套 UI。Windows 版在獨立倉庫 cinewave0/cinewave0-dsh-quick-panel 發佈;本倉庫組合包聲明 dsh.bundle.platforms: ["darwin"],在 Windows 上不會出現也不會被啓用。
這是什麼¶
dsh-quick-panel-mac 是 DSH Desktop 的快捷面板插件,包名 dsh-quick-panel-mac,分類爲客戶端插件。它在 Host 半區提供共享存儲與本地 API,在 DSH 客戶端注入側邊欄入口;另有一套可常駐桌面的 Electron 伴生窗(默認頂部浮島 360×48,展開後面板寬 440)。組合包僅面向 macOS;分發渠道爲 GitHub Releases 與本倉庫自建的 Discover 索引,不發佈 npm。
適用環境:
- macOS 12+(獨立小應用依賴 Electron 窗口 API)
- DSH Desktop(Host 半區需要
webServer與sessionController) - 插件聲明的 DSH 版本:
engines.dsh爲>=0.2.2-rc.1 <0.3.0
核心功能¶
DSH 窗口內¶
- 側邊欄底部按鈕進入快捷面板:頂部浮島,下拖展開面板。
- 浮島顯示最新一句文案、時間與運行狀態指示。
- 面板分區:待辦、提醒、實時消息、底部快速輸入。
- 待辦左側勾選會把條目填入 DSH 輸入框(不自動發送);條目按當前顯示順序帶
1.2.序號。 - 提醒支持翻頁時鐘、重複與提示音。
- 實時消息區分用戶 / 助手 / 推理 / 代碼 / 工具 / 錯誤,支持流式光標與上滾加載更早;用戶消息中的圖片以縮略圖展示(由 Host 按當前對話附件引用讀取)。
- 面板時鐘區域可顯示餘額、本次 token 與輸出速度、近 30 日本機會話 token 近似總量;通知條記錄審批請求、輪次結束、提醒到點等(最近 20 條,審批可跳回審批卡)。
獨立小應用(Electron)¶
從 DSH 面板底部點「打開獨立面板」啓動。首次打開時 Host 會自動下載、校驗並安裝 Electron 43.3.0(約 120 MB,arm64 / x64),無需 dsh-pet,也無需手工解壓(離線環境可關閉自動下載並手動放到 ~/.dsh/electron,見下文環境變量)。
獨立窗行爲要點:
- 浮島置頂、默認不佔 Dock;點文字或
⌃展開面板;拖左側⠿移動位置;點 X 僅收起到浮島。 - 菜單欄托盤:打開面板、收起到浮島、退出(托盤退出才結束進程)。
- 可拖入圖片或文件,上傳後隨下一條消息發送;單條最多 20 個附件。
- 面板高度可拖窗口上下邊緣調整(首次展開約 720,之後記住高度);寬度固定 440。
- DSH 頁面可見時權限由 DSH 內建卡處理;頁面隱藏或最小化時由獨立窗接管審批,回到 DSH 可見後交還;可勾選「審批鎖定在外部面板」強制在外部面板處理。
- DSH 的 1/2/3 選項問題會鏡像到獨立窗;「實時消息」與「在線」之間的 1–5 數字對應最近 5 個會話,點數字在 DSH 中發起切換(由頁面內插件輪詢處理)。
- 離開 DSH 對話頁約 5 秒後,實時消息改由 Host 鏡像;流式 partial 仍依賴 DSH 對話頁。
DSH 內與獨立窗共享待辦、提醒、設置等狀態,默認落在 $DSH_HOME/quick-panel/state.json(DSH_HOME 在 macOS 上一般爲 ~/.dsh)。
安裝與啓用¶
本項目提供三種安裝方式;安裝或更新後必須用 ⌘Q 完全退出 DSH,確認 Dock 圖標消失後再打開。只關窗口或刷新頁面不會加載插件的頁面部分;首次安裝若出現「Host 未連接」,按同樣方式重啓即可。
方式一:DSH 插件市場(Discover)¶
插件 → 發現 → 添加索引源:
https://cinewave0.github.io/dsh-quick-panel-mac/market/index.json
在發現頁搜索 Quick Panel 安裝。索引默認安裝 1.0.4 正式版。
方式二:Release 包¶
從 Releases 下載 dsh-quick-panel-mac-1.0.4.tgz,用隨附 SHA256SUMS 校驗後,在 DSH 插件頁填寫 tgz 的絕對路徑;若環境中有 dsh CLI,可執行:
dsh plugin --profile desktop add /絕對路徑/dsh-quick-panel-mac-1.0.4.tgz
方式三:指定 git commit¶
dsh plugin --profile desktop add "git+https://github.com/cinewave0/dsh-quick-panel-mac.git#<commit>"
重新打開 DSH 後,第一次點「打開獨立面板」會觸發 Electron 運行時的一次性安裝。若需自定義下載源或禁用自動下載,可在重啓 DSH 前設置環境變量(節選 README 原文):
# 自定義 Electron 鏡像根目錄(需含 43.3.0 對應 zip)
export DSH_QUICK_PANEL_ELECTRON_MIRROR=https://your.mirror/electron
# 指向已有 Electron 可執行文件
export DSH_QUICK_PANEL_ELECTRON=/path/to/Electron
# 關閉自動下載,改用手動安裝到 ~/.dsh/electron
export DSH_QUICK_PANEL_NO_RUNTIME_DOWNLOAD=1
啓動失敗或下載異常時,可查看 ~/.dsh/quick-panel/helper.log。
典型用法¶
- 安裝並完成 ⌘Q 重啓後,在 DSH 側邊欄點快捷面板,從浮島下拖打開面板,在底部輸入框旁管理待辦與提醒。
- 需要邊寫代碼邊盯對話時,在面板底部點「打開獨立面板」,把浮島拖到屏幕頂部,展開面板查看實時消息;待辦勾選後內容進入 DSH 輸入框,在 DSH 或獨立窗中確認發送。
- 獨立窗中把文件拖到輸入區上方附件條,發送帶附件的消息;在「實時消息」下方用 1–5 切換最近會話(需保持 DSH 客戶端插件加載,請求約 2.5 秒輪詢,最長 30 秒過期)。
- 審批流:DSH 最小化時在外部面板直接批准工具調用;若希望始終在獨立窗處理,勾選「審批鎖定在外部面板」。
修改 client.js 或 panel/ 資源後刷新 DSH 或重開獨立窗;修改 index.js(Host)或 runtime/electron-helper/ 後需重啓 DSH 或按 README 說明退出獨立窗再開。
適用場景與注意¶
適合誰:長期在 macOS 12+ 上使用 DSH Desktop、希望待辦 / 提醒 / 會話流與 DSH 輸入框聯動,並需要不搶 Dock 的置頂浮島或托盤獨立窗的開發者。
運行與權限:插件在 DSH 進程及其拉起的 Electron 子進程內運行,可訪問 Host 提供的本地 API 與當前會話數據。安裝前應在 GitHub 倉庫 閱讀源碼與許可證,確認組織策略允許自動下載 Electron 二進制(約 120 MB)及桌面通知等行爲。
平臺與限制(README 已寫明):獨立窗未做 .app 簽名打包;多顯示器與跨 DPI 未完整驗證;會話切換依賴 DSH 頁面內插件;餘額顯示需登錄 DeepSeek 賬號,API Key 模式顯示 —;通知中心數據在 DSH 重啓換端口時可能清空。改本倉庫代碼前 README 要求先讀 AGENTS.md:此處只維護 macOS 版,平臺差異集中在 runtime/electron-helper/platform.cjs。
社區目錄頁 skillhub.cn 上的插件條目 與 GitHub 爲同一項目的公開索引,與 DeepSeek / 幻方無官方從屬關係;「一切皆插件」的安裝與發現流程以 DSH 與社區索引爲準。
結尾¶
dsh-quick-panel-mac 把 DSH 裏常用的待辦、提醒、實時消息和輸入入口收到浮島與面板,並在 macOS 上可選 Electron 獨立窗與審批接管。若你已在用 DSH Desktop,可按 Discover 索引或 Release 包安裝 1.0.4,記住 ⌘Q 全退重啓後再試獨立面板。
- 目錄頁:https://www.skillhub.cn/plugins/cinewave0/dsh-quick-panel-mac
- GitHub:https://github.com/cinewave0/dsh-quick-panel-mac