rdp-cli

AI 에이전트가 원격 Windows 데스크톱을 조작하게 하는 방법

AI 에이전트는 스크립트를 작성할 수 있지만, 실제 작업에는 데스크톱이 필요한 경우가 많습니다. Windows 전용 앱, 문서 편집기, 파일 내보내기 대화상자 등이 그렇습니다. 안정적인 방법은 화면을 확인하고, 한 번에 하나의 동작을 수행한 뒤, 결과를 검증하는 짧은 피드백 루프를 지키게 하는 것입니다.

1. Windows 호스트 준비

대상 컴퓨터에서 원격 데스크톱을 활성화합니다. 에이전트를 실행할 컴퓨터에 맞는 rdp-cli 파일을 다운로드한 후 PowerShell에서 확인합니다.

.\rdp-cli.exe --help

에이전트가 Windows 호스트에서 실행될 필요는 없습니다. RDP 서비스에 연결할 수 있으면 됩니다.

2. 비밀번호를 노출하지 않고 연결

비밀번호를 명령줄이나 셸 기록에 넣지 말고 표준 입력으로 전달합니다.

$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

에이전트가 이미지에서 대상 컨트롤을 찾은 다음, 스크린샷 응답의 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

뷰어는 읽기 전용으로 시작하며 에이전트 일시 중지, 직접 조작, 세션 반환을 지원합니다. 로그인, 확인 대화상자, 되돌릴 수 없는 동작에는 사람이 확인하도록 하세요.

가능하면 사설 네트워크나 VPN으로 RDP를 사용하고, 자격 증명을 안전하게 보관하며, 환경에 맞게 인증서 검증을 설정하세요. 핵심은 간단합니다. 확인하고, 조작하고, 검증하는 것입니다.