Vercel Labs のスキル:エージェントに agent-desktop コマンドラインの使い方を教え、システムアクセシビリティツリー(accessibility tree)を介して macOS、Windows、Linux 上のデスクトップアプリを読み取り・操作する——まず snapshot で参照番号付きの UI 要素 JSON を取得し、その番号に対してクリック、入力、チェックを行い、最後に再度 snapshot を取って確認する。スクリーンショットやピクセルマッチングには依存しない。
セキュリティ監査:未監査
- スキャン未実施
理由
- ループ処理が具体的に記述されている:小規模なアプリでは直接 snapshot -i を実行し、複雑なアプリではまず --skeleton で浅い構造マップを取得してから、--root を使って特定の領域に掘り下げる。参照は @s8f3k2p9:e1 の形式であり、今回のスナップショット内でのみ有効。UI が変化して STALE_REF が返された場合は、再度スナップショットを取得する
- 再試行ルールにより重複送信を防止:disposition.retry が safe(つまり not_delivered)の場合のみ再試行が可能。それ以外の場合は現在の UI 状態を読み取ってから判断し、二重クリック、二重送信、またはトグル操作による自己取り消しを避ける
- デフォルトはヘッドレス:アクセシビリティインターフェース経由で操作するため、フォーカスを奪わず、マウスを動かさず、クリップボードも使用しない。ユーザーが明示的に物理入力を許可した場合のみ --headed を追加し、ヘッドレス失敗を回避するためにモードを切り替えることは禁止
- SKILL.md は非常に簡潔で、詳細なコマンド説明はプログラム自体に含まれている(agent-desktop skills get desktop / platform)。バージョンと整合性が保たれている。README には Apache-2.0 ライセンスが明記されており、作者は合計 60 個のコマンド名があり、そのうち 56 個が利用可能であると述べている
- skills.sh で 24 時間以内に 536 回インストール(これは注目度を示すに過ぎない)
使い方
- インストールコマンドは監査合格後に公開される。まずコマンドラインツールを npm install -g agent-desktop でインストールし、初回利用時にエージェントへ agent-desktop status と agent-desktop skills get platform を実行させる
- アカウントやクラウドサービスは不要。macOS ではターミナルにアクセシビリティ権限を付与する必要がある(agent-desktop permissions --guide)。Linux ではグラフィカルセッションと at-spi2-core が必要。Windows ではターミナルと同じ権限レベルのアプリのみ操作可能
リスク
- 本号では未監査のため、固定で C 級と判定し、インストールコマンドは表示しない。SKILL.md はエージェントに agent-desktop コマンドを実行させてローカルアプリを操作させるものであり、コマンド実行に該当するが、用途とは一致している。skills.sh 上では Snyk 監査結果が Warn となっている
- エージェントはクリップボードの読み書き、スクリーンショット、アプリの起動・終了、通知の読み取りが可能。README ではスナップショットやスクリーンショットにプライバシー情報が含まれる可能性があるため、公開ログに含めないよう注意喚起している。オプションの JEV 補助機能では、設定したモデルサービスへ画面の説明を送信する
- Linux 上でのマウス入力とウィンドウ制御は主に X11 をサポート。Wayland 環境ではスクリーンショットはシステムポータル経由、クリップボードは wl-clipboard が必要。今回は実行していないため、操作の信頼性は不明