Code Review Expert

作者 sanyuan070408b6572ef108无许可证3.9K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库5个月前更新

Expert code review of current git changes with a senior engineer lens. Detects SOLID violations, security risks, and proposes actionable improvements.

AI 生成的概览

以资深工程师视角审查当前 git 变更,指出 SOLID 违规、安全风险和可清理代码。

功能
对当前 git 差异执行结构化、仅审查的检查,使用 git status 和 git diff 界定变更范围,并参考随附的 SOLID、安全、代码质量和删除计划清单。它按 P0 到 P3 分级报告问题,附文件与行号、总体通过或要求修改的结论,以及可选的行内评论块。它还会提出重构与删除计划,并在实施前询问用户如何继续。
适用场景
当你希望在合并前以资深工程师视角审查未提交或已暂存的 git 变更时使用。它适合覆盖架构、安全、可靠性和死代码的拉取请求式检查。在用户明确确认前,它不会实施修复。
运行要求
需要一个包含待审查变更的 git 仓库,以及可运行 git status、git diff,以及可选 rg 或 grep 的 shell 环境。该技能不附带脚本,依赖四份随附的参考清单。

Code Review Expert

Overview

Perform a structured review of the current git changes with focus on SOLID, architecture, removal candidates, and security risks. Default to review-only output unless the user asks to implement changes.

Severity Levels

LevelNameDescriptionAction
P0CriticalSecurity vulnerability, data loss risk, correctness bugMust block merge
P1HighLogic error, significant SOLID violation, performance regressionShould fix before merge
P2MediumCode smell, maintainability concern, minor SOLID violationFix in this PR or create follow-up
P3LowStyle, naming, minor suggestionOptional improvement

Workflow

1) Preflight context

  • Use git status -sb, git diff --stat, and git diff to scope changes.
  • If needed, use rg or grep to find related modules, usages, and contracts.
  • Identify entry points, ownership boundaries, and critical paths (auth, payments, data writes, network).

Edge cases:

  • No changes: If git diff is empty, inform user and ask if they want to review staged changes or a specific commit range.
  • Large diff (>500 lines): Summarize by file first, then review in batches by module/feature area.
  • Mixed concerns: Group findings by logical feature, not just file order.

2) SOLID + architecture smells

  • Load references/solid-checklist.md for specific prompts.
  • Look for:
    • SRP: Overloaded modules with unrelated responsibilities.
    • OCP: Frequent edits to add behavior instead of extension points.
    • LSP: Subclasses that break expectations or require type checks.
    • ISP: Wide interfaces with unused methods.
    • DIP: High-level logic tied to low-level implementations.
  • When you propose a refactor, explain why it improves cohesion/coupling and outline a minimal, safe split.
  • If refactor is non-trivial, propose an incremental plan instead of a large rewrite.

3) Removal candidates + iteration plan

  • Load references/removal-plan.md for template.
  • Identify code that is unused, redundant, or feature-flagged off.
  • Distinguish safe delete now vs defer with plan.
  • Provide a follow-up plan with concrete steps and checkpoints (tests/metrics).

4) Security and reliability scan

  • Load references/security-checklist.md for coverage.
  • Check for:
    • XSS, injection (SQL/NoSQL/command), SSRF, path traversal
    • AuthZ/AuthN gaps, missing tenancy checks
    • Secret leakage or API keys in logs/env/files
    • Rate limits, unbounded loops, CPU/memory hotspots
    • Unsafe deserialization, weak crypto, insecure defaults
    • Race conditions: concurrent access, check-then-act, TOCTOU, missing locks
  • Call out both exploitability and impact.

5) Code quality scan

  • Load references/code-quality-checklist.md for coverage.
  • Check for:
    • Error handling: swallowed exceptions, overly broad catch, missing error handling, async errors
    • Performance: N+1 queries, CPU-intensive ops in hot paths, missing cache, unbounded memory
    • Boundary conditions: null/undefined handling, empty collections, numeric boundaries, off-by-one
  • Flag issues that may cause silent failures or production incidents.

6) Output format

Structure your review as follows:

markdown
## Code Review Summary
**Files reviewed**: X files, Y lines changed**Overall assessment**: [APPROVE / REQUEST_CHANGES / COMMENT]
---
## Findings
### P0 - Critical(none or list)
### P1 - High1. **[file:line]** Brief title  - Description of issue  - Suggested fix
### P2 - Medium2. (continue numbering across sections)  - ...
### P3 - Low...
---
## Removal/Iteration Plan(if applicable)
## Additional Suggestions(optional improvements, not blocking)

Inline comments: Use this format for file-specific findings:

::code-comment{file="path/to/file.ts" line="42" severity="P1"}Description of the issue and suggested fix.::

Clean review: If no issues found, explicitly state:

  • What was checked
  • Any areas not covered (e.g., "Did not verify database migrations")
  • Residual risks or recommended follow-up tests

7) Next steps confirmation

After presenting findings, ask user how to proceed:

markdown
---
## Next Steps
I found X issues (P0: _, P1: _, P2: _, P3: _).
**How would you like to proceed?**
1. **Fix all** - I'll implement all suggested fixes2. **Fix P0/P1 only** - Address critical and high priority issues3. **Fix specific items** - Tell me which issues to fix4. **No changes** - Review complete, no implementation needed
Please choose an option or provide specific instructions.

Important: Do NOT implement any changes until user explicitly confirms. This is a review-first workflow.

Resources

references/

FilePurpose
solid-checklist.mdSOLID smell prompts and refactor heuristics
security-checklist.mdWeb/app security and runtime risk checklist
code-quality-checklist.mdError handling, performance, boundary conditions
removal-plan.mdTemplate for deletion candidates and follow-up plan

来源与署名

来源:sanyuan0704/sanyuan-skills位于skills/code-review-expert提交08b6572

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架