3ヶ月のイテレーションから完全オープンソースへ:Open Minis の進化の道

2026年7月、Open Minis の創設者 Ethan Wang が X で iOS と Android のコードの完全オープンソース化を発表しました。このツイートはすぐに開発者コミュニティで爆発的な反響を呼びました — "possibly the best Agent app on your phone"。3〜4ヶ月の集中的なイテレーションを経て、このアプリはすでに数万人のユーザーの日常的なワークフローを支えています。

2026年8月現在、Open Minis は GitHub で 3,900+ Star、457 Fork を獲得し、モバイル AI Agent 分野で最も注目されているオープンソースプロジェクトとなっています。MacStories の Federico Viticci は "the most impressive indie app I've seen in a while" と評価し、知乎の評価では "Apple Intelligence を大幅に実現し、部分的には超越している" とされています。

Open Minis はまた別の ChatGPT ラッパーアプリではありません。その核心的な差別化は:AI モデルに真のコンピューターを与える — モバイルデバイス上で動作する完全な Linux 環境、ブラウザ自動化、深いデバイス統合、拡張可能なスキルシステムを備えています。

オンデバイス AI Agent が次の戦場である理由

クラウド Agent の限界

現在の主流の AI Agent フレームワーク — DeerFlow、CrewAI、AutoGen のいずれも — はすべてクラウドサーバー上で動作します。このアーキテクチャにはいくつかの根本的な制限があります:

  1. プライバシーの境界:ユーザーの健康データ、カレンダー、連絡先、写真は Agent が処理するためにクラウドにアップロードする必要があります
  2. 遅延の問題:各インタラクションはネットワークの往復を必要とし、即応 responses を不可能にします
  3. オフラインでの使用不可:飛行機内、地下鉄、信号の悪いエリアでは、Agent は完全に麻痺します
  4. 線形に増加するコスト:各ユーザーの各呼び出しはクラウドの計算リソースを消費し、規模が大きいほどコストが高くなります

オンデバイス Agent の構造的優位性

Open Minis が代表するオンデバイス AI アーキテクチャは、上記のすべての問題を解決します:

次元 クラウド Agent Open Minis(オンデバイス)
データプライバシー データがデバイスを離れる 完全にローカル処理
遅延 100-500ms ネットワーク往復 <10ms ローカル呼び出し
オフライン能力 完全に使用不可 コア機能は利用可能
デバイス統合 追加の API 連携が必要 ネイティブな深い統合
コストモデル トークンごとに線形増加 一度の開発、限界コストはゼロに収束
システム権限 API の範囲に制限 完全なデバイス能力

これはクラウド Agent に価値がないという意味ではありません — 複雑な推論タスクや大規模なデータ処理には依然としてクラウドの計算リソースが必要です。しかし、日常的な個人アシスタントのシナリオでは、オンデバイス Agent はプライバシー、遅延、ユーザー体験において構造的な優位性を持っています。

コアアーキテクチャ解析:iOS と Android デュアルプラットフォームの実装

全体的なアーキテクチャ

Open Minis のコードベースは明確に構造化されています:

src/ios/          iOS アプリ(Swift / SwiftUI)+ Share Extension + Widget + File Provider
src/android/      Android アプリ(Kotlin / Compose)+ JNI ネイティブコード
src/shared/       デュアルプラットフォーム共有リソース
deps/             ネイティブ依存関係のビルドスクリプトとベンダーソースコード
docs/specs/       アーキテクチャとインターフェース仕様
scripts/          ルートファイルシステムの準備と開発者ツール

プロジェクトは GPLv3 ライセンスを使用しています。これは GPLv3 の iSH(iOS)と GPLv2 の PRoot(Android)をリンクしているためです。

コアの革新:デバイス内の Linux サンドボックス

Open Minis の最も重要な技術的ブレークスルーは、モバイルデバイス内で完全な Linux 環境を実行することです。これは単純なターミナルエミュレータではなく、完全に機能するサンドボックスオペレーティングシステムです。

iOS 側:iSH プロジェクトの ARM64 フォークに基づいています。iSH は Linux ユーザーモードシミュレーションを実装し、iOS 上で Alpine Linux を実行します。Agent はパッケージをインストールし、スクリプトを実行し、実際のファイルを操作できます。

Android 側:PRoot のユーザースペース chroot に基づいています。PRoot は root 権限なしで隔離された Linux 環境を作成し、同様に Alpine Linux を実行します。

ビルドプロセスは非常に複雑です — 初回ビルドには30〜60分かかります。すべてのネイティブ依存関係がソースコードからコンパイルされるためです:

BASH
# iOS ビルドの順序が重要です:FFmpeg は LAME とリンク
./deps/build_lame.sh          # LAME 3.100 静的ライブラリ
./deps/build_ffmpeg.sh        # FFmpeg 6.1.2 フレームワークバンドル
./deps/build_ish.sh           # iSH カーネルライブラリ
./deps/prepare_alpine_rootfs.sh   # Alpine aarch64 minirootfs

# Android には NDK r28+ が必要
./deps/build_proot.sh && ./scripts/prepare_android_sandbox.sh

スキルシステム(Skills)

Open Minis のスキルシステムは、その拡張性の中核です。スキルは SKILL.md ファイルを含むフォルダです — 指示、オプションのスクリプト、参考資料、アセットを含みます。

重要な設計決定:Open Minis は専用のスキル作成を要求しません。Claude Code、Codex、OpenClaw、Hermes Agent 用に構築されたスキルは、通常 Minis で直接実行できます。Minis のツール環境に適応したスキルはより良く動作します — Linux シェル、デバイス統合、ネイティブアンロードに直接アクセスできるためです。

MARKDOWN
# サンプル SKILL.md 構造
---
name: health-analyzer
description: 健康データを分析しレポートを生成
triggers: [健康, 運動, 睡眠]
---

## 指示
ユーザーが健康データを尋ねたとき:
1. HealthKit/Google Fit API を通じてデータを取得
2. Linux サンドボックスで分析スクリプトを実行
3. Markdown 形式のレポートを生成

## スクリプト
- scripts/analyze.py: データ分析のメインスクリプト
- scripts/export_health.sh: データエクスポートツール

スキルリポジトリ OpenMinis/MinisSkills には、TTS、検索、メディアダウンロード、健康分析、クラウド API など、さまざまなスキルがすでに収録されています。

デバイス統合レイヤー

Open Minis はデバイスの能力を Agent が呼び出せるツールとして公開します:

統合項目 iOS 実装 Android 実装
健康データ HealthKit Google Fit / Health Connect
カレンダー EventKit Android Calendar Provider
リマインダー Reminders AlarmManager
連絡先 Contacts framework ContactsContract
スマートホーム HomeKit 未実装
Bluetooth CoreBluetooth BluetoothAdapter
クリップボード UIPasteboard ClipboardManager
ショートカット Shortcuts app 未実装

この深い統合は、Agent が単にチャットするだけでなく、ユーザーのデバイスを実際に操作できることを意味します。写真を撮って食べ物を認識し栄養データを記録する、Telegram グループからタスクを抽出してリマインダーに書き込む、Web コンテンツをカレンダーイベントに整理する。

ネイティブアンロード(Native Offloads)

重い計算やプラットフォーム固有の作業は、サンドボックス内で実行するのではなく、ネイティブコードにアンロードされます。これには以下が含まれます:

  • メディア処理:FFmpeg と LAME はネイティブフレームワークとしてコンパイルされ、MP3 エンコーディング、ビデオトランスコーディングは直接ネイティブレイヤーで実行
  • トークン化:中国語トークン化ライブラリ cppjieba はネイティブライブラリとしてコンパイル
  • 数式レンダリング:KaTeX ネイティブレンダリング
  • 音声認識:RealTimeCutVADLibrary はリアルタイム音声活動検出を実装

このハイブリッドアーキテクチャにより、Open Minis はサンドボックスの安全性を維持しながら、パフォーマンスクリティカルなパスの効率を犠牲にしません。

オンデバイス AI の技術的課題と解決策

課題 1:モデル推論の計算リソース制限

モバイルデバイスでは 70B パラメータの大きなモデルを実行できません。Open Minis の解決策は Bring Your Own Model(BYOM) です:

  • Claude、GPT、Gemini などの主流プロバイダーをサポート
  • ユーザーが独自の API キーまたはアカウントログインを持ち込む
  • 推論はクラウドで実行されるが、データはデバイスのローカルで処理

これは純粋な「オンデバイス推論」ではなく、「オンデバイスオーケストレーション」です — Agent のオーケストレーションロジックはローカルにあり、推論はクラウドの計算リソースを借用できます。この実用的なアーキテクチャは、能力と実現可能性のバランスを取っています。

課題 2:メモリとストレージの管理

Linux サンドボックスには追加のメモリとストレージスペースが必要です。Open Minis の戦略:

  • Alpine Linux minirootfs:最小限のルートファイルシステム、必要なツールのみを含む
  • オンデマンドインストール:Agent はサンドボックス内で apk add を使用して必要なパッケージをインストール可能
  • ワークスペースの分離:異なるタスクは独立したワークスペースを使用し、minis://workspace/ でアドレス指定

課題 3:バッテリーと熱管理

継続的な Agent の活動はバッテリーを消費し、熱を発生させます。Open Minis は以下の方法で緩和します:

  • ネイティブアンロード:重い計算はネイティブコードを経由し、サンドボックス内での実行より効率的
  • バックグラウンド制限:iOS と Android のシステム制限により、過度なバックグラウンド活動が自然に防止
  • ユーザー制御:ユーザーは Agent の活動権限とトリガー条件を設定可能

課題 4:セキュリティサンドボックスエスケープ

デバイス上で完全な Linux 環境を実行することは、セキュリティリスクをもたらします。Open Minis の多層防御:

  • ユーザーモードシミュレーション:iSH と PRoot のいずれもカーネル権限を必要とせず、ハードウェアに直接アクセスできない
  • ファイルシステムの分離:サンドボックスのファイルシステムはメインシステムから分離
  • ネットワーク権限制御:Agent のネットワークアクセスはアプリケーション権限に準拠
  • オープンソース監査:完全なコードがオープンソースであり、セキュリティコミュニティが審査可能

クラウド Agent との比較

機能 DeerFlow CrewAI Open Minis
実行環境 クラウドサーバー クラウドサーバー モバイルデバイス
プログラミング言語 Python Python Swift/Kotlin
マルチ Agent 協力 ✅ サポート ✅ コア機能 ❌ シングル Agent
デバイス統合 ❌ なし ❌ なし ✅ 深い統合
オフライン能力 ❌ 使用不可 ❌ 使用不可 ✅ コア機能は利用可能
プライバシー保護 ❌ データがクラウドに ❌ データがクラウドに ✅ ローカル処理
複雑な推論 ✅ 強力 ✅ 強力 ⚠️ 外部モデルに依存
デプロイの複雑さ 中程度 中程度 高い(ネイティブ依存関係のコンパイルが必要)

Open Minis はクラウド Agent フレームワークを置き換えるものではなく、個人アシスタントのシナリオでより優れた解決策を提供します。マルチ Agent 協力や大規模なデータ処理が必要なシナリオでは、DeerFlow や CrewAI が依然としてより良い選択です。

オープンソースコード構造の深層分析

iOS アーキテクチャ

src/ios/
├── Minis.xcodeproj/          # Xcode プロジェクト設定
├── Minis/                    # メインアプリケーション
│   ├── App/                  # アプリケーションのエントリポイントとライフサイクル
│   ├── Views/                # SwiftUI ビュー
│   ├── Models/               # データモデル
│   ├── Services/             # ビジネスロジックサービス
│   ├── Agent/                # Agent コアロジック
│   │   ├── Runtime/          # ランタイム環境
│   │   ├── Tools/            # ツール定義
│   │   └── Skills/           # スキルローダー
│   └── Integrations/         # デバイス統合
│       ├── HealthKit/
│       ├── Calendar/
│       └── Shortcuts/
├── MinisShare/               # Share Extension
├── AgentWidgetExtension/     # Widget
└── MinisFileProvider/        # File Provider

iOS 側は Swift 6.0 と SwiftUI を使用し、ターゲットバージョンは iOS 26.2 です。プロジェクトには複数のターゲットが含まれています:メインアプリケーション、Share Extension(他のアプリケーションからの共有を受け取るため)、Widget、File Provider。

Android アーキテクチャ

src/android/
├── app/                      # メインアプリケーションモジュール
│   ├── src/main/
│   │   ├── java/             # Kotlin コード
│   │   │   └── app/openminis/
│   │   │       ├── ui/       # Compose UI
│   │   │       ├── agent/    # Agent コア
│   │   │       ├── sandbox/  # PRoot サンドボックス管理
│   │   │       └── tools/    # ツールとデバイス統合
│   │   └── jni/              # JNI ネイティブコード
│   └── build.gradle.kts
└── buildSrc/                 # ビルド設定

Android 側は Kotlin と Jetpack Compose を使用し、JDK 17 です。JNI レイヤーは PRoot サンドボックスのネイティブインタラクションを処理します。

クロスプラットフォーム共有

src/shared/ には両プラットフォームで共有されるリソースが含まれていますが、コアロジックは各プラットフォームで独立して実装されています。この「共有リソース、独立ロジック」の戦略は、React Native や Flutter などのクロスプラットフォームフレームワークよりも、深いシステム統合が必要なアプリケーションに適しています。

開発者が Open Minis を基に独自のモバイル Agent を構築する方法

クイックスタート

BASH
# リポジトリをクローン(サブモジュールを含む)
git clone --recurse-submodules https://github.com/OpenMinis/OpenMinis.git
cd OpenMinis

# iOS ビルド
./deps/build_lame.sh && ./deps/build_ffmpeg.sh
./deps/build_ish.sh && ./deps/prepare_alpine_rootfs.sh
open src/ios/Minis.xcodeproj

# Android ビルド
./deps/build_proot.sh && ./scripts/prepare_android_sandbox.sh
cd src/android && ./gradlew :app:assembleDebug

カスタムスキルの開発

  1. SKILL.md を含むスキルフォルダを作成
  2. トリガー条件と指示を定義
  3. オプションでスクリプトと参考資料を追加
  4. MinisSkills リポジトリに提出

ビルド設定

初回ビルドの前に、設定テンプレートをコピーする必要があります:

BASH
cp src/ios/Configs/ProviderCustomization.xcconfig.example \
   src/ios/Configs/ProviderCustomization.xcconfig

cp src/android/app/provider-customization.properties.example \
   src/android/app/provider-customization.properties

空のままにするとコンパイルして実行できます — API キーログインにはカスタム設定は必要ありません。

実際の使用シナリオとユーザー体験

コミュニティのフィードバックと公式ドキュメントに基づき、Open Minis の高頻度使用シナリオ:

栄養追跡:写真を撮って食べ物を認識し、カロリーとマクロ栄養素を推定し、自動的に Apple Health に書き込む。

朝のブリーフィング:Shortcuts が Minis をトリガーして X タイムラインを取得し、要約を生成し、音声を合成し、アラームとして再生。

タスク抽出:Telegram グループからメッセージを取得し、バグとアクションアイテムを抽出し、重複を排除して Apple Reminders に書き込む。

ノート管理:Obsidian ボルトをマウントし、研究し、クリーンアップし、Markdown ノートを書き戻す。

カレンダーイベント:iOS Share Sheet を通じて任意のコンテンツを Minis に共有し、時刻と場所を含むカレンダーイベントを自動作成。

ユーザー評価は一般的に肯定的です — "これは私がここ数年使った中で最高のアプリかもしれません。毎日新しい可能性を探求しています"、"素晴らしい製品!体験は絹のように滑らかです!"。

限界と将来の方向性

現在の限界

  1. PR サポートなし:リポジトリはプライベート開発ツリーのミラーであり、Pull Request を受け付けず、Issue からのフィードバックのみ
  2. 初回ビルドが複雑:30〜60分のコンパイル時間、複数のネイティブ依存関係を順番にビルドする必要がある
  3. 純粋なオンデバイス推論ではない:依然としてクラウドモデル API に依存し、真のオンデバイス推論ではない
  4. プラットフォームの差異:一部の機能(HomeKit、ショートカットなど)は iOS のみサポート、Android 側の機能は少ない
  5. GPLv3 ライセンス:商業利用には制限がある

将来の方向性

  • より多くのネイティブアンロード:より多くの重い計算をネイティブコードに移行
  • Android 機能の補完:HomeKit の対応物、ショートカットの代替案
  • スキルエコシステムの拡張:コミュニティからの貢献によるより多くのスキル
  • マルチ Agent 協力:DeerFlow に似たマルチ Agent アーキテクチャの導入の可能性
  • オンデバイス小型モデルのサポート:Phi-3、Gemma などの小型ローカルモデルの統合

総合評価

Open Minis はモバイル AI Agent の成熟したアーキテクチャを代表しています。単純なモデルラッパーではなく、完全なオンデバイスコンピューティングプラットフォームです — AI に真のコンピューターを与え、ファイルシステムを操作し、Web を閲覧し、デバイスの能力を統合できるようにします。

強み: - 真のオンデバイス Agent、プライバシーと遅延の明確な優位性 - チャットボットの範囲を超える深いデバイス統合 - 既存の Agent エコシステムと互換性のある拡張可能なスキルシステム - 完全にオープンソース、コミュニティが監査と貢献可能

弱み: - ビルドの複雑さが高く、初心者には参入障壁が急 - 依然としてクラウドモデルに依存し、純粋なオンデバイス推論ではない - PR を受け付けないオープンソースモードは少し型破り

誰に適しているか: - プライバシーを重視する個人 AI アシスタントユーザー - モバイル Agent を深くカスタマイズしたい開発者 - オンデバイス AI アーキテクチャに興味のある研究者

Open Minis は一つのことを証明しています:AI の時代において、技術設計とコードはもはや製品の優位性ではありません。最高の Agent はユーザーとの密接なフィードバックループから生まれます — 彼らの期待と報告が製品に収束する力です。 だからこそ、チームは完全なオープンソースを選択しました — コミュニティが共に製品の未来を形作るために。


参考リンク: - GitHub リポジトリ:https://github.com/OpenMinis/OpenMinis - 公式ウェブサイト:https://openminis.app - スキルリポジトリ:https://github.com/OpenMinis/MinisSkills - AwesomeMinis:https://github.com/OpenMinis/AwesomeMinis