agent-sh/computer-use-linux

Native Linux desktop control for AI agents (MCP, Pi, CLI) — semantic AT-SPI trees, screenshots, window targeting, and input across GNOME, KDE, Hyprland, niri, COSMIC, i3, and X11.

解決する課題

computer-use-linux は、AIエージェントが実際のLinuxデスクトップを制御できるようにします。多くの「コンピュータ使用」ツールがmacOS専用であったり、不安定なX11のみの手法に依存していたりする制限を克服し、Waylandファーストのサポートを含む様々なLinuxウィンドウマネージャーやデスクトップ環境とエージェントが対話するための堅牢な方法を提供します。

仕組み

RustベースのModel Context Protocol (MCP) サーバーおよびCLIとして動作します。以下のメカニズムを通じてデスクトップと対話します:

  • アクセシビリティツリー: AT-SPIを使用してUI構造を読み取り、ピクセル座標のみに頼るのではなく、セマンティックな操作(名前による特定のボタンのクリックなど)を実行します。
  • コンポジタ認識: GNOME, KDE, Hyprland, niri, i3, COSMICといった異なる環境向けに専用のバックエンドを使用し、ウィンドウを正確にリストアップおよびフォーカスします。
  • 入力シミュレーション: Wayland上では org.freedesktop.portal.RemoteDesktop インターフェースを使用し、フォールバックとして ydotool を、X11セッションでは xdotool を使用します。
  • 視覚的フィードバック: 色付きのカーソルとステータス表示を含むオンスクリーンインジケーターを備えており、エージェントが何をしているかをユーザーがリアルタイムで確認できます。

対象ユーザー

  • AIエージェント開発者: Linuxソフトウェアと対話する必要があるエージェントを構築している方。
  • MCPホストユーザー: Claude Desktop, Codex Desktop, Hermes Agentなどのクライアントを使用し、Linuxマシンをエージェントに制御させたい方。
  • システム管理者: LLMを通じて複雑なデスクトップUIタスクを自動化する必要がある方。

ハイライト

  • 広範なLinuxサポート: GNOME, KDE/KWin, Hyprland, niri, i3, COSMICに対応。
  • Waylandファースト: Waylandのポインターおよびキーボード操作の複雑さを処理するために特別に設計されています。
  • セマンティックな対話: AT-SPIを介してロール、名前、テキストで要素をターゲットにできるため、座標ベースのクリックへの依存を軽減します。
  • 詳細な診断: doctor コマンドにより、構造化されたJSON形式の準備状況レポートを提供し、問題を特定します。
  • 安全性の注釈: MCP ToolAnnotations を使用して、読み取り専用の観察、設定の変更、破壊的なデスクトップ操作を区別します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト