dsh-pet-lan:DSH 啓動時拉起桌面寵物 Electron 小窗

前言

在 DSH 裏做智能體或長時間掛進程時,桌面上是否有一個獨立小窗,往往取決於你是否願意再開一套啓動腳本、監聽 DSH 生命週期。手動起一個 Electron 桌寵,還要在退出時記得關掉子進程,步驟零碎,也容易和 DSH 不同步。

下面介紹社區插件 dsh-pet-lan(維護者 nanchen8888,分類:客戶端)。它只負責在 DSH 啓動時找到 Electron 並拉起桌寵應用,在 DSH 退出或插件卸載時結束子進程;桌寵本體與圖片素材不在此倉庫內。

這是什麼

dsh-pet-lan 是 DSH 啓動器類插件:在 DSH 加載時非阻塞啓動桌面寵物 Electron 小窗,在 DSH 退出時關閉該進程。

倉庫 README 寫明:這是一個啓動器,不包含桌寵本體和圖片素材。本體是獨立的 Electron 應用,默認目錄爲 D:\dsh-home\pet-lan;本倉庫僅負責定位 Electron 可執行文件並 spawn 啓動應用。

package.json 中版本爲 0.1.0,許可證 MIT;運行時要求 Node >=22、DSH >=0.2.2-rc.1,並聲明對 @deepseek-ai/cordis 的 peer 依賴(可選)。目錄頁:https://www.skillhub.cn/plugins/nanchen8888/dsh-pet-lan;源碼:https://github.com/nanchen8888/dsh-pet-lan。

核心功能

啓動與退出行爲

插件加載時的邏輯(以 README 爲準):

  1. 檢查 APP_DIR 是否存在;不存在則安靜跳過,不報錯阻塞 DSH。
  2. 按順序解析 Electron 路徑:
    - 環境變量 DSH_PET_ELECTRON_PATH
    - D:\dsh-home\electron\electron.exe
    - <DSH_HOME>/electron/electron.exe
  3. 使用 spawn(electron, [APP_DIR]) 啓動,stdio: "ignore",不阻塞 DSH 主流程。
  4. 插件卸載或 DSH 退出時,對子進程調用 child.kill()。

路徑約定

lib/index.js 頂部將 APP_DIR 寫死爲 D:\dsh-home\pet-lan。換機器時需修改該行,或將桌寵應用放到同一路徑。

Electron 路徑除默認盤符路徑外,還支持通過 DSH_PET_ELECTRON_PATH 或 <DSH_HOME>/electron/electron.exe 覆蓋,便於 Linux 等與 D:\dsh-home 不同的環境。

安裝與啓用

README 給出的安裝方式如下,請按 DSH 當前文檔中「bundle 安裝到 profile」的步驟操作,不要自行拼接未在資料中出現的 CLI 命令:

  1. 將本插件目錄作爲 DSH bundle 安裝到 profile。
  2. 通過包內 cordis.patch.yml 完成註冊後生效。

包內 dsh.bundle.patch 指向 ./cordis.patch.yml,入口爲 lib/index.js。

典型用法

可復現的前置條件來自 README 與路徑約定:

  1. 將桌寵 Electron 應用部署到 APP_DIR(默認 D:\dsh-home\pet-lan),或修改 lib/index.js 中的 APP_DIR。
  2. 確保本機存在可用的 electron.exe(環境變量、固定路徑或 DSH_HOME 下其一)。
  3. 完成 bundle 安裝並使 cordis.patch.yml 生效後,正常啓動 DSH;若目錄存在,應看到桌寵進程被拉起。
  4. 退出 DSH 或卸載插件後,桌寵子進程應被結束。

package.json 的 description 說明該桌寵場景是把柊舞緹娜的圖片放到桌面、按狀態換圖並顯示氣泡——屬於獨立應用能力,不由本啓動器插件實現。

適用場景與注意

適合誰: 已在本地準備好 Electron 桌寵應用與 Electron 運行時,希望 DSH 生命週期與桌寵窗口自動對齊的開發者;不需要在 DSH 內嵌 UI 時,用啓動器即可。

權限與安全: 插件隨當前 DSH 進程權限運行,會 spawn 外部可執行文件。安裝前應閱讀源碼(尤其 lib/index.js)並確認許可證(MIT);社區目錄 SkillHub 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係,並非官方應用商店。

平臺: 默認路徑面向 Windows 盤符寫法;其他系統需調整 APP_DIR 並配置 DSH_PET_ELECTRON_PATH 或 <DSH_HOME>/electron/electron.exe。

結尾

dsh-pet-lan 把「DSH 開則桌寵開、DSH 關則桌寵關」收成一塊小啓動邏輯,本體仍由你自管的 Electron 應用承擔。需要條目信息與倉庫說明時,可查閱目錄頁與 GitHub:

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

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

小夜