古いAndroidスマートフォンをAIエージェントへ | DroidClawチュートリアル

はじめに

DroidClawはオープンソースのAIエージェントで、Androidスマートフォンをハンズフリーアシスタントに変えることができます。大規模言語モデル (LLM) を用いて画面内容を解釈し、ADB 経由でタップ、プル、キーストロークを生成することで、YouTube の検索、WhatsApp メッセージ送信、複数アプリを駆使したワークフローの実行など、専用 API を一切必要とせずにタスクを実行できます。

それは何か

DroidClaw の核は「認知 → 推論 → 行動」のループです。 1. アクセシビリティツリー(ツリーがない場合はスクリーンショット)を通じて画面を読み取ります。 2. 画面状態、ユーザーが英語で入力したゴール、そして過去の操作を LLM に供給します。 3. モデルはタップ・タイプ・スワイプなどのレベルの高いアクション計画を返します。 4. DroidClaw は ADB でそれらを実行し、結果を観測し、次のステップに戻ります。

主な特徴 • 自然言語でのゴール設定 • 繰り返しアクションやループの自動処理 • UI ツリーがアクセス不能な場合のビジョンフォールバック • マルチターン会話メモリ • 完全オフライン使用を実現するローカル Ollama サポート • Tailscaleによるリモートコントロール

システム要件 ハードウェア: USB デバッグを有効にした Android スマートフォン、または Wi‑Fi デバッグ対応スマートフォン ソフトウェア: ADB(Android Platform Tools)、Bun ランタイム、Node / npm は不要 LLM: DroidClaw がサポートするプロバイダー(Groq, OpenAI, Ollama, OpenRouter, Bedrock)

インストール手順 1. Bun をインストール curl -fsSL https://bun.sh/install | bash 2. ADB をインストール • macOS: brew install android-platform-tools • Linux: sudo apt install android-tools-adb • Windows: https://developer.android.com/tools/releases/platform-tools からダウンロード 3. リポジトリをクローン git clone https://github.com/unitedbyai/droidclaw.git cd droidclaw 4. プロジェクトの依存関係をインストール bun install 5. サンプル環境ファイルをコピー cp .env.example .env 6. .env で LLM プロバイダーを設定 例: Groq(無料枠) LLM_PROVIDER=groq GROQ_API_KEY=YOUR_GROQ_KEY またはローカル Ollama LLM_PROVIDER=ollama OLLAMA_MODEL=llama3.2-vision

電話の接続 • 開発者オプションで USB デバッグを有効化 • USB で電話を接続し、プロンプトを承認 • 確認: adb devices ここであなたのデバイスがリストアップされます。

エージェントの起動 対話モード(英語のゴール入力): bun run src/kernel.ts # ゴールを入力し Enter を押す

ワークフローモード(AI によるマルチアプリシーケンス): bun run src/kernel.ts --workflow examples/workflows/telegram-send-message.json

決定的フロー(AI なし): bun run src/kernel.ts --flow examples/flows/send-whatsapp.yaml

使用例 - YouTube を開き「lofi hip hop」を検索する: $ bun run src/kernel.ts enter your goal: open youtube and search for "lofi hip hop" - 事前設定されたワークフローで WhatsApp メッセージを送信 - 夜間の朝のブリーフィングを実行し、カレンダーイベント、天気、未読 Slack メッセージを読み上げる。

Tailscale を使ったリモート制御 電話とホストの両方に Tailscale をインストールします。電話の設定でワイヤレスデバッグを有効にし、ネットワーク経由で接続: adb connect : こうすれば、VPS、ノートパソコン、cron からいつでも DroidClaw を起動し、電話を自宅に接続したままスクリプトを遠隔操作できます。

高度な機能 • Vision Fallback:アクセシビリティツリーが空の場合、エージェントがスクリーンショットを LLM に送信します。 • Stuck‑Loop Detection:数ステップ後に画面が変化しない場合、回復ヒントを注入します。 • Multi‑turn Memory:会話コンテキストで最後の N アクションを保持します。

トラブルシューティング • "adb: command not found" – インストールされているか確認し、$PATH にあるか、あるいは .env で ADB_PATH を設定してください。 • "no devices found" – USB デバッグが有効か、データ転送対応のケーブルを使っているか確認してください。 • 繰り返しアクション – MAX_STEPS を増やすか、より大きなモデルに切替え。 • アクセシビリティツリーが空 – VISION_MODE=always を設定し、スクリーンショット送信を強制。

結論 DroidClaw は、専用 API を必要とせずにモダンな LLM で UI 自動化を実現する方法を示しています。Bun、ADB、Ollama などのオープンソースツールを組み合わせ、簡単な認知–推論–行動ループを構築することで、古い電話を強力な常駐型個人アシスタントへ瞬時にリパーパスできます。ソーシャルメディア投稿の自動化、夜間研究ワークフローの実行、AI 主導の携帯操作の実験など、どんな利用シーンでも手軽に導入可能です。自動化をお楽しみください!

この記事を共有