7 个 Claude Code Skills,让你的 Android 开发效率翻倍

你在 Claude Code 里输入”帮我写一个用户列表页面”,它给你生成了一堆代码。
用的是 Material 2。状态管理用了 mutableStateOf 而不是 StateFlow。ViewModel 里直接调了 API 没走 Repository。Modifier 顺序还是错的——先 padding 后 clickable,点击区域比你预期的小了一圈。
不是 Claude 笨。是它不知道你的项目用 Material 3,不知道你的架构是 Clean Architecture + MVVM,不知道你们团队的 Compose 编码规范。
每次都手动告诉它一遍?累。而且下次它照样忘。
这就是 Skills 要解决的问题。把你的 Android 项目规范、架构约定、编码偏好写进 SKILL.md,Claude 每次都会自动加载。从此,它生成的代码就像团队里的老成员写的——符合规范、遵循架构、不用你改。
截至 2026 年 3 月,社区已经涌现出大量 Android 专用的 Claude Code Skills。今天我们挑 7 个最实用的,逐一拆解。
为什么 Android 开发特别需要 Skills
Android 开发有三个痛点,让”裸用” Claude Code 的体验大打折扣:
第一,技术栈更新太快。 Jetpack Compose 从 1.0 到现在的 Material 3 Adaptive,Navigation 从传统方案到 Navigation3,Gradle 从 Groovy 到 Kotlin DSL + Version Catalog……Claude 的训练数据可能只覆盖到 2025 年中。你不告诉它,它可能还在用 Accompanist 的 System UI Controller(已经废弃了)。
第二,架构约束强。 Android 项目的分层、模块化、依赖注入有明确的最佳实践。一个 ViewModel 到底该不该直接调 UseCase?Hilt Module 该放在哪个模块?这些决策不在代码里写着,在团队的架构文档里。Claude 读不到。
第三,Gradle 是个黑洞。 Android 的构建系统复杂到让 AI 也头疼。Version Catalog 的格式、Convention Plugin 的写法、多模块间的依赖关系——稍有不对就编译失败。而且 Gradle 的错误信息对 AI 来说基本等于天书。
Skills 可以一次性把这些知识灌给 Claude。它不再猜你想要什么,而是按你定义的规范来。
Skill 1:claude-android-skill——生产级 Android 全套
GitHub: dpconde/claude-android-skill
覆盖范围: 架构、Compose、Gradle、模块化、测试
这是目前最完整的 Android Skill,结构参考了 Google 的 NowInAndroid 官方示例项目。
目录结构:
1 | claude-android-skill/ |
它定义了 5 条核心架构原则:
- Offline-first:本地数据库是唯一数据源,远端只负责同步
- 单向数据流:事件往下流,数据往上流
- 响应式流:所有数据暴露都用 Kotlin Flow
- 按功能模块化:每个 Feature 自包含、有明确边界
- 可测试设计:用接口和 Test Double,不用 Mocking 库
安装方式:
1 | # 克隆到 Skills 目录 |
安装后,你可以直接说:
- “帮我创建一个新的 Feature 模块”
- “按照架构规范重构这个 ViewModel”
- “检查这个 build.gradle.kts 有没有问题”
Claude 会自动加载对应的 reference 文件,按照你的规范行事。
Skill 2:claude-android-ninja——Navigation3 + Material 3 Adaptive
GitHub: Drjacky/claude-android-ninja
亮点: 覆盖最新的 Navigation3 和 Material 3 Adaptive
如果你在用最新的 Android 技术栈,这个 Skill 比上一个更合适。它覆盖了:
- Navigation3 架构、状态管理、自适应导航
- Material 3 Adaptive:NavigationSuiteScaffold、adaptive pane scaffolds
- Material Symbols 图标(不是旧的 Material Icons)
- StrictMode 守卫和 Compose 编译器稳定性诊断
- JaCoCo 代码覆盖率(单元测试 + 仪器化测试)
- 安全:证书固定、加密、生物识别、Root 检测、Play Integrity
还包含废弃模式迁移指南——帮你从 Accompanist 迁移到原生实现,从 Material 2 迁移到 Material 3。
Skill 3:compose-skill——带源码佐证的 Compose 专家
GitHub: aldefy/compose-skill
亮点: 所有建议都附带 androidx/androidx 源码引用
这是我个人最推荐的 Compose Skill。它的独特之处在于:所有指导都有源码出处。
不是说”你应该用 remember”,而是附带 androidx/compose/runtime/remember.kt 的具体代码段,解释为什么这样做。
当你说”我的 LazyColumn 滚动卡顿,帮我排查”,它会:
- 检查是否有重组性能问题
- 引用
LazyListState的源码解释滚动机制 - 给出具体的优化方案(key 参数、derivedStateOf、稳定类标注)
没有幻觉 API。没有猜测行为。 因为所有建议都锚定到了真实源码。
安装后,Claude 会在你提到 Compose、@Composable、remember、LazyColumn、NavHost 等关键词时自动触发。
Skill 4:xml-to-compose——XML 布局一键转 Compose
来源: ProAndroidDev 社区
亮点: 系统化的 XML 到 Compose 映射规则
如果你的项目正在从 XML 迁移到 Compose,这个 Skill 能省你大量时间。
它定义了完整的映射规则:
| XML | Compose |
|---|---|
LinearLayout (vertical) |
Column |
LinearLayout (horizontal) |
Row |
FrameLayout |
Box |
match_parent |
fillMaxWidth() / fillMaxHeight() |
layout_margin |
Spacer 或父级 padding |
layout_weight |
Modifier.weight() |
View.GONE |
条件渲染(不渲染即不存在) |
View.INVISIBLE |
Modifier.alpha(0f) |
还处理了一些 Claude 容易搞混的细节:
- Modifier 顺序:先
clickable后padding(如果你想要更大的点击区域) - Material 版本:强制使用 Material 3 组件
- 无障碍属性:自动添加
contentDescription
一个真实案例:给它一个包含 ImageView + TextView 的 LinearLayout,它会转成:
1 | Row( |
注意:layout_marginStart="12dp" 变成了 Spacer,而不是在 Text 上加 padding——这是 Compose 的惯用写法。
Skill 5:kotlin-specialist——Kotlin 全栈专家
来源: Jeffallan/claude-skills
覆盖: Coroutines、Flow、KMP、Ktor、DSL
如果你不只做 Android,还写 Kotlin Multiplatform 或后端(Ktor),这个 Skill 覆盖了整个 Kotlin 生态:
- Coroutines:structured concurrency、异常处理、SupervisorJob
- Flow API:StateFlow vs SharedFlow、冷流热流、背压处理
- KMP:expect/actual 声明、共享模块设计
- Ktor:服务端路由、客户端配置、序列化
- DSL 设计:类型安全的构建器模式
- 测试:JUnit 5、MockK、Turbine(Flow 测试)
工具链定义包含:Kotlin 1.9+、Arrow.kt、kotlinx.serialization、Detekt、ktlint。
Skill 6:自定义 Gradle 审计 Skill
社区里最常见的自定义 Skill 之一。每个团队的 Gradle 配置不同,所以这个最好自己写:
1 | --- |
使用 /gradle-audit,Claude 就会逐项检查你的 Gradle 配置。
Skill 7:Android 安全审计 Skill
另一个强烈建议自建的 Skill:
1 | --- |
context: fork 确保安全审计在隔离的子 Agent 中运行,只能读不能写。
实战工作流:Skills 组合使用
一个典型的 Android 开发工作流:
1 | 1. /gradle-audit → 检查构建配置是否健康 |
关键点:大部分 Skill 是自动触发的。 你不需要记住哪个 Skill 做什么。Claude 检测到你在做 Compose 开发,就自动加载 Compose Skill;检测到你在改 Gradle,就自动加载 Gradle 相关知识。
写自己 Skill 的 3 条原则
如果现有的 Skill 不完全符合你的需求(大概率不会完全符合),自己写一个也很简单。三条原则:
第一,references 目录放详细文档,SKILL.md 放简要指引。 Claude 会按需加载 references 里的文件,不会每次都全部读入。这样既全面又不浪费 Token。
第二,description 要精确。 模糊的描述(”Android 开发”)会导致误触发。具体到场景(”当编辑 .kt 文件、build.gradle.kts 或 Compose UI 时触发”)。
第三,包含代码示例。 Claude 模仿具体示例比理解抽象规则更准确。与其写”使用单向数据流”,不如给一段 UiState + Event + ViewModel 的完整代码。
写在最后
回到开头的问题:为什么 Claude 生成的 Android 代码总需要大改?
不是它不够聪明,是它缺少上下文。它不知道你的项目用什么架构、什么版本、什么规范。
Skills 就是把上下文一次性写清楚,然后永远不再重复。
一个配好 Skills 的 Claude Code,在 Android 开发中的表现完全不同——生成的代码直接能用,符合 Material 3,遵循 Clean Architecture,Modifier 顺序正确,连 contentDescription 都帮你写好了。
花一个小时配 Skill,省下每天一个小时的代码修改。这笔账,怎么算都值。
你在 Android 开发中用 Claude Code 吗?有没有自己写过 SKILL.md?你觉得 Android 开发中最需要 AI 帮忙的环节是什么——写 UI、写测试、还是折腾 Gradle?评论区聊聊你的经验。