dsh-npm-runner:DeepSeek Harness 的 npm 腳本後臺運行插件

前言

DeepSeek Harness (DSH) 的核心設計理念之一是「一切皆插件」。在處理包含多個 package 的 monorepo 項目時,頻繁切換終端窗口運行 npm、pnpm 或 yarn 腳本會打斷開發流。dsh-npm-runner 旨在解決這一痛點,它將腳本發現與執行能力集成到 DSH 界面中,無需離開當前對話即可管理後臺任務。

這是什麼

這是一個由 nobu121 維護的 DSH 客戶端插件。它的功能是在當前工作區中查找 npm 腳本(支持 pnpm、yarn、bun 和 npm),並在 DSH 的後臺進程中運行它們。

安裝與啓用

執行以下命令即可添加插件。安裝後必須重啓 DSH,新的 bundle 纔會被加載。

dsh plugin --profile web add -w dsh-npm-runner

核心功能

  1. 不遍歷 node_modules:掃描邏輯基於 workspace root manifest、workspaces 字段聲明或直接子目錄,不會進入 node_modules 遞歸查找。
  2. 自動包管理器檢測:自動識別各 package 目錄下的 lockfiles(如 pnpm-lock.yaml、yarn.lock),使用對應的包管理器執行。
  3. 可視化列表:每個 package 展示爲一個可摺疊組,顯示運行目錄和腳本數量。列表支持全部展開/摺疊。
  4. 實時後臺運行:點擊腳本後,會在後臺啓動並展開實時輸出,顯示運行狀態點和耗時。支持停止操作以回收整個進程樹。

使用方式

  • 位置:在新會話中,該控制項位於 workspace/mode 行的右側;在對話中,位於頭部 action row,緊鄰 DSH 自身背景任務列表。
  • 操作:點擊控制項打開腳本列表,選擇腳本名即可啓動。啓動後列表展開,顯示實時輸出。

注意事項與限制

  • 重啓生效:插件安裝或更新後,必須重啓 DSH,配置纔會生效,頁面刷新無效。
  • 任務列表隔離:插件內部的清除操作不會觸及 DSH 自身的任務列表;DSH 自身的任務列表也不以工作區爲感知,默認僅在當前會話可見。
  • 安全限制:請求無法直接命名命令,客戶端需提供目錄和腳本名,由 DSH host 重新讀取 package.json 並構建命令。
  • 進程運行環境:腳本在 DSH 主機進程中運行,屬於本地進程。

更多信息

該插件適合需要在 DSH 環境中直接管理 monorepo 腳本的開發者。更多細節可參考 GitHub 倉庫。

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

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

小夜