Agent Skills
› skydoves/compose-performance-skills
skydoves/compose-performance-skills
GitHubJetpack Compose性能审计编排技能,通过测量、诊断、修复、验证四阶段流程,协调25个专注技能进行端到端性能评估并生成报告。
Install All Skills
npx skills add skydoves/compose-performance-skills --all -g -y
Skills in Collection (25)
Jetpack Compose性能审计编排技能,通过测量、诊断、修复、验证四阶段流程,协调25个专注技能进行端到端性能评估并生成报告。
应用整体卡顿或滚动粗糙
启动性能冲刺需结构化计划
新成员入职性能调优代码库
发布前性能门禁检查
用户请求全面性能审计
npx skills add skydoves/compose-performance-skills --skill auditing-compose-performance -g -y
指导AI代理通过MCP工具驱动Compose HotSwan进行UI迭代。支持编辑Kotlin文件、触发热重载、截图评估及快照回滚,实现无需人工干预的自动视觉调试与界面优化。
AI驱动UI迭代
验证代码变更视觉效果
配置Claude Code或Cursor工作流
npx skills add skydoves/compose-performance-skills --skill iterating-with-ai-and-mcp -g -y
指导开发者在Jetpack Compose中通过理解HotSwan热重载的三个层级,选择合适状态持有者以保留UI状态(如滚动位置、对话框),避免状态丢失。
热重载后滚动位置重置或丢失
询问为何热重载升级到Tier 2或3
计划重构并需评估对作用域的影响
npx skills add skydoves/compose-performance-skills --skill preserving-state-across-reloads -g -y
指导开发者从零开始安装和配置 Compose HotSwan,实现 Kotlin/Compose 应用的秒级热重载。涵盖 IDE 插件、Gradle 编译器插件集成及真机验证流程。
需要设置 Compose 热重载
询问如何应用 Gradle 编译器插件
项目接入 HotSwan
工具窗口状态异常
npx skills add skydoves/compose-performance-skills --skill setting-up-compose-hotswan -g -y
用于掌握 Android Compose HotSwan 热重载限制,识别导致全量重建的类结构变更(如参数、构造函数、内联函数等),帮助开发者优化编辑顺序以保持在快速路径,避免意外触发慢速重建。
询问为何触发全量重建或热重载失败
审查涉及重构的代码以防破坏热重载
规划编辑顺序以维持快速迭代
npx skills add skydoves/compose-performance-skills --skill understanding-hot-reload-limits -g -y
指导配置 Jetpack Compose 懒加载预取策略,通过 LazyLayoutCacheWindow 和可暂停组合优化高滚动场景下的帧率。
开发者提到掉帧、预取窗口或 LazyLayoutCacheWindow
需要处理嵌套懒布局的预取性能
Macrobenchmark 显示高速滚动时帧丢失
npx skills add skydoves/compose-performance-skills --skill configuring-lazy-prefetch -g -y
修复 Jetpack Compose Lazy 组件滚动卡顿、状态丢失及动画失效问题。通过优化 item key、contentType 和 animateItem,提升列表性能与稳定性。
LazyColumn/Row 滚动卡顿或掉帧
列表项在增删改时丢失滚动位置或焦点
animateItem() 动画未生效
混合类型 Feed 渲染迟缓
npx skills add skydoves/compose-performance-skills --skill optimizing-lazy-layouts -g -y
用于生成和测量 Jetpack Compose 基线配置文件,通过 Macrobenchmark 验证冷启动加速和首屏流畅度提升。适用于解决启动慢、滑动卡顿及发布前性能基准测试场景。
用户提到“baseline profile”或“macrobenchmark”
需要优化冷启动速度或首屏滑动流畅度
准备发布构建并进行性能测量
npx skills add skydoves/compose-performance-skills --skill generating-baseline-profiles -g -y
指导在 Android Jetpack Compose 开发中,通过配置带符号的 Release 构建来验证真实性能。涵盖为何 Debug 数据失真、如何设置 R8 和禁用 Live Literals,以及使用 Macrobenchmark 等工具进行准确的性能基准测试。
开发者报告来自 Debug 构建的性能指标(如启动慢、掉帧)
准备提交性能回归报告或 PR 中的基准数据
设计 CI 性能门禁
审查性能相关 Bug
npx skills add skydoves/compose-performance-skills --skill testing-compose-in-release-mode -g -y
用于在Jetpack Compose中集成@TraceRecomposition,实现发布模式下重构追踪与性能分析。支持Gradle插件配置、运行时开关及Logcat日志输出,辅助验证稳定性修复并生成热力图数据。
用户提及 @TraceRecomposition 或 trace recomposition
需要确认发布模式下的重组稳定性
调试 Layout Inspector 无法覆盖的内联组件
npx skills add skydoves/compose-performance-skills --skill tracing-recompositions-at-runtime -g -y
指导在 Jetpack Compose 中从零创建或使用 Modifier.Node,并将旧的 Modifier.composed 迁移至持久化节点。涵盖生命周期、专用接口及性能优化,适用于自定义修饰符开发与重构。
迁移 Modifier.composed
创建自定义 Modifier
npx skills add skydoves/compose-performance-skills --skill migrating-to-modifier-node -g -y
诊断并修复 Jetpack Compose 中 Modifier 链顺序错误导致的 UI 问题,如背景绘制区域、点击范围及裁剪异常。指导开发者理解修饰符嵌套逻辑,纠正常见陷阱,避免无效的性能优化尝试。
询问 Modifier 顺序对 UI 的影响
背景绘制位置错误
点击区域超出可见按钮范围
审查包含 Modifier 重排序的代码差异
npx skills add skydoves/compose-performance-skills --skill ordering-modifier-chains -g -y
针对Jetpack Compose中SubcomposeLayout、BoxWithConstraints等组件滥用导致的重复测量和性能问题,提供检测、替换廉价原语及优化技巧。
报告首帧缓慢或额外测量阶段
提到BoxWithConstraints、SubcomposeLayout或Scaffold性能回退
LazyColumn内出现滚动卡顿
npx skills add skydoves/compose-performance-skills --skill avoiding-subcomposition-pitfalls -g -y
指导在 Jetpack Compose 中判断何时使用 derivedStateOf,遵循输入频率高于输出频率原则。涵盖正确包装、避免捕获非状态变量陷阱及 snapshotFlow 替代方案,用于优化重组性能。
询问是否应包裹 derivedStateOf
滚动位置驱动布尔值或阈值检查
高频输入转低频输出场景
derivedStateOf 未降低重组次数
npx skills add skydoves/compose-performance-skills --skill choosing-derivedstateof -g -y
用于诊断Jetpack Compose重组问题的技能,通过Layout Inspector计数、参数变更原因及运行时追踪定位触发重组的组件与参数。适用于确认跳过逻辑失效、解释状态含义或验证修复效果等场景。
开发者表示预期跳过但未跳过
查看特定组件重组计数以验证修复
询问Inspector中Uncertain/Unknown等状态含义
需要确认PR中的稳定性修复在发布版生效
提及重组计数、Layout Inspector或TraceRecomposition
npx skills add skydoves/compose-performance-skills --skill debugging-recompositions -g -y
优化Jetpack Compose性能,将高频状态读取从Composition阶段延迟至Layout或Draw阶段。通过Lambda修饰符避免每帧重组,解决滚动和动画卡顿问题。
动画或滚动导致整棵子树频繁重组
出现掉帧、滚动卡顿或动画抖动
在Composition中直接读取高频变化状态
npx skills add skydoves/compose-performance-skills --skill deferring-state-reads -g -y
指导在Kotlin 2.0.20+中正确使用Jetpack Compose的强跳过模式,涵盖自动记忆Lambda、跳过行为验证及@DontMemoize等逃逸手段的使用场景。
询问是否仍需@Stable或组件是否跳过
迁移至Kotlin 2.0.20+后遇到异常重绘
分析Lambda分配与自动记忆问题
npx skills add skydoves/compose-performance-skills --skill using-strong-skipping-correctly -g -y
指导将 Compose 中的 collectAsState 迁移至 lifecycle-aware 的 collectAsStateWithLifecycle,优化 Flow 收集以节省电量。处理后台电池消耗、Flow 参数反模式及高频发射优化。
collectAsState 迁移
后台电池耗电优化
Flow 作为 Composable 参数
snapshotFlow 使用
npx skills add skydoves/compose-performance-skills --skill collecting-flows-safely -g -y
指导在Jetpack Compose中选择最合适的Effect API(如LaunchedEffect、DisposableEffect等),避免内存泄漏和性能浪费,涵盖决策树及特定场景用法。
询问选择哪个Effect API
调试LaunchedEffect意外重启或回调过时问题
处理非Compose订阅者的生命周期管理
LazyColumn行内需要独立ViewModel实例
npx skills add skydoves/compose-performance-skills --skill using-efficient-effects -g -y
用于诊断 Jetpack Compose 稳定性问题,通过启用并解析编译器报告(classes.txt 等)识别不稳定参数和非跳过组合项。适用于排查卡顿、帧丢失及高重组计数场景,提供优先级修复建议。
询问重组原因
报告界面卡顿或掉帧
提到 Compose Compiler Reports
分析参数稳定性
npx skills add skydoves/compose-performance-skills --skill diagnosing-compose-stability -g -y
通过配置 Gradle 插件在 CI 中建立稳定性门禁,自动检测 Compose 稳定性回归并阻断构建。适用于团队需强制稳定性 SLO、防止不稳定参数引入或迁移强跳过模式等场景。
需要建立 CI 稳定性检查门禁
怀疑 PR 引入了导致卡顿的不稳定代码
提及 stabilityCheck, stabilityDump 或 ComposeGuard
大规模应用迁移至强跳过模式
npx skills add skydoves/compose-performance-skills --skill enforcing-stability-in-ci -g -y
修复 Jetpack Compose 中不稳定的类型,遵循三层策略:重构为不可变、使用注解或配置文件。适用于解决编译器报告的参数不稳定问题。
编译器报告显示 unstable 参数
询问如何稳定 User 类、List 参数或第三方类型
npx skills add skydoves/compose-performance-skills --skill stabilizing-compose-types -g -y
解释 Compose 编译器稳定性推断逻辑,涵盖12阶段算法、5种类型及位编码。用于分析为何特定类或参数被判定为稳定/不稳定,辅助排查泛型、跨模块等复杂场景的编译报告异常。
询问类型稳定性分类原因
分析运行时或未知稳定性报告
涉及泛型、继承或跨模块类的不稳定问题
npx skills add skydoves/compose-performance-skills --skill understanding-stability-inference -g -y
指导安装和使用 IntelliJ/Android Studio 的 Compose 稳定性分析插件,提供实时编辑器内稳定性反馈、颜色标记及快速修复,缩短开发调试循环。
用户询问编辑器中的稳定性图标或行内提示
需要实时查看 Composable 稳定性状态
处理 UnstableComposable 警告
IDE 插件配置与安装
npx skills add skydoves/compose-performance-skills --skill using-stability-analyzer-ide-plugin -g -y
用于Android Compose静态重组级联可视化与实时热图分析,辅助排查性能瓶颈及评估状态变更影响范围。
询问组件变更的重组影响范围
查询滚动或动画期间的重组频率
提及Cascade或Heatmap标签页
执行Analyze Recomposition Cascade操作
npx skills add skydoves/compose-performance-skills --skill visualizing-recomposition-cascades -g -y


