rdp-cli

如何讓 AI Agent 操作遠端 Windows 桌面

AI Agent 可以撰寫腳本,但許多真實工作仍然需要桌面環境:只能在 Windows 執行的應用程式、文件編輯器,或檔案匯出對話框。可靠的做法是讓 Agent 遵循一個短回饋迴圈:觀察畫面、執行一個動作、驗證結果。

1. 準備 Windows 主機

在目標電腦啟用遠端桌面。為執行 Agent 的電腦下載相符的 rdp-cli 檔案,然後在 PowerShell 中檢查:

.\rdp-cli.exe --help

Agent 不必執行在 Windows 主機上,只要能存取 RDP 服務即可。

2. 連線時不要暴露密碼

不要把密碼直接寫入命令列或 shell 歷史紀錄,改用標準輸入傳遞:

$secret = Read-Host 'Password' -AsSecureString
try {
  [System.Net.NetworkCredential]::new('', $secret).Password |
    .\rdp-cli.exe connect --host 192.0.2.20 --user USER --password-stdin
} finally {
  $secret.Dispose()
}

儲存 JSON 回傳的 session 值,後續命令會用它識別遠端桌面。

3. 操作前先觀察

不要猜座標。先擷取目前畫面:

.\rdp-cli.exe screenshot --session SESSION --out .\before.png

Agent 查看圖片後找到目標控制項,再使用截圖回應中的 observation 執行點擊:

.\rdp-cli.exe click --session SESSION --desktop --x 420 --y 260 --observation OBSERVATION

4. 驗證每個重要步驟

點擊後,先重新截圖,再輸入或提交內容:

.\rdp-cli.exe screenshot --session SESSION --out .\focused.png
.\rdp-cli.exe type --session SESSION --text "Remote task completed." --observation NEW_OBSERVATION
.\rdp-cli.exe screenshot --session SESSION --out .\after.png

這能發現視窗移動、應用程式載入和誤點擊。命令沒有報錯,不代表操作一定成功。

5. 讓人隨時接管

使用者可以在視窗或瀏覽器中觀看同一個工作階段:

.\rdp-cli.exe watch --session SESSION --viewer window

檢視器預設為唯讀,並支援暫停 Agent、接管操作及交還工作階段。登入提示、確認對話框和不可逆操作都應由人確認。

盡量透過專用網路或 VPN 使用 RDP,安全儲存憑據,並依環境設定憑證驗證。實際流程很簡單:觀察、操作、驗證。