深度解析 Android Skills 的设计理念与弃用机制
原创 Android 2026-09-21 18:01 北京

Android Skills 发布后的反响远超预期!本文聚焦于 Android Skills 背后的理念与方法论,介绍新模型的评估与弃用机制,帮助开发者在安装和使用时更精准地控制 Token 与时间成本。

作者 / Android 开发者关系工程师 Jose Alcérreca
继 4 月官方发布了 Android Skills 后,其反响远超预期。在这篇文章中,我们将回应大家提出的一些反馈,并解释该项目背后的理念与方法论。希望这篇文章也能帮助大家了解在安装和使用 Android Skills 时,幕后究竟发生了什么,从而更有效地利用 Token 和自己的时间。
🔗 Android Skills
https://github.com/android/skills

为什么官方 Skills 如此之少?
目前,只有当确认最前沿 (SOTA) 模型存在可验证的知识缺口时,才会考虑开发新的 Skills。简而言之:您无需向模型传授其已经掌握的知识。(当然,也有少数例外,请继续阅读。)
截至目前,我们已经发布了大约 20 个官方 Skills,专门针对一些高度具体且快速发展,但标准模型目前还无法充分掌握的领域,例如 AGP 9、Navigation 3、高级 Camera API 以及 Perfetto SQL。
至于更通用、更核心的 Skills,因为每个已安装的 Skill 都会向您启动的每项任务的基础上下文中注入 100-200 个 Token,一旦该 Skill 真正被激活,这个数量可能会迅速增加到数千个。在大多数情况下,囤积基础 Skills 不仅适得其反,而且成本高昂。我们建议您在安装用于编写基础 Kotlin 或 Compose 代码的 Skills 之前,不妨先考虑一下:您所选择的 LLM 是否真的需要它。

评估 Skills
每个 Skill 在发布前,都会经过一套全面的评估测试,以证明其能够带来明确的价值。当 Skill 处于激活状态时,应该顺利通过评估;反之则应该失败。所以对于 Skills 而言,评估就像代码中的集成测试一样。
timeout_s: 1200repository:url: [redacted - internal git repo]working_dir: wear_compose_m3_empty_appcategory_ids:- wearprompt: |-Add a horizontal pager to MainActivity.kt. Have three pages in the pager. Each page should containthe text "Page 1", "Page 2", and "Page 3" respectively in the center of the screen.commands:build:- ./gradlew assembleDebugacceptance_criteria:project_builds: truellm_diff_judge:- Must use `HorizontalPagerScaffold`.- Each page should use `AnimatedPage` to wrap a `ScreenScaffold`.
△ 检查 Wear 应用中 Horizontal Pager 是否正确实现的评估示例
我们至少会在 Android Studio 中使用最新的 Gemini Flash 模型完成相关测试。根据 Skill 的具体用途,我们还会确保它兼容其他模型 (例如 Gemini Pro)、其他智能体 (例如 Antigravity) 以及第三方系统。
所有评估均在允许访问 Knowledge Base 的环境下运行。因此,如果相关信息已存在于文档中,且模型能够自主检索,我们就不会发布相应新的 Skill。
🔗 Knowledge Base
https://developer.android.com/studio/gemini/access-helpful-resources#android-knowledge-base

使用 Android Knowledge Base
(Android Studio 或
Android CLI)
如果您需要开发 Android 应用,我们建议您始终使用 Android Knowledge Base,以便查阅官方文档。若您在 Android Studio 中使用智能体,Android Knowledge Base 已直接作为内置工具为您提供;如果您使用其他智能体,则需要安装 Android CLI。Android CLI 提供了包括 docs 在内的多种命令,其中 docs 命令可以让智能体访问 Android 官方文档。使用单一工具比安装数百个 Skills 要高效得多。
🔗 安装 Android CLI
https://developer.android.com/tools/agents
如果您的模型表现得过于自信,而您希望它更频繁地查阅文档,一个常见的优化方法是在 AGENTS.md 文件或类似文件中添加 "处理 Android API 时,请务必查阅官方 Android 文档"。当然,您也可以在提示中直接要求智能体检查文档来强制执行此操作。

为什么关闭了 Pull Request?
我们的评估框架依赖于无法开源的内部基础设施,因此我们无法直接接受针对新 Skill 的 Pull Request,如果没有这些基础设施,我们就无法重新评估 PR 中的变更。不过,我们会积极关注社区反馈。如果您想报告 Bug、提出优化建议或请求添加新的官方 Skill,欢迎随时提交问题!
🔗 问题
https://github.com/android/skills/issues

什么时候引入核心或基础 Skills 才有意义?
虽然最前沿 (SOTA) 的模型通常不需要基础 Skills,但在某些场景下,启用核心 Skills 或社区构建的 Skills 仍然能带来切实价值。例如:
您使用的提示词比较模糊:Skills 可以进一步阐明您的意图。例如,您只给出 "为这个页面添加动画" 这样的宽泛提示,一个专门的 Compose 动画 Skill 可以启发模型,使其采用现代 API 或屏幕截图测试模式,而这些是模型原本可能不会考虑的。
您希望使用更小、更经济的模型:前沿 LLM 成本高昂。如果您把日常任务交给 Gemma 4 等更轻量的开放模型,启用基础 Skills 可以弥补小参数模型在知识上的不足。
您正在重构或审查旧版代码:模型非常擅长生成能够运行的代码,但在修改旧代码库时,它们往往优先与周围旧版代码保持一致,而不是以现代且准确的方式重写代码。配备核心 Skills 的专用审查智能体可以帮助打破这种习惯。
您的架构偏离主流做法:LLM 通常偏好标准的 "Google 式" Android 应用架构。如果您的团队使用高度个性化的视图层架构,模型将难以保持一致性。一个能够明确描述该架构的自定义 Skill 将大有裨益。

哪里可以获取核心 Skills?
Android 社区可以为您提供帮助:Chris Banes 整理了了一套全面的 Compose 和 Kotlin Skills,Ivan Morgillo 发布了一个用于审计 Compose 项目的 Skill,Jaewoong Eum 则创建了两个关于测试和性能的 Skill。
🔗 Compose 和 Kotlin Skills
https://github.com/chrisbanes/skills
🔗 一个用于审计 Compose 项目的 Skill
https://github.com/hamen/compose_skil
🔗 测试和性能
https://github.com/skydoves/compose-performance-skills
请务必从正规来源下载 Skills!不要轻信那些包含几十甚至几百个 Android Skills 的仓库,因为它们很可能是 AI 生成且未经测试的,甚至可能包含恶意或带有偏见的指令。此外,我们不建议盲目安装通用的软件工程 Skills;其中很多都是针对 Web 开发定制的。

终极目标:弃用
随着最前沿 (SOTA) 模型不断进步,我们预计 Skills 最终会逐渐过时,那些围绕新 API 构建的 Skills 更是如此。为了确定何时应该弃用某个 Skill,我们会在新模型发布时重新运行评估。如果新模型能够通过评测,我们通常还会继续保留该 Skill 几个月,以便大多数用户完成迁移。
欢迎您持续关注 "Android 开发者" 微信公众号,及时了解更多开发技术和产品更新等资讯动态。

本文转载自微信公众号「Android 开发者」,查看原文。版权归原作者所有,如有侵权请联系删除。