Individual skill
wear-compose-m3
Guidance for Wear OS Compose Material3 (Wear Compose Material 3 / Wear Compose Material3) watch and wearable apps. Covers creating, updating, and migrating projects (Material 2.5 and Horologist migration) using androidx.wear.compose.material3, androidx.wear.compose.foundation, and androidx.wear.compose.navigation3, including AppScaffold, ScreenScaffold, TransformingLazyColumn, ambient mode, and previews.
wear/wear-compose-m3/SKILL.md
Source commit 6daa53ef27fa2aa87827d183a85c06cedceca833
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 3, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 10,398
- Repository last updated
- Nov 5, 2026
- License
- Apache-2.0
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- skills Repository topic
- engineering Derived category
Declared tags are partial or unavailable.
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 39,165 bytesreferences/android/training/wearables/compose/migrate-to-material3.mddoc · 91,192 bytesreferences/foundation/AmbientModeSample.kt.mddoc · 5,141 bytesreferences/foundation/CurvedWorldSample.kt.mddoc · 14,684 bytesreferences/foundation/ExpandableSample.kt.mddoc · 3,708 bytesreferences/foundation/HierarchicalFocusSample.kt.mddoc · 5,503 bytesreferences/foundation/PagerSamples.kt.mddoc · 2,076 bytesreferences/foundation/RotarySamples.kt.mddoc · 6,161 bytesreferences/foundation/SwipeToDismissBoxSample.kt.mddoc · 7,493 bytesreferences/foundation/TransformingLazyColumnSample.kt.mddoc · 13,194 bytesreferences/material3/AlertDialogSample.kt.mddoc · 12,815 bytesreferences/material3/AnimatedTextSample.kt.mddoc · 6,347 bytesreferences/material3/ButtonGroupSample.kt.mddoc · 3,381 bytesreferences/material3/ButtonSample.kt.mddoc · 17,413 bytesreferences/material3/CardSample.kt.mddoc · 15,525 bytesreferences/material3/CheckboxButtonSample.kt.mddoc · 2,368 bytesreferences/material3/ConfirmationDialogSample.kt.mddoc · 5,511 bytesreferences/material3/CurvedTextSamples.kt.mddoc · 2,930 bytesreferences/material3/DatePickerSample.kt.mddoc · 4,845 bytesreferences/material3/DynamicColorSchemeSample.kt.mddoc · 3,103 bytesreferences/material3/EdgeButtonSample.kt.mddoc · 2,360 bytesreferences/material3/FadingExpandingLabelSample.kt.mddoc · 2,185 bytesreferences/material3/IconButtonSample.kt.mddoc · 3,973 bytesreferences/material3/IconToggleButtonSample.kt.mddoc · 3,706 bytesreferences/material3/LevelIndicatorSample.kt.mddoc · 2,556 bytesreferences/material3/LinearProgressIndicatorSample.kt.mddoc · 1,812 bytesreferences/material3/ListHeaderSample.kt.mddoc · 7,816 bytesreferences/material3/OneHandedGestureSamples.kt.mddoc · 32,291 bytesreferences/material3/OpenOnPhoneDialogSample.kt.mddoc · 2,045 bytesreferences/material3/PageIndicatorSample.kt.mddoc · 4,237 bytesreferences/material3/PagerScaffoldSample.kt.mddoc · 8,689 bytesreferences/material3/PickerGroupSample.kt.mddoc · 5,980 bytesreferences/material3/PickerSample.kt.mddoc · 3,734 bytesreferences/material3/PlaceholderSample.kt.mddoc · 6,658 bytesreferences/material3/ProgressIndicatorSample.kt.mddoc · 9,060 bytesreferences/material3/RadioButtonSample.kt.mddoc · 4,254 bytesreferences/material3/ScaffoldSample.kt.mddoc · 6,311 bytesreferences/material3/ScrollAwaySample.kt.mddoc · 3,839 bytesreferences/material3/ScrollIndicatorSample.kt.mddoc · 2,498 bytesreferences/material3/SliderSample.kt.mddoc · 2,468 bytesreferences/material3/StepperSample.kt.mddoc · 5,281 bytesreferences/material3/SurfaceTransformationSample.kt.mddoc · 6,184 bytesreferences/material3/SwipeToDismissBoxSample.kt.mddoc · 7,443 bytesreferences/material3/SwipeToRevealSample.kt.mddoc · 14,017 bytesreferences/material3/SwitchButtonSample.kt.mddoc · 2,311 bytesreferences/material3/TextButtonSample.kt.mddoc · 3,029 bytesreferences/material3/TextToggleButtonSample.kt.mddoc · 2,326 bytesreferences/material3/TimePickerSample.kt.mddoc · 5,669 bytesreferences/material3/TimeTextSample.kt.mddoc · 2,584 bytesreferences/material3/TransformationSpecSample.kt.mddoc · 10,178 bytesreferences/material3/TransformingLazyColumnNotificationsSample.kt.mddoc · 3,769 bytesreferences/material3/TransformingLazyColumnSample.kt.mddoc · 13,321 bytesreferences/navigation3/SwipeDismissableSceneStrategySample.kt.mddoc · 8,513 bytes
Read excerpt
## Prerequisites and compatibility
1. **Current Wear OS Compose version in-use:** To find the installed library version, read `gradle/libs.versions.toml` or `build.gradle.kts` directly. Don't run `./gradlew dependencies` or other shell commands to resolve versions.
2. **Wear OS Compose Material3 version:** If an internal tool is available to establish the **latest stable version** `{VERSION}` of `androidx.wear.compose:compose-material3`, use that tool.
- Otherwise, fetch the [official Maven metadata XML](https://dl.google.com/dl/android/maven2/androidx/wear/compose/compose-material3/maven-metadata.xml) to identify `{VERSION}` (highest number, ignoring `-alpha`, `-beta`, or `-rc`).
3. **Strict compliance:** If a version is listed as stable, you MUST use it, unless overridden by the user. Do not downgrade based on initial "Unresolved reference" errors in the editor or outdated web search results.
4. **Kotlin \& Compose compiler:** Use Kotlin **2.0.0+** with the `org.jetbrains.kotlin.plugin.compose` Gradle plugin.
5. **Min SDK:** Ensure `minSdk` is at least **25**.
6. **Compile SDK \& AGP:** Ensure `compileSdk` and AGP meet the library's AAR metadata floors (`compileSdk >= 35` and `AGP >= 8.6.0` for `1.6.x`; `compileSdk >= 37` and `AGP >= 9.1.0` for `1.7.x`).
## Gotchas
1. **Mandatory sync and validation:** After updating versions in `libs.versions.toml` or `build.gradle.kts`, perform a Gradle sync (or `./gradlew assembleDebug`) before refactoring, and run `./gradlew assembleDebug` after refactoring to verify the build.
2. **Prohibition of guessing (error protocol):** If you encounter an 'Unresolved Reference' or API mismatch after a successful sync, do not attempt to 'fix' it by downgrading the library version.