# Prompts and Commands Review Checklist Review checklist for changes to `.claude/prompts/*.md` and `.claude/commands/*.md` files. --- ## Multi-Pass Review Strategy ### First Pass: Purpose and Activation Purpose clarity: 1. Is it clear what this prompt/command does? 2. When should it be invoked? 3. What input does it expect? 4. What output will it produce? **Clear Purpose Statement:** Every prompt/command file should answer these questions in first 1-3 lines: ```markdown # Command Name Brief description of what this does and when to use it. ``` **Examples:** ✅ **GOOD - Clear purpose:** ```markdown # review-pr Reviews a GitHub pull request by number. Use when analyzing PR changes before merge. Usage: /review-pr ``` ❌ **BAD - Vague purpose:** ```markdown # review-pr Does PR stuff. ``` --- ### Second Pass: Completeness Completeness check: 1. Does the prompt provide all necessary context? 2. Are expected outputs clearly defined? 3. Are examples provided where helpful? 4. Is the prompt self-contained or properly referencing skills? **Complete Prompt Elements:** - [ ] Clear description of task - [ ] Expected input format (if applicable) - [ ] Expected output format - [ ] Examples (if task is complex) - [ ] References to relevant skills or documentation **Self-Contained vs Skill Reference:** ✅ **GOOD - Simple task, self-contained:** ```markdown # format-commit Generate a conventional commit message from staged changes. Format: `type(scope): description` Types: feat, fix, docs, style, refactor, test, chore ``` ✅ **GOOD - Complex task, reference skill:** ```markdown # review-changes Review current git changes for code quality and architectural compliance. Use the `reviewing-changes` skill to perform comprehensive review based on change type. ``` ❌ **BAD - Complex task without guidance:** ```markdown # review-changes Review the code. ``` --- ### Third Pass: Prompt Engineering Quality Quality considerations: 1. Is the language clear and specific? 2. Are instructions structured logically? 3. Are examples provided for complex concepts? 4. Does it use appropriate emphasis? **Clarity and Specificity:** ❌ **VAGUE:** "Look at the files and find problems" ✅ **SPECIFIC:** "Analyze modified Kotlin files for MVVM violations: mutable state exposure, improper dependency injection, missing error handling" **Logical Structure:** ✅ **GOOD - Step-by-step:** ```markdown 1. Read the PR description and changed files 2. Identify the change type (feature, bug fix, refactor) 3. Apply appropriate review checklist 4. Document findings with inline comments ``` **Examples for Complex Tasks:** ✅ **GOOD - Shows expected format:** ````markdown Expected output format: \``` **file.kt:123** - CRITICAL: Exposes mutable state Change MutableStateFlow to StateFlow: ... \``` ```` --- ### Fourth Pass: Session Context Session context considerations: 1. Does this prompt make assumptions about session state? 2. Does it require files to be read first? 3. Does it handle missing context gracefully? 4. Is it clear what the user needs to provide? **Context Requirements:** ✅ **GOOD - Explicit about requirements:** ```markdown # review-file Reviews a specific file for quality issues. **Usage:** /review-file path/to/file.kt This command will read the file and analyze it against project standards. ``` ❌ **BAD - Assumes context without stating:** ```markdown # review-file Reviews the file. ``` **Graceful Handling:** ✅ **GOOD - Handles missing info:** ```markdown If no PR number provided, analyze current git diff. If no files changed, report clean working directory. ``` --- ### Fifth Pass: Skill References Skill reference check: 1. If this references a skill, does the skill exist? 2. Is the skill name correct? 3. Is it clear when to use command vs skill directly? 4. Is the relationship between command and skill logical? **Proper Skill References:** ✅ **GOOD - Clear skill invocation:** ```markdown # review-changes Use the `reviewing-changes` skill to perform comprehensive code review. This command is equivalent to directly invoking the skill but provides a convenient shorthand for PR and commit reviews. ``` **Verify:** - [ ] Referenced skill exists in `.claude/skills/` - [ ] Skill name matches exactly (case-sensitive) - [ ] Command adds value beyond just calling skill - [ ] Command purpose is distinct from skill purpose --- ## Priority Classification Classify findings using `reference/priority-framework.md`: - **CRITICAL** - Prevents functionality or exposes security vulnerabilities - **IMPORTANT** - Significantly impacts quality or maintainability - **SUGGESTED** - Improvements that aren't essential - **OPTIONAL** - Personal preferences ---