在本地開發環境中,頻繁打開多個終端窗口運行不同的 npm 腳本是常見操作。DeepSeek Harness 提供了一種插件機制來擴展功能,dsh-run 插件正是爲此設計:它允許在會話頭部直接調用工作區的 npm 腳本,避免切換窗口。
功能說明¶
該插件在會話頭部(Open in… 按鈕旁邊)添加一個複合按鈕,用於控制工作區的 npm 腳本。
-
讀取與展示
讀取工作區的package.json。僅當工作區包含package.json且其中有腳本時,該按鈕纔會顯示。 -
複合按鈕交互
- 播放圖標(▶):點擊運行默認腳本。
- 箭頭圖標(▾):點擊展開列表,顯示所有npm run腳本,選擇後執行並設爲新的默認腳本。 -
默認腳本邏輯
默認腳本按以下優先級選擇:
-dev
-start
- 第一個聲明的腳本 -
運行時狀態
- 運行時,按鈕變爲停止圖標,再次點擊可終止進程組(包括npm及其子進程)。
- 腳本失敗時,按鈕顯示爲紅色,並提示錯誤信息。 -
持久化
每個項目的默認腳本選擇會被保存在瀏覽器的localStorage中。
安裝與啓用¶
通過以下命令安裝插件:
dsh plugin --profile web add github:albertgranados/dsh-run
安裝後需要重啓 Harness 並刷新瀏覽器頁面。
注意事項¶
- 依賴條件:僅當工作區包含
package.json且有腳本時顯示按鈕。 - 權限限制:使用 Harness 的
subprocess服務運行,進程管理受 Host/Origin 限制。 - 併發限制:最多支持 8 個併發執行,內存隊列限制爲 32 KiB,磁盤溢出限制爲 4 MiB。
- 配置簡化:插件聲明瞭
dsh.bundle.patch,會自動處理配置,無需手動編輯package.json或cordis.patch.yml。
總結¶
dsh-run 插件通過在會話頭部集成 npm 腳本運行能力,簡化了開發流程。它提供了直觀的按鈕交互和基礎的進程管理,適合需要頻繁運行構建或開發服務的工作流。
GitHub: albertgranados/dsh-run