compose_skill 和 android skills,对 Android 项目提升巨大的专家 AI Skills

最近发现了一个非常不错的 Compose AI Skills 项目 compose_skill这个 Skills 可以针对你的 compose 项目生成一份评分的报告,例如下面就是我的 Compose 项目在这个 Skills 下得到的评分:

  • 性能:4/10
  • 状态管理:5/10
  • 副作用:6/10
  • Composable API 质量:5/10

技能检查后的整体评价是:项目已经是比较完整的 Compose 多模块应用,结构合理,但是列表性能、状态收集方式、可复用组件的 API 设计,还有 ViewModel/模型穿透 UI 的方式,都存在系统性的问题,最关键的是这些问题不是零星个别点,而是在多个 feature 里重复出现了,所以只有 46/100

compose_skill 整体可信度还是可以的,它不是只是通过提示词和 rules 做评审,而是会通过内置的 Gradle 初始化脚本,直接生成并解析 Compose 编译器的报告(Reports)和指标(Metrics),主要评判维度有:

  • 性能 (35%):检查 Compose 里的耗时操作、Lazy 列表的 Key、稳定性(Stability)、强跳过模式(Strong Skipping)
  • 状态管理:审计状态提升(Hoisting)、单一事实来源、生命周期感知的状态收集
  • Side Effects:检查 Effect API 的正确使用、Key 的选择、回调捕获
  • API 质量:审查 Modifier 规范、参数顺序、Slot API 设计

然后技能会生成一个名为 COMPOSE-AUDIT-REPORT.md 的报告,报告不只有分数(0-100),而是每一项扣分都会附带代码位置官方文档引用 (References) ,例如我的检查里:

less 复制代码
**State management: Android screens collect flows without lifecycle awareness**
​
- Why it matters: `collectAsState()` keeps collecting even when the screen is stopped, which wastes work and can keep screen state hot longer than intended.
- Evidence: `app/src/main/java/com/shuyu/gsygithubappcompose/MainActivity.kt:49`, `feature/search/src/main/java/com/shuyu/gsygithubappcompose/feature/search/SearchScreen.kt:34`, `feature/detail/src/main/java/com/shuyu/gsygithubappcompose/feature/detail/RepoDetailScreen.kt:106`, `feature/profile/src/main/java/com/shuyu/gsygithubappcompose/feature/profile/ProfileScreen.kt:28`
- Fix direction: add `lifecycle-runtime-compose` and switch Android UI collectors to `collectAsStateWithLifecycle()`.
- References: <https://developer.android.com/develop/ui/compose/state>

最重要是,它还能从审计结果利筛选出影响力最大的修复点,同时预测修复后对 skippable%(可跳过率)指标的提升效果

而相比起那些只通过提示词和规格的技能, 这个技能之所以能够做到深度的专家级审计,主要是因为:

  • Gradle : 项目自带了 scripts/compose-reports.init.gradle,在技能使用时 AI 会通过 --init-script 运行项目的 Gradle 任务,将编译器报告的配置动态注入到构建流程中,在不改动代码的情况下拿到部分数据
  • 静态源码分析: 它定义了一套详尽的 Ripgrep (rg) 搜索策略,涵盖了从 derivedStateOf 滥用、remember 缺失 Key 到 Scaffold 忽略内边距等数十种常见问题
  • 评分机制: 不是主观评价,在性能评分里如果 skippable% 低于 50%,或者不稳定类的数量超过阈值,性能得分会强制"封顶"(例如最高只能给 4 分),无论其他地方写得再好也不行
  • 知识图谱与官方文档锚定: 该项目维护了一份 canonical-sources.md,将所有的审计规则直接关联到 Android 官方文档和 AndroidX 源码中的 API 指南

所以相比起单纯的 AI 评价,它会更专业和全面,而相比起一般的 Linter,它结合了编译器的真实数据 + AI,不仅能告诉你"这个类可能不稳定",还能通过编译器报告指出是哪个属性导致了不稳定

当然,它对视觉能力审计会比较弱,作者也维护了另一个叫 material-3 的技能,这个技能会针对Material 3 的合规性、配色或排版进行评分。

这个技能可以看成是一个高级工程师的经验(如何看编译器报告、如何找状态提升问题、如何优化侧效应)固化成了 AI 可执行的脚本和规则,然后再通过 AI 进行量化判断,可以说是无私的奉献了:

你可以用它作为每次提交代码后的自动审查工具,或者在接手一个混乱的旧项目时,用它来快速定位性能瓶颈和架构风险

总之,如果你正在用 Compose ,这个技能技必须不能错过。

我糟糕项目的报告可见:github.com/CarGuo/GSYG...

最后,android 官方也发布了对应的 skills ,目前主要是用于帮助 AI 升级和适配的技能,比如:

  • 将 Android 项目升级到 Android Gradle Plugin (AGP) 9,涉及 DSL 迁移、内置 Kotlin 迁移、KSP 适配等复杂步骤
  • 提供了将旧版 XML 视图迁移到 Jetpack Compose 的结构化工作流,定义了一套包含 10 个步骤的方法论,确保 UI 的视觉一致性和功能完整性
  • 其他还涵盖了 Navigation 3 导航系统、R8 分析器 性能优化以及 全屏显示 (Edge-to-Edge) 适配等场景

这份技能主要通过各种结构化的技术文档来告诉 AI 应该怎么处理升级和适配,需要遵循什么规则,每个技能都包含详细的前置要求 、具体步骤、操作准则 和验证方法,所以它不仅告诉 AI "做什么",还明确规定了"不能做什么",比如:

在 AGP 升级中禁止编写 Python 脚本。

技能文档中大量引用了 references/ 目录下的技术参考资料,例如在 XML 迁移技能中,它会引用专门的"分析项目布局"和"设置 Compose 依赖"的子文档。

所以这里最重要的就是,官方已经在强烈暗示你:「migrate-xml-views-to-jetpack-compose」,毕竟 AI 场景下,XML 确实也是更不上了

总的来说,android skills 是偏通用性质的升级和适配场景,内容也都是文档和资料,而 compose_skill 则是专家级别的经验检测,能快速帮你找到需要优化的问题和建议。

我已经开始好奇了,你的项目能得几分 ~~~~~

链接

github.com/hamen/compo...

github.com/android/ski...

相关推荐
我命由我123452 小时前
Android Jetpack Compose - ModalNavigationDrawer、NavigationRail、PullToRefreshBox
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
J_liaty2 小时前
Vue2 从入门到精通
前端·javascript·vue.js
INF_MAX2 小时前
一些不错的页面设计(持续记录)
前端
空中海2 小时前
5.3 本地存储
flutter
乔江seven2 小时前
LlamaIndex 实现ReAct Agent
前端·python·react.js
私人珍藏库2 小时前
Edge v146.0.3856.97 内置篡改猴脚本
前端·edge
Thomas21432 小时前
chrome cdp 三种方案对比
前端·chrome
别叫我->学废了->lol在线等2 小时前
claudecode的agent定义
前端·chrome·github
用户806138166592 小时前
SDK(Software Development Kit,软件开发工具包)
前端