Compose
CommunityMeet-Miyani
Use this skill first for any Jetpack Compose or Compose Multiplatform task: a new feature or screen, a change to existing code, a bug fix, a review, making code follow the kit, project or build setup, or a question. It picks the task path and the exact kit files to read. Not for Kotlin work outside a Compose or CMP app.
Overview
- Repository
- Meet-Miyani/compose-skill
- Publisher
- Meet-Miyani
- Stars
- 306
- Forks
- 25
- Bundled files
- 0
- License
- MIT
- Updated
- Nov 8, 2026
Installation
tmp=$(mktemp -d)
git clone --depth 1 https://github.com/Meet-Miyani/compose-skill.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/compose" ~/.claude/skills/compose
rm -rf "$tmp"tmp=$(mktemp -d)
git clone --depth 1 https://github.com/Meet-Miyani/compose-skill.git "$tmp"
mkdir -p ~/.codex/skills
cp -R "$tmp/skills/compose" ~/.codex/skills/compose
rm -rf "$tmp"Install the Compose agent skill from https://github.com/Meet-Miyani/compose-skill/tree/main/skills/compose into this project's skills folder.Instructions
Compose
Every task
- Verify before claiming done: run the checks named by the task path and report their result.
- Changed what a user sees: run it and look, per
../compose-feature/references/run-and-see.md, or say it was not run. - Make the smallest correct change; keep what works.
- Explain the result in plain engineering reasons.
- Build from the context you have; state assumptions.
- Open only the files the tree names for your task kind and areas; open another reference only when a check fails or a named file sends you there.
Question 0: Is the task clear enough to act?
- Look in the prompt, then the code.
- Clear enough: continue to Question 1.
- A missing answer changes what gets built: ask at most 3 questions, each with a stated default.
- No human can answer (CI or headless): proceed and list the assumptions.
- In a kit project, never ask how the architecture should look.
Question 1: What kind of task is it?
- New feature or screen → 1. If adding to an existing project, use the
../compose-architecture/references/existing-projects.mdChoose tree; 2. read../compose-feature/SKILL.mdas the main area; 3. scaffold with its new-feature script when applicable; 4. choose each area in Question 2; 5. run the feature checks and tests. - Change to existing code → 1. Find the affected code; 2. use the
../compose-architecture/references/existing-projects.mdChoose tree and keep its coherent pattern; 3. read the owning topic skill from Question 2; 4. make the smallest change; 5. run its checks and affected tests. Change only what the request names; list related gaps as follow-ups. - Bug fix → 1. Use the
../compose-architecture/references/existing-projects.mdChoose tree; 2. write a failing test that reproduces the bug using../compose-feature/references/testing.md; 3. read only the affected area in Question 2; 4. make the smallest fix; 5. show the test passing and run affected checks. - Review only → 1. Use the
../compose-architecture/references/existing-projects.mdChoose tree; 2. read../compose-feature/references/review-mode.mdfor severity; 3. inspect only the relevant area in Question 2; 4. report findings and what is sound; 5. make no edits. - Conform or fix after review → 1. Restructure only: keep behaviour, visible UI, navigation, persistence and public APIs exactly as they are; 2. do not add screens, controls, wiring, saved state or features the existing code lacks; list them as follow-ups in the answer; 3. when changing a constructor or signature, update every caller and test in the same change; 4. run the existing tests before and after; both runs must pass; 5. run the guards. Use the
../compose-architecture/references/existing-projects.mdChoose tree and../compose-feature/references/review-mode.mdfor severity. - Project, module or build setup → 1. For existing code, use the
../compose-architecture/references/existing-projects.mdChoose tree; 2. read../compose-project/SKILL.md; 3. choose the build area in Question 2; 4. make the change; 5. run project checks and affected build/tests. - Question or explanation → 1. For existing code, use the
../compose-architecture/references/existing-projects.mdChoose tree; 2. identify the area in Question 2; 3. read only the file holding the fact; 4. answer with evidence and state any uncertainty.
Question 2: Which area does it touch?
Read the area's SKILL.md only for the task's main area; for every other area, read only its one reference.
- UI →
../compose-ui/references/ux-states.md; if this is the task's main area, also../compose-ui/SKILL.md. - Adaptive layout (tablet, foldable, desktop or browser window, window size) →
../compose-ui/references/adaptive-layouts.md; if this is the task's main area, also../compose-ui/SKILL.md. - State and lifetime →
../compose-architecture/references/state-ownership.md; if this is the task's main area, also../compose-architecture/SKILL.md. - Errors →
../compose-architecture/references/error-handling.md; if this is the task's main area, also../compose-architecture/SKILL.md. - Navigation →
../compose-architecture/references/navigation.md; if this is the task's main area, also../compose-architecture/SKILL.md. - Data storage →
../compose-data/references/datastore.md; if this is the task's main area, also../compose-data/SKILL.md. - Network →
../compose-data/references/networking-ktor.md; if this is the task's main area, also../compose-data/SKILL.md. - Paging →
../compose-data/references/paging.md; if this is the task's main area, also../compose-data/SKILL.md. - DI and modules →
../compose-architecture/references/dependency-injection.md; if this is the task's main area, also../compose-architecture/SKILL.md. - Platform / iOS / desktop →
../compose-platform/references/sharing-and-bridges.md; if this is the task's main area, also../compose-platform/SKILL.md. - Notifications and background work →
../compose-platform/references/notifications-and-background-work.md; if this is the task's main area, also../compose-platform/SKILL.md. - Build and Gradle →
../compose-project/references/convention-plugins.md; if this is the task's main area, also../compose-project/SKILL.md. - Testing →
../compose-feature/references/testing.md; if this is the task's main area, also../compose-feature/SKILL.md.
Not covered here → use judgement and state the assumption.
FAQ
What does Compose do?
Use this skill first for any Jetpack Compose or Compose Multiplatform task: a new feature or screen, a change to existing code, a bug fix, a review, making code follow the kit, project or build setup, or a question. It picks the task path and the exact kit files to read. Not for Kotlin work outside a Compose or CMP app.
Who made Compose?
Meet-Miyani (a community member) publishes it in the Meet-Miyani/compose-skill repository on GitHub.
Is Compose free?
Yes. Compose is open source, published by Meet-Miyani under the MIT license.
What comes with Compose?
Just its instructions. Everything the agent needs is in one SKILL.md file.
Which agents can use Compose?
Any coding agent that reads SKILL.md files, including Claude Code, Codex, Cursor, GitHub Copilot and Gemini CLI. The agent loads the skill when a task matches its description.
What are agent skills?
An agent skill is a folder with a SKILL.md file: instructions that teach a coding agent how to do one kind of task, and optionally files it can read while it works. The agent keeps only the skill's name and description in mind and reads the rest when a task calls for it.
How are agent skills different from MCP servers?
An MCP server gives an agent new tools to call, code that runs somewhere and returns results. A skill gives it knowledge: how to approach a task with the tools it already has. Many agents use both.
How can my agent test my Android app?
Robomori lets coding agents create, start and control Android emulators and devices from one command, so they can install your app, take screenshots and check dark mode, font sizes and languages.