gsmlg-dev/code-agent/cmd-check-flutter-duskmoon-design

Claude Code and agent skill by gsmlg-dev/code-agent

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Audit a Flutter project for compliance with the DuskMoon design system

Install

npx vskill@latest install gsmlg-dev/code-agent/cmd-check-flutter-duskmoon-design

SKILL.md

Read the flutter-duskmoon-design skill first, then audit the Flutter project for compliance. Inspect Dart source, package manifests, generated-file boundaries, and tests. Report only findings supported by the code, with a file path, line number, offending code, and concrete fix.

Checks

1. Theme Setup
  • The application root uses DuskmoonApp, not a direct MaterialApp, CupertinoApp, or FluentApp.
  • Light and dark themes use curated DmDesignTokens sets and an appropriate ThemeMode.
  • Widget code resolves tokens through DmTheme.of(context).tokens; direct DmDesignTokens.<theme> access is limited to app setup, adapters, and tests.
2. Hardcoded and Computed Colors

Search Dart source for:

  • Color(0x...), Color.fromARGB, and Color.fromRGBO outside generated token files.
  • Material color constants such as Colors.blue, Colors.white, and color shade access.
  • Runtime dark-color derivation with Color.lerp, opacity, inversion, or manual dimming when a curated token should be used.

Exclude generated files and tests that intentionally assert exact conversion values. Require an appropriate DmTheme token in each finding.

3. Background and Foreground Pairing

Verify token pairs used in the same component:

  • primary / onPrimary; primaryContainer / onPrimaryContainer
  • secondary / onSecondary; secondaryContainer / onSecondaryContainer
  • tertiary / onTertiary; tertiaryContainer / onTertiaryContainer
  • error / onError; errorContainer / onErrorContainer
  • surface / onSurface; surfaceVariant / onSurfaceVariant
  • inverseSurface / inverseOnSurface

Treat inherited foreground colors as warnings unless the rendered mismatch is clear.

4. Adaptive Widgets
  • DuskMoon adaptive components extend DmAdaptiveWidget and implement platform builders.
  • Flag manual dispatch using Platform.isIOS, Platform.isAndroid, or equivalent platform conditionals where adaptive dispatch applies.
  • Verify per-widget and subtree platformOverride behavior is not bypassed.
5. Shared Component Conventions
  • Components use shared DmColorRole, DmSize, and variant enums instead of parallel ad-hoc APIs.
  • Main actions use primary; destructive actions use error; selection states use secondary containers.
  • DmAppBar and DmBottomNav default to primary tokens; drawers and side navigation use secondary tokens.
  • Ordinary cards use surface tokens, and elevation uses the ordered surface-container tokens rather than shadows alone.
  • There is at most one FAB per screen; multiple actions use DmActionList where appropriate.
  • Snackbars use inverse tokens and dialogs use the scrim and highest surface-container tokens.
6. Accessibility
  • Every icon-only button, including DmIconButton, has a non-empty semantic label.
  • Interactive components expose keyboard focus and a visible focus state.
  • Flag token pairings known to violate contrast; do not claim a numeric WCAG ratio without measuring it.
7. Package and Generated-Code Boundaries
  • Dependencies flow from duskmoon_theme to duskmoon_widgets, then to feature packages; no downstream package is imported upstream.
  • duskmoon_code_engine does not depend on duskmoon_theme; its theme adapter belongs in duskmoon_theme.
  • Files under packages/duskmoon_theme/lib/src/generated/ are generated from the design source and are not hand-maintained.
  • Flutter package builds and CI do not require Bun or Node solely to regenerate committed Dart tokens.
8. Tests
  • Adaptive widget tests exercise every DmPlatformStyle value.
  • Theme tests verify DmTheme.of(context) resolves the configured tokens.
  • Changed components have focused tests for token roles, semantics, and platform dispatch.

Output

text
Flutter DuskMoon Design Compliance
==================================
[PASS|FAIL] Theme setup: N findings
[PASS|FAIL] Hardcoded/computed colors: N findings
[PASS|WARN] Token pairing: N findings
[PASS|FAIL] Adaptive widgets: N findings
[PASS|WARN] Component conventions: N findings
[PASS|WARN] Accessibility: N findings
[PASS|FAIL] Package/generated boundaries:N findings
[PASS|WARN] Tests: N findings
Total: N errors, N warnings

List findings by severity and check. If a check cannot be established statically, mark it NOT VERIFIED and state what runtime or visual test is required. Do not report style preferences that are not rules in flutter-duskmoon-design.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/gsmlg-dev/code-agent/cmd-check-flutter-duskmoon-design/badge)](https://verified-skill.com/skills/gsmlg-dev/code-agent/cmd-check-flutter-duskmoon-design)

Something wrong with this skill or its page? Tell us.