Community生产力与协作github.com

Android 技能集 (AppFunctions)

分析 Android 应用以识别关键用户工作流(如创建笔记、播放媒体或发送自动/AI 代理触发消息),并生成 Kotlin 代码,将其作为 AppFunctions 暴露给系统,使 AI 代理能发现并执行这些功能。

Android 技能集 (AppFunctions) 是什么?

此技能集专为在 Android 16+ 设备上运行的 AI 系统代理(如 Claude Code、Cursor 等)设计,用于分析 Android 应用并发现其关键用户工作流(例如创建笔记、播放媒体、发送消息、语音命令或系统快捷方式),无需打开应用 UI。它通过生成 Kotlin 代码(利用 Jetpack AppFunctions 库)将这些工作流暴露给 Android 系统,使 AI 代理能够在设备上本地发现并执行这些功能。此外,该技能集还自动优化 KDoc 文档,确保 AI 代理能正确理解和使用这些功能。它包含四个核心步骤:工作流发现与建议、Kotlin 实现与配置、KDoc 优化、以及通过 ADB 的本地测试与调试。支持迁移遗留的 AppFunctionConfiguration.Provider 架构,并提供详细的引用文档(如上下文术语和迁移指南)以解决常见构建或运行时问题。

兼容平台~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/android/skills/tree/HEAD/device-ai/appfunctions

Installed? Explore more 生产力与协作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

分析 Android 应用,以识别 AppFunctions 的关键用户工作流,例如创建笔记、播放媒体、或发送自动化/AI 代理触发的消息、语音命令或系统快捷方式,无需打开应用 UI。

生成 Kotlin 代码,将这些工作流暴露给 Android 系统,使代理能够在设备上发现并执行它们。

此外,还优化 KDoc 文档,确保 AI 代理能正确理解并使用所提供的功能。

先决条件

应用必须使用 targetSdk 36 或更高版本,并采用 compileSdk 37 或更高版本,因为 AppFunctions(作为 Android 平台 API 的一部分)从 Android 16 开始可用。 始终使用 Jetpack 库,因为它能处理向后兼容性。

工作流

本技能使调用者能够发现将提供给系统代理的功能、使用 AppFunctions 实现这些功能、改进面向代理的函数描述,并使用 ADB 命令进行本地评估与测试。

完整的 AppFunction 开发流程包括以下四个步骤:

  • 步骤 1:发现:分析 Android 代码库,识别并推荐潜在的 AppFunctions。当用户要求“发现 AppFunctions”、“为 AI 查找功能”或“分析我的应用以获取代理工具”时使用此步骤。
  • 步骤 2:实现与配置:生成 AppFunctions 的 Kotlin 实现,管理系统范围的配置,并配置构建依赖项。当用户要求“实现 AppFunctions”、“设置 AppFunctions 框架”或“为 AppFunctions 配置 Hilt”时使用此步骤。
  • 步骤 3:KDoc 优化:针对 AI 代理和模型上下文协议(MCP)优化 AppFunction 的 KDoc。如果用户要求“编写 KDoc”、“为 MCP 优化”或“为 LLM 重构工具描述”,则使用此步骤。
  • 步骤 4:测试与调试:提供通过 ADB 与 AppFunctions 交互的命令,用于测试和调试。如果用户想要在设备上“列出 app 函数”、“调用 app 函数”或“验证 app 函数注册”,则使用此步骤。

如果用户请求的是部分步骤,必须鼓励他们使用所有步骤。

如果适用,必须加载以下引用:

  • 上下文与术语:定义了 AppFunctions 技能套件中的通用语言、架构定义和设计模式。当需要理解核心架构术语或区分现代与遗留 AppFunctions API 时加载。
  • 迁移到服务入口点:记录将使用 AppFunctions 版本 1.0.0-alpha09 及更低版本的 Android 应用系统化迁移到版本 1.0.0-alpha10 引入的 AppFunctionServiceEntryPoint 架构的过程。当用户要求迁移或升级现有的 AppFunctions 代码,或遇到遗留的 AppFunctionConfiguration.Provider 实现时加载。

关键约束

  • 模块一致性:生成 AppFunction 实现后必须立即优化 KDoc。
  • 安全性:未经用户确认,不得暴露敏感数据或执行破坏性操作。

故障排除

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能