lint-and-validate

Run lint, type checks, and security audits on Node.js and Python projects.

Updated Aug 30, 2024
One-click install
npx skills add https://github.com/jfrometa/esquizo --skill lint-and-validate-jfrometa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lint-and-validate
Source: https://github.com/jfrometa/esquizo/tree/main/.agent/skills/lint-and-validate
Command: npx skills add https://github.com/jfrometa/esquizo --skill lint-and-validate-jfrometa

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill provides automatic quality control, linting, and static analysis procedures to ensure syntax correctness and project standards after every code modification. It supports both Node.js/TypeScript and Python ecosystems, guiding teams to catch issues early.

Core Features & Use Cases

  • Node.js / TypeScript Linting: npm run lint or npx eslint "." to fix style and syntax.
  • Type Checking: npx tsc --noEmit for TypeScript projects and mypy "." for Python projects.
  • Security Audits: npm audit --audit-level=high for Node, bandit -r "." -ll for Python.
  • Quality Loop & Enforcement: After edits, run audits, review results, and fix issues before committing.
  • Strict Gatekeeping: No changes are deemed complete until all checks pass.

Quick Start

Run the lint-and-validate workflow on your project with:

  • python scripts/lint_runner.py <project_path> (unified linting runner)
  • Or perform Node.js checks: npm run lint, npx tsc --noEmit
  • Or perform Python checks: ruff check ".", bandit -r ".", mypy "."

Frequently Asked Questions about lint-and-validate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate lint and type checking after code changes?

You automate lint and type checking by running a unified linting runner script that executes npm, eslint, tsc, ruff, mypy, and bandit, enforcing a strict pass/fail loop until all issues are resolved.

What is static analysis and security auditing for Python and TypeScript projects?

Static analysis and security auditing for Python and TypeScript projects is the process of running eslint, tsc, ruff, mypy, and bandit to catch syntax errors, style issues, and security vulnerabilities before code is committed.

Can I use eslint and tsc for Node.js quality checks in my existing project?

Yes, you can use eslint and tsc for Node.js quality checks. The workflow relies on your commonly configured toolchain, running npm run lint or npx eslint and npx tsc --noEmit to enforce syntax correctness and project standards.

How do I run mypy and bandit security scans for Python?

You run mypy and bandit security scans for Python by executing mypy for type checking and bandit -r with a low severity level for security auditing, ensuring no changes are complete until all checks pass.

What happens if linting or security audits fail during development?

If linting or security audits fail, the quality loop enforces strict gatekeeping by blocking changes from being deemed complete until all identified issues are reviewed and fixed.