Claude Skill MartBrowse skillsQuick linesLearn by videoTerminal guideWhat is a Skill?
Back to list

Code Review (Flutter/Dart)

A repeatable, checklist-driven review skill for Flutter/Dart PRs, MRs, branches, and diffs, ending in severity-tagged findings and a verdict.

Dev & CodingIntermediate62261AI score 9/10Last updated: Aug 28, 2026

What it does

  • Validates the branch first: confirms it's a feature/bugfix/PR branch, checks it's up to date with the target branch, identifies the merge target.
  • Discovers all changed/added/deleted files, follows commit titles and connected methods/files so the why of each change is understood rather than assumed.
  • Reviews every file against a matrix: location, naming, responsibility, readability, logic correctness, error handling, security, performance, SOLID, docs, tests, style — plus surrounding existing code.
  • Flutter-specific checks: unnecessary rebuilds (BlocBuilder → BlocSelector), Key on dynamic widgets, dispose() for controllers/streams, const constructors, untouched generated files (*.g.dart, *.freezed.dart).
  • Scans for code smells using the refactoring.guru taxonomy (Bloaters, OO Abusers, Change Preventers, Dispensables, Couplers).
  • Verifies test coverage deliberately: locates real test files, checks edge cases, and calls out tests that only assert mocked behavior.
  • Outputs Summary → Issues (suggestion/minor/major) → Questions → Verdict (Approved / Approved with suggestions / Changes requested).
  • Posts inline comments to GitHub/GitLab only with explicit opt-in; a PreToolUse hook (scripts/protect-token.sh) blocks Bash commands that would leak the review token.

Who it's for

  • Flutter/Dart teams that want consistent, non-flattering review quality
  • Tech leads who want AI to handle the first review pass
  • Teams on GitHub/GitLab who want inline MR comments automated

Examples

  1. "Review the PR on this branch" → changed-file list, per-file issues with severity, final verdict.
  2. "Audit this diff before merge" → red CI or missing tests for new logic flagged as blocking.
  3. After reading the chat review: "Post these on the GitLab MR" → inline comments anchored to file/line using GITLAB_TOKEN.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/evanca/flutter-ai-rules/HEAD/skills/code-review/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the skills/code-review folder from the GitHub repo evanca/flutter-ai-rules into my ~/.claude/skills/code-review/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/evanca/flutter-ai-rules.git /tmp/flutter-ai-rules && mkdir -p ~/.claude/skills && cp -r /tmp/flutter-ai-rules/skills/code-review ~/.claude/skills/

This is a third-party skill. Check the source repository before installing.

  1. Clone the repo: git clone https://github.com/evanca/flutter-ai-rules.git
  2. Create the skills directory: mkdir -p ~/.claude/skills
  3. Copy the skill: cp -r flutter-ai-rules/skills/code-review ~/.claude/skills/
  4. Make the hook executable: chmod +x ~/.claude/skills/code-review/scripts/protect-token.sh
  5. (Optional) For online posting, set a review-bot token: export GITHUB_TOKEN=... or export GITLAB_TOKEN=...
  6. Open Claude Code in your Flutter project and ask it to "review this PR" — the skill triggers automatically.