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,安全保存凭据,并按环境配置证书验证。实际流程很简单:观察、操作、验证。