CtrlK
BlogDocsLog inGet started
Tessl Logo

flutter-implement-json-serialization

Create model classes with `fromJson` and `toJson` methods using `dart:convert`. Use when manually mapping JSON keys to class properties for simple data structures.

64

Quality

76%

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 ./skills/flutter-implement-json-serialization/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

75%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 is well-structured and highly actionable, with executable examples covering the three main scenarios and clear conditional workflows with validation checkpoints. Weaknesses are minor: duplicated checklist/numbered-step sections, a vaguely specified 'Run validator' step, and no use of bundle files to offload the lengthiest examples.

Suggestions

Make the validation step executable: replace 'Run validator -> review type mismatch errors -> fix casting logic' with a concrete command, e.g. 'Run `dart analyze` / `flutter test`, fix any type-cast errors surfaced, and re-run until clean.'

Drop the 'Task Progress' checklists (or the numbered lists) — each pair restates the same steps, so keeping one per workflow trims ~10 lines of redundancy.

Consider moving the three full code examples into an `references/examples.md` file, keeping one compact snippet inline, to shorten SKILL.md and improve progressive disclosure.

DimensionReasoningScore

Conciseness

The Core Guidelines are terse, high-value bullets and the code examples are complete without padding, but each workflow duplicates itself — a 'Task Progress' checklist immediately followed by a numbered list restating the same steps. Mostly efficient with minor trimming possible — anchor 4, not 5 (the redundant checklists are more than zero) and not 3 (no concept explanations Claude already knows).

4 / 5

Actionability

Three complete, copy-paste-ready Dart examples cover the common cases (model implementation, synchronous small payload, `compute()` for large payload), with full imports and correct casts. Falls short of anchor 5 because the 'Run validator -> review type mismatch errors -> fix casting logic' step names no actual validator or command, and 'Write unit tests' gives no example test.

4 / 5

Workflow Clarity

Both workflows have clear sequences, explicit conditional branching (status-code check, sync vs. isolate decision), checklists, and a feedback loop ('Run validator → review type mismatch errors → fix casting logic'). Not 5 because that validation checkpoint is not concretely executable — no validator command is specified; well above 3 since checkpoints and error recovery are otherwise explicit.

4 / 5

Progressive Disclosure

A single-file skill (~146 lines, no bundle files) with a Contents index, well-labeled sections, and reasonable inline volume. Good structure with content appropriately placed for the scope — anchor 4. Not 5 because everything is inlined; the three full code examples (~90 lines) could be split into a separate examples file, though navigation as-is is easy.

4 / 5

Total

16

/

20

Passed

Description

78%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, concise description in the canonical what+when format with concrete API names and a distinguishing 'manually' qualifier. Its main gaps are limited action coverage (only fromJson/toJson) and missing natural trigger synonyms such as 'parse', 'serialize', or 'Flutter'.

Suggestions

Broaden the what-clause to list a couple more concrete actions, e.g. 'Create model classes with `fromJson`/`toJson`, decode JSON with `jsonDecode`, and cast `dynamic` results to typed maps' — lifts specificity from 3 toward 4.

Add natural trigger synonyms and the platform name: 'Use when parsing or serializing JSON in Flutter/Dart, manually mapping JSON keys to class properties, or writing fromJson/toJson by hand instead of code generation.'

DimensionReasoningScore

Specificity

The description names the domain and two concrete actions ('Create model classes with `fromJson` and `toJson` methods using `dart:convert`'), but coverage stops there — no mention of decoding, casting, or network parsing. It matches anchor 3 (1-2 concrete actions, not comprehensive) rather than 4, which requires several specific actions.

3 / 5

Completeness

Explicitly answers both: what ('Create model classes with `fromJson` and `toJson` methods using `dart:convert`') and when ('Use when manually mapping JSON keys to class properties for simple data structures'). This mirrors the anchor-5 pattern of a concrete what plus an explicit trigger clause; the when clause is explicit, not weakly implied.

5 / 5

Trigger Term Quality

Includes natural terms users would say ('fromJson', 'toJson', 'JSON keys', 'dart:convert') but omits common variations like 'parse JSON', 'serialize/deserialize', 'Flutter', 'Dart', or '.json'. Good keyword coverage with a few natural terms missing — anchor 4, not 5's comprehensive synonym and file-extension coverage.

4 / 5

Distinctiveness Conflict Risk

'Manually mapping' clearly distinguishes it from code-generation skills (json_serializable, freezed), leaving only minor overlap with generic JSON-parsing skills. Not 5 because the words 'Flutter' or 'Dart' never appear as plain trigger language — only inside the `dart:convert` code reference — slightly weakening the niche signal.

4 / 5

Total

16

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
flutter/agent-plugins
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.