name: NotInvalid description: A deliberately broken fixture used by example/README.md to show what each rule's error output looks like. secret_field: not allowed by the spec metadata: internal: true
Invalid example skill
This skill deliberately trips three rules so the CLI's diagnostic output can be inspected end-to-end. One fires under defaults; two need to be enabled to surface as errors (the spec ships them at lower severities).
invalid-skill-name(error by default) — the frontmattername:isNotInvalid, which is not lowercase and does not match the parent directoryinvalid.disallowed-field(disabled by default; enable via--disallowed-fieldor YAML config) —secret_field:is not in the spec's allowed field list.check-absolute-paths(warning by default; escalate to error via--check-absolute-pathsor YAML config) — the link below uses an absolute filesystem path, which is not portable across machines.
The broken link: absolute link
Run it with default rules:
dart run dart_skills_lint --skill ./example/invalid
…and again with every rule turned up to error:
dart run dart_skills_lint --skill ./example/invalid \
--disallowed-field --check-absolute-paths
Expected: non-zero exit, error messages naming each rule that is enabled.