Interactive Code Review Workflow
Use this skill when the user runs the /code-review slash command or uses any of these
natural language triggers:
- "show me the code changes you made here, one chunk at a time interactively. i will type 'good' if i approve"
- "review the code changes chunk by chunk"
- "interactive code review"
- "review changes interactively"
Purpose
Provides a structured, low-cognitive-load, interactive code review experience in chat.
Instead of dumping large diffs or requiring the user to navigate full files in an external
editor, changes are broken into small, logical, self-contained diff chunks presented one
turn at a time.
Workflow
1. Collect & Partition Diff Chunks
- Run
git diff on the current working tree (or inspect specific target files).
- Partition the changes into small, logical, self-contained chunks:
- Separate by file whenever possible.
- For larger files, divide into logical functional blocks (e.g., imports, core logic,
tests).
- Determine total chunk count (N).
2. Present Chunks Iteratively (One Turn per Chunk)
For each chunk (e.g., Chunk X of N):
- Heading & File Link:
### Chunk X of N: path/to/file.rs (use clickable markdown file links).
- Context & Rationale:
Provide a concise 1-2 sentence explanation of what changed in this chunk and why.
- Test Coverage Verification:
Invoke the
check-test-coverage skill for the modified file:
- Verify that all custom logic branches, state transitions, and error paths in this file/chunk are covered by tests.
- Confirm zero test bloat (no redundant tests asserting standard library behaviors, compiler derives, or third-party macros).
- Report a concise 1-line coverage status.
- Diff Snippet:
Provide a clean
diff code block containing only the relevant hunk.
- Approval Prompt:
Ask:
Please reply with **"good"** to approve and move to Chunk X+1.
- STOP and WAIT:
Do NOT output subsequent chunks in the same turn. Yield control and wait for user input.
3. Handle User Feedback
- Approved ("good", "ok", "lgtm"):
Advance to the next chunk and present it.
- Requested Changes / Corrections:
- Make surgical edits to the code using native file editing tools.
- Run
./check.fish --check (or relevant test/clippy checks) to verify correctness.
- Re-present the revised chunk to the user with the updated diff.
- Wait for approval before proceeding.
4. Completion & Checklist Update
Once all N chunks have been explicitly approved:
- If working on a task file (e.g.,
task/<name>.md), check off the corresponding files
in the "Mandatory manual review" checklist.
- Run
./check.fish --fmt on changed files.
- Notify the user that all chunks have been reviewed and approved, and ask how to proceed
with next steps.
Related Skills
check-test-coverage - For branch-targeted test coverage and zero bloat verification
check-code-quality - Comprehensive quality checks
run-clippy - Clippy linting and formatting
write-documentation - Rustdoc formatting and intra-doc link validation
1---2name: code-review3description: Interactively review code changes chunk by chunk with explicit user approval4---56# Interactive Code Review Workflow78Use this skill when the user runs the `/code-review` slash command or uses any of these9natural language triggers:1011- "show me the code changes you made here, one chunk at a time interactively. i will type 'good' if i approve"12- "review the code changes chunk by chunk"13- "interactive code review"14- "review changes interactively"1516## Purpose1718Provides a structured, low-cognitive-load, interactive code review experience in chat.19Instead of dumping large diffs or requiring the user to navigate full files in an external20editor, changes are broken into small, logical, self-contained diff chunks presented one21turn at a time.2223## Workflow2425### 1. Collect & Partition Diff Chunks26271. Run `git diff` on the current working tree (or inspect specific target files).282. Partition the changes into small, logical, self-contained chunks:29 - Separate by file whenever possible.30 - For larger files, divide into logical functional blocks (e.g., imports, core logic,31 tests).323. Determine total chunk count (N).3334### 2. Present Chunks Iteratively (One Turn per Chunk)3536For each chunk (e.g., Chunk X of N):37381. **Heading & File Link**:39 `### Chunk X of N: path/to/file.rs` (use clickable markdown file links).402. **Context & Rationale**:41 Provide a concise 1-2 sentence explanation of what changed in this chunk and why.423. **Test Coverage Verification**:43 Invoke the `check-test-coverage` skill for the modified file:44 - Verify that all custom logic branches, state transitions, and error paths in this file/chunk are covered by tests.45 - Confirm zero test bloat (no redundant tests asserting standard library behaviors, compiler derives, or third-party macros).46 - Report a concise 1-line coverage status.474. **Diff Snippet**:48 Provide a clean `diff` code block containing only the relevant hunk.495. **Approval Prompt**:50 Ask: `Please reply with **"good"** to approve and move to Chunk X+1.`516. **STOP and WAIT**:52 Do NOT output subsequent chunks in the same turn. Yield control and wait for user input.5354### 3. Handle User Feedback5556- **Approved ("good", "ok", "lgtm")**:57 Advance to the next chunk and present it.58- **Requested Changes / Corrections**:59 1. Make surgical edits to the code using native file editing tools.60 2. Run `./check.fish --check` (or relevant test/clippy checks) to verify correctness.61 3. Re-present the revised chunk to the user with the updated diff.62 4. Wait for approval before proceeding.6364### 4. Completion & Checklist Update6566Once all N chunks have been explicitly approved:67681. If working on a task file (e.g., `task/<name>.md`), check off the corresponding files69 in the "Mandatory manual review" checklist.702. Run `./check.fish --fmt` on changed files.713. Notify the user that all chunks have been reviewed and approved, and ask how to proceed72 with next steps.7374## Related Skills7576- `check-test-coverage` - For branch-targeted test coverage and zero bloat verification77- `check-code-quality` - Comprehensive quality checks78- `run-clippy` - Clippy linting and formatting79- `write-documentation` - Rustdoc formatting and intra-doc link validation80