rdp-cli

Windows・Mac・Linux の RDP コマンドライン入門

一度接続し、観察して操作し、結果を確認。本機の表示ウィンドウは任意です。

手元の PC から始める

プラットフォームを選び、
リモート作業を始める。

rdp-cli を動かす PC を選び、
エージェントに遠隔操作の道具を用意します。

01 / インストールと確認

EXE を用意し、PowerShell を開きます。

x64(64 ビット)か x86(32 ビット)を選択し、rdp-cli.exe を置いたフォルダーで PowerShell を開きます。

署名済みの x64・x86 単体 EXE。追加のランタイムは不要です。

PowerShell
.\rdp-cli.exe --help
2. デスクトップに接続

接続先で RDP を有効にし、192.0.2.20 と USER を置き換えます。非表示の入力欄からパスワードを標準入力へ渡し、JSON 応答の data.session を保存します。

PowerShell
$secret = Read-Host 'パスワード' -AsSecureString
$savedEncoding = $OutputEncoding
try {
  $OutputEncoding = [System.Text.UTF8Encoding]::new($false)
  [System.Net.NetworkCredential]::new('', $secret).Password |
    .\rdp-cli.exe connect --host 192.0.2.20 --user USER --password-stdin
} finally {
  $OutputEncoding = $savedEncoding
  $secret.Dispose()
}
3. 操作前に観察

SESSION を接続結果の値に置き換えます。before.png で対象と入力位置を確認し、応答の data.observation を保存します。

PowerShell
.\rdp-cli.exe screenshot --session SESSION --out ./before.png
4. 操作して結果を確認

画像で入力位置を見つけ、X、Y、OBSERVATION を置き換えます。クリック後に再撮影し、新しい observation で入力します。after.png で実際の結果を確認してください。

PowerShell
.\rdp-cli.exe click --session SESSION --desktop --x X --y Y --observation OBSERVATION
.\rdp-cli.exe screenshot --session SESSION --out ./focused.png
.\rdp-cli.exe type --session SESSION --text "リモート作業が完了しました。" --observation NEW_OBSERVATION
.\rdp-cli.exe screenshot --session SESSION --out ./after.png
5. 人が見たいときに表示

閲覧したいときだけ、既存セッションをウィンドウやブラウザーで開きます。初期状態は読み取り専用。一時停止、引き継ぎ、返却を操作し、交代や再接続後は新しい観察を取得します。

PowerShell
.\rdp-cli.exe watch --session SESSION --viewer window
.\rdp-cli.exe watch --session SESSION --viewer web
01 / インストールと確認

DMG を開き、CLI を有効にします。

rdp-cli を「アプリケーション」にドラッグし、Mac のターミナル(zsh)で以下を実行します。

Mac のチップに合う DMG を選んでください。Apple silicon は macOS 13 以降、Intel は macOS 12 以降が対象です。公開状況はダウンロードページで確認できます。

zsh
/Applications/rdp-cli.app/Contents/MacOS/rdp-cli install-cli
rdp-cli --help
2. デスクトップに接続

接続先で RDP を有効にし、192.0.2.20 と USER を置き換えます。非表示の入力欄からパスワードを標準入力へ渡し、JSON 応答の data.session を保存します。

zsh
read -r -s "rdp_password?パスワード: "
printf '\n'
printf '%s' "$rdp_password" | rdp-cli connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
3. 操作前に観察

SESSION を接続結果の値に置き換えます。before.png で対象と入力位置を確認し、応答の data.observation を保存します。

zsh
rdp-cli screenshot --session SESSION --out ./before.png
4. 操作して結果を確認

画像で入力位置を見つけ、X、Y、OBSERVATION を置き換えます。クリック後に再撮影し、新しい observation で入力します。after.png で実際の結果を確認してください。

zsh
rdp-cli click --session SESSION --desktop --x X --y Y --observation OBSERVATION
rdp-cli screenshot --session SESSION --out ./focused.png
rdp-cli type --session SESSION --text "リモート作業が完了しました。" --observation NEW_OBSERVATION
rdp-cli screenshot --session SESSION --out ./after.png
5. 人が見たいときに表示

閲覧したいときだけ、既存セッションをウィンドウやブラウザーで開きます。初期状態は読み取り専用。一時停止、引き継ぎ、返却を操作し、交代や再接続後は新しい観察を取得します。

zsh
rdp-cli watch --session SESSION --viewer window
rdp-cli watch --session SESSION --viewer web
01 / インストールと確認

1つのファイルで実行

Linux x86_64 ファイルをダウンロードし、実行権限を付けてターミナルで実行します。管理者権限は不要です。

記載された x86_64 システムで同じ静的 ELF を使用します。他のバージョンや CPU アーキテクチャは今回の対象外です。

Bash
chmod u+x ./rdp-cli-linux-x86_64
./rdp-cli-linux-x86_64 --help
2. デスクトップに接続

接続先で RDP を有効にし、192.0.2.20 と USER を置き換えます。非表示の入力欄からパスワードを標準入力へ渡し、JSON 応答の data.session を保存します。

Bash
IFS= read -r -s -p 'パスワード: ' rdp_password
printf '\n'
printf '%s' "$rdp_password" | ./rdp-cli-linux-x86_64 connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
3. 操作前に観察

SESSION を接続結果の値に置き換えます。before.png で対象と入力位置を確認し、応答の data.observation を保存します。

Bash
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./before.png
4. 操作して結果を確認

画像で入力位置を見つけ、X、Y、OBSERVATION を置き換えます。クリック後に再撮影し、新しい observation で入力します。after.png で実際の結果を確認してください。

Bash
./rdp-cli-linux-x86_64 click --session SESSION --desktop --x X --y Y --observation OBSERVATION
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./focused.png
./rdp-cli-linux-x86_64 type --session SESSION --text "リモート作業が完了しました。" --observation NEW_OBSERVATION
./rdp-cli-linux-x86_64 screenshot --session SESSION --out ./after.png
5. 人が見たいときに表示

閲覧したいときだけ、既存セッションをウィンドウやブラウザーで開きます。初期状態は読み取り専用。一時停止、引き継ぎ、返却を操作し、交代や再接続後は新しい観察を取得します。

Bash
./rdp-cli-linux-x86_64 watch --session SESSION --viewer window
./rdp-cli-linux-x86_64 watch --session SESSION --viewer web
01 / インストールと確認

1つのファイルで実行

64 ビット ARM Linux 用の Linux ARM64 ファイルをダウンロードし、実行権限を付けて一般ユーザーで実行します。

同じ静的 ARM64 ELF が、掲載の Linux システム、Raspberry Pi 4、DGX Spark に対応します。32 ビットの Raspberry Pi OS は対象外です。

Bash
chmod u+x ./rdp-cli-linux-arm64
./rdp-cli-linux-arm64 --help
2. デスクトップに接続

接続先で RDP を有効にし、192.0.2.20 と USER を置き換えます。非表示の入力欄からパスワードを標準入力へ渡し、JSON 応答の data.session を保存します。

Bash
IFS= read -r -s -p 'パスワード: ' rdp_password
printf '\n'
printf '%s' "$rdp_password" | ./rdp-cli-linux-arm64 connect --host 192.0.2.20 --user USER --password-stdin
unset rdp_password
3. 操作前に観察

SESSION を接続結果の値に置き換えます。before.png で対象と入力位置を確認し、応答の data.observation を保存します。

Bash
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./before.png
4. 操作して結果を確認

画像で入力位置を見つけ、X、Y、OBSERVATION を置き換えます。クリック後に再撮影し、新しい observation で入力します。after.png で実際の結果を確認してください。

Bash
./rdp-cli-linux-arm64 click --session SESSION --desktop --x X --y Y --observation OBSERVATION
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./focused.png
./rdp-cli-linux-arm64 type --session SESSION --text "リモート作業が完了しました。" --observation NEW_OBSERVATION
./rdp-cli-linux-arm64 screenshot --session SESSION --out ./after.png
5. 人が見たいときに表示

閲覧したいときだけ、既存セッションをウィンドウやブラウザーで開きます。初期状態は読み取り専用。一時停止、引き継ぎ、返却を操作し、交代や再接続後は新しい観察を取得します。

Bash
./rdp-cli-linux-arm64 watch --session SESSION --viewer window
./rdp-cli-linux-arm64 watch --session SESSION --viewer web

例のアドレスや値は置き換えてください。session と observation は実際の応答を使い、入力後は新しい画像で結果を確認します。

Agent と使う

実行ファイルの場所、許可された接続先またはセッション、望む結果を伝えます。任意の rdp-cli-agent スキルに手順があり、SKILL.md を直接読めます。接続にスキルの導入は必須ではありません。

rdp-cli-agent / SKILL.md ↓

接続とアクセスの設定

RDP 証明書ポリシーは互換性のため初期値が ignore です。connect --help を読み、環境に合わせて検証を設定してください。公式サイトは接続を中継せず認証情報を収集しません。ブラウザーは LAN/VPN 用、VNC は信頼できるネットワークで利用します。

rdp-cli@weerocks.com