DeepSeek Harness 插件:dsh-launch-in-one-click

DSH(DeepSeek Harness)的設計理念是“一切皆插件”,這使得開發者可以靈活擴展功能。在實際開發中,頻繁啓動 Harness 實例是常見操作。如果目標端口已被佔用,直接啓動通常會失敗,需要手動排查進程或關閉舊實例。手動管理這些環境不僅繁瑣,還容易出錯。

下面介紹 dsh-launch-in-one-click,它是一個爲 Windows 環境設計的 DSH 插件。它通過在桌面上生成一個自包含的 .bat 啓動器,解決啓動流程中的環境檢查和端口衝突問題。

插件介紹

dsh-launch-in-one-click 是由 233fxr-collab 維護的客戶端插件。它的核心價值在於提供一鍵啓動能力,並內置端口檢測機制,防止在端口已被佔用時啓動多個 Harness 實例。

  • 許可協議:MIT
  • 插件類型:客戶端
  • 核心能力:生成獨立啓動器、檢查運行環境、探測端口占用、拒絕衝突啓動。

核心功能

  1. 生成自包含啓動器:插件會在桌面上寫入一個獨立的 .bat 文件。該文件包含了啓動 Harness 所需的所有邏輯,不依賴插件本身。
  2. 環境預檢:啓動器運行前會自動檢查 node 和 npx 是否可用。
  3. 工作區驗證:啓動前會檢查配置的工作區是否存在。
  4. 端口探測與防衝突:
    • 啓動器通過綁定目標端口並識別 401 指紋來探測端口狀態。
    • 如果端口空閒,啓動 Harness。
    • 如果端口已被 Harness 佔用,拒絕啓動並提示使用該實例的 URL。
    • 如果端口被其他程序佔用,拒絕啓動並報告佔用者的 PID。
  5. 語言切換:支持在啓動器中切換語言(--lang en/zh/auto)。
  6. 獨立運行:生成的啓動器不導入此插件。即使卸載插件,桌面的 .bat 文件依然可以獨立工作。

安裝與啓用

安裝插件後,插件會在加載時根據配置生成啓動器(默認配置下)。

dsh plugin --profile web add dsh-launch-in-one-click

安裝完成後,桌面會出現一個由該插件生成的 .bat 文件。

典型用法

該插件提供命令行工具和斜槓命令。

斜槓命令

/launch                      # 使用默認部署設置安裝並生成啓動器
/launch doctor               # 運行診斷,檢查環境、端口和啓動器狀態
/launch list                 # 列出桌面上所有由該插件生成的啓動器及其設置
/launch --port 3111          # 在指定端口啓動 Harness
/launch --lang zh            # 將生成的啓動器語言設爲中文(--lang en | auto)
/launch --name "Work.bat"    # 指定啓動器的文件名
/launch --overwrite          # 強制覆蓋一個非插件生成的啓動器
/launch --dry-run            # 僅顯示將要寫入的內容,不實際執行

工具命令

launcher_doctor              # 診斷環境(Node, npx, 端口, 工作區等)
launcher_install             # 寫入啓動器(原子操作,包含自檢)
launcher_uninstall           # 卸載啓動器(僅限該插件生成的文件)

啓動器參數

啓動器自身也支持以下參數:

--port N                     # 指定端口
--workdir DIR                # 指定工作目錄
--no-open                    # 不自動打開瀏覽器
--silent                     # 無控制台窗口,輸出到日誌
--dry-run                    # 檢查並顯示計劃,不啓動
--help                       # 顯示幫助信息

注意事項與限制

  • 獨立性:啓動器是自包含的。卸載插件不會刪除桌面的 .bat 文件,文件依然可以正常運行。
  • 自動更新:啓動器會記錄生成它的插件版本。如果加載了新版本插件,且配置了 autoUpdate: true,它會自動更新桌面上的文件。
  • 安全重寫:如果顯式執行 /launch 或 launcher_install,啓動器會重寫文件。如果寫入失敗(自檢不通過),它會回滾而不是留下損壞的文件。
  • 日誌位置:啓動器的運行日誌保存在 %LOCALAPPDATA%\dsh-launch\launcher.log。使用 --silent 模式時,所有輸出也寫入此日誌。
  • 退出碼規範:啓動器的退出碼遵循約定,方便腳本處理:
    • 0: 正常運行或 dry-run 成功
    • 1: 缺少 node 或 npx
    • 2: 端口被 Harness 佔用
    • 3: 端口被其他程序佔用
    • 4: 參數無效
    • 5: 工作區不存在
    • 9: 端口探測失敗
    • 20: Harness 運行失敗
  • 配置成本:在 bundle 的 patch 中添加 config 行會增加成本,配置僅在重啓後激活。
  • 靜默加載:設置 provisionOnLoad: false 可讓插件靜默加載,不自動生成啓動器。

結語

dsh-launch-in-one-click 通過將啓動邏輯封裝爲桌面腳本,簡化了 Harness 的啓動流程。它確保了端口使用的唯一性,並通過自包含的 .bat 文件保證了工具的獨立性和持久性。

  • 插件目錄:[catalog_url]
  • 源碼地址:[github_url]
羽毛球分组比赛记分
小程序二维码

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

小夜