Agent Skillschrisbanes/skills › compose-performance

compose-performance

GitHub

针对 Jetpack Compose 性能问题的分析技能,涵盖重组成本、编译器报告及帧率优化。指导通过复现过渡、分类问题轴并逐步修正来提升性能。

skills/compose-performance/SKILL.md chrisbanes/skills

Trigger Scenarios

调查 Jetpack Compose 重组成本 分析编译器稳定性报告 解决 skippability 问题 优化不稳定参数导致的性能下降 处理 State reads 帧率问题

Install

npx skills add chrisbanes/skills --skill compose-performance -g -y
More Options

Use without installing

npx skills use chrisbanes/skills@compose-performance

指定 Agent (Claude Code)

npx skills add chrisbanes/skills --skill compose-performance -a claude-code -g -y

安装 repo 全部 skill

npx skills add chrisbanes/skills --all -g -y

预览 repo 内 skill

npx skills add chrisbanes/skills --list

SKILL.md

Frontmatter
{
    "name": "compose-performance",
    "description": "Use when investigating Jetpack Compose recomposition cost, compiler stability reports, skippability, unstable parameters, frame-rate State reads, cross-phase snapshot back-writing, or @ReadOnlyComposable contracts."
}

Compose performance

Core principle

Measure one user-visible transition, identify the runtime axis that causes the work, then apply the smallest correction at the phase or boundary where that axis begins.

Procedure

  1. Reproduce one concrete transition and capture the observable evidence: recomposition counts, compiler reports, profiler data, or a clear trace.
  2. Classify the primary axis: parameter stability and skipping, State read phase, or snapshot state written back into an earlier phase.
  3. Check for a false lead: a real data change, a correctness defect, or an unchanged lazy item that is expected to recompose.
  4. Read the corresponding focused reference before proposing a change.
  5. Change one axis at a time and re-measure the same transition.
  6. Finish when the evidence improves at the observed boundary without hiding state changes, caching stale values, or moving work to a less correct owner.

Topic router

Signal Read
Cause is unknown, or several axes may interact Diagnosis
classes.txt, composables.txt, strong skipping, unstable parameters, or collection stability Stability
Scroll, animation, gesture, layout, or draw State read at frame rate; measured state fed back into composition Deferred reads
A composable only reads composition locals or accessor-style values Composition contracts
State ownership or effect lifecycle is the root cause Compose state and effects

RED/GREEN agent scenarios

  1. RED blames unstable parameters for unchanged lazy rows that recompose during a focus transition. GREEN checks composition and layout back-writing first.
  2. Novel case: an animation value controls only drawing. GREEN reads the State in a draw or layout lambda instead of propagating it through composition.
  3. Counterexample: a screen visibly recomposes because its displayed model actually changed. GREEN does not add stability wrappers or caches merely to lower a count.

Version History

  • 2026.8.5 Current 2026-08-16 02:44

Same Skill Collection

skills/compose-animations/SKILL.md
skills/compose-component-design/SKILL.md
skills/compose-focus-navigation/SKILL.md
skills/compose-modifier-and-layout-style/SKILL.md
skills/compose-recomposition-performance/SKILL.md
skills/compose-side-effects/SKILL.md
skills/compose-slot-api-pattern/SKILL.md
skills/compose-stability-diagnostics/SKILL.md
skills/compose-state-and-effects/SKILL.md
skills/compose-state-authoring/SKILL.md
skills/compose-state-deferred-reads/SKILL.md
skills/compose-state-hoisting/SKILL.md
skills/compose-state-holder-ui-split/SKILL.md
skills/compose-ui-testing-patterns/SKILL.md
skills/implement-issue/SKILL.md
skills/kotlin-api-design/SKILL.md
skills/kotlin-concurrency-and-flow/SKILL.md
skills/kotlin-control-flow/SKILL.md
skills/kotlin-coroutines-structured-concurrency/SKILL.md
skills/kotlin-flow-state-event-modeling/SKILL.md
skills/kotlin-functions/SKILL.md
skills/kotlin-multiplatform-expect-actual/SKILL.md
skills/kotlin-types-value-class/SKILL.md
skills/run-github-project/SKILL.md
skills/shepherd/SKILL.md
skills/to-plan/SKILL.md
skills/using-chrisbanes-skills/SKILL.md

Metadata

Files
0
Version
2026.8.5
Hash
52e92a91
Indexed
2026-08-16 02:44

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-16 19:34
浙ICP备14020137号-1 $mapa de visitantes$