The linter for Claude Code skill.
Project description
Claude Skill Lint
The linter for Claude Code skill.
Advantage
- Wraps two purpose-built validators — skill-validator for
SKILL.mdstructure and frontmatter, andmarkdownlint-cli2for Markdown hygiene — behind a single command, so you don't need to discover, install, and orchestrate them yourself. csklint installfetches and installs both tools (a Go binary and an npm package) for you, verifying the binary's SHA-256 checksum before installing it, on macOS, Debian, and Ubuntu.csklint runexecutes as a pytest suite, so failures show up as familiar pytest output and slot straight into CI pipelines or pre-commit hooks without extra tooling.
Quickstart
Install the CLI:
pip install csklint
Install the tools it depends on (skill-validator and markdownlint-cli2):
csklint install
Lint your skills (defaults to ~/.claude/skills):
csklint run
A passing run prints a pytest summary ending in ... passed; a failing skill reports the offending
file and the validator's error output.
How do I...
How do I lint skills in a different directory?
Pass the directory as an argument:
csklint run path/to/skills
How do I use this in CI?
Run csklint install once per CI run, then csklint run <skills_dir>; both exit non-zero on failure
so the step fails the build.
- run: csklint install
- run: csklint run skills/
How do I install without root privileges?
csklint install writes skill-validator to /usr/local/bin, which typically requires root. Re-run
the command with sudo if it reports a permission error.
Credits
This package was created with Cookiecutter and the yukihiko-shinoda/cookiecutter-pypackage project template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file csklint-0.1.0.tar.gz.
File metadata
- Download URL: csklint-0.1.0.tar.gz
- Upload date:
- Size: 16.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee1b72a483e9cb49bc356e6eab094f5663acc80a8c90fda6f574b3a15691043f
|
|
| MD5 |
25ce028f74f0c752bfda37076a47349b
|
|
| BLAKE2b-256 |
84976bcc92789229523271003adc1434ed789d82436867fcc1c1c3b73be7bb99
|
File details
Details for the file csklint-0.1.0-py3-none-any.whl.
File metadata
- Download URL: csklint-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc806eb8a00a6e9657ded1563d6b05cce97d92a8d0843e9b57fd561cacf7b239
|
|
| MD5 |
c23c188875ca131efa7b69aa2479853f
|
|
| BLAKE2b-256 |
9a69164938f1914c99f8932fb4c919ffe2e55397f1cbd377003811bc9c78dec4
|