appfunctions について
AppFunctions として公開できる Android アプリのワークフローを特定し、Kotlin 実装の生成と KDoc の改善を支援する開発スキルです。システムエージェント向けの設定や ADB によるテストも扱います。
主な機能
- 01候補となるアプリのワークフロー発見
- 02Kotlin AppFunctions の生成
- 03依存関係とシステム設定
- 04エージェント向け KDoc の改善
- 05ADB コマンドによるテスト
活用シーン
- 01システムエージェント向けのアプリ操作の特定
- 02Kotlin による AppFunctions の実装
- 03エージェント向け機能説明の改善
- 04デバイス上での機能登録確認
MCP 対応
MCP や LLM が理解しやすい AppFunction KDoc の改善を支援します。AppFunctions は Android アプリのワークフローをシステムエージェントに公開しますが、MCP サーバーであるとは記載されていません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ android/ skills --skill appfunctionsインストール後、Claude Code で/appfunctionsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/adb-interaction-testing.mdcontext.mdfeature-discovery-analysis.mdimplementation-configuration.mdkdoc-refinement-optimization.mdmigrate-to-service-entry-point.md詳細
AppFunctions で利用できる主要なユーザーワークフロー(メモの作成、メディアの再生、自動化されたメッセージや AI エージェントがトリガーするメッセージの送信、音声コマンド、システムショートカットなど)を特定するために、Android アプリを分析します。アプリの UI を開く必要はありません。
これらのワークフローを Android システムに公開する Kotlin コードを生成し、エージェントがデバイス上でそれらを検出して実行できるようにします。
また、AI エージェントが提供される機能を正しく理解し、使用できるように、KDoc ドキュメントを改善します。
前提条件
AppFunctions は Android プラットフォーム API の一部であり、Android 16 以降で利用できるため、アプリは targetSdk 36 以降を対象とし、compileSdk 37 以降を使用する必要があります。
下位互換性に対応する Jetpack ライブラリを必ず使用してください。
ワークフロー
このスキルを使うと、呼び出し元はシステムエージェントに提供される機能を見つけ、AppFunctions で実装し、エージェント向けの関数の説明を改善し、ローカルでの評価やテストに ADB コマンドを使用できます。
AppFunction の開発フロー全体は、次の 4 つのステップで構成されます。
- ステップ 1:発見:Android のコードベースを分析し、AppFunctions の候補を特定して提案します。ユーザーから「AppFunctions を見つける」「AI 向けの機能を探す」「エージェント向けツールについてアプリを分析する」と依頼された場合に、このステップを使用します。
- ステップ 2:実装と設定:AppFunctions の Kotlin 実装を生成し、システム全体の設定を管理して、ビルド依存関係を設定します。ユーザーから「AppFunctions を実装する」「AppFunctions フレームワークをセットアップする」「AppFunctions 用に Hilt を設定する」と依頼された場合に、このステップを使用します。
- ステップ 3:KDoc の改善:AI エージェントと Model Context Protocol 向けに AppFunction の KDoc を最適化します。ユーザーから「KDoc を記述する」「MCP 向けに最適化する」「LLM 向けにツールの説明をリファクタリングする」と依頼された場合に、このステップを使用します。
- ステップ 4:テストとデバッグ:テストとデバッグのために、ADB を使用して AppFunctions を操作するコマンドを提示します。ユーザーがデバイス上で「アプリ関数を一覧表示する」「アプリ関数を呼び出す」「アプリ関数の登録を確認する」場合は、このステップを使用します。
ユーザーが一部のステップだけを依頼した場合は、すべてのステップを実施するよう促してください。
該当する場合は、次のリファレンスを読み込む必要があります。
- コンテキストと用語:AppFunctions スキル群全体で共通して使用する言語、アーキテクチャの定義、設計パターンを定義します。アーキテクチャの基本用語を理解する必要がある場合や、新旧の AppFunctions API の違いを確認する場合に読み込みます。
- サービスエントリーポイントへの移行:バージョン 1.0.0-alpha10 で導入された
AppFunctionServiceEntryPointアーキテクチャに、AppFunctions バージョン 1.0.0-alpha09 以前を使用する Android アプリを移行する手順を説明します。ユーザーから既存の AppFunctions コードの移行やアップグレードを依頼された場合、または従来のAppFunctionConfiguration.Provider実装に遭遇した場合に読み込みます。
重要な制約
- モジュール間の一貫性:AppFunction の実装を生成したら、直ちに KDoc を改善する必要があります。
- セキュリティ:機密データを公開したり、ユーザーの確認なしに破壊的な操作を実行したりしないでください。
トラブルシューティング
- Kotlin Symbol Processing(KSP)の問題など、ビルド時のエラーが発生した場合は、実装と設定を参照してください。
- サービスの欠落や実行の失敗など、実行時エラーが発生した場合は、テストとデバッグを参照してください。
- アーキテクチャの定義や用語が必要な場合は、コンテキストと用語を参照してください。
- 従来の設定をアップグレードする際に問題が発生した場合は、サービスエントリーポイントへの移行を参照してください。