Migrate from dart_skills_lint to skills_lint (#9974)
* Migrate from dart_skills_lint to skills_lint
- Update tool/pubspec.yaml dependency from dart_skills_lint to skills_lint
- Rename tool/dart_skills_lint.yaml to tool/skills_lint.yaml and update root key
- Rename .agents/skills/dart_skills_lint_ignore.json to skills_lint_ignore.json
- Update validate_skills_test.dart imports and config file path
- Update validate_skills_hook.sh to use flutter pub run skills_lint
* Update .agents/scripts/validate_skills_hook.sh
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
---------
Co-authored-by: Reid Baker <1063596+reidbaker@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
diff --git a/.agents/scripts/validate_skills_hook.sh b/.agents/scripts/validate_skills_hook.sh
index 6456f0f..ce42666 100755
--- a/.agents/scripts/validate_skills_hook.sh
+++ b/.agents/scripts/validate_skills_hook.sh
@@ -13,10 +13,10 @@
# Check if a skill file was modified
if [[ "$TARGET_FILE" == *"SKILL.md"* ]] || [[ "$TARGET_FILE" == *".agents/skills"* ]]; then
echo "Skill edit detected: $TARGET_FILE" >&2
- echo "Running dart_skills_lint..." >&2
+ echo "Running skills_lint..." >&2
# Run the skills linter from tool/ directory
- (cd tool && dart run dart_skills_lint:cli)
+ (cd tool && dart run skills_lint)
fi
# PostToolUse expects an empty JSON object on stdout
diff --git a/.agents/skills/dart_skills_lint_ignore.json b/.agents/skills/skills_lint_ignore.json
similarity index 100%
rename from .agents/skills/dart_skills_lint_ignore.json
rename to .agents/skills/skills_lint_ignore.json
diff --git a/pubspec.lock b/pubspec.lock
index e746a9d..72b7d24 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -209,15 +209,6 @@
url: "https://pub.dev"
source: hosted
version: "0.0.3"
- dart_skills_lint:
- dependency: transitive
- description:
- path: "tool/dart_skills_lint"
- ref: "05e5a45fa412ddbdd1d694eee0c71f4bbaea2617"
- resolved-ref: "05e5a45fa412ddbdd1d694eee0c71f4bbaea2617"
- url: "https://github.com/flutter/skills"
- source: git
- version: "0.4.0"
dart_style:
dependency: transitive
description:
@@ -758,6 +749,15 @@
url: "https://pub.dev"
source: hosted
version: "3.0.0"
+ skills_lint:
+ dependency: transitive
+ description:
+ path: "packages/skills_lint"
+ ref: e6e695e1550f81342fe5acd4dbe65040b5aa44c3
+ resolved-ref: e6e695e1550f81342fe5acd4dbe65040b5aa44c3
+ url: "https://github.com/google/skills_lint.dart.git"
+ source: git
+ version: "0.5.1"
sky_engine:
dependency: transitive
description: flutter
diff --git a/tool/pubspec.yaml b/tool/pubspec.yaml
index 98aed9d..37053ad 100644
--- a/tool/pubspec.yaml
+++ b/tool/pubspec.yaml
@@ -23,11 +23,11 @@
yaml: ^3.1.2
dev_dependencies:
- # TODO(https://github.com/flutter/devtools/issues/9771): Update to published version
- dart_skills_lint:
- git:
- url: https://github.com/flutter/skills
- path: tool/dart_skills_lint
- ref: 05e5a45fa412ddbdd1d694eee0c71f4bbaea2617
logging: ^1.1.1
+ # TODO(https://github.com/flutter/devtools/issues/9771): Update to published version
+ skills_lint:
+ git:
+ url: https://github.com/google/skills_lint.dart.git
+ path: packages/skills_lint
+ ref: e6e695e1550f81342fe5acd4dbe65040b5aa44c3
test: ^1.25.8
diff --git a/tool/dart_skills_lint.yaml b/tool/skills_lint.yaml
similarity index 95%
rename from tool/dart_skills_lint.yaml
rename to tool/skills_lint.yaml
index 150e390..14fbb78 100644
--- a/tool/dart_skills_lint.yaml
+++ b/tool/skills_lint.yaml
@@ -1,7 +1,7 @@
# Copyright 2026 The Flutter Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
-dart_skills_lint:
+skills_lint:
rules:
check-relative-paths: error
check-absolute-paths: error
diff --git a/tool/test/validate_skills_test.dart b/tool/test/validate_skills_test.dart
index 04736e7..6adbabe 100644
--- a/tool/test/validate_skills_test.dart
+++ b/tool/test/validate_skills_test.dart
@@ -3,11 +3,12 @@
// found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
import 'dart:async';
-import 'package:dart_skills_lint/dart_skills_lint.dart';
+
import 'package:logging/logging.dart';
+import 'package:skills_lint/skills_lint.dart';
import 'package:test/test.dart';
-const String _configFilePath = 'dart_skills_lint.yaml';
+const String _configFilePath = 'skills_lint.yaml';
void main() {
test('Validate DevTools Skills', () async {