lint-and-validate

Installation
Summary

Automatic code quality checks and validation across Node.js, TypeScript, and Python projects.

  • Runs linting, type checking, and security audits with ecosystem-specific tools (ESLint/TypeScript for Node.js, Ruff/MyPy/Bandit for Python)
  • Enforces a mandatory quality loop: write code, run audit, analyze report, fix issues, and repeat until all checks pass
  • Includes helper scripts for unified lint checking and type coverage analysis across project paths
  • Blocks code submission until all validation checks pass, preventing errors from reaching production
SKILL.md

Lint and Validate Skill

MANDATORY: Run appropriate validation tools after EVERY code change. Do not finish a task until the code is error-free.

Procedures by Ecosystem

Node.js / TypeScript

  1. Lint/Fix: npm run lint or npx eslint "path" --fix
  2. Types: npx tsc --noEmit
  3. Security: npm audit --audit-level=high

Python

  1. Linter (Ruff): ruff check "path" --fix (Fast & Modern)
  2. Security (Bandit): bandit -r "path" -ll
  3. Types (MyPy): mypy "path"

The Quality Loop

  1. Write/Edit Code
  2. Run Audit: npm run lint && npx tsc --noEmit
  3. Analyze Report: Check the "FINAL AUDIT REPORT" section.
  4. Fix & Repeat: Submitting code with "FINAL AUDIT" failures is NOT allowed.

Error Handling

  • If lint fails: Fix the style or syntax issues immediately.
  • If tsc fails: Correct type mismatches before proceeding.
  • If no tool is configured: Check the project root for .eslintrc, tsconfig.json, pyproject.toml and suggest creating one.

Strict Rule: No code should be committed or reported as "done" without passing these checks.


Scripts

Script Purpose Command
scripts/lint_runner.py Unified lint check python scripts/lint_runner.py <project_path>
scripts/type_coverage.py Type coverage analysis python scripts/type_coverage.py <project_path>

When to Use

This skill is applicable to execute the workflow or actions described in the overview.

Weekly Installs
491
GitHub Stars
31.3K
First Seen
Jan 25, 2026
Installed on
opencode428
gemini-cli416
codex398
github-copilot377
cursor373
amp332