Agent skill · Audited from source
compose-ui
skill · new-silvermoon/awesome-android-agent-skillsApache-2.0 licenceAudited 29 Oct 2026 · source 4bc96bf96aac
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 4bc96bf96aac and found no filesystem, network or shell access and no hard-coded secrets. What it does: Best practices for building UI with Jetpack Compose, focusing on state hoisting, detailed performance optimizations, and theming. Use this when writing or refactoring Composable functions.
Cite
Cite this page
ModelsAtlas. “compose-ui (new-silvermoon/awesome-android-agent-skills)”. Retrieved 29 Oct 2026. https://modelsatlas.com/skills/new-silvermoon/compose-ui
Trust audit
Audit 0.4.1 · source read 29 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 0 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (0)
No findings at any severity. We re-audit when the source changes.
Audit 0.4.1 · source sha 4bc96bf96aac · 29 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publishernew-silvermoon GitHub userOwner of the repository this skill is read from
- Source foldernew-silvermoon/awesome-android-agent-skills/.github/skills/ui/compose-uiThe exact folder we audited
- LicenceApache-2.0As the repository states it
- Commit pinned for this verdict4bc96bf96aacA new audit runs when the source changes
- Repository statusNot archivedLast push 93 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: Best practices for building UI with Jetpack Compose, focusing on state hoisting, detailed performance optimizations, and theming. Use this when writing or refactoring Composable functions.
---
name: compose-ui
description: Best practices for building UI with Jetpack Compose, focusing on state hoisting, detailed performance optimizations, and theming. Use this when writing or refactoring Composable functions.
---
# Jetpack Compose Best Practices
## Instructions
Follow these guidelines to create performant, reusable, and testable Composables.
### 1. State Hoisting (Unidirectional Data Flow)
Make Composables **stateless** whenever possible by moving state to the caller.
* **Pattern**: Function signature should usually look like:
```kotlin
@Composable
fun MyComponent(
value: String, // State flows down
onValueChange: (String) -> Unit, // Events flow up
modifier: Modifier = Modifier // Standard modifier parameter
)
```
* **Benefit**: Decouples the UI from simple state storage, making it easier to preview and test.
* **ViewModel Integration**: The screen-level Composable retrieves state from the ViewModel (`viewModel.uiState.collectAsStateWithLifecycle()`) and passes it down.
### 2. Modifiers
* **Default Parameter**: Always provide a `modifier: Modifier = Modifier` as the first optional parameter.
* **Application**: Apply this `modifier` to the *root* layout element of your Composable.
* **Ordering matters**: `padding().clickable()` is different from `clickable().padding()`. Generally apply layout-affecting modifiers (like padding) *after* click listeners if you want the padding to be clickable.
### 3. Performance Optimization
* **`remember`**: Use `remember { ... }` to cache expensive calculations across recompositions.
* **`derivedStateOf`**: Use `derivedStateOf { ... }` when a state changes frequently (like scroll position) but the UI only needs to react to a threshold or summary (e.g., show "Jump to Top" button). This prevents unnecessary recompositions.
```kotlin
val showButton by remember {
derivedStateOf { listState.firstVisibleItemIndex > 0 }
}
```
* **Lambda Stability**: Prefer method references (e.g., `viewModel::onEvent`) or remembered lambdas to prevent unstable types from triggering recomposition of children.
### 4. Theming and Resources
* Use `MaterialTheme.colorScheme` and `MaterialTheme.typography` instead of hardcoded colors or text styles.
* Organize simple UI components into specific files (e.g., `DesignSystem.kt` or `Components.kt`) if they are shared across features.
### 5. Previews
* Create a private preview function for every public Composable.
* Use `@Preview(showBackground = true)` and include Light/Dark mode previews if applicable.
* Pass dummy data (static) to the stateless Composable for the preview.Excerpt, first 2,700 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 4bc96bf
git clone https://github.com/new-silvermoon/awesome-android-agent-skills git -C awesome-android-agent-skills checkout 4bc96bf96aac
The author documents no install command, so this uses the repository directly. Our verdict covers commit 4bc96bf96aac only.
Works in
The author has not said which agents this skill supports, and we have not tested it in any.
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
4bc96bf96aac
Similar skills
All design & front-end skills →obra/superpowers
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions…
obra/superpowers
Use when you have a spec or requirements for a multi-step task, before touching code
obra/superpowers
Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions
Questions about compose-ui
What does the compose-ui skill do?
Is compose-ui safe to install?
What can compose-ui access on my machine?
How current is this page?
Sources
- github.com/new-silvermoon/awesome-android-agent-skills/tree/main — the audited source at commit 4bc96bf96aac and every finding aboveObserved · 29 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the compose-ui skill do?
- Is compose-ui safe to install?
- What can compose-ui access on my machine?