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 從公開儲存庫中收錄這些內容。

檢舉或申請下架