dsh-wsl-winctl:從 WSL 控制與枚舉 Windows 窗口

前言

DeepSeek Harness (DSH) 採用插件化架構,通過擴展組件來增強核心能力。在 WSL(Windows Subsystem for Linux)環境中,開發者經常需要在 Linux 終端中與 Windows 桌面應用進行交互,例如調整窗口大小、激活特定應用或進行自動化操作。dsh-wsl-winctl 插件正是爲了解決這一痛點而生,它允許用戶通過 DSH 命令行直接與 Windows 頂級窗口通信。

插件定位

這是一個 DeepSeek Harness 插件,由用戶 173787247 維護。其核心功能是提供一套 API,使得 WSL 內部能夠枚舉 Windows 頂級窗口,並對它們執行激活、最小化、恢復、移動和調整大小等操作。它不依賴複雜的桌面環境,而是直接與 Windows 窗口管理器交互。

核心功能

該插件提供以下操作能力:

  1. 枚舉窗口:列出當前系統中的 Windows 頂級窗口。
  2. 窗口控制:執行激活、最小化和恢復操作。
  3. 窗口移動與調整:通過指定座標和尺寸來移動窗口或調整其大小。

安裝與啓用

在安裝之前,請確保你的環境滿足以下條件:
* 運行在 Windows 上的 WSL 環境。
* DeepSeek Harness 已在該環境中運行。
* 系統路徑中存在可訪問的 PowerShell。

執行以下命令安裝插件:

dsh plugin --profile web add github:173787247/dsh-wsl-winctl

典型用法

安裝完成後,可通過 win_windows 命令調用以下功能:

1. 列出當前所有窗口

win_windows action=windows

2. 激活包含特定標題的窗口
此操作通過窗口標題進行模糊匹配,而非依賴當前焦點。

win_windows action=activate titleContains="Notepad"

3. 移動並調整窗口大小
移動操作必須同時指定位置(x, y)和尺寸(width, height)。如果只指定位置或尺寸不完整,操作會被拒絕。

win_windows action=move pid=1234 x=0 y=0 width=1280 height=800

注意事項

  • 目標指定機制:插件要求所有操作必須明確指定目標,只能通過 pid(進程 ID)或 titleContains(標題包含關鍵字)來定位窗口。插件不會作用於當前焦點所在的窗口。
  • Move 操作的完整性:move 操作拒絕“半猜測”的執行方式。如果未提供尺寸或尺寸爲負數,命令將直接失敗,要求使用者提供完整的位置和正尺寸參數。
  • 兼容性:該插件版本爲 0.1.0,要求 DeepSeek Harness 版本不低於 0.1.2。

短結尾

該插件爲 WSL 用戶提供了標準化的窗口控制接口,適合需要自動化桌面交互或從 Linux 環境管理 Windows 應用的場景。其 MIT 許可證允許自由使用與修改。源碼及更多兼容性細節請參考其 GitHub 倉庫。

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

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

小夜