skills/kotlin/bill-kotlin-quality-check/SKILL.md
Run ./gradlew check and systematically fix all issues without using suppressions. Use when running Gradle checks, fixing lint errors, formatting issues, test failures, or deprecation warnings in Gradle/Kotlin projects. Fixes issues properly at the root cause instead of suppressing them. Use when user mentions gradlew check, Kotlin lint, ktfmt, detekt, or fix Gradle warnings.
npx skillsauth add sermilion/mobile-development-plugin bill-kotlin-quality-checkInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This is the current Gradle/Kotlin implementation behind the shared bill-quality-check router. Invoke it directly only when you already know the repo should use the Gradle/Kotlin quality-check path.
Execute ./gradlew check and systematically fix issues only in files changed in the current unit of work. Ignore pre-existing issues in untouched files.
git diff --name-only (against the base branch or HEAD) to identify files changed in the current unit of work./gradlew check and capture complete output./gradlew check after all fixesAlways Fix, Never Suppress:
@Suppress, @SuppressWarnings, or lint suppressions// TODO or // FIXME comments to defer issues#pragma or similar directives to hide issuesPriority Order: 0. Structural issues (package/file location, file naming) - Fix these first
Structural Fixes (Priority 0):
These issues require file operations and should be fixed before other issues:
InvalidPackageDeclaration: Package doesn't match directory structure
package com.example.feature.data → file must be in com/example/feature/data/MatchingDeclarationName: File name doesn't match top-level declaration
UserComponentManager.kt containing interface AccountComponentManager → rename to AccountComponentManager.ktAfter moving/renaming files:
When to Ask User:
If .agents/skill-overrides.md exists in the project root and contains a ## bill-kotlin-quality-check section, read that section and apply it as the highest-priority instruction for this skill. The matching section may refine or replace parts of the default workflow below.
If an AGENTS.md file exists in the project root, apply it as project-wide guidance.
Precedence for this skill: matching .agents/skill-overrides.md section > AGENTS.md > built-in defaults.
.orEmpty() instead of ?: ""kotlin.ResultAny typeDispatcherProvider instead of Dispatchers.*relaxed = true for mockk mocks (relaxedUnitFun is fine)LongParameterList fix strategies:
data class - for variablesinterface - for navigation/action lambdasShow issue count by category, report each fix with file:line, display final ./gradlew check result, and summarize all changes.
development
Use when running a governed editorial assignment desk from Readian recommendations through candidate selection and source-backed story packs.
testing
Use when reviewing unit tests in a file, current changes, or a commit to flag low-value, tautological, or coverage-only tests that do not validate real behavior. Use when user mentions check test quality, review tests, tautological tests, weak tests, or coverage-padding.
data-ai
Use when removing an existing skill or platform skill set and cleaning up agent installs, manifests, and supporting links.
development
Use when you want a generic quality-check entry point that detects the dominant stack in scope and delegates to the matching stack-specific quality-check skill. Use when user mentions run checks, validate, lint, format, quality check, or run quality.