Coding & Developmentโœจgemini๐Ÿค–claude๐Ÿ’ฌgptโŒจ๏ธcursor๐ŸŒuniversal

compose_skill

A strict, evidence-based audit skill for Android Jetpack Compose repositories.

Quick Start

Install this Skill

npx skills add hamen/compose_skill
<h1 align="center">Compose Skill Suite</h1>

<p align="center">
  <strong>Jetpack Compose audit + coding-agent skills for Claude Code, Codex, Cursor, and Anthropic-style skill loaders.</strong>
</p>

<p align="center">
  <a href="./bin/ci"><img alt="bin/ci passing" src="https://img.shields.io/badge/bin%2Fci-passing-2ea043"></a>
  <a href="https://github.com/hamen/compose_skill/releases"><img alt="Release" src="https://img.shields.io/github/v/release/hamen/compose_skill?color=2f80ed&label=release"></a>
  <a href="LICENSE"><img alt="License" src="https://img.shields.io/github/license/hamen/compose_skill?color=0a7f60"></a>
  <img alt="Skills" src="https://img.shields.io/badge/skills-2-7c3aed">
  <img alt="Compose animation ready" src="https://img.shields.io/badge/Compose-animation%20ready-f97316">
  <img alt="Claude Code plugin" src="https://img.shields.io/badge/Claude%20Code-plugin-111827">
</p>

**`compose-agent` 4.3.2 ยท 2026-07-07** โ€” Authoring guidance so the coding-agent skill *warns while you write*: **Never Back-Write Across Phases** (layout callbacks / snapshot-collection mutation feeding composition) and **Optimizations That Do Nothing** (the false leads). The 4.3.0 audit catches these after the fact; 4.3.1 stops you writing them.

**`jetpack-compose-audit` 4.3.2 ยท 2026-07-07** โ€” Cross-phase back-write detection (axis 3: layout callbacks writing state read in composition), a related composition-phase self-invalidation check (snapshot collections mutated in a composable body), and a **False Leads** scoring guard so the auditor stops crediting no-op "recomposition fixes." Adapted from [`chrisbanes/skills`](https://github.com/chrisbanes/skills) (Apache-2.0).

**Version 4.2.0 ยท 2026-06-17** โ€” Paging 3 in Compose: new `paging.md` reference (LLM guardrails, not API tour), audit hooks under existing Performance/State categories, planning doc at [`docs/paging-skill-plan.md`](./docs/paging-skill-plan.md). Validated through multi-agent cross-review. Both skills ship as `4.2.0`.

> Find out where your Compose app is burning frames, by how much, and what to change to win them back โ€” measured against real compiler data, not vibes.

A strict, evidence-based audit for Android Jetpack Compose repositories. Point it at a repo, let it run the build once, and get back a 0-100 score, a 0-10 score per category, an actionable top-three fix list, and a full Markdown report with every deduction cited against an official `developer.android.com` page.

Built for Claude Code, Codex, Cursor, and any agent that loads the Anthropic skill format.

Authored and cross-reviewed with every frontier model โ€” Claude Opus 4.8, GPT-5.5, and Gemini 3.5 Flash โ€” each used to pressure-test the rubric, prompts, and references so the audit holds up regardless of which model ends up running it.

---

## What's new

### 4.3.2 โ€” 2026-07-07

**Patch.** Fixed one Strong Skipping caveat in `jetpack-compose-audit/scoring.md` that the 4.3.1 sweep missed (its "opt-out path" wording dodged the string match): `@NonSkippableComposable` opts a composable out of *skipping* but does not disable *lambda memoization* โ€” only `@DontMemoize` / SSM-off does. Both skills โ†’ `4.3.2`.

### 4.3.1 โ€” 2026-07-06

**`compose-agent` โ€” authoring guidance for cross-phase back-writes + false leads.**

- **`performance.md`.** New **Never Back-Write Across Phases** section (layout callbacks writing composition-read state; snapshot-collection mutation in a `@Composable` body, with good/bad Kotlin) and **Optimizations That Do Nothing** (the false leads). Grep triggers extended for `onSizeChanged` / `onGloballyPositioned` / `onPlaced` and snapshot-collection mutation.
- **`SKILL.md`.** New Core Instruction, review-checklist line, and Review Process step 4 names cross-phase back-writes.
- **Suite-wide Strong Skipping fix.** Removed a false-lead carve-out ("...unless the lambda captures an unstable value") that contradicted the [official Strong Skipping docs](https://developer.android.com/develop/ui/compose/performance/stability/strongskipping) โ€” SSM memoizes lambdas even with unstable captures, so the only real exception is SSM-off / `@DontMemoize`.
- **Why.** Closes the drift the 4.3.0 cross-review flagged: the audit caught these after the fact, but the authoring skill stayed silent while writing the code. Now it warns up front.
- **Versions.** `compose-agent` โ†’ `4.3.1`, `jetpack-compose-audit` โ†’ `4.3.1`.

For release detail, see [`docs/release-notes-4.3.1.md`](./docs/release-notes-4.3.1.md).

### 4.3.0 โ€” 2026-07-06

**`jetpack-compose-audit` โ€” cross-phase back-writes + false-lead guard.**

- **Cross-phase back-write detector (axis 3).** Beyond same-body backwards writes, the audit now flags a **layout-phase** write into state an earlier composition read: `onSizeChanged` / `onGloballyPositioned` / `onPlaced` writing state a sibling reads in composition. New heuristic in [`search-playbook.md`](./skills/jetpack-compose-audit/references/search-playbook.md), matching Performance deduction

... (truncated)
Repository
344stars
20forks
View on GitHub
Details
DiscoveredJul 7, 2026
Last UpdatedJul 7, 2026
Author@hamen
Quality Score
58/100