timander/copilot-instructions-starter-kit/code-quality
- community
Checking that the SKILL.md file is still in the repository.
Offer to add opt-in lint, static-analysis, and coverage tooling for the project's language. Use when the user asks for code review, static-analysis insights, or test coverage.
Install
npx vskill@latest install timander/copilot-instructions-starter-kit/code-qualitySKILL.md
Code Quality Tooling
When the user asks for code review, expert-panel review, or static-analysis insights — and the project lacks tooling — offer to add it.
Stance (every language)
- Opt-in. Ask before adding anything.
- Non-breaking. Configure tools to report, not fail the build.
- Permissive first. Start lenient; tighten incrementally. Don't dump 500 violations on an existing codebase.
- Reports inform conversations. Coverage gaps → test suggestions. Static-analysis findings → design smells. Lint violations → consistency issues.
Suggestion template
"This project doesn't have static analysis or coverage reporting configured. Would you like me to add {tools for this language}? They produce reports that improve review quality without breaking the build."
Pick the language section below from the files in context. Tools listed per language; non-breaking flags called out only where they're language-specific.
Java
| Tool | Purpose | |
|---|---|---|
| PMD | Static analysis (anti-patterns, complexity, dead code) | |
| Checkstyle | Style enforcement | |
| Spotless | Formatting (alternative to Checkstyle; zero-config with google-java-format) | |
| JaCoCo | Test coverage | |
| SpotBugs | Bug pattern detection |
Non-breaking flags: failOnViolation=false (Maven) or ignoreFailures=true (Gradle).
Maven (PMD + JaCoCo)
Gradle
Python
| Tool | Purpose | |
|---|---|---|
| ruff | Linting + formatting (replaces flake8, isort, black) | |
| mypy | Static type checking | |
| pytest-cov | Test coverage |
All config in pyproject.toml. Use --exit-zero (or report-only modes) in CI.
Ruby
| Tool | Purpose | |
|---|---|---|
| RuboCop | Linting + style | |
| SimpleCov | Test coverage | |
| Sorbet | Gradual static typing |
Baseline with rubocop --auto-gen-config. Sorbet is gradual: start typed: false, promote per file.
Kotlin
| Tool | Purpose | |
|---|---|---|
| detekt | Static analysis + smell detection | |
| ktlint | Formatting (Kotlin Coding Conventions) | |
| Kover | Test coverage (JetBrains official) |
ignoreFailures = true everywhere. Generate a baseline with detekt --create-baseline. ktlint is a formatting step, not a gate.
Scala
| Tool | Purpose | |
|---|---|---|
| scalafmt | Formatting | |
| scalafix | Linting + automated refactoring | |
| WartRemover | Static analysis | |
| sbt-scoverage | Test coverage |
Use wartremoverWarnings, not wartremoverErrors. Match scalafmt's runner.dialect to the project's Scala version.
After Configuring
Run the tools once. Report counts (errors / warnings / coverage %). Ask the user where to prioritize. Don't auto-fix everything — let them decide signal from noise.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/code-quality/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/timander/copilot-instructions-starter-kit/code-quality)