lint
Intelligently detects project type (Node.js/React or Python) and runs appropriate linting tools. Use when checking code quality or validating project for style issues.
When & Why to Use This Skill
The Linting Skill is an intelligent automated assistant designed to maintain high code quality and stylistic consistency across diverse programming environments. It automatically detects project types—specifically Python and Node.js/React—and executes the most appropriate static analysis tools like Ruff, ESLint, or Flake8. By providing actionable feedback on syntax errors and style violations, it streamlines the development workflow and ensures adherence to industry best practices.
Use Cases
- Automated Style Enforcement: Quickly validate that your Python or JavaScript code adheres to project-specific style guides (like PEP 8 or Airbnb) without manual setup.
- Pre-Review Quality Checks: Run a comprehensive linting pass before submitting a Pull Request to catch common bugs and formatting issues early in the development cycle.
- Multi-Language Project Management: Seamlessly manage code quality in polyglot repositories where both frontend (React/Node.js) and backend (Python) codebases coexist.
- Technical Debt Identification: Use the skill to scan legacy projects and identify deprecated patterns or unoptimized code that requires refactoring.
- Onboarding and Standardization: Help new team members maintain consistent code formatting by providing instant feedback through simple natural language commands.
| name | lint |
|---|---|
| description | Intelligently detects project type (Node.js/React or Python) and runs appropriate linting tools. Use when checking code quality or validating project for style issues. |
| user-invocable | true |
| allowed-tools | Read, Bash(python:*), Bash(npm:*), Bash(pnpm:*), Bash(uv:*), Bash(ruff:*), Bash(eslint:*), Bash(flake8:*) |
Linting Skill
Automatically detects your project type and runs the appropriate linter.
Supported Project Types
- Python: Uses
ruff check,flake8, orpylintbased on availability - JavaScript/Node/React: Uses
npm run lint,eslint, or scripts in package.json - Multi-language: Runs linting for all detected project types
Usage
Simply ask Claude to lint your project:
- "Lint this project"
- "Check for code style issues"
- "Run linters"
- "Check code quality"
Or use the slash command: /lint
How It Works
Detects project type by scanning for configuration files:
- Python:
pyproject.toml,setup.py,requirements.txt,.pyfiles - JavaScript:
package.json
- Python:
Identifies available linters in each project
Runs linters and reports results with actionable feedback
Linting Strategy
Python Projects (Priority Order)
- ruff - Modern, fast linter (preferred for data science work)
- flake8 - Classic PEP 8 style checker
- pylint - Comprehensive static analyzer
Node.js/React Projects (Priority Order)
- npm run lint - Uses project's configured lint script
- eslint - Standard JavaScript/React linter
- Provides setup instructions if no linter found
Advanced Usage
For more details on linting best practices and configuration, see reference.md.
Troubleshooting
- No linters found: Skill provides installation instructions for your project type
- Python linters: Install with
uv pip install ruff(recommended) - Node linters: Install with
npm install --save-dev eslint