Dart 3.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await.

MITAuto-check passedDevelopment

Install Dart Language

skills CLI
$ npx skills add HoangNguyen0403/agent-skills-standard --skill dart-language -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install HoangNguyen0403/agent-skills-standard dart-language --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/HoangNguyen0403/agent-skills-standard.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/dart/dart-language .claude/skills/dart-language && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
dart-language
GitHub stars
572
Token cost
~820 tokens
SKILL.md length
288 words
Files
2
Skills in repo
211
Repo updated
First seen
Licence
MIT

At a glance

Dart 3.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await.

  • Switch expressions
  • SKILL.md covers Priority: P0 (CRITICAL), Implementation Guidelines, Anti-Patterns and Code, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Async patterns — and before introducing any new Dart 3.x construct to confirm the modern idiomatic approach

What it does

Dart Language is an agent skill from HoangNguyen0403/agent-skills-standard. Dart 3.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await. Use when using !, ?., ??, late, sealed classes, record types, switch expressions, or async patterns — and before introducing any new Dart 3.x construct to confirm the modern idiomatic approach.

Its SKILL.md is about 820 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `evals/evals.json`).

It sits in Development, covering Async programming and Cross-platform mobile apps. It works with Dart. The repository describes itself as: A collection of Agent Skills Standard and Best Practice for Programming Languages, Frameworks that help our AI Agent follow best practies on frameworks and programming laguages. The licence is MIT.

When your agent uses it

  • Switch expressions
  • Async patterns — and before introducing any new Dart 3.x construct to confirm the modern idiomatic approach

Example prompts

  • “/dart-language”

What it can do on your machine

Read from SKILL.md and the folder at commit b529c2d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are dart).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Dart Language loads about 820 tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 288 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~820

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from HoangNguyen0403/agent-skills-standard at commit b529c2d, republished under its MIT licence (© HoangNguyen0403). 288 words, ~820 tokens.

Download SKILL.mdSave it as .claude/skills/dart-language/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
dart-language
description
Dart 3.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await. Use when using !, ?., ??, late, sealed classes, record types, switch expressions, or async patterns — and before introducing any new Dart 3.x construct to confirm the modern idiomatic approach.

Dart Language Patterns

Priority: P0 (CRITICAL)

Implementation Guidelines

  • Null Safety: Avoid !. Use ?., ??, or short-circuiting. Use late only if necessary.
  • Immutability: Use final for all variables. Use @freezed for data classes.
  • Pattern Matching (3.x): Use switch (value) with patterns and destructuring.
  • Records: Use a Record (e.g., (String, int)) for multiple values; use named fields when meaning matters. Destructure at call sites: final (error, data) = fetchUser();.
  • Sealed Classes: Use sealed class for exhaustive state handling in domain logic.
  • Extensions: Use extension to add utility methods to third-party types.
  • Wildcards (3.7+): Use _ for unused variables in declarations and patterns.
  • Tear-offs: Prefer using tear-offs (e.g., list.forEach(print)) over anonymous lambdas (e.g., list.forEach((e) => print(e))).
  • Asynchrony: Prefer async/await over raw Future.then. Use unawaited for fire-and-forget logic if necessary.
  • Encapsulation: Use _ prefix for library-private members. Prefer final properties.
  • Collections: Use collection-if, collection-for, and spread operators ....
  • Safe List Access: Prefer .firstOrNull, .lastOrNull, or .elementAtOrNull(i).
  • No dynamic: Use Object or generics instead of dynamic.
  • Type Aliases: Use typedef for complex IDs or callbacks.

Anti-Patterns

  • No ! Operator: not use bang operator ! unless you can prove value non-null via if or assert.
  • No var for members: not use var for class members; use final or explicit types.
  • No logic in constructors: not perform complex calculations or async work inside constructors.
  • No zero-arg methods for pure computations: Use a getter. int get invoiceType => not int toInvoiceType().
  • No generic conversion names: Name value-object converters for their target context: get apiFilterType not get invoiceType.

Code

dart
// Sealed class and Switch expression
sealed class Result {}
class Success extends Result { final String data; Success(this.data); }
class Failure extends Result {}

String message(Result r) => switch (r) {
  Success(data: var d) => "Got $d",
  Failure() => "Error",
};

References

  • feature-based-clean-architecture | tooling

Null-safety checklist

  • Replace ! with ?-aware access, explicit narrowing, or a guard clause; do not silence nullability with a force unwrap.

Canonical response anchors

When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:

  • Replace ! with ?
  • destructure,destructuring,final (error,result.error

© HoangNguyen0403, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/dart/dart-language of HoangNguyen0403/agent-skills-standard.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit b529c2d

Compare with similar skills

Dart Language next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Dart Language compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dart Language this skillHoangNguyen0403/agent-skills-standard572—~820Automated safety check: PassMIT
Signals Core Advanced Primitivesrodydavis/signals.dart819—~1.7kAutomated safety check: PassApache-2.0
Squadron Workerd-markey/squadron138—~1.6kAutomated safety check: PassMIT
Flutter Handling Concurrencybtwld/superdeck130—~1.8kAutomated safety check: PassBSD-3-Clause
Code Guidelinesgetsentry/sentry-dart873—~2.2kAutomated safety check: PassMIT
Bump VersionVeryGoodOpenSource/very_good_analysis477—~2.6kAutomated safety check: PassMIT

Similar skills

  • Signals Core Advanced Primitives

    rodydavis/signals.dart

    Reference for the advanced parts of Dart's signals_core: reactive primitives, async signals, reactive collections and utility types, with a linked page for each.

    819 GitHub stars~1.7k tokensUpdated 27 days ago
    DevelopmentAuto-check passed
  • Squadron Worker

    d-markey/squadron

    A skill your agent uses when building, writing, or refactoring Squadron workers, worker pools, worker services, or using squadronbuilder annotations (@SquadronService, @SquadronMethod) for…

    138 GitHub stars~1.6k tokensUpdated 18 days ago
    MobileAuto-check passed
  • Executes long-running tasks in background isolates to keep the UI responsive.

    130 GitHub stars~1.8k tokensUpdated 2 days ago
    MobileAuto-check passed
  • Code Guidelines

    getsentry/sentry-dart

    Official

    Enforce Sentry Dart/Flutter SDK code guidelines for implementation, refactoring, and review.

    873 GitHub stars~2.2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Bump Version

    VeryGoodOpenSource/very_good_analysis

    Bumps the verygoodanalysis package to a new version. An agent skill from VeryGoodOpenSource/very_good_analysis.

    477 GitHub stars~2.6k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • MCP Debugger

    debugmcp/mcp-debugger

    A skill your agent uses when investigating a bug, failing test, or unexpected runtime behavior and the mcp-debugger MCP server is available — drives real step-through debuggers (breakpoints, stack…

    174 GitHub stars~4.2k tokensUpdated today
    DevelopmentAuto-check passed

More from HoangNguyen0403/agent-skills-standard

All 211 skills in this repo
  • Subagent-Driven Development

    HoangNguyen0403/agent-skills-standard

    Runs a multi-task implementation plan by sending each task to a fresh implementer subagent, reviewing it independently, then reviewing the whole branch.

    572 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • draw.io Architecture Diagramming

    HoangNguyen0403/agent-skills-standard

    Draws architecture diagrams as editable draw.io files from a JSON spec, with a fixed house style, one C4 level per diagram and evidence-tagged shapes.

    572 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Android Navigation 3 Guide

    HoangNguyen0403/agent-skills-standard

    Implements and migrates to Jetpack Navigation 3 in Compose: NavDisplay, typed route objects, a state-list back stack, deep links, multiple back stacks and dialog scenes.

    572 GitHub stars~687 tokensUpdated yesterday
    Auto-check passed
  • Angular HttpClient Standards

    HoangNguyen0403/agent-skills-standard

    Sets rules for Angular HTTP code: functional interceptors, typed requests, services that own every call, and httpResource for reactive data loading in Angular 17+.

    572 GitHub stars~652 tokensUpdated yesterday
    Auto-check passed
  • Angular Tooling

    HoangNguyen0403/agent-skills-standard

    Angular CLI usage, code generation, build configuration, and bundle optimization.

    572 GitHub stars~743 tokensUpdated yesterday
    Auto-check passed
  • Common Code Review

    HoangNguyen0403/agent-skills-standard

    Conduct high-quality, persona-driven code reviews. An agent skill from HoangNguyen0403/agent-skills-standard.

    572 GitHub stars~772 tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Dart Language

What does Dart Language do?

Dart 3.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await. Dart Language is an agent skill from HoangNguyen0403/agent-skills-standard.x language feature standards: null safety, records, sealed classes, switch pattern matching, extensions, and async/await.

When should I use Dart Language?

Dart Language fits situations like: switch expressions; async patterns — and before introducing any new Dart 3.x construct to confirm the modern idiomatic approach.

How do I install Dart Language in Claude Code?

Run `npx skills add HoangNguyen0403/agent-skills-standard --skill dart-language -a claude-code`. Or copy the skill folder (skills/dart/dart-language in HoangNguyen0403/agent-skills-standard) into .claude/skills/dart-language in your project. Claude Code loads it when a task matches its description.

How do I install Dart Language in Codex?

Run `npx skills add HoangNguyen0403/agent-skills-standard --skill dart-language -a codex`. Or copy the skill folder (skills/dart/dart-language in HoangNguyen0403/agent-skills-standard) into .agents/skills/dart-language in your project. Codex loads it when a task matches its description.

Can I use Dart Language in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add HoangNguyen0403/agent-skills-standard --skill dart-language -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dart-language, .gemini/skills/dart-language, .github/skills/dart-language and .opencode/skills/dart-language in your project.

What does Dart Language need to run?

SKILL.md names no scripts, command-line tools or credentials: Dart Language is instructions for the agent only.

Does Dart Language access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Dart Language safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Dart Language use?

Dart Language is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dart Language use?

About 820 tokens (SKILL.md is roughly 3.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Dart Language?

Skills that share tags, products or a category with Dart Language: Signals Core Advanced Primitives (rodydavis/signals.dart, 819 stars), Squadron Worker (d-markey/squadron, 138 stars), Flutter Handling Concurrency (btwld/superdeck, 130 stars) and Code Guidelines (getsentry/sentry-dart, 873 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dart Language?

HoangNguyen0403 (a GitHub user) maintains it in HoangNguyen0403/agent-skills-standard, which has 572 GitHub stars. The repository holds 211 skills in this directory. The repository was last updated on October 9, 2026.

Source: HoangNguyen0403/agent-skills-standard on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.