CtrlK
BlogDocsLog inGet started
Tessl Logo

riverpod

Use when working with Flutter Riverpod state management. Covers providers, consumers, refs, containers, overrides, async state, code generation, testing, and safe defaults.

64

Quality

78%

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

Fix and improve this skill with Tessl

tessl review fix ./content/flutter/skills/state-management/riverpod/SKILL.md
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.

A lean, well-structured rules reference that assumes Claude's competence and gives concrete API-level guidance. Its main gaps are the total absence of code examples, mild cross-section redundancy, and a lack of validation checkpoints in the setup workflow.

Suggestions

Add at least one minimal copy-paste code example (e.g. a ProviderScope-wrapped ConsumerWidget reading a provider with ref.watch) to lift actionability toward 5.

De-duplicate the autoDispose/family/ConsumerWidget rules that recur across Core Rule, Lifecycle/UI Binding sections, and the Minimal Reference Checklist.

Add an explicit validation checkpoint to the Required Project Setup workflow (e.g. 'run flutter analyze / dart test after wiring ProviderScope') to introduce a feedback loop.

DimensionReasoningScore

Conciseness

Tersely assumes Claude's competence (no "what is a provider" filler) and uses lean bullet rules, but a few items repeat across sections (e.g. autoDispose appears in Core Rule, Lifecycle Rules, and the Minimal Reference Checklist) and could be trimmed.

4 / 5

Actionability

Concrete, specific guidance throughout (named classes like ConsumerWidget/ConsumerStatefulWidget, methods like ref.watch/ref.read/ref.listen/select/keepAlive, named provider types), but contains zero code examples, which is a minor gap even for an instruction-only skill.

4 / 5

Workflow Clarity

A rough sequence exists in Required Project Setup (add package → wrap in ProviderScope → use ConsumerWidget) and the Implementation Pattern, but there are no validation checkpoints or feedback loops and the body is largely categorized rules rather than a sequenced workflow.

3 / 5

Progressive Disclosure

Well-organized into ten clearly headed sections with no nested or buried references, and no bundle files exist to evaluate; since the skill is over 50 lines it does not qualify for the simple-skill 5, and some detailed material (e.g. a provider/testing reference) could be split out.

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 with an explicit "Use when..." trigger and a comprehensive, concrete list of covered topics. It earns top marks on completeness and distinctiveness; specificity and trigger-term quality sit just below the ceiling because "Covers" is a topic list rather than action verbs and a few synonyms are absent.

DimensionReasoningScore

Specificity

Lists many concrete, specific topics ("providers, consumers, refs, containers, overrides, async state, code generation, testing, and safe defaults"), but uses the passive verb "Covers" with a topic list rather than the concrete action verbs the score-5 anchor expects (e.g. "Extract... fill... merge").

4 / 5

Completeness

Explicitly answers both: "what" via "Covers providers, consumers, refs, containers, overrides, async state, code generation, testing, and safe defaults" and "when" via the concrete trigger clause "Use when working with Flutter Riverpod state management".

5 / 5

Trigger Term Quality

Strong natural terms a Riverpod user would say ("Flutter Riverpod state management", "providers", "consumers", "async state", "testing"), but a few common variations/synonyms are missing (e.g. the package name "flutter_riverpod", "dependency injection", "DI"), which keeps it just below comprehensive.

4 / 5

Distinctiveness Conflict Risk

"Flutter Riverpod state management" names a specific, well-known package niche with distinct triggers and minimal overlap risk against other skills.

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.

Validation14 / 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
andrewyng/context-hub
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.