CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

android-persistence

Implement Room schemas and DataStore preferences with proper async patterns in Android. Use when the primary task is storage schema, DAO, migration, or preference isolation; defer auth-token/security storage, any CoroutineWorker/WorkManager task, Hilt graph wiring, and cache-policy design.

68

Quality

85%

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

80%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.

An efficient, well-structured standards skill that keeps the body lean and pushes code to a real, one-level-deep reference file. Its main weakness is workflow clarity: the numbered sections are topic buckets rather than a sequenced process, and there are no validation or feedback-loop steps for database/DataStore migration work.

Suggestions

Add a validation checkpoint for migration work (e.g., 'After migrating SharedPreferences to DataStore, verify the DataStore reads a default value on first launch before deleting the old SharedPreferences file'), since the rubric flags database operations without feedback loops.

Make the workflow an actual sequence: clarify whether sections 1 and 2 are ordered steps or independent decision areas, and add any compile/verify step (e.g., 'Validate schema exports with Room's schema export dir') after schema changes.

Include one short inline code anchor per section (e.g., a minimal @Dao with Flow + suspend pair) so the body is self-sufficient for the most common case without opening the reference, and fix the 'DAO templates' link label to reflect the file's DataStore content.

DimensionReasoningScore

Conciseness

Every line is a terse, non-obvious directive ("Return `Flow<List<T>>` for queries, use `suspend` for Write/Insert"; "Room handles dispatchers, but verify Flow collected off-main") with zero padding or explanation of concepts Claude already knows. Matches anchor 5 — lean, assumes competence, every token earns its place; only the slightly noisy "**Priority: P0 (CRITICAL)**" heading approaches filler but is not enough to drop to 4.

5 / 5

Actionability

Guidance is concrete and executable in intent — exact types (Flow<List<T>>), annotations (@Transaction, @Dao/@Entity), and named APIs (ProtoDataStore vs PreferencesDataStore) — with code templates correctly delegated to references/implementation.md. Falls short of anchor 5 because the body itself has no copy-paste-ready code and includes a softer directive ("Keep `@Entity` data classes simple"); it is clearly above anchor 3 since specifics are given rather than pseudocode.

4 / 5

Workflow Clarity

Sections are numbered ("1. Configure Room Database", "2. Migrate to DataStore") giving a rough sequence, but these are topic areas rather than ordered workflow steps, and there are no validation checkpoints anywhere. Per the rubric's feedback-loop note, database/persistence operations without validation cap workflow_clarity at 3 — matching anchor 3 ('sequence present but checkpoints missing'), not 4 ('most checkpoints present').

3 / 5

Progressive Disclosure

A short, well-organized overview body with clearly signaled one-level-deep references: "See [DAO templates](references/implementation.md)" appears inline in both sections and again in a References section, and the file exists and contains the Room/DataStore templates. Matches anchor 5 (clear overview, well-signaled single-level references, easy navigation); the slightly misleading 'DAO templates' label for a file that also holds DataStore migration code is too minor to warrant 4.

5 / 5

Total

17

/

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 that clearly states what the skill does, when to use it with concrete trigger terms, and — unusually well — what to defer to other skills. The only gap is a couple of missing natural synonyms (e.g., SharedPreferences, database) that users might say.

DimensionReasoningScore

Specificity

Concrete named actions: "Implement Room schemas and DataStore preferences with proper async patterns in Android" — names specific technologies (Room, DataStore) and concrete actions with only minor coverage gaps (e.g., migrations implied via the 'when' clause rather than stated as a capability). Closer to anchor 4 ('several specific actions; minor gaps') than 3, since the deferral list further concretizes scope, but not comprehensive enough for 5.

4 / 5

Completeness

Explicitly answers both: what ("Implement Room schemas and DataStore preferences with proper async patterns in Android") and when ("Use when the primary task is storage schema, DAO, migration, or preference isolation"), with concrete trigger phrases and an explicit deferral boundary. Matches anchor 5; anchor 4's 'when could be more explicit' does not apply since trigger conditions are enumerated.

5 / 5

Trigger Term Quality

Good natural keyword coverage: "storage schema, DAO, migration, or preference isolation" plus "Room" and "DataStore" — terms Android developers actually say. A few common variants are missing ("SharedPreferences", "database"), keeping it below the comprehensive-synonym coverage of anchor 5, but well above the generic keyword level of anchor 3.

4 / 5

Distinctiveness Conflict Risk

Clear niche (Android local persistence) with distinct triggers, and the defer clause ("defer auth-token/security storage, any CoroutineWorker/WorkManager task, Hilt graph wiring, and cache-policy design") explicitly fences off adjacent skills. Minimal conflict risk; matches anchor 5 rather than 4, which requires some overlap concern.

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-persistence/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.