From lvde
Analyzes one or more source files against the project's coding practices defined in CODING_PRACTICES.md and produces a structured Markdown report. Invoke as /lvde:practice-review <file> [file2 ...].
How this skill is triggered — by the user, by Claude, or both
Slash command
/lvde:practice-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Analyze source files for adherence to the project's coding practices and produce a structured Markdown report.
Analyze source files for adherence to the project's coding practices and produce a structured Markdown report.
The user calls /lvde:practice-review <file> [file2 file3 ...] or asks to check files against coding practices.
Read CODING_PRACTICES.md from the project root. This is the authoritative list of practices and their definitions. Do not invent practices not listed there.
Run:
git rev-parse HEAD
git remote get-url origin 2>/dev/null || echo ""
Store: COMMIT_HASH (full), COMMIT_SHORT (first 7 chars), REMOTE_URL (for GitHub link construction).
To build a GitHub file link:
[email protected]:user/repo.git → https://github.com/user/repohttps://github.com/user/repo/blob/<COMMIT_HASH>/<file_path>If no remote exists, use a local format: `<COMMIT_SHORT>/<filename>`
Read the full contents of each target file. Analyze it in isolation — do not import context from other files or project knowledge unless the practice definition itself requires it (e.g., checking for magic values requires understanding the domain).
For each file, check it against every practice in CODING_PRACTICES.md. For each violation found:
If a file has zero violations for a practice, do not list that practice in its result table.
Output the report exactly in this structure:
# Coding Practice Report
- **Project:** <project name from package.json or CLAUDE.md>
- **Date:** <ISO 8601 date and time, e.g. 2026-05-23T14:30:00>
- **Analyst:** <model name, e.g. claude-sonnet-4-6> / <engineer if known>
<details>
<summary>Files Analyzed</summary>
## Files Analyzed
- [<COMMIT_SHORT>/<filename>](<github_link_with_commit>)
- ...
</details>
<details>
<summary>Practices Checked</summary>
## Practices Checked
- **Never Nesting:** Use guard clauses / early returns; max 2 levels of nesting.
- **Assumption Verification:** All assumptions must be documented or verified with a guard.
- *(list all practices from CODING_PRACTICES.md with a one-line description)*
</details>
<details>
<summary>Results</summary>
## Results
### [<COMMIT_SHORT>/<filename>](<github_link>)
<One short paragraph: overall assessment of this file's adherence.>
| Row(s) | Practice | Violation | Suggestion | Severity |
|--------|----------|-----------|------------|----------|
| 12–18 | Never Nesting | Triple-nested if/else; inner block only reached after 3 conditions. | Extract inner conditions as guard clauses at the top of the function. | High |
| 42 | No Magic Values | Literal `"pending"` used in status check. | Replace with `TransactionStatus.PENDING` constant. | Medium |
*(repeat for each file)*
</details>
## Summary
| File | Row(s) | Practice | Violation | Suggestion | Severity |
|------|--------|----------|-----------|------------|----------|
| [<COMMIT_SHORT>/<filename>](<github_link>) | 12–18 | Never Nesting | Triple-nested if/else. | Use guard clauses. | High |
| [<COMMIT_SHORT>/<filename>](<github_link>) | 42 | No Magic Values | Literal `"pending"`. | Use `TransactionStatus.PENDING`. | Medium |
*(all violations from all files in one table, sorted by Severity descending)*
CODING_PRACTICES.md. Do not invent new ones.12, 47, 89.Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub lucenden/personal-claude-skills --plugin lvde