CtrlK
BlogDocsLog inGet started
Tessl Logo

flutter-apply-architecture-best-practices

Architects a Flutter application using the recommended layered approach (UI, Logic, Data). Use when structuring a new project or refactoring for scalability.

64

Quality

77%

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-apply-architecture-best-practices/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

81%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 strong, well-structured skill body: prescriptive layer rules, a concrete folder-structure tree, an 8-step feature workflow with checklist, conditional branching, and a test feedback loop, plus two compilable Dart examples covering the entire chain. Remaining gaps are minor — one stubbed service method, no DI registration or test-command snippet, and examples that could partially move to a references file to slim the main SKILL.md.

DimensionReasoningScore

Conciseness

The body is directive and prescriptive ('Extend `ChangeNotifier`... Inject Repositories into ViewModels via the constructor') rather than tutorial prose explaining concepts Claude already knows. Minor trimming is possible — the full View example with loading-spinner handling runs about 30 lines that could be condensed — so it fits 'efficient; minor instances of over-explanation that could be trimmed' rather than the every-token-earns-its-place level.

4 / 5

Actionability

Two complete, compilable Dart examples demonstrate the full Service → Repository → ViewModel → View chain with real constructor injection and ListenableBuilder usage. Minor gaps: `fetchUser` is a '// HTTP GET implementation...' stub, and Step 7 names 'provider' or 'get_it' without a registration snippet — 'mostly executable guidance; concrete code or commands with minor gaps'.

4 / 5

Workflow Clarity

An explicit 8-step checklist with conditional logic (Step 4 branches on complex vs. simple CRUD), a dedicated validation step (Step 8: 'Execute unit tests for the ViewModel and Repository'), and a feedback loop ('Run tests -> Review failures -> Fix logic -> Re-run until passing') — exactly the anchor-5 structure of clear sequence + explicit validation + feedback loop + checklist. The absence of a concrete test command (`flutter test`) is not enough to drop to level 4.

5 / 5

Progressive Disclosure

A single-file skill (no references/, scripts/, or assets/ exist) with well-organized sections and a working Contents TOC. However, at roughly 155 lines with two full code examples inlined, it exceeds the under-50-line simple-skill exception; the examples could be split into a references file. Good structure, most content appropriately placed — the level-4 anchor.

4 / 5

Total

17

/

20

Passed

Description

73%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 solid description in third-person voice that clearly states what the skill does and when to use it, with natural trigger terms and low conflict risk. Its main weakness is specificity — the capability is described at a high level ('architects using the recommended layered approach') without naming the concrete operations the skill actually performs. Missing synonyms like 'clean architecture' or 'project structure' slightly limit trigger coverage.

Suggestions

Replace 'using the recommended layered approach' with concrete action verbs — e.g., 'Architects Flutter applications into UI, Logic, and Data layers: defines ViewModels extending ChangeNotifier, implements the Repository pattern for data access, and scaffolds the lib/ folder structure.'

Add natural trigger synonyms to the 'when' clause, such as 'Use when structuring a new Flutter project, setting up clean architecture, or refactoring an existing app for scalability.'

Mention the concrete technologies the skill prescribes (e.g., freezed, provider/get_it) so the description surfaces those keywords when users ask about them.

DimensionReasoningScore

Specificity

Names the domain and one action ('Architects a Flutter application using the recommended layered approach (UI, Logic, Data)') but the action is abstract — it never lists concrete operations like defining layers, scaffolding the folder structure, or wiring dependency injection. This matches the 'names domain and 1-2 concrete actions, but not comprehensive' anchor, not the several-specific-actions level above.

3 / 5

Completeness

Both parts are present: what ('Architects a Flutter application using the recommended layered approach (UI, Logic, Data)') and when ('Use when structuring a new project or refactoring for scalability'). The 'when' clause describes project states rather than concrete user utterances, so it is not the fully explicit level-5 pattern ('when the user mentions...').

4 / 5

Trigger Term Quality

'Flutter', 'layered', 'structuring a new project', and 'refactoring' are natural terms users would say, but common synonyms like 'clean architecture', 'MVVM', or 'project/folder structure' are missing. Good coverage with a few natural terms absent fits the level-4 anchor better than level 3, whose example is only 'Works with PDF files'.

4 / 5

Distinctiveness Conflict Risk

The description carves out a clear Flutter-specific niche (layered application architecture) with distinct triggers ('structuring a new project', 'refactoring for scalability') and minimal overlap risk with other skills. This matches the level-5 anchor 'clear niche with distinct triggers; minimal conflict risk'.

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