mit einem Klick
dart-skills-lint-validation
// Use this skill when you need to validate that AI agent skills meet the specification. This includes running the linter via CLI, authoring custom rules, and following the validation workflow.
// Use this skill when you need to validate that AI agent skills meet the specification. This includes running the linter via CLI, authoring custom rules, and following the validation workflow.
How to integrate, update, and configure the dart_skills_lint validation tool within a repository. Make sure to use this skill whenever the user asks to update dart_skills_lint, configure skills validation tests, fix skills linter dependency drifts, verify repository state before editing, optimize lint rules execution, or draft pull request submission commands.
Contains well-defined rules for creating natural, accurate, and readable writing. Use whenever authoring longer text, like analysis documents, PR or CL descriptions, or documentation.
Mandatory checks to run before completing any task that touches md files or dart code in this repository.
Use this skill when you need to set up validation for AI agent skills in a Dart project for the first time. This includes adding dependencies, configuring the linter, setting up tests, and creating a CI workflow.
Performs a comprehensive, multi-step code review of pull requests or local code changes, using iterative refinement (generation, critique, synthesis) to ensure high-quality, actionable feedback. Use when you need to review code changes thoroughly.
Use the `http` package to execute GET, POST, PUT, or DELETE requests. Use when you need to fetch from or send data to a REST API.
| name | dart-skills-lint-validation |
| description | Use this skill when you need to validate that AI agent skills meet the specification. This includes running the linter via CLI, authoring custom rules, and following the validation workflow. |
Use the dart_skills_lint CLI to validate skills. Choose the appropriate workflow based on your environment:
Note on choosing the right method:
dart-skills-lint-setup skill) is preferred as it integrates with your existing testing workflow.Use this method if you are working within a project that has dart_skills_lint listed in pubspec.yaml.
Run:
dart run dart_skills_lint:cli -d .agents/skills
Use this method if you want to validate skills across multiple projects without adding a dependency to each one. Run:
dart pub global run dart_skills_lint:cli -d .agents/skills
-d, --skills-directory: Specifies a root directory containing sub-folders of skills to validate. Can be passed multiple times.-s, --skill: Specifies an individual skill directory to validate directly. Can be passed multiple times.-q, --quiet: Hide non-error validation output.-w, --print-warnings: Enable printing of warning messages.--fast-fail: Halt execution immediately on the error.--ignore-config: Ignore the YAML configuration file entirely.--fix: Preview fixes for failing lints (dry run).--fix-apply: Apply fixes for failing lints.To author custom rules, extend the SkillRule class and pass them to validateSkills.
Example:
import 'package:dart_skills_lint/dart_skills_lint.dart';
class MyCustomRule extends SkillRule {
@override
final String name = 'my-custom-rule';
@override
final AnalysisSeverity severity = AnalysisSeverity.warning;
@override
Future<List<ValidationError>> validate(SkillContext context) async {
final errors = <ValidationError>[];
final yaml = context.parsedYaml;
if (yaml == null) return errors;
if (yaml['metadata']?['deprecated'] == true) {
errors.add(ValidationError(
ruleId: name,
severity: severity,
file: 'SKILL.md',
message: 'This skill is marked as deprecated.',
));
}
return errors;
}
}
Use it in your test:
final config = await ConfigParser.loadConfig();
await validateSkills(
config: config,
customRules: [MyCustomRule()],
);
Follow this workflow to validate skills:
dart run dart_skills_lint:cli -d .agents/skills
--fix-apply or edit files manually to resolve issues.SKILL.md file at the root of the skill folder.. (e.g., .dart_tool) are ignored.name and description.