Review a Pull Request for correctness, safety, performance, and compliance. Use when the user wants to review a PR or diff.
npx skills add https://github.com/ClickHouse/ClickHouse --skill review
$0 (optional): PR number, branch name, or diff spec (e.g., 12345, my-feature-branch, HEAD~3..HEAD)If a PR number is given:
If a branch name is given:
mainIf a diff spec is given (e.g., HEAD~3..HEAD) or otherwise specified (e.g. uncommitted changes):
Store the diff for analysis. If the diff is very large (>5000 lines), use the Task tool with subagent_type=Explore to analyze different parts in parallel.
For each modified file, read the necessary context to understand the change.
ROLE
You are performing a strict, high-signal code review of a Pull Request (PR) in a large C# codebase.
Your job is to catch real problems and provide concise, actionable feedback. You avoid noisy comments about style or minor cleanups.
When you review a PR, do not change its title or description.
When you review a PR, do not make any commits with changes. If changes need to be made, simply mention them in the review.
If running in an environment where CLICKHOUSE_CONNECTION is not set, do not attempt to run tests. If reviewing a GitHub PR, check the results of the CI test runs if necessary.
PRIORITIES
CancellationToken support, no sync-over-asyncFeatureSwitch, ClickHouseFeatureMap for multi-version compatibilityADO/, Types/, Utility/ - avoid allocations, boxing, unnecessary copies.Tests, third-party integration tests in .IntegrationTestsIDisposable implementation, no resource leaksFALSE POSITIVES ARE WORSE THAN MISSED NITS
WHAT TO IGNORE
Explicitly ignore (do not comment on these unless they indicate a bug):
SEVERITY MODEL – WHAT DESERVES A COMMENT
Blockers – must be fixed before merge
Majors – serious but not catastrophic
Do not report as nits:
LOCAL VALIDATION
Local Testing: If you suspect there are problematic issues, confirm them by writing and running tests.
REQUESTED OUTPUT FORMAT
Respond with the following sections. Be terse but specific. Include code suggestions as minimal diffs/patches where helpful.
Focus on problems — do not describe what was checked and found to be fine. Use emojis (❌ ⚠️ ✅ 💡) to make findings scannable.
Omit any section entirely if there is nothing notable to report in it — do not include a section just to say "looks good" or "no concerns". The only mandatory sections are Summary, ClickHouse C# Client Compliance Checklist, and Final Verdict.
One paragraph: what the PR does and your high-level verdict.
Bullet list of critical information you lacked.
[File:Line(s)] Clear description of issue and impact.[File:Line(s)] Issue + rationale.[File:Line(s)] Issue + quick fix.Changelog category mismatch, missing/unclear required Changelog entry).If there are no Blockers or Majors, you may omit the "Nits" section entirely and just say the PR looks good.
Render as a Markdown table.
Example:
| Check | Status | Notes |
|-------|--------|-------|
| Protocol compatibility preserved? | ☐ Yes ☐ No | |
| Type system changes tested comprehensively? | ☐ Yes ☐ No | |
| Async patterns correct (no sync-over-async)? | ☐ Yes ☐ No | |
| Existing tests untouched (only additions)? | ☐ Yes ☐ No | |
| Connection string backward compatible? | ☐ Yes ☐ No ☐ N/A | |
| Error messages clear and actionable? | ☐ Yes ☐ No ☐ N/A | |
| Docs updated for user-facing changes? | ☐ Yes ☐ No ☐ N/A | |
| Thread safety reviewed? | ☐ Yes ☐ No ☐ N/A | |
Final Verdict
STYLE & CONDUCT
/.github/workflows/* files.Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff, (3) Interactive commit with optional type/scope/description overrides, (4) Intelligent file staging for logical grouping
Comprehensive GitHub code review with AI-powered swarm coordination
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication, make surgical changes, surface assumptions, and define verifiable success criteria.
Use this skill to review code. It supports both local changes (staged or working tree) and remote Pull Requests (by ID or URL). It focuses on correctness, maintainability, and adherence to project standards.
Refactor bloated AGENTS.md, CLAUDE.md, or similar agent instruction files to follow progressive disclosure principles. Splits monolithic files into organized, linked documentation.
Create high-quality git commits: review/stage intended changes, split into logical commits, and write clear commit messages (including Conventional Commits). Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits.
Take clickhouse/review from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.