DSH 插件:datuloar/dsh-computer-use-win

在開發基於 DeepSeek Harness 的智能體時,讓 agent 在 Windows 桌面環境中執行操作是一個常見需求。現有的解決方案通常需要安裝複雜的原生驅動或 SDK。datuloar/dsh-computer-use-win 插件通過 CLI 工具 dsh-cu,爲 Harness 提供了截圖、點擊、輸入和滾動的能力,並包含一個供人類觀察和干預的屏幕覆蓋層。

插件定位

這是一個爲 DeepSeek Harness 設計的 Windows computer use 插件。它不依賴外部驅動或 SDK,直接利用 Windows 自帶的 .NET Framework 和 UI Automation 進行操作。CLI 工具 dsh-cu 獨立運行,也可以配合 Harness 的技能系統使用。

核心功能

  • 屏幕讀取:支持將屏幕內容轉換爲文本(OCR)或讀取 UI 控件樹,支持通過名稱點擊控件。
  • 輸入與操作:支持截圖、鼠標移動、點擊、拖拽、滾動、鍵盤輸入及組合鍵操作。
  • 人類監督:內置屏幕指示器,人類可以實時看到 agent 的操作狀態,並按下 ESC 鍵停止 agent。
  • 通用 CLI:命令行工具可與任何 Harness 技能或獨立腳本配合使用。

安裝與啓用

使用官方安裝命令添加插件:

dsh plugin --profile web add github:datuloar/dsh-computer-use-win

安裝後,系統將註冊名爲 dsh-computer-use 的技能,並提供 dsh-cu 命令行工具。

典型用法

插件提供了一系列命令用於桌面操作:

  • 啓動覆蓋層(供人類觀察):
    dsh-cu overlay
  • 截圖:
    dsh-cu shot
  • 點擊指定座標:
    dsh-cu click 640 380
  • 輸入文本:
    dsh-cu type "hello"
  • 輸入組合鍵:
    dsh-cu keys ctrl+l
  • 拖拽:
    dsh-cu drag 420 300 980 300
  • 通過控件名稱點擊:
    dsh-cu tap "Save"
  • 讀取屏幕內容:
    dsh-cu read
  • 獲取控件樹:
    dsh-cu tree

依賴與環境要求

運行此插件需要滿足以下條件:

  • 操作系統:Windows 桌面環境。
  • 運行環境:
    • Node.js 18+。
    • Windows PowerShell 5.1。
  • 注意事項:PowerShell 7 (pwsh) 不受此插件支持,因爲後端依賴於 Windows 自帶的 .NET Framework 和 WinRT,而非 .NET Core 運行時。

侷限性與注意事項

  • 無瀏覽器 DOM:插件基於 UI Automation,獲取的信息是應用暴露的控件,而非瀏覽器 DOM 樹。
  • 無多顯示器支持:目前不支持多顯示器環境。
  • 無應用程序白名單:沒有限制只能在特定應用中操作。
  • 安全機制:
    • 在覆蓋層開啓期間,輸入操作會被拒絕,直到覆蓋層啓動。
    • agent 無法通過注入 ESC 鍵來關閉覆蓋層,必須由人類手動停止。
  • 沙箱運行:該插件可以在 Harness 的沙箱環境中運行,但依賴文件描述符捕獲而非管道 stdio(針對 Harness 的文件沙箱限制做了適配)。

總結

datuloar/dsh-computer-use-win 插件提供了一個輕量級、無需額外驅動的 Windows 桌面自動化方案。通過 CLI dsh-cu,開發者可以方便地讓智能體與本地應用交互,同時通過覆蓋層機制確保了操作的可觀測性和安全性。

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

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

小夜