Make your AI coding tool understand Compose recomposition performance.
AI tools don't understand recomposition budgets. They'll tell you "use remember" or "add @Stable" without knowing whether the problem is a forced recomposition from a parent, an unstable lambda, or a screen-level state read. This skill gives them the domain knowledge to diagnose and fix correctly.
| Without Skill | With Skill |
|---|---|
"Use remember to fix recomposition" |
"Your HomeScreen recomposes 8/s (budget: 3/s SCREEN). The $changed mask shows scrollOffset is DIFFERENT every frame. Hoist it to ContentSection." |
"Add @Stable to your data class" |
"Skip rate is 12% with paramTypes: unstable,lambda. The UserCard data class needs @Immutable (all vals), and the onClick lambda should be remember-wrapped." |
| "That looks fine" | "Forced count is 45 vs param-driven 3 — the parent ChatList is the real violator. Fix the parent first, children will stop cascading." |
rebound-expert-skill/ # Copy this folder into your project or tool config
├── SKILL.md # Main skill — workflow, key concepts, quick fixes
└── references/
├── budget-classes.md # 7 budget classes, thresholds, dynamic scaling
├── diagnosing-violations.md # Violation patterns + diagnostic workflow + code fixes
├── cli-usage.md # CLI commands, JSON snapshot, connection modes
├── ide-plugin.md # 5-tab IDE cockpit, editor integration
├── setup-guide.md # Gradle plugin, KMP, iOS relay, Kotlin versions
└── skip-rate-stability.md # Skip rate, $changed mask, param states, fix strategies
# Personal skill (all projects)
mkdir -p ~/.claude/skills
cp -r rebound-expert-skill ~/.claude/skills/
# Project-specific
mkdir -p .claude/skills
cp -r rebound-expert-skill .claude/skills/Claude Code discovers SKILL.md automatically and triggers on keywords like recomposition, budget, violation, skip rate, jank.
Add to GEMINI.md in your project root:
## Rebound Recomposition Monitor
For all Compose recomposition performance tasks, follow the workflow in
`rebound-expert-skill/SKILL.md` and consult reference files in `rebound-expert-skill/references/`.Add to your project's GEMINI.md or system instructions:
## Rebound Recomposition Monitor
For Compose performance analysis, follow `rebound-expert-skill/SKILL.md`.
Consult references in `rebound-expert-skill/references/` for:
- Budget classes → `references/budget-classes.md`
- Violation diagnosis → `references/diagnosing-violations.md`
- Skip rate & stability → `references/skip-rate-stability.md`
- CLI usage → `references/cli-usage.md`
- IDE plugin → `references/ide-plugin.md`
- Setup → `references/setup-guide.md`Create .cursor/rules/rebound-skill.mdc:
---
description: Rebound recomposition budget monitor guidance
globs: **/*.kt
---
Follow the instructions in `rebound-expert-skill/SKILL.md` for all Compose recomposition
performance work. Consult `rebound-expert-skill/references/` before suggesting fixes.Add to .github/copilot-instructions.md:
## Rebound
For Compose recomposition performance work, follow `rebound-expert-skill/SKILL.md`
and consult `rebound-expert-skill/references/` for budget classes, violation patterns,
skip rate analysis, and fix strategies.Add to AGENTS.md in your project root:
## Rebound
For all Compose recomposition performance tasks, follow the instructions in
`rebound-expert-skill/SKILL.md` and consult `rebound-expert-skill/references/` before answering.Create .windsurf/rules/rebound-skill.md:
For all Compose recomposition performance tasks, follow the workflow in
`rebound-expert-skill/SKILL.md` and consult `rebound-expert-skill/references/` before answering.Add to .amazonq/rules/rebound.md:
For all Compose recomposition performance tasks, follow the workflow in
`rebound-expert-skill/SKILL.md` and consult `rebound-expert-skill/references/` before answering.It's just markdown. Clone or copy rebound-expert-skill/ into your project, then point your tool's instruction file at rebound-expert-skill/SKILL.md.
This skill works with Rebound — a Compose recomposition budget monitor. Compiler plugin + runtime + IDE plugin + CLI.
Apply the Gradle plugin to any Compose project:
plugins {
id("io.github.aldefy.rebound") version "0.2.1"
}Copyright 2025 Adit Lal
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0