Android AIファイル管理エージェント プラグイン:権限、プレビュー、承認を安全に扱う
Android AIファイル管理エージェント プラグインで、一覧、検索、テキスト読取、作成、書込、名前変更、削除、HTTPSダウンロードを安全に進める方法を解説します。
- FoneClaw File Manager Pluginは、別途インストールするAndroid Pluginです。独自のAPK、パッケージ名、署名者、権限、ツールを持ち、FoneClawの組み込み機能とは区別されます。
- File Manager Plugin 0.0.4は、一覧、検索、上限付きテキスト読取、ファイル・フォルダー作成、書込、名前変更、完全削除、HTTPSダウンロードなど13のツールを公開しています。
- 一括名前変更は、変更前後の候補を確認してpreviewTokenを取得し、そのトークンを使って適用します。プレビュー後に対象が変わった場合は、新しいプレビューが必要です。
- 「すべてのファイルへのアクセス」を許可しても、個別タスクへの承認にはなりません。パス、対象、衝突、変更結果を操作ごとに表示し、削除や一括適用は明示的な承認後に進めます。
AIファイル管理エージェントが扱える操作
Android AIファイル管理エージェント プラグインが役立つのは、「ファイルを整理して」という曖昧な依頼を、確認可能な操作へ分解できるときです。FoneClaw File Manager Plugin 0.0.4は、状態と設定の確認、ファイル一覧、検索、上限付きのテキスト読取、ファイル作成、テキスト書込、フォルダー作成、単一ファイルの名前変更、一括名前変更、完全削除、HTTPSダウンロードなど、合計13のツールを公開しています。
たとえばダウンロードフォルダーにある領収書を整理する場合、最初に対象フォルダーを一覧し、ファイル名や条件で候補を検索します。テキスト形式なら、読取上限を指定して内容の一部を確認できます。その後、保存先フォルダーを作り、名前変更候補を作成し、対象と新しい名前を確認してから適用します。いきなり全ファイルを変更するのではなく、読取、候補作成、確認、変更を別の状態として扱います。
ファイル作成は既存ファイルを上書きしない契約です。同じ名前がすでに存在する場合は、成功したものとして進めず、衝突を表示して別名を選ぶか操作を中止します。テキスト書込でも、対象となる相対パス、内容の概要、既存状態を確認します。書込後は一覧やテキスト読取を使い、期待した場所へ内容が反映されたかを観測します。
ツールごとの扱いも同一ではありません。状態確認は影響の小さい自動実行として扱われますが、それ以外のツールには承認が必要です。一括名前変更の適用と削除は破壊的操作として区別されます。モデルが操作案を作れることと、Pluginが端末上で変更を実行することは別であり、実行前には対象パスと結果を確認します。
| 作業段階 | 主な操作 | 確認する内容 |
|---|---|---|
| 調査 | 状態確認、一覧、検索 | 基準フォルダー、件数、対象条件 |
| 内容確認 | 上限付きテキスト読取 | パス、読取上限、機密情報 |
| 作成 | ファイル作成、書込、フォルダー作成 | 保存先、既存ファイルとの衝突 |
| 整理 | 単一・一括名前変更 | 変更前後、重複名、previewToken |
| 削除 | 完全削除 | 正確な対象、復元手段の有無 |
| 取得 | HTTPSダウンロード | 取得元、相対保存先、同名ファイル |
File Managerが別APKのPluginである理由
File ManagerはFoneClawに最初から含まれる組み込み機能ではありません。公式のFoneClaw Plugin索引では、File Manager Plugin 0.0.4、バージョンコード4、パッケージ名ai.android.claw.plugin.device.filemanager、現在のホスト要件として登録されています。Pluginは独立したAPKとしてインストールされ、固有の署名者、Android権限、公開ツールを持ちます。
この分離により、ユーザーはファイル管理能力が必要な端末にだけPluginを追加できます。FoneClaw本体が依頼を理解し、インストール済みPluginから公開されたツールを登録して利用します。Pluginを導入していない状態では、モデルがファイル整理の意図を理解できても、File Manager固有のツールは利用できません。
パッケージ境界は更新や削除の判断にも役立ちます。インストール提案では、Plugin名、バージョン、パッケージ名、最低ホスト版、要求権限、配布元、期待する署名者を確認します。APKの署名者が期待値と一致しなければ、同じ表示名でも別パッケージとして扱います。FoneClawホストは、インストールされたAPKのパッケージ情報と期待する署名者を検証してからツールを登録します。
公式Plugin索引では0.0.4が現在のパッケージ情報です。FoneClaw Pluginの公式案内に旧版の0.0.3表記が残る箇所があっても、導入時は索引にある0.0.4のパッケージ情報、署名、互換条件を確認します。説明文の版番号だけでAPKを選ばないことが重要です。
同じPlugin方式でも、公開する能力はパッケージごとに異なります。保存形式やダウンロード処理に特化した別の例は、FoneClaw無料YouTubeダウンローダープラグイン:ローカルPluginでAndroid保存、形式選択、承認までで確認できます。File ManagerとYouTube Downloaderはどちらも追加パッケージであり、FoneClawの組み込み機能として一括りにはしません。
すべてのファイルへのアクセスとパス範囲
File Manager Plugin 0.0.4は、AndroidのMANAGE_EXTERNAL_STORAGEとINTERNETを要求します。前者は設定画面で「すべてのファイルへのアクセス」として扱われる特別なアクセスです。後者はHTTPS経由のダウンロードに必要です。これらの権限はPluginが機能を提供するための前提ですが、ユーザーが特定の削除、書込、名前変更を承認したことにはなりません。
ファイル操作は、外部ストレージの基準位置から見た相対パスで指定します。たとえばDownload/ReceiptsやDocuments/Notesのように、対象フォルダーを確認できる形です。モデルが自然言語からパスを組み立てた場合でも、実行前に正規化された相対パスを表示します。親フォルダーへの不明瞭な移動や、依頼と無関係な広い範囲を対象にしません。
「すべてのファイルへのアクセス」という名称でも、Android上のすべてのデータを無条件に読めるわけではありません。アプリ固有の保護領域、システムが制限する場所、暗号化されたデータ、現在の端末状態などによって利用できる範囲は変わります。アクセスできないパスでは、内容を推測せず、拒否された場所と代替手順を表示します。
読取操作にも配慮が必要です。テキスト読取ではmaxBytesによる上限を指定し、大きなファイル全体を一度にモデルへ渡さないようにできます。最初はファイル名、サイズ、更新時刻を確認し、必要な場合だけ短い範囲を読みます。日記、認証情報、契約書などの機密ファイルでは、読取対象そのものをユーザーが確認できる状態にします。
Android権限とエージェントの実行許可を分ける理由は、AIエージェントのスキル安全性:スマホ権限は実行時に確認すべき理由でも詳しく説明しています。端末設定でアクセスを許可していても、どのタスクがどのパスへ何を行うかは、操作ごとに確認する必要があります。
| 確認対象 | 意味 | ユーザーが判断すること |
|---|---|---|
| Android権限 | Pluginが外部ストレージや通信を利用できるか | Pluginへ特別なアクセスを与えるか |
| 相対パス | 外部ストレージ内の操作対象 | 依頼したフォルダーと一致するか |
| ツール承認 | 今回行う読取・変更・削除 | 表示された操作を実行するか |
| 観測結果 | 実行後に確認できたファイル状態 | 期待した変更が反映されたか |
一括名前変更をプレビューしてから適用
一括名前変更は、多数のファイルを短時間で整理できる一方、対象や命名規則を誤ると影響が広がります。File Manager Pluginでは、一括名前変更をプレビューと適用に分けています。最初の操作は変更候補を作り、各ファイルの変更前パスと変更後パス、衝突や不明点を確認できる形で返します。この段階では実ファイルを変更しません。
たとえばDownload/Receiptsにある画像を「2026-08_領収書_連番」という形式へ変える場合、対象条件、並び順、拡張子の保持、開始番号を指定します。プレビューでは、receipt.jpgが2026-08_領収書_001.jpgへ変わるといった対応を一覧で確認します。同じ名前になる候補、対象外にすべきフォルダー、期待と異なる拡張子があれば、適用前に条件を修正します。
プレビューが受理されるとpreviewTokenが返されます。破壊的な一括適用では、このトークンが必要です。適用側が自然言語の命名規則だけを受け取って再計算するのではなく、ユーザーが確認した具体的な変更候補に結び付いたトークンを使います。これにより、表示した計画と別の計画が実行される可能性を減らせます。
プレビュー後にフォルダー内容が変わった場合は、そのまま適用しません。別のアプリがファイルを追加した、対象が移動した、同名ファイルが作成された、ユーザーが一部を手動で変更した場合は、古い候補が現在状態と一致しなくなります。新しい一覧を取得し、プレビューを作り直して新しいpreviewTokenを使います。
単一ファイルの名前変更では一括用トークンは使いませんが、元の相対パス、新しい名前、衝突の有無を表示します。適用後には一覧を再取得し、元の名前がなく、新しい名前が一件だけ存在することを確認します。成功応答だけでなく、端末上で観測した結果まで表示することが重要です。
- 対象フォルダーと検索条件を確定する。
- 変更候補をプレビューし、旧名と新名を比較する。
- 重複名、拡張子、並び順、対象外ファイルを確認する。
- 確認済みプレビューのpreviewTokenを使って適用する。
- 適用後にフォルダーを再一覧し、変更結果を照合する。
完全削除とHTTPSダウンロードの確認
File Manager Pluginの現行MVPにおける削除は完全削除です。ゴミ箱へ移動する操作ではなく、Plugin内に取り消し機能もありません。そのため削除前には、正確な相対パス、対象の種類、件数、ファイルサイズ、削除後に利用できなくなることを表示し、破壊的操作として明示的な承認を求めます。
「古いダウンロードを消して」のような条件だけで即座に削除するのは適切ではありません。まず検索条件に合う候補を一覧し、更新日時やサイズを確認します。次に削除候補を個別に表示し、必要なら対象を外します。承認後は指定した対象だけを削除し、再一覧によって存在しないことを確認します。
削除前に復旧手段が必要なら、別のフォルダーや外部バックアップへコピー済みかをユーザーが確認します。ただし、バックアップがあると推測して進めることはできません。削除後にPluginから元へ戻す方法はないため、復旧元を確認できない重要ファイルは削除対象から除外します。
ダウンロードはHTTPSのURLだけを受け付け、保存先は外部ストレージ内の相対パスで指定します。たとえばDownload/Reports/report.pdfのように、取得元と保存先を一緒に表示します。INTERNET権限が有効でも、任意のURLから任意の場所へ自動保存する承認にはなりません。取得元、ファイル名、保存先を操作ごとに確認します。
同名ファイルがある場合は、暗黙の上書きを前提にしません。既存ファイルを一覧で確認し、別名を選ぶか、ダウンロードを中止します。保存後は対象パス、ファイルサイズ、利用可能な場合はテキスト内容の一部を確認します。通信完了という応答だけでなく、指定した場所にファイルが存在することを観測して結果とします。
| 操作 | 実行前 | 実行後 |
|---|---|---|
| 完全削除 | パス、件数、サイズ、復旧手段を確認 | 対象が存在しないことを再一覧 |
| HTTPSダウンロード | 取得元、相対保存先、同名衝突を確認 | パスとサイズを確認 |
| ファイル作成 | 保存先と既存ファイルを確認 | 新規ファイルの存在を確認 |
| テキスト書込 | 対象と内容の概要を確認 | 上限付き読取で反映を確認 |
公式情報の検索から最初の安全な操作まで
FoneClawでFile Manager Pluginを導入する流れは、検索とインストールを分けています。plugin_searchは公式メタデータだけを検索し、候補を返します。この操作だけでAPKをダウンロードしたり、インストールしたりすることはありません。検索結果では、File Manager Plugin 0.0.4、パッケージ名、最低ホスト版、要求権限を確認します。
導入候補を選ぶと、plugin_request_installが目に見えるインストール提案を作ります。この段階でもダウンロードやインストールは実行しません。FoneClawのホーム画面に提案を表示し、ユーザーがPlugin名、版、配布元、APKのパッケージ名、要求権限、期待する署名者、配布物のハッシュを確認してから進めます。
インストール時には、ホストがAPKのパッケージ情報と期待する署名者を検証します。表示名が同じでも、パッケージ名や署名者が異なるAPKは同じPluginとして扱いません。インストール後に、Pluginが公開するツールがFoneClawへ登録されます。モデルがPluginの存在を推測してツール名を作るのではなく、実際にインストールされたAPKから公開された契約を使います。
次にAndroid設定で「すべてのファイルへのアクセス」を確認します。ファイル操作が必要な端末でだけ許可し、INTERNET権限を使うダウンロードも目的に合わせて判断します。権限を与えた後は、状態確認ツールでPluginの準備状況を確認します。権限不足なら、ファイル変更を試す前に必要な設定を案内します。
最初の実行には、専用のテストフォルダーを使います。Documents/FoneClawFileTestのような空のフォルダーを作り、短いテキストファイルを新規作成します。同名ファイルをもう一度作成し、上書きされず衝突として扱われることを確認します。その後、短いテキストを書き込み、maxBytesを小さく指定して読み取り、一覧からパスとサイズを確認します。完全削除は初回テストに含めなくても構いません。
誰がどのPluginを導入し、どのツールを使い、どのパスを変更したかを追跡する設計は、AIエージェントのアイデンティティ、権限、監査ログ:ツール単位で安全に実行する設計で詳しく扱っています。Pluginの信頼確認と、個別のファイル操作に対する承認を別々に記録することが重要です。
導入、操作、監査、削除を実機で評価
Android AIファイル管理エージェント プラグインを評価するときは、正常にファイルを作れるかだけでなく、配布元の確認、パス範囲、変更前のプレビュー、衝突、失敗後の状態、Plugin削除まで通して試します。実データを使う前に、専用フォルダーと複製したファイルで確認してください。
- 配布元:plugin_searchの結果が公式Plugin索引に基づいていることを確認します。外部検索結果や任意URLをインストール候補として扱わないことを見ます。
- パッケージ:ai.android.claw.plugin.device.filemanager、版0.0.4、バージョンコード4、現在のホスト要件を確認します。
- 署名とハッシュ:インストール提案に表示された期待署名者と配布物情報を照合し、ホストのパッケージ検証を通過することを確認します。
- 権限:MANAGE_EXTERNAL_STORAGEとINTERNETの目的を確認します。特別なアクセスを拒否した場合に、理由を表示して安全に停止できるかを試します。
- パス:専用フォルダーだけを対象にし、正規化された相対パスが実行前に表示されることを確認します。
- 読取範囲:maxBytesを指定し、大きなテキストファイルを必要以上に読み取らないことを確認します。
- 衝突:同名ファイルの作成、名前変更、ダウンロードを試し、既存ファイルが暗黙に上書きされないことを確認します。
- プレビュー:一括名前変更の旧名・新名を確認し、previewTokenなしで破壊的な適用へ進まないことを確認します。
- 鮮度:プレビュー後に対象を変更し、新しい一覧とプレビューを要求できることを確認します。
- 削除:テストファイルだけを対象に、完全削除であることと取り消し機能がないことを承認画面で確認します。
- 結果:各操作後に一覧、サイズ、テキスト内容を再確認し、成功応答と端末上の状態が一致することを見ます。
- 監査:操作したPlugin、ツール、パス、承認、結果、失敗理由を追えることを確認します。
- アンインストール:テスト終了後に不要ならPluginと特別なアクセスを削除し、File Manager固有のツールが利用対象から外れたことを確認します。
復旧方法は操作ごとに異なります。名前変更なら観測した旧名と新名をもとに逆の変更候補を作れますが、現在状態を再取得してから適用します。書込はバックアップや元内容がある場合に限って戻せます。完全削除にはPlugin内の復元機能がないため、削除前の外部バックアップだけが復旧元になります。
端末全体の権限や特別なアクセスを定期的に見直す場合は、AIによるAndroidスマホ健康チェック:FoneClawで権限、特別なアクセス、隠しアプリを監査する方法が、File Manager Plugin以外も含めた確認に役立ちます。Pluginを使わなくなった後は、APKのアンインストールだけでなく、「すべてのファイルへのアクセス」が不要になっていないかも確認します。
安全なファイル管理エージェントの条件は、広い権限を持つことではありません。信頼できるパッケージから導入し、操作対象を相対パスで限定し、変更前の候補を確認し、破壊的操作を明示的に承認し、実行後の端末状態を観測できることです。この一連の流れがそろうことで、自然言語の依頼を実用的なAndroidファイル操作へつなげられます。