Code quality validation through linting, type checking, and build verification. Multi-language support for automated quality gates. Use when validating code quality: - After implementation to validate code meets standards - Before creating pull requests or commits - When debugging build/type/lint issues - User explicitly requests quality checks Provides language-specific tool commands and validation workflows for: - JavaScript/TypeScript (ESLint, tsc, build tools) - Python (Ruff, MyPy, Pyright) - Go (golangci-lint, go build) - Rust (Clippy, cargo check/build) - Java (Gradle, Maven) Focuses on detecting issues early through systematic automated checks.
Establish consistent code quality standards through automated validation tools, ensuring code reliability, maintainability, and consistency.
---
Code quality validation is a safety gate that catches errors early, prevents tech debt accumulation, and ensures code meets project standards.
---
**What linting detects:**
**Language-specific tools:**
**Approach:**
---
**What type checking validates:**
**Language-specific tools:**
**Approach:**
---
**What build checking validates:**
**Language-specific tools:**
**Approach:**
---
**Note:** Commands are examples. Adjust to your project's package manager, config files, and scripts.
**Use Glob to detect project type:**
#### JavaScript/TypeScript
```bash
npm run lint
npx eslint . --max-warnings=0
npm run typecheck
npx tsc --noEmit
npm run build
```
#### Python
```bash
ruff check .
ruff check . --fix # auto-fix
mypy .
pyright
python -c 'import your_package'
```
#### Go
```bash
golangci-lint run
go vet ./...
go build ./...
```
#### Rust
```bash
cargo clippy -- -D warnings
cargo check
cargo build
cargo build --release # production
```
#### Java
```bash
./gradlew check
./gradlew build
mvn verify
mvn compile
```
**Tool not found:**
**Check fails:**
---
1. **Detect available tools** from project configuration
- Use Glob to find config files
- Identify which tools are available
2. **Run linting** (scoped to changed files when possible)
- Execute appropriate commands
- Fix auto-fixable issues first (--fix flag)
- Manually fix remaining violations
- Target: Meet project's warning standards
3. **Run type checks**
- Execute appropriate commands
- Fix all type errors
- Validate type consistency across modules
- Target: No type errors
4. **Run build** (full build, production config when available)
- Execute appropriate commands
- Ensure all code compiles
- Validate all imports resolve
- Confirm output artifacts generated
- Target: Build succeeds without critical errors
**If quality checks fail:**
1. **Analyze errors** - Identify root causes
2. **Fix issues** - Make minimal changes to resolve
3. **Re-run checks** - Execute same commands again
4. **Repeat** - Continue until checks pass
**If unable to fix:**
---
1. **Ignoring warnings** - Warnings often indicate real problems
→ Fix them or understand why acceptable
2. **Only checking one file** - Changes can break type checking across others
→ Check all modified files and dependencies
3. **Skipping the build step** - Code might lint/type-check but fail to compile
→ Always verify full build
4. **Accepting auto-fixes blindly** - Auto-fixes might hide real issues
→ Review each auto-fix before committing
5. **Not checking package.json scripts** - Projects often define custom commands
→ Check scripts first before running tools directly
6. **Inconsistent standards** - Allowing different levels across features
→ Maintain consistent standards for your project
---
Before considering quality checks complete:
---
**Systematic quality validation catches issues early and maintains consistency.**
Quality checks are flexible gates that validate code against project standards:
Commands shown are examples - check your project's scripts first. Quality standards should be consistent within your project but may vary between projects.
Systematic checks catch errors early, prevent tech debt accumulation, and build confidence in code readiness.
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/quality-code-check/raw