Lint
The lint command validates an Agent Skill against specification and style guidelines. It provides more comprehensive checks than the validate command and supports multiple output formats for integration with CI/CD systems.
Usage
If [path] is not provided, it defaults to the current directory.
Flags
| Flag | Shorthand | Description | Default |
|---|---|---|---|
--format |
Output format (gnu, sarif, checkstyle) |
gnu |
|
--output |
Output file path | stdout |
|
--fail-on |
Categories to fail on (spec, style) |
spec, style |
|
--fix |
Automatically fix issues where possible | false |
Output Formats
GNU (Default)
The default format is compatible with standard GNU error tools and many editors.
SARIF
The Static Analysis Results Interchange Format (SARIF) is a standard JSON format supported by GitHub Advanced Security and other tools.
Checkstyle
The Checkstyle XML format is supported by many CI/CD systems, including Jenkins.
Categories
- spec: checks for violations of the Skill specification (e.g., missing fields, invalid naming). These are considered Errors.
- style: checks for style guidelines (e.g., description formatting). These are considered Warnings.
Examples
Lint the current directory and output to stdout:
Lint a specific directory and output to a file in SARIF format:
Fail only on specification violations, ignoring style warnings:
Automatically fix style issues:
Recursive Linting
The lint command recursively scans the provided directory (or current directory by default) for SKILL.md files and lints all of them.
GitHub Workflow
You can use the provided reusable workflow to lint skills in your repository: