static-code-analysis-typescript

Creates and audits ESLint, Prettier, TypeScript, Husky, and CI quality gate setups for TypeScript repositories.

113|17|Updated Oct 5, 2025
One-click install
npx skills add https://github.com/jaktestowac/awesome-copilot-for-testers --skill static-code-analysis-typescript-jaktestowac
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: static-code-analysis-typescript
Source: https://github.com/jaktestowac/awesome-copilot-for-testers/tree/main/plugins/static-code-analysis-typescript/skills/static-code-analysis-typescript
Command: npx skills add https://github.com/jaktestowac/awesome-copilot-for-testers --skill static-code-analysis-typescript-jaktestowac

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? TypeScript projects often accumulate inconsistent linting, formatting, and type-checking configurations: legacy ESLint configs, conflicting import sorting plugins, missing CI quality gates, and unclear script naming. This Skill standardizes the entire static analysis toolchain so local hooks and CI enforce the same rules. ## Core Features & Use Cases - Setup and Modernization: Creates ESLint flat config with typescript-eslint, strict tsconfig, Prettier, Husky, and lint-staged from scratch or migrates legacy setups. - Import Sorting Migration: Moves projects from @trivago or @ianvs Prettier import sorting plugins to eslint-plugin-simple-import-sort, resolving VS Code organizeImports conflicts. - CI Quality Gates: Adds non-mutating lint, format:check, and tsc:check jobs, preferring integration into existing GitHub Actions workflows over standalone pipelines. - Use Case: A Playwright + TypeScript test repository has a legacy .eslintrc, no pre-commit hooks, and no CI checks. The Skill audits the repo, classifies the architecture, installs modern tooling, normalizes package.json scripts, and adds a quality job to the existing test workflow. ## Quick Start Ask the agent to review this repository and standardize the ESLint, TypeScript, Husky, lint-staged, and CI quality gate setup.

Frequently Asked Questions about static-code-analysis-typescript

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

FAQPage Schema
How do I set up ESLint flat config with TypeScript?▼

Install eslint, @eslint/js, typescript-eslint, and globals as dev dependencies, then create an eslint.config.mjs exporting a flat config array. Add typescript-eslint recommended configs, scope TypeScript rules to .ts files, and place eslint-config-prettier last to disable conflicting formatting rules.

How to migrate from @trivago/prettier-plugin-sort-imports to ESLint import sorting?▼

Uninstall the trivago plugin, install eslint-plugin-simple-import-sort, and remove all importOrder options from .prettierrc.json. Add simple-import-sort/imports and simple-import-sort/exports rules to your ESLint config, remove source.organizeImports from VS Code settings, then run npx eslint . --fix to normalize all imports.

Should TypeScript formatting be checked by Prettier CLI or eslint-plugin-prettier?▼

The preferred modern baseline uses Prettier CLI for formatting validation and ESLint only for code-quality rules, with eslint-config-prettier disabling conflicts. Using eslint-plugin-prettier is acceptable when a repo intentionally splits TS and non-TS formatting and documents that split clearly.

Why does VS Code keep re-ordering my imports on save?▼

VS Code's built-in source.organizeImports conflicts with ESLint or Prettier import sorting plugins, producing competing orderings on every save. Remove source.organizeImports from .vscode/settings.json and let eslint-plugin-simple-import-sort handle import order instead.

Should I create a separate CI workflow for lint and type checks?▼

Prefer adding a quality job to an existing CI workflow and making the test job depend on it via needs: quality. Only create a standalone quality workflow when the repository has no existing pipeline, since integration gives one status check and avoids wasting CI minutes.

Why is my pre-commit hook slow with tsc type checking?▼

Running full-project tsc --noEmit on every commit adds significant latency. Keep lint-staged in pre-commit for fast staged-file checks, and move tsc:check to pre-push or rely on CI as the authoritative type-checking gate.