- Home
- Skills
- Charlesjones Dev
- Claude Code Plugins Dev
- Preflight Checks
preflight-checks_skill
23
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill charlesjones-dev/claude-code-plugins-dev --skill preflight-checks- SKILL.md9.3 KB
Overview
This skill automates comprehensive preflight code quality verification for projects of any language or layout. It discovers project type and configured checks, then runs type checking, linting, formatting, security scans, and tests to match local checks with CI behavior. Use it to validate commits, run CI checks locally, or enforce a consistent pre-merge quality gate.
How this skill works
The skill inspects repository files (package.json, pyproject.toml, Cargo.toml, go.mod, *.csproj, CI workflow files, semgrep configs, lockfiles) to detect project type, scripts, and security tooling. It then selects the appropriate commands (e.g., tsc, mypy, eslint, ruff, cargo clippy, go vet, semgrep) and runs checks in a fast-to-slow order, honoring auto-fix options and platform-specific requirements such as MSYS_NO_PATHCONV on Windows for Semgrep Docker. It reports exit codes and suggests fixes or autofix commands when available.
When to use it
- Before commits or pulling request creation to enforce quality gates
- When running CI checks locally to reproduce pipeline behavior
- When you see or run preflight, verify, lint, typecheck, or test commands
- Before merging to main/master or deploying to production
- When adding CI security scanning or ensuring Semgrep runs as required
Best practices
- Run checks in order: format → typecheck → lint → security scan → tests for fastest feedback
- Prefer project-provided scripts (npm run, make, poetry, dotnet) to mimic CI exactly
- Always detect and run Semgrep if referenced in CI/config files or package scripts
- Use caching and incremental options (ESLint cache, tsbuildinfo, pytest cache, Rust target) to speed repeated runs
- For monorepos either run workspace-root aggregate commands or iterate per package according to workspace config
Example use cases
- Validate a TypeScript workspace before opening a PR by running npm run check or npx tsc && npx eslint . --fix
- Run Ruff, MyPy and Pytest in a modern Python repo using pyproject.toml settings
- Enforce .NET build and analyzers with dotnet build --warnaserror and dotnet test before merging
- Run Semgrep via Docker on systems without a local CLI, using MSYS_NO_PATHCONV=1 on Windows to avoid path conversion issues
- Iterate packages in a pnpm/lerna monorepo and aggregate failures to return proper CI exit codes
FAQ
Prefer project scripts that wrap tools; otherwise the skill suggests installing the CLI or uses Docker fallbacks (e.g., Semgrep) and reports missing-tool errors as configuration issues.
How does this align with CI?
The skill parses CI workflow files and scripts to run the same commands locally, extracts flags like --config for Semgrep, and warns when local commands differ from CI steps.