gerardpaligot/confily/post-edit-verification
Claude Code and agent skill by gerardpaligot/confily
- community
Checking that the SKILL.md file is still in the repository.
Use this skill after every working session where Kotlin or Android code was created or modified, and ALWAYS before committing, opening a PR, or reporting work as done. Runs the same three quality gates CI runs — ktlint, detekt, and Android lint — so failures are caught locally instead of by GitHub Actions.
Install
npx vskill@latest install gerardpaligot/confily/post-edit-verificationSKILL.md
Post-Edit Verification Skill
When to Use
Run these checks after every working session that touches Kotlin, Android, or shared module code — before committing, before opening a PR, before reporting work as done. CI fails on any of the three checks below; run them locally to avoid the round-trip.
CI Reference
.github/workflows/build.yaml (job linter) runs exactly two commands. Both must succeed:
Mirror these locally — do not skip Android lint just because ktlint and detekt passed. They catch different classes of issues (Android lint covers MissingPermission, UnusedResources, manifest checks, etc. that ktlint and detekt don't).
Compilation Check
Compile the modules you modified. Target specific Gradle tasks for faster feedback:
Examples for common modules:
Quality Gates
All three must pass with zero violations.
1. ktlint + detekt
See the kotlin-linting skill for rules and thresholds. Auto-fix ktlint issues with ./gradlew ktlintFormat. Detekt cannot auto-fix — review build/reports/detekt/.
2. Android lint
Android lint runs on all Android-targeting modules. Fail-fast scope: :androidApp:lintDebug is enough if you only touched the app module, but the top-level lintDebug matches CI exactly. Reports land in androidApp/build/reports/lint-results-debug.html.
Android lint catches issues the Kotlin tools don't:
MissingPermission— calls that need a runtime permission checkUnusedResources,IconMissingDensityFolder, etc. — resource hygiene- Manifest issues —
exportedflags, intent filters, deprecated APIs - API-level usage — calls to APIs above
minSdkwithout aBuild.VERSION.SDK_INTguard
When suppression is genuinely warranted, use @SuppressLint("RuleId") at the smallest possible scope and add a one-line comment explaining why the static check is wrong (e.g., the runtime check is stronger but lint can't see it).
Common Issues
| Issue | Tool | Fix | |
|---|---|---|---|
| Import ordering | ktlint | Imports must be lexicographically sorted with no blank lines between them. java, javax, kotlin and aliases go last. | |
| Wildcard imports | ktlint | Always use explicit imports. Never use *. | |
| Duplicate imports | ktlint | When adding a new import, check it isn't already present elsewhere in the import block. Place it in the correct alphabetical position. | |
ReturnCount (>2) | detekt | Collapse early returns into a single guard, or extract a helper function. | |
ComplexCondition (>3 boolean ops) | detekt | Break the condition apart, or extract validation into a helper. | |
MissingPermission on notify(), location calls, etc. | Android lint | Call ContextCompat.checkSelfPermission (or an equivalent gate like NotificationManagerCompat.areNotificationsEnabled()); if the gate is semantically stronger but lint can't see it, suppress at the function with a justifying comment. | |
| Missing private helper functions | compile | If you reference a function in a composable, make sure it exists in the same file or is imported. |
Checklist
- Compile modified modules —
BUILD SUCCESSFUL ./gradlew ktlintCheck detekt—BUILD SUCCESSFUL./gradlew lintDebug—BUILD SUCCESSFUL- Fix any errors and re-run until all three are clean
- Then commit / open the PR
Security
- Security scanPassed, 95 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 repositoryChecking.github/skills/post-edit-verification/SKILL.md
Popularity
- Repository stars
- 152
- Repository forks
- 9
- 7-day trend score
- 25
Stars and forks are for the whole GitHub repository, not this skill alone. 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/gerardpaligot/confily/post-edit-verification)