lint

eriknovak's avatarfrom eriknovak

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.

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 9, 2026

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.
namelint
descriptionIntelligently 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-invocabletrue
allowed-toolsRead, 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, or pylint based 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

  1. Detects project type by scanning for configuration files:

    • Python: pyproject.toml, setup.py, requirements.txt, .py files
    • JavaScript: package.json
  2. Identifies available linters in each project

  3. Runs linters and reports results with actionable feedback

Linting Strategy

Python Projects (Priority Order)

  1. ruff - Modern, fast linter (preferred for data science work)
  2. flake8 - Classic PEP 8 style checker
  3. pylint - Comprehensive static analyzer

Node.js/React Projects (Priority Order)

  1. npm run lint - Uses project's configured lint script
  2. eslint - Standard JavaScript/React linter
  3. 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