Getting Started
claudelint is a linter for Claude Code projects. It validates CLAUDE.md files, skills, settings, hooks, MCP servers, plugins, agents, and more — surfacing misconfigurations and standardizing your setup before issues cause silent failures.
Set Up with Claude
Let Claude walk you through setup. Copy this prompt into a Claude Code session:
Set up claudelint for this project to validate my Claude Code files.
Follow the setup guide at https://claudelint.com/setup-guide.mdClaude will read the guide, create a task list, and walk you through each step — install location, rule preset, hooks, validation, and plugin installation.
Manual Setup
If you prefer to install and configure claudelint yourself, follow these steps.
1. Install
Requires Node.js 22.13.0 or later.
Upgrading from 0.8.x
claudelint 0.9.0 raises the Node.js minimum from 22.0.0 to 22.13.0 for its updated interactive prompt dependencies. Check node --version in your terminal and CI environment, and upgrade Node before updating claudelint if necessary. Existing lint configuration files do not need a migration.
npm install --save-dev claude-code-lintOr install globally:
npm install -g claude-code-lint2. Configure
claudelint initThis creates .claudelintrc.json with the recommended preset and .claudelintignore for excluding files. Add .claudelint-cache/ to your .gitignore if it isn't there already -- claudelint uses this directory for caching and it should not be committed. See Configuration for presets, per-rule overrides, and advanced options.
3. Validate
claudelintThat's it. claudelint scans your project and reports any issues. See the CLI Reference for all available commands and flags.
4. Optional: Claude Code Plugin
Install the claudelint plugin for slash commands like /validate-all and /optimize-cc-md directly inside Claude Code sessions. See the Plugin Guide for installation.
5. Optional: SessionStart Hook
Automatically validate your project every time a Claude Code session begins:
claudelint init --hooksSee Hooks for details and alternative hook types.
What Gets Validated
claudelint checks 10 different aspects of your Claude Code project:
- CLAUDE.md - File size, imports, paths, content structure
- Skills - Names, descriptions, security, versioning
- Settings - Permissions, environment variables
- Hooks - Event types, script references
- MCP Servers - Transport types, URLs, environment variables
- Plugins - Manifest structure, component references
- Agents - Names, descriptions, tools, models
- LSP - Transport config, language IDs, extensions
- Output Styles - Name validation
- Commands - Migration checks
Next Steps
- Configuration - Presets, per-rule overrides, ignore patterns
- Rules Overview - Browse all 116 rules
- CI/CD Integration - GitHub Actions, GitLab CI, SARIF output
- Auto-fix - Automatically fix common issues
- Custom Rules - Write your own validation rules
- Why claudelint? - What problems it solves and how