linter autofix patterns

Linter Autofix Patterns

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "linter autofix patterns" with this command: npx skills add laurigates/claude-plugins/laurigates-claude-plugins-linter-autofix-patterns

Linter Autofix Patterns

Quick reference for running linter autofixes across languages.

Autofix Commands

Language Linter Autofix Command

TypeScript/JS biome npx @biomejs/biome check --write .

TypeScript/JS biome format npx @biomejs/biome format --write .

Python ruff ruff check --fix .

Python ruff format ruff format .

Rust clippy cargo clippy --fix --allow-dirty

Rust rustfmt cargo fmt

Go gofmt gofmt -w .

Go go mod go mod tidy

Shell shellcheck No autofix (manual only)

Common Fix Patterns

JavaScript/TypeScript (Biome)

Unused imports

// Before import { useState, useEffect, useMemo } from 'react'; // Only useState used

// After import { useState } from 'react';

Prefer const

// Before let x = 5; // Never reassigned

// After const x = 5;

Python (Ruff)

Import sorting (I001)

Before

import os from typing import List import sys

After

import os import sys from typing import List

Unused imports (F401)

Before

import os import sys # unused

After

import os

Line too long (E501)

Before

result = some_function(very_long_argument_one, very_long_argument_two, very_long_argument_three)

After

result = some_function( very_long_argument_one, very_long_argument_two, very_long_argument_three, )

Rust (Clippy)

Redundant clone

// Before let s = String::from("hello").clone();

// After let s = String::from("hello");

Use if let

// Before match option { Some(x) => do_something(x), None => {}, }

// After if let Some(x) = option { do_something(x); }

Shell (ShellCheck)

Quote variables (SC2086)

Before

echo $variable

After

echo "$variable"

Use $(...) instead of backticks (SC2006)

Before

result=command

After

result=$(command)

Quick Autofix (Recommended)

Auto-detect project linters and run all appropriate fixers in one command:

Fix mode: detect linters and apply all autofixes

bash "${CLAUDE_PLUGIN_ROOT}/skills/linter-autofix/scripts/detect-and-fix.sh"

Check-only mode: report issues without fixing

bash "${CLAUDE_PLUGIN_ROOT}/skills/linter-autofix/scripts/detect-and-fix.sh" --check-only

The script detects biome, eslint, prettier, ruff, black, clippy, rustfmt, gofmt, golangci-lint, and shellcheck. It reports which linters were found, runs them, and shows modified files. See scripts/detect-and-fix.sh for details.

Manual Workflow

  • Run autofix first: ruff check --fix . && ruff format .

  • Check remaining issues: ruff check .

  • Manual fixes for complex cases

  • Verify: re-run linter to confirm clean

When to Escalate

Stop and use different approach when:

  • Fix requires understanding business logic

  • Multiple files need coordinated changes

  • Warning indicates potential bug (not just style)

  • Security-related linter rule

  • Type error requires interface/API changes

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ruff linting

No summary provided by upstream source.

Repository SourceNeeds Review
General

imagemagick-conversion

No summary provided by upstream source.

Repository SourceNeeds Review
General

jq json processing

No summary provided by upstream source.

Repository SourceNeeds Review