mcpbeat Sign in

Code Linting Skill for Claude

Run Python (ruff) and JavaScript (Biome) linting.

7k tokens
context cost
the whole folder, loaded on every use
3
files
instructions only
0
copies elsewhere
how many repositories repackaged it
413
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/notque/vexjoy-agent --skill code-linting

The instruction itself

20 sections, as written by the author

Code Linting Skill

Unified linting workflow for Python (ruff) and JavaScript (Biome). Covers check, format, and auto-fix for both languages. Only handles Python and JavaScript/TypeScript -- complex logic issues and other languages are out of scope.

Reference Loading Table

| Signal | Load These Files | Why |

|---|---|---|

| Python violations, ruff rules, F401/E711/B006/UP errors | ruff-rules-reference.md | Routes to the matching deep reference |

| ruff not found, pyproject.toml config, ruff version differences | ruff-rules-reference.md | Routes to the matching deep reference |

| JavaScript/TypeScript violations, Biome rules, noVar/useConst/noDoubleEquals | biome-rules-reference.md | Routes to the matching deep reference |

| biome not found, biome.json config, migrating from ESLint | biome-rules-reference.md | Routes to the matching deep reference |

| Linting CI failures, format check vs lint check differences | biome-rules-reference.md | Routes to the matching deep reference |

Instructions

1. Read Project Configuration

Before running any linter, read the repository's CLAUDE.md for project-specific linting rules -- those override every default below. Then locate the project's linter config files (pyproject.toml for ruff, biome.json for Biome). All linter invocations must use these configs as-is; never override line width, rule sets, or other project settings.

2. Detect Languages and Run Checks

When a project contains both Python and JavaScript/TypeScript, lint both unless the user explicitly requests a single language. Run the check command first to see what violations exist:

# Python -- use project venv when available
ruff check .
# or: ./venv/bin/ruff check .

# JavaScript/TypeScript
npx @biomejs/biome check src/

Always display the complete linter output. Never summarize results as "no issues found" or describe output secondhand -- show the actual command output so the user can see every error, warning, and style issue together.

3. Review Output Before Fixing

Read the full output and understand what violations exist and their severity before applying any fixes. Jumping straight to --fix without reviewing risks auto-removing imports that are still needed or making changes that reduce readability.

4. Apply Auto-Fixes

Apply --fix for safe categories: formatting, import ordering, and style issues that the linter can correct mechanically.

# Python
ruff check --fix .
ruff format .

# JavaScript/TypeScript
npx @biomejs/biome check --write src/
npx @biomejs/biome format --write src/

Only run the linters and fixes that were requested. Do not add custom rules, configuration changes, or additional tooling unless the user explicitly asks.

5. Review the Diff

After auto-fix, review the diff to verify changes are correct and safe:

git diff

Auto-fixes can occasionally remove imports that are still needed, reformat code in ways that hurt readability, or introduce subtle bugs through variable shadowing changes. Revert any problematic auto-fixes before proceeding.

6. Fix Remaining Issues Manually

For violations that cannot be auto-fixed, explain each one and how to resolve it:

Python common fixes:

  • Unused import (F401): Remove or use the import
  • Import order (I001): Run ruff check --fix
  • Line too long (E501): Break into multiple lines or adjust line-length config

JavaScript common fixes:

  • noVar: Replace var with let/const
  • useConst: Use const for unchanging values
  • noDoubleEquals: Use === instead of ==

7. Verify Before Commit

Run the linter one final time to confirm zero violations before suggesting a commit:

ruff check .
ruff format --check .
npx @biomejs/biome check src/

Report output factually -- no self-congratulation, just the command results.

8. Clean Up

Remove any temporary lint report files or cache files created during execution.

Combined Commands (if Makefile configured)

make lint       # Check both Python and JS
make lint-fix   # Fix both Python and JS

Configuration Reference

| Tool | Config | Typical Line Width |

|------|--------|-------------------|

| ruff | pyproject.toml | 88-120 |

| biome | biome.json | 80-120 |

Optional Modes

  • Strict mode: Treat warnings as errors (fail on any issue) -- enable when requested
  • Format only: Skip linting, only run formatting -- enable when requested
  • Ignore specific rules: Disable particular lint rules for edge cases -- enable when requested

Error Handling

Error: "ruff not found"

Cause: Virtual environment not activated or ruff not installed

Solution:

  • Use virtual environment path: ./venv/bin/ruff or ./env/bin/ruff
  • Or install globally: pip install ruff
  • Or use pipx: pipx run ruff check .

Error: "biome not found"

Cause: Biome not installed in project

Solution: Run npx @biomejs/biome to use npx-based execution

Error: "Configuration file not found"

Cause: Running from wrong directory

Solution: cd to project root where pyproject.toml/biome.json exist

Reference Loading

Load these files when the task involves the corresponding domain:

| Task type | Reference file |

|-----------|---------------|

| Python violations, ruff rules, F401/E711/B006/UP errors | references/ruff-rules-reference.md |

| ruff not found, pyproject.toml config, ruff version differences | references/ruff-rules-reference.md |

| JavaScript/TypeScript violations, Biome rules, noVar/useConst/noDoubleEquals | references/biome-rules-reference.md |

| biome not found, biome.json config, migrating from ESLint | references/biome-rules-reference.md |

| Linting CI failures, format check vs lint check differences | references/ruff-rules-reference.md + references/biome-rules-reference.md |

References

Other skills for the same job

different authors, same section of the catalogue
Git Commit
by github
vendor ×3

Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff, (3) Interactive commit with optional type/scope/description overrides, (4) Intelligent file staging for logical grouping

799 tokens
Github Code Review
by ComeOnOliver
×3

Comprehensive GitHub code review with AI-powered swarm coordination

13k tokens
Commit Work
by softaworks
×2

Create high-quality git commits: review/stage intended changes, split into logical commits, and write clear commit messages (including Conventional Commits). Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits.

2k tokens
Verification & Quality Assurance
by Microck
×2

Comprehensive truth scoring, code quality verification, and automatic rollback system with 0.95 accuracy threshold for ensuring high-quality agent outputs and codebase reliability.

4k tokens
Gh CLI
by christophacham
×2

GitHub CLI (gh) comprehensive reference for repositories, issues, pull requests, Actions, projects, releases, gists, codespaces, organizations, extensions, and all GitHub operations from the command line.

10k tokens
Github
by Dicklesworthstone
×2

GitHub CLI - manage repositories, issues, pull requests, actions, releases, and more from the command line.

1k tokens
Codebase Cleanup Refactor Clean
by ComeOnOliver
×2

You are a code refactoring expert specializing in clean code principles, SOLID design patterns, and modern software engineering best practices. Analyze and refactor the provided code to improve its quality, maintainability, and performance.

9k tokens
Codebase Cleanup Tech Debt
by ComeOnOliver
×2

You are a technical debt expert specializing in identifying, quantifying, and prioritizing technical debt in software projects. Analyze the codebase to uncover debt, assess its impact, and create acti

6k tokens

How to use it

Copy the folder

Take notque/code-linting from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip, npx. Without those the skill loads but fails at the first command.