Configure ViewModel state emission with StateFlow, sealed UiState classes, and lifecycle-safe collection in Android. Use when working with ViewModel files, UiState sealed classes, MutableStateFlow, collectAsStateWithLifecycle, or exposing state from ViewModels. (triggers: **/*ViewModel.kt, **/*UiState.kt, viewmodel, stateflow, livedata, uistate, MutableStateFlow, collectAsState, viewModelScope, UiState)
89
86%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Quality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is an excellent skill description that clearly defines its scope within Android ViewModel state management. It provides specific capabilities, comprehensive trigger terms covering both file patterns and keywords, and an explicit 'Use when' clause. The description is concise, uses third-person voice, and would be easily distinguishable from other skills in a large skill library.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: configuring ViewModel state emission, using StateFlow, sealed UiState classes, and lifecycle-safe collection. These are precise, actionable capabilities in the Android development domain. | 3 / 3 |
Completeness | Clearly answers both 'what' (configure ViewModel state emission with StateFlow, sealed UiState classes, lifecycle-safe collection) and 'when' (explicit 'Use when...' clause with specific file types and trigger terms). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms a developer would use: 'ViewModel', 'StateFlow', 'MutableStateFlow', 'UiState', 'collectAsState', 'livedata', 'viewModelScope', plus file pattern triggers like '**/*ViewModel.kt'. Covers both common and specific variations. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive niche targeting Android ViewModel state management specifically. The combination of ViewModel, StateFlow, UiState, and lifecycle-safe collection creates a clear, narrow domain unlikely to conflict with other skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
72%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-structured, concise skill that efficiently communicates Android state management patterns. Its main weakness is that actionable code examples are entirely deferred to the reference file rather than including at least a minimal inline snippet, which reduces immediate actionability. The anti-patterns section adds good guardrails.
Suggestions
Add a minimal inline code example (e.g., a 5-line ViewModel skeleton with MutableStateFlow and .asStateFlow()) so the skill is partially actionable without opening the reference file.
Consider adding a brief verification step, such as 'Confirm state updates render in @Preview composables' to strengthen workflow clarity.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Every line is purposeful and assumes Claude knows Android/Kotlin fundamentals. No unnecessary explanations of what StateFlow or ViewModels are. Lean bullet points throughout. | 3 / 3 |
Actionability | Provides clear directives (use .asStateFlow(), use collectAsStateWithLifecycle(), use sealed interface with LCE) but lacks inline executable code examples—all concrete templates are deferred to a reference file. The guidance is specific but not copy-paste ready from the skill itself. | 2 / 3 |
Workflow Clarity | Steps are numbered and sequenced (structure ViewModel → define UiState → collect state), but there are no validation checkpoints or feedback loops. For a non-destructive pattern skill this is less critical, but verification steps (e.g., confirming state emission works) would strengthen it. | 2 / 3 |
Progressive Disclosure | Clean overview with well-signaled one-level-deep references to implementation templates. Content is appropriately split between the overview skill and the reference file, with clear navigation links. | 3 / 3 |
Total | 10 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
19a1140
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.