skills_lint 0.5.1
skills_lint: ^0.5.1 copied to clipboard
A static analysis linter for Agent Skills (SKILL.md) written in Dart. Validates frontmatter, naming, paths, and structure for use in CI and pre-commit hooks.
0.5.1 #
- Migrated developer setup, integration recipes, and documentation to use
dart install skills@^1.0.0anddart install skills_lint. - Removed legacy npm-based tooling artifacts (
.npmrcandskills-lock.json).
0.5.0 #
- Added support for rule-specific custom parameters in
dart_skills_lint.yaml, allowing rules to be configured with parameter maps (e.g. passing exclusions, thresholds, length limits, etc.). - Refactored
path-does-not-existfrom an inline structure check into a class-basedSkillRule, enabling it to be disabled or overridden. - Exposed namespaced CLI flags for custom parameters (e.g.
--path-does-not-exist-exclude) with support for empty string overrides to clear parameters. - Implemented parameter type-coercion for
int,bool, andListtypes parsed from the command line.
Deprecations & Refactoring #
- Refactored
ValidationResultout ofsrc/validator.dartintosrc/models/validation_result.dart.src/validator.dartre-exportsValidationResultto preserve complete backward compatibility for packages importing internal structure directly. - Deprecated and transitioned rule configuration concepts across model structures and APIs to use consistent
ruleConfigsnaming, alongside backwards-compatible deprecation shims:- Deprecated
Validatorconstructor parameterruleOverridesin favor ofruleConfigs. - Deprecated
Configuration.configuredRulesandLintTargetConfig.rulesgetters in favor ofruleConfigs. - Deprecated
ValidationSessionconstructor parameterresolvedRulesin favor ofresolvedRuleConfigs. - Deprecated
ValidationSessionmethodresolveRulesForPathin favor ofresolveRuleConfigsForPath.
- Deprecated
0.4.0 #
- Fixed issue #166 by adding support for configuring individual skills via the
individual_skills:key indart_skills_lint.yaml, enabling path-specific rule severity mapping without relying on root directory scanning. - Native binaries for macOS arm64, macOS x64, Linux x64, and Linux
arm64 are now published to GitHub Releases. Install without the
Dart SDK via
curl -fsSL .../install.sh | bash, or download the tarball directly and verify its SHA256. - macOS binaries are not yet code-signed; clear the
quarantine flag with
xattr -d com.apple.quarantine $(which dart_skills_lint)on first launch. - The
dart pub global activate dart_skills_lintanddev_dependencies:install paths are unchanged.
0.3.1 #
--fixnow writes fixes to disk; pair with--dry-run(--fix --dry-run) to preview the proposed diff without writing. The legacy--fix-applyflag still works but is deprecated and emits a notice on stderr.- Running the CLI with no arguments and no
.claude/skillsor.agents/skillsdirectory present now prints a short onboarding guide explaining how to point the linter at a skill or a skills root. description-too-longerrors now report the actual character count and show an excerpt with a|HERE|marker at the cutoff so authors can see exactly where the text went over. The same diagnostic shape is now used for thecompatibilityfield's 500-character limit.invalid-skill-nameerrors now disambiguate the frontmattername:field from the parent directory name, quote the offending value, and suggest a normalized form. The directory-mismatch error offers both directions of the fix (edit the field or rename the directory).check-relative-pathserrors now include the resolved absolute path and, when a near-miss filename exists in the same directory, surface aDid you mean "..."?suggestion that preserves the link's directory prefix.- New
example/directory with referencevalidandinvalidskill fixtures and a walkthrough. - New "Recipes" section in
README.mdwith copy-pasteable GitHub Actions and pre-commit hook integrations.
0.3.0 #
- Exposed
ConfigParser.loadConfig()API to load configuration files programmatically. - Supported tilde expansion (
~/) in configuration file paths. - Updated documentation to clarify CLI vs. Dart Test usage.
0.2.0 #
- Refactored validator to a pluggable rule-based architecture.
- Added support for custom rules via
SkillRule. - Added runtime assertion for duplicate rule names.
- Added warning when a rule emits an error with severity different from its definition.
- Updated
README.mdwith custom rules documentation. - Breaking Change: Enabling a rule via CLI flag now sets its severity to
errorinstead ofwarning.
0.1.0 #
- Initial version.