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
-
Lint/Fix: npm run lint or npx eslint "path" --fix
-
Types: npx tsc --noEmit
-
Security: npm audit --audit-level=high
Python
-
Linter (Ruff): ruff check "path" --fix (Fast & Modern)
-
Security (Bandit): bandit -r "path" -ll
-
Types (MyPy): mypy "path"
The Quality Loop
-
Write/Edit Code
-
Run Audit: npm run lint && npx tsc --noEmit
-
Analyze Report: Check the "FINAL AUDIT REPORT" section.
-
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>