CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

android-concurrency

Write correct coroutine scopes, lifecycle collection, and dispatcher injection in Android production code. Use for suspend functions, coroutine scopes, and dispatcher mechanics; defer ViewModel StateFlow/LiveData architecture, Fragment lifecycle recipes, persistence/notifications, and unit-test recipes to their specific skills.

64

Quality

81%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

68%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers compact, concrete Android coroutine standards with a real one-level-deep reference file, but it is marred by structural noise: an empty priority heading, an incoherent trailing 'Canonical response anchors' stub, and a reference link that undersells its own content. Fixing those would lift an otherwise efficient, actionable skill.

Suggestions

Delete or complete the incoherent 'Canonical response anchors' section and give '## Priority: P0 (CRITICAL)' actual content or remove the empty heading.

Describe what references/implementation.md contains (dispatcher injection and exception-handling code), or split exception handling into its own clearly labeled reference, so the overview signals all bundle content.

Add one short copy-paste Kotlin snippet (e.g., viewModelScope.launch(dispatchers.io) with a DispatcherProvider) to make the primary rule immediately executable from the body.

DimensionReasoningScore

Conciseness

The body is lean bullet-point rules with no padding or explanation of concepts Claude already knows, so mostly anchor-5 material. It drops to 4 because of wasted tokens: the empty '## Priority: P0 (CRITICAL)' heading (a heading with no content beneath it) and the incoherent trailing 'Canonical response anchors ... hardcode' stub earn no value.

4 / 5

Actionability

The rules are concrete and executable at the API level — 'Always use viewModelScope (VM) or lifecycleScope', 'INJECT Dispatchers (DispatcherProvider)', 'Use collectAsStateWithLifecycle() (Compose) or repeatOnLifecycle (Views)' — matching 'mostly executable guidance with minor gaps'. Not 5 because there is no inline code example and key mechanics like exception handling only exist in the referenced file, which the body never mentions.

4 / 5

Workflow Clarity

This is a standards skill rather than a multi-step procedure, and the single action (apply these rules when writing coroutine code) is reasonably clear, but the structure is fragmented: a '## Priority: P0 (CRITICAL)' heading with no content, and a trailing 'Canonical response anchors' section that is incoherent ('Additional task-grounded exact anchors: hardcode'). This matches 'sequence/structure present but with gaps or incoherent elements' rather than a cleanly organized body.

3 / 5

Progressive Disclosure

The bundle structure is sound: the body is short and points one level deep to references/implementation.md, which exists and contains the dispatcher-injection code. It is not 5 because the link label 'Dispatcher Pattern' does not signal that the file also contains an Exception Handling section, so content in the bundle is undiscoverable from the overview.

4 / 5

Total

15

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it states concrete capabilities in third person, gives an explicit 'Use for...' trigger clause with natural keywords, and explicitly defers neighboring domains to reduce skill-conflict risk. The only gaps are a few missing trigger synonyms (Flow, StateFlow) and slightly incomplete coverage of the topic's action space.

Suggestions

Add one or two natural trigger terms users actually say, such as 'Flow' or 'viewModelScope', to the 'Use for...' clause.

Optionally mention exception/supervisor handling in the capability list to round out coverage of coroutine mechanics.

DimensionReasoningScore

Specificity

The description names the domain and three concrete actions — 'Write correct coroutine scopes, lifecycle collection, and dispatcher injection in Android production code' — which matches the 'several specific actions; minor gaps in coverage' anchor. It falls short of 5 because it does not cover related concrete capabilities like exception handling or parallel decomposition; it is well above 3's '1-2 concrete actions' level.

4 / 5

Completeness

It explicitly answers both questions with concrete trigger phrases: what — 'Write correct coroutine scopes, lifecycle collection, and dispatcher injection'; when — 'Use for suspend functions, coroutine scopes, and dispatcher mechanics', matching the anchor-5 example pattern exactly. Not 4, because the 'when' clause is explicit and specific rather than generic.

5 / 5

Trigger Term Quality

'Use for suspend functions, coroutine scopes, and dispatcher mechanics' includes the natural phrases users would say when needing this skill, matching 'good keyword coverage; a few natural terms missing'. Not 5 because common variations like Flow, StateFlow, viewModelScope, or launch are absent from the description itself (they only appear in the metadata triggers block).

4 / 5

Distinctiveness Conflict Risk

It has a clear niche (Android coroutine mechanics) and actively reduces overlap by deferring adjacent topics: 'defer ViewModel StateFlow/LiveData architecture, Fragment lifecycle recipes, persistence/notifications, and unit-test recipes to their specific skills'. This explicit boundary carving goes beyond anchor 4's 'minor overlap risk' to a distinct trigger profile.

5 / 5

Total

18

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

HoangNguyen0403/agent-skills-standard

Path

skills/android/android-concurrency/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.