3つのプロジェクトの関係
3つのリポジトリは「3つのバージョン」と誤解されがちですが、実際には1つのエンジン + 2つのホストという構成です。リポジトリを誤解すると、ランチャーを自動化スクリプト本体と混同したり、Android 版に独自の機能実装があると誤認する原因になります。
実線:起動とコード配布、破線:デバイス制御パイプライン。コアプログラム自身はどのホストから呼び出されたかを意識しません。
責務の対照表
| リポジトリ | デフォルトブランチ | 言語 / フレームワーク | ライセンス | 担当領域 | 担当外の領域 |
|---|---|---|---|---|---|
| wess09/AzurPilot | master | Python 3.14 · React · Vite | GPL-3.0 | スケジューリング、画像認識、ゲームロジック、WebUI、API、MCP | Python 環境の準備、プロセス管理、スマートフォン向け最適化 |
| wess09/AzurPilotLauncher | main | Rust · Tauri 2 | GPL-3.0 | デスクトップ環境の自律構築、コード更新、バックエンドプロセスの管理、トレイと通知 | ゲーム内操作の実行 |
| wess09/AzurPilot-for-Android | main | Kotlin · Compose · C++ · Python Runtime | AGPL-3.0 | PRoot ランタイム、仮想画面、特権サービス、OCR 高速化、リモートクライアント | ゲームロジック(アップストリームのコアを再利用) |
デフォルトブランチの違い
コアリポジトリは master を使用し、他の2つは main を使用しています。過去の記事などから URL をコピーする際は 404 エラーにご注意ください。
依存関係の方向
Launcher ──git pull──▶ AzurPilot(コアリポジトリ)
│ ▲
└──uv sync──▶ .venv │
│ 同一ソースコードが rootfs に同梱
Android ──PRoot──▶ Ubuntu 24.04 ──▶ AzurPilot- ランチャーはコアプログラムのコードを含みません。初回起動時にコアリポジトリを
git cloneし、以後の起動ごとにgit pullおよびuv syncを行います。そのため、「ランチャーのバージョン」と「コアのバージョン」は独立したリリースサイクルを持ちます。 - Android ホストはコアプログラムのコードを内包しています。Runtime イメージ内に AzurPilot のソースコードとフロントエンドのビルド成果物が同梱されているため、オフラインでも起動可能です。アップストリームの更新は専用のスクリプトホットアップデート機構を通じて適用されます。
- 3者は共通の WebSocket プロトコルを共有します。Android の
AzurPilotGatewayとブラウザの WebUI は同一の/api/v1/wsをサブスクライブします。
どの配布物をダウンロードすべきか
| ユーザーの利用状況 | 選択肢 | 案内ページ |
|---|---|---|
| Windows / macOS / Linux PC を所持し、エミュレーターを使用する | ランチャー | ランチャーのインストール |
| PC がない、または旧スマートフォンを専属で周回させたい | Android APK | Android 版のインストール |
| 他のマシンで稼働中のインスタンスがあり、スマートフォンから閲覧のみ行いたい | Android APK(リモートクライアントモード) | リモートクライアント |
| コード改変、新規タスク作成、API 呼び出しを行いたい | ソースコード | ソースコード実行 |
| サーバー / NAS / Raspberry Pi | Docker またはソースコード | Docker デプロイ |
バージョンとリリースサイクル
3つのリポジトリは個別にリリースされ、バージョン番号は相互に対応していません:
- コア:
masterブランチに追従するローリングアップデート形式であり、厳密なセマンティックバージョニングは採用していません。WebUI の「更新」画面からコミット一覧を確認し、手動で適用できます。 - ランチャー:バージョン番号が付与された Release(圧縮アーカイブ)形式で配布され、mTLS 通信による自動更新および複数ミラーへのフォールバックに対応しています。
- Android:軽量 APK(ホストコード)と Runtime(rootfs イメージ)の2系統で配布されます。いずれも ABI ごとに提供されます。
コンポーネントを更新した際の動作の詳細は更新・バックアップ・移行を参照してください。
Docker デプロイ
コアリポジトリには Dockerfile と docker-compose.yml が付属しており、ヘッドレス環境に適しています:
git clone https://github.com/wess09/AzurPilot.git
cd AzurPilot
docker compose up -d --buildイメージは「フロントエンドのビルド → Python ランタイム」の2段階でビルドされ、コンテナ内では .venv/bin/python gui.py として起動します。中国本土ネットワーク向けに deploy/docker/Dockerfile.cn も用意されています。
コンテナ内にはエミュレーターが含まれません
コンテナが提供するのは WebUI とスケジューラーのみです。エミュレーターはホストマシン上で動作している必要があるため、ADB ポートをコンテナにマッピングするか、network_mode: host を設定してください。設定方法はエミュレーターの仕様とネットワーク構成に依存します。
ライセンス
ライセンスの伝播性にご注意ください。改変版を配布する際は GPL-3.0 / AGPL-3.0 を遵守する必要があります。特に Android ホストはネットワーク経由でサービスを提供するため、AGPL の規定に基づきネットワーク利用者に対して対応するソースコードを開示する義務が生じます。