linting | Skill Performance & Reviews | TopRankSkills

TopRank Skills

Home / Skills / tools / linting

linting

maintained by frostaura

star 27 account_tree 24 verified_user MIT License
bolt View GitHub

name: linting description: Add or extend lint/format tooling and ensure it runs locally (Makefile) and in CI. Lint/build are always required in Gaia.

Linting (Add/Extend + Enforce)

When to use

Use when:

  • Repo has no lint/format tooling
  • Tooling exists but isn’t enforced (no CI / no Make targets)
  • New stack introduced (new language/runtime)
  • QA Gatekeeper finds lint drift or regressions

Lint is required and blocking.

Inputs

  • Detected stack(s) and frameworks
  • Existing config files (if any)
  • Existing CI and Make targets

Outputs

  • Lint/format tool configured for the stack
  • make lint exists and passes
  • CI runs lint (and fails on violations)
  • Repo conventions documented (briefly) in /docs/testing/how-to-run.md (or equivalent)

Rules

  • Prefer existing repo conventions if present.
  • If none exist, use stack-default skills for the detected platform.
  • Do not introduce multiple linters unless there is a clear need.
  • Avoid noisy rules that cause churn; prioritize correctness and consistency.

Step 1 — Detect current lint/format state

Look for:

  • JS/TS: ESLint, Prettier, Biome
  • .NET: dotnet format, analyzers, EditorConfig
  • Python: ruff, black, isort
  • Flutter/Dart: dart format, dart analyze, flutter analyze
  • MAUI: .NET analyzers + formatting + EditorConfig

Record:

  • Tool(s)
  • Config file location
  • How it’s invoked today

Step 2 — Choose the canonical commands

Prefer Make targets:

  • make lint (required)
  • Optionally: make format (if repo supports auto-fix) If Makefile missing: create a task to add it (blocking if repo needs to run locally).

Step 3 — Add/extend configuration (by stack)

JS/TS (web)

  • Ensure a single “lint” entrypoint exists
  • Configure formatting either via Prettier/Biome
  • Ensure lint fails on errors (and warnings if repo policy requires)

.NET (API/MAUI)

  • Ensure .editorconfig exists
  • Use dotnet format (or analyzers) as the canonical lint/format step
  • Enforce analyzers at build (as appropriate)

Python

  • Prefer ruff as a unified linter/formatter where feasible
  • Ensure python -m ... commands are stable across environments

Flutter

  • Use dart format + dart analyze (or flutter analyze) as canonical steps

Step 4 — Wire into CI

  • Add lint to CI workflow(s)
  • Ensure CI uses the same command as local Make targets (make lint)

Step 5 — Validate and minimize churn

  • Run lint locally
  • Apply autofix only if repo policy supports it
  • Avoid massive formatting-only diffs unless specifically requested or necessary

Step 6 — Update docs + skills (skill drift is blocking)

  • Update /docs/testing/how-to-run.md to include lint commands (Make targets).
  • If you changed conventions used in any skill docs, update those skills in the same change set.

Suggested required_gates[]

  • Always include: lint, ci
  • Usually includes: build (to ensure analyzers/build rules are compatible)

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!

Skill Details

GitHub Stars 27
GitHub Forks 24
Created Mar 2026
Last Updated 3个月前
tools tools automation tools

Related Skills

specs-gen
chevron_right
glm-coding-agent
chevron_right
creating-pr
chevron_right
writing-skills
chevron_right
reviewing-pr
chevron_right

Build your own?

Join 12,000+ developers contributing to the Claude ecosystem.