by evanca
Flutter AI Skills and Rules for Claude, Codex, Cursor, and Other AI-Powered IDEs
# Add to your Claude Code skills
git clone https://github.com/evanca/flutter-ai-rulesGuides for using cli tools skills like flutter-ai-rules.
Last scanned: 7/30/2026
{
"issues": [
{
"file": "skills/developing-genkit-dart/SKILL.md",
"line": 22,
"type": "remote-install",
"message": "Install command (remote install script piped to a shell — review the source before running): \"curl -sL cli.genkit.dev | bash\"",
"severity": "medium"
}
],
"status": "PASSED",
"scannedAt": "2026-07-30T06:26:35.632Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how flutter-ai-rules compares with popular alternatives.
flutter-ai-rules is an open-source cli tools skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by evanca. Flutter AI Skills and Rules for Claude, Codex, Cursor, and Other AI-Powered IDEs. It has 637 GitHub stars.
Yes. flutter-ai-rules passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/evanca/flutter-ai-rules" and add it to your Claude Code skills directory (see the Installation section above).
flutter-ai-rules is primarily written in Shell. It is open-source under evanca on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other CLI Tools skills you can browse and compare side by side. Open the CLI Tools category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh flutter-ai-rules against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Based on votes and bookmarks from developers who liked this skill
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
See comparison
36 Flutter and Dart skills your coding agent loads by itself, sourced only from official documentation.
A skill is a folder with a SKILL.md file. Your agent reads the description, decides a task matches, and pulls in the guidance — you don't paste anything into a rules file or remember to @-mention a doc. Install once, and Firebase Auth guidance shows up when you touch auth, Riverpod guidance when you touch providers.
A comprehensive, (almost) non-opinionated collection: everything here is derived from official Flutter, Dart, Firebase, and package documentation. No personal preferences, no invented conventions.
npx skills add evanca/flutter-ai-rules
That's it. The Skills CLI discovers the packages under skills/ and installs them for supported agents. It needs Node 22.20 or newer — on older versions it exits with SyntaxError: ... does not provide an export named 'styleText' before it does anything. Every other install route below works on any Node version, or none at all.
Browse before installing, or take just one:
npx skills add evanca/flutter-ai-rules --list
npx skills add evanca/flutter-ai-rules --skill flutter-best-practices
This repo is also a plugin marketplace, so agents that support plugins can install the whole set and keep it updated in place. The manifests live at .claude-plugin/, .codex-plugin/, .cursor-plugin/, .agents/plugins/, and plugin.json — all pointing at the same skills/ directory.
Claude Code — plugin marketplaces:
/plugin marketplace add evanca/flutter-ai-rules
/plugin install flutter-ai-skills@flutter-ai-rules
Skills then load as flutter-ai-skills:bloc, flutter-ai-skills:riverpod, and so on.
Codex — plugins:
codex plugin marketplace add evanca/flutter-ai-rules
codex plugin install flutter-ai-skills@flutter-ai-rules
Cursor — plugins: in Cursor, run /add-plugin, or add the repo as a team marketplace under Dashboard → Settings → Plugins → Import from Repo:
https://github.com/evanca/flutter-ai-rules
Antigravity — plugins:
git clone --depth 1 https://github.com/evanca/flutter-ai-rules.git
agy plugin install ./flutter-ai-rules
Windsurf / Devin has no plugin manifest, but Cascade already scans .agents/skills/ and ~/.agents/skills/, so the manual copy below is the install path. GitHub Copilot doesn't read SKILL.md at all — see Rules and combined sets for what to use instead.
Prefer to do it by hand? Copy or symlink any skill folder into your agent's skills directory — .claude/skills/, .cursor/skills/, .codex/skills/, .agents/skills/ (Antigravity, Codex, Windsurf), .windsurf/skills/. Or vendor the whole set into your project:
git clone --depth 1 https://github.com/evanca/flutter-ai-rules.git temp_repo && mkdir -p .skills && cp -r temp_repo/skills/* .skills && rm -rf temp_repo
With a .skills/ folder you can also reference a skill explicitly when you want it: "Read @.skills/bloc/SKILL.md and create test coverage for the new methods."
| Skill | Loads when you're… |
|---|---|
flutter-best-practices |
Writing, reviewing, or planning Flutter code |
effective-dart |
Writing Dart, naming things, adding doc comments |
dart-3-updates |
Using records, patterns, sealed classes, switch expressions |
flutter-app-architecture |
Scaffolding a project or refactoring into layers |
architecture-feature-first |
Designing folder structure for a new feature |
flutter-errors |
Hitting RenderFlex overflows, unbounded constraints, layout errors |
flutter-use-column-row-first |
Building responsive layouts with Row, Column, Expanded, Flexible |
flutter-pre-caching |
Preloading fonts, images, animations, or config |
| Skill | Loads when you're… |
|---|---|
bloc |
Creating a Cubit or Bloc, modeling state, wiring providers |
riverpod |
Setting up providers, combining requests, managing disposal |
provider |
Consuming state, optimizing rebuilds, using ProxyProvider |
flutter-change-notifier |
Setting up ChangeNotifier models and consuming them |
| Skill | Loads when you're… |
|---|---|
testing |
Writing unit, widget, or golden tests; fixing flaky tests |
mockito |
Generating mocks, stubbing, verifying interactions |
mocktail |
Mocking without codegen, registering fallback values |
patrol-e2e-testing |
Writing E2E tests that touch native permissions or dialogs |
code-review |
Reviewing a PR, branch, or diff |
| Skill | Loads when you're… |
|---|---|
flutterfire-configure |
Adding Firebase to a project, running flutterfire configure |
firebase-auth |
Setting up auth, managing auth state, social sign-in |
firebase-cloud-firestore |
Designing schemas, CRUD, listeners, pagination |
firebase-database |
Syncing real-time data, structuring JSON trees |
firebase-storage |
Uploading and downloading files, managing metadata |
firebase-analytics |
Logging events, setting user properties |
firebase-crashlytics |
Capturing fatal and non-fatal errors |
firebase-messaging |
Setting up FCM, handling background messages |
firebase-in-app-messaging |
Running in-app campaigns |
firebase-remote-config |
Implementing feature flags or A/B tests |
firebase-app-check |
Configuring attestation and debug tokens |
firebase-cloud-functions |
Calling callable functions, handling errors |
firebase-ai |
Generating text or chat with Gemini via firebase_ai |
generate-images-with-firebase-ai |
Generating or editing images with a Gemini image model (Nano Banana) |
firebase-data-connect |
Writing GraphQL queries against Data Connect |
| Skill | Loads when you're… |
|---|---|
accessibility |
Working on a11y, WCAG, screen readers, focus order |
inclusive-design |
Handling i18n, global name/address forms, low-end devices |
store-listing-assets |
Writing store copy to character limits |
revenuecat-testing |
Testing purchases, subscriptions, sandbox flows |
developing-genkit-dart |
Building AI agents in Dart with Genkit |
Before skills existed, this repo shipped rule files you pasted into a config, plus pre-merged bundles squeezed under Windsurf's character cap. Both still work and both are still updated, but skills are the recommended path — they load contextually instead of consuming your context window on every request.
Reach for these only if your tool has no skills support, or you want one static file you fully control:
rules/ — six broad foundation files: effective_dart.md, flutter_app_architecture.md, flutter_errors.md, dart_3_updates.md, testing.md, code_review.md. Drop them in your project and reference them by name: "Read @rules/effective_dart.md and follow its conventions." Package-specific guidance (Bloc, Riverpod, Firebase, Mockito…) is skills-only now.combined/ — seven topic bundles, each in a full and an __under_6K variant. Paste one into your global or local rules config and you're done. The trimmed variants stay under 6,000 characters to fit Windsurf's global_rules.md hard limit.GitHub Copilot lives here rather than in the skills section, because it has no SKILL.md support. Three options, in the order Copilot documents them:
combined/ bundle to .github/copilot-instructions.md for repo-wide guidance.rules/ files into .github/instructions/ as <name>.instructions.md, each with applyTo: "**/*.dart" frontmatter, so they only load for Dart files.AGENTS.md, so a bundle pasted there works for Copilot, Codex, and Antigravity at once.Size guidance from each tool's own official documentation, for rule/instruction files and for SKILL.md files (accessed 2026-07-11).
| Tool | Rule file — recommended size | SKILL.md — recommended size |
|---|