Skip to content
Development
Skill

/compose-expert

Compose and Compose Multiplatform expert for UI development across Android, Desktop, iOS, and Web. Use whenever the user mentions Compose APIs (@Composable, remember, LaunchedEffect, NavHost, MaterialTheme, LazyColumn, Modifier, recomposition), Compose Multiplatform (commonMain,

From plugin
compose-expert
5601 skill
Install
$ npx -y skills add aldefy/compose-skill --skill compose-expert --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/compose-expert

Context preview

The summary Claude sees to decide when to auto-load this skill.

Compose and Compose Multiplatform expert for UI development across Android, Desktop, iOS, and Web. Use whenever the user mentions Compose APIs (@Composable, remember, LaunchedEffect, NavHost, MaterialTheme, LazyColumn, Modifier, recomposition), Compose Multiplatform (commonMain,

SKILL.md

compose-expert.SKILL.md
name: compose-expert
description: >
  Compose and Compose Multiplatform expert for UI development across Android, Desktop,
  iOS, and Web. Use whenever the user mentions Compose APIs (@Composable, remember,
  LaunchedEffect, NavHost, MaterialTheme, LazyColumn, Modifier, recomposition),
  Compose Multiplatform (commonMain, expect/actual, Res.*, ComposeUIViewController,
  UIKitView, ComposeViewport), Android TV (tv-material, D-pad, focus, Carousel),
  Material 3 motion, atomic design systems, design-to-code workflows, Paging 3, or
  navigation. Activates Review Mode on GitHub PR URLs and review phrases ("review
  this PR", "what's wrong with this"). Auto-detects Compose projects on
  session_start. Backed by actual androidx/androidx and JetBrains/compose-multiplatform-core
  source receipts. See "## When this skill applies" in SKILL.md for the full trigger
  surface.
version: 2.4.0

> **Installation notice:** This skill is now distributed as a plugin. > If you copied files into `~/.claude/skills/` manually, you are on an > unmaintained install path and will not receive updates. Migrate via: > > /plugin marketplace add aldefy/compose-skill > /plugin install compose-expert > > See [MIGRATION.md](../docs/MIGRATION.md) for Codex and Copilot CLI instructions. > This banner will remain through v2.x and escalate in v3.0.

When this skill applies

The frontmatter `description:` is intentionally short to satisfy Codex / Copilot CLI's 1024-character cap on that field (see issue #12). The full trigger surface lives here so it stays available to Claude after the skill loads.

Compose API mentions

`@Composable`, `remember`, `mutableStateOf`, `derivedStateOf`, `rememberSaveable`, `LaunchedEffect`, `DisposableEffect`, `SideEffect`, `rememberCoroutineScope`, `Scaffold`, `NavHost`, `NavController`, `MaterialTheme`, `ColorScheme`, `Typography`, `LazyColumn`, `LazyRow`, `LazyVerticalGrid`, `HorizontalPager`, `Modifier`, `Modifier.Node`, `recomposition`, `CompositionLocal`, `Style`, `styleable`, `MutableStyleState`, `Material 3 Expressive`, `M3 Expressive`, `MaterialExpressiveTheme`, `ButtonGroup`, `SplitButton`, `FloatingActionButtonMenu`, `LoadingIndicator`, `HorizontalFloatingToolbar`, `NavDisplay`, `NavKey`, `rememberNavBackStack`, `NavigableListDetailPaneScaffold`.

Compose Multiplatform / KMP

`Compose Multiplatform`, `CMP`, `KMP`, `commonMain`, `expect`, `actual`, `ComposeUIViewController`, `Window` composable, `UIKitView`, `ComposeViewport`, `Res.drawable`, `Res.string`, `SkikoMain`.

Android TV

`tv-material`, `tv-foundation`, `Carousel`, `NavigationDrawer` (TV), `D-pad`, `focus indication`, `FocusRequester` on TV, `10-foot UI`, `living room`, `tv compose`, `Android TV`, `Google TV`, `leanback migration`.

Paging 3

`PagingSource`, `Pager`, `PagingConfig`, `PagingData`, `LazyPagingItems`, `collectAsLazyPagingItems`, `RemoteMediator`, `LoadState`, `asSnapshot`, `TestPager`, `cachedIn`.

Design system / design-to-code

`atomic design`, `atoms`, `molecules`, `organisms`, `templates`, `design tokens`, `design system`, `component library`, `reusable component`, `Figma to Compose`, `design to compose`, `build this UI`, `implement this design`, `spec to code`, `redline`.

Casual phrasing

"my compose screen is slow", "my recomposition is broken", "how do I pass data between screens", "how do I build a TV app", "Android UI", "Kotlin UI", "compose layout", "compose navigation", "compose animation", "compose styles", "desktop compose", "iOS compose", "compose web".

Review Mode triggers

Any GitHub PR URL matching `github.com/.*/pull/\d+`, or phrases: "review this PR", "review this diff", "review this code", "check this code", "check this diff", "what's wrong with this". On match, follow `references/pr-review.md` exclusively.

Session start

Auto-detect Compose projects on `session_start` — see `references/auto-init.md`.

Quick Routing

Use this table first. Match the user's signal to one reference file and read it before answering. `source-code/` files are supporting evidence — load a `references/*.md` file first, then cite `source-code/` for implementation proof when receipts matter.

State, recomposition, side effects

  • **`remember`, `rememberSaveable`, `mutableStateOf` vs `mutableIntStateOf`, state hoisting** → `references/state-management.md`
  • **`derivedStateOf`, `snapshotFlow`, StateFlow in UI, recomposition scope boundaries** → `references/state-management.md` (secondary: `references/performance.md`)
  • **`LaunchedEffect`, `SideEffect`, `DisposableEffect`, `rememberUpdatedState`, `rememberCoroutineScope`** → `references/side-effects.md`
  • **Recomposition frequency, "my screen recomposes too often", stability, `@Stable`/`@Immutable`, Compose compiler metrics, baseline profiles, strong skipping** → `references/performance.md`
  • **`CompositionLocal`, ambient values, theming propagation, `LocalContext` misuse, custom locals** → `references/composition-locals.md`

Animation and motion

  • **`animate*AsState`, `AnimatedVisibility`, `Crossfade`, `updateTransition`, `Animatable`, `rememberInfiniteTransition`** → `references/animation.md`
  • **Shared element transitions, gesture-driven animation, `Modifier.graphicsLayer`, Canvas drawing, custom motion spec** → `references/animation.md` (secondary: `references/modifiers.md` for `graphicsLayer`)
  • **M3 motion tokens, `MotionTokens`, `MotionScheme`, animation duration tokens, M3 easing curves** → `references/material3-motion.md`

Layout, lists, modifiers

  • **`LazyColumn`, `LazyRow`, `LazyVerticalGrid`, `LazyHorizontalGrid`, `key`/`itemKey`, `contentType`, `LazyListState`, scroll state, sticky headers** → `references/lists-scrolling.md`
  • **`HorizontalPager`, `VerticalPager`, `PagerState`** → `references/lists-scrolling.md`
  • **Modifier chain ordering, custom layout, `Layout`, `SubcomposeLayout`, layout modifier, draw modifier, `Painter`, `Modifier.Node`** → `references/modifiers.md`

Navigation

  • **`Na
Read more
Ships withcompose-expert

Jetpack Compose Agent Skill — AI-powered coding guidance with actual androidx/androidx source code receipts. Works with Claude Code, Codex CLI, Gemini CLI, Cursor, Copilot, Windsurf, and more.

Get the whole plugin
Stats
560
Stars
34
Forks
Active
Maintenance
Kotlin
Language
18d ago
Last commit
5mo ago
Created

Repo: aldefy/compose-skill