en un clic
dart-run-static-analysis
// Execute `dart analyze` to identify warnings and errors, and use `dart fix --apply` to automatically resolve mechanical lint issues. Use during development to ensure code quality and before committing changes.
// Execute `dart analyze` to identify warnings and errors, and use `dart fix --apply` to automatically resolve mechanical lint issues. Use during development to ensure code quality and before committing changes.
Replace the usage of `expect` and similar functions from `package:matcher` to `package:checks` equivalents.
Write and organize unit tests for functions, methods, and classes using `package:test`. Use when creating new logic or fixing bugs to ensure code remains correct and regression-free.
Entrypoint structure, exit codes, cross-platform scripts. Use when building command line utilities, scripts, or applications.
Collect coverage using the coverage packge and create an LCOV report
Uses get_runtime_errors and lsp to fetch an active stack trace, locate the failing line, apply a fix, and verify resolution via hot_reload.
Define and generate mock objects for external dependencies using `package:mockito` and `build_runner`. Use when unit testing classes that depend on complex external services like APIs or databases.
| name | dart-run-static-analysis |
| description | Execute `dart analyze` to identify warnings and errors, and use `dart fix --apply` to automatically resolve mechanical lint issues. Use during development to ensure code quality and before committing changes. |
| metadata | {"model":"models/gemini-3.1-pro-preview","last_modified":"Fri, 24 Apr 2026 15:09:34 GMT"} |
Configure the Dart analyzer using the analysis_options.yaml file located at the package root.
package:lints/recommended.yaml or package:flutter_lints/flutter.yaml) using the include: directive.analyzer: language: node to prevent implicit downcasts and dynamic inferences. Set strict-casts: true, strict-inference: true, and strict-raw-types: true.linter: rules: node. Use a key-value map (rule_name: true/false) when overriding included rules, or a list (- rule_name) when defining a fresh set. Do not mix list and map syntax in the same rules block.dart format behavior under the formatter: node. Set page_width (default 80) and trailing_commas (automate or preserve).analyzer: plugins: node. Ensure the plugin package is added as a dev_dependency in pubspec.yaml.When a diagnostic (lint or warning) yields a false positive or applies to generated code, suppress it explicitly.
analyzer: exclude: node in analysis_options.yaml to exclude entire files or directories (e.g., **/*.g.dart) using glob patterns.// ignore_for_file: <diagnostic_code> at the top of a Dart file to suppress specific diagnostics for the entire file. Use // ignore_for_file: type=lint to suppress all linter rules.// ignore: <diagnostic_code> on the line directly above the offending code, or appended to the end of the offending line.# ignore: <diagnostic_code> above the offending line in pubspec.yaml files (e.g., # ignore: sort_pub_dependencies).// ignore: some_plugin/some_code).Use this workflow to identify type-related bugs, style violations, and potential runtime errors.
Task Progress:
analysis_options.yaml exists at the project root.analyze_files MCP tool (if available) or the CLI command dart analyze <target_directory>.--fatal-infos flag.Use this workflow to resolve outdated API usages, apply quick fixes, and migrate code (e.g., Dart 3 migrations).
Task Progress:
dart_fix MCP tool or CLI command dart fix --dry-run.analysis_options.yaml.dart_fix MCP tool or CLI command dart fix --apply.dart_format MCP tool or CLI command dart format ..analysis_options.yamlinclude: package:flutter_lints/recommended.yaml
analyzer:
exclude:
- "**/*.g.dart"
- "lib/generated/**"
language:
strict-casts: true
strict-inference: true
strict-raw-types: true
errors:
todo: ignore
invalid_assignment: warning
missing_return: error
linter:
rules:
avoid_shadowing_type_parameters: false
await_only_futures: true
use_super_parameters: true
formatter:
page_width: 100
trailing_commas: preserve
// Suppress for the entire file
// ignore_for_file: unused_local_variable, dead_code
void processData() {
// Suppress for a specific line
// ignore: invalid_assignment
int x = '';
const y = 10; // ignore: constant_identifier_names
}