Code Review — /code-review
Review code tự động với adversarial rigor. Mỗi review bao gồm 3 stages bắt buộc: spec compliance, code quality, và red-team analysis tìm security holes.
Cú pháp
Luồng hoạt động bên trong
Khi bạn gõ/code-review #123, đây là 3 stages xảy ra:
Stage 1: Spec Compliance Review
Kiểm tra code có khớp với requirements/plan không.
- Code implement đúng những gì được yêu cầu?
- Có thiếu requirement nào không?
- Có code thừa không được yêu cầu?
Stage 2: Code Quality Review
Spawn
code-reviewer subagent kiểm tra:- Scout edge cases trước
- Standards, security, performance
- Naming, readability, maintainability
Stage 3: Adversarial Review (Red Team)
Spawn adversarial reviewer CỐ TÌM CÁCH PHÁ code:
- Security holes, false assumptions
- Resource exhaustion, race conditions
- Supply chain attacks, observability gaps
Input Modes
Auto-detect từ arguments. Nếu không rõ hoặc không có argument → hỏi user.| Input | Mode | Review gì |
|---|---|---|
#123 hoặc PR URL | PR | Full PR diff qua gh pr diff |
abc1234 (7+ hex chars) | Commit | Single commit diff qua git show |
--pending | Pending | Staged + unstaged changes qua git diff |
| (không args) | Default | Recent changes trong context |
codebase | Codebase | Full codebase scan |
codebase parallel | Codebase+ | Parallel multi-reviewer audit |
Ví dụ thực tế
- Input
- Output
So sánh với chat trực tiếp
| Tiêu chí | /code-review | Chat trực tiếp |
|---|---|---|
| Review protocol | 3 stages bắt buộc, tuần tự | 1 lượt review, có thể bỏ sót |
| Spec compliance | Kiểm tra code vs requirements trước | Không so sánh với spec |
| Adversarial | Red-team CỐ PHÁ code | Chỉ review “bình thường” |
| Input modes | PR, commit, pending, codebase | Chỉ review code được paste |
| Verification | Iron Law: phải verify evidence trước khi claim | Có thể claim “looks good” |
| Edge cases | Scout edge cases TRƯỚC khi review | Phụ thuộc kinh nghiệm reviewer |
| Multi-file | Task pipeline: scout → review → adversarial → fix → verify | Review từng file tách rời |
Khi nào dùng / không dùng
| Dùng | Không dùng |
|---|---|
| Trước khi tạo PR | Khi cần implement feature (dùng /cook) |
| Review PR của người khác | Khi cần fix bug (dùng /fix) |
| Sau refactor lớn | Khi chỉ muốn chạy tests (dùng /test) |
| Pre-landing check | Review non-code files (docs, config) |
| Security audit trước deploy | Khi codebase quá lớn (dùng codebase parallel) |
Sub-commands
| Sub-command | Mô tả | Khi nào dùng |
|---|---|---|
/code-review | Review changes hiện tại | Sau khi code xong |
/code-review #123 | Review 1 PR cụ thể | Review PR từ teammate |
/code-review abc1234 | Review 1 commit | Kiểm tra 1 commit cụ thể |
/code-review --pending | Review staged + unstaged | Trước khi commit |
/code-review codebase | Full codebase scan | Audit toàn bộ project |
/code-review codebase parallel | Parallel audit | Codebase lớn, cần nhanh |
/review | Pre-landing PR review (GStack) | Trước khi merge |
/review — GStack Pre-landing Review
Review diff trước khi merge, focus vào:- SQL safety (injection, raw queries)
- LLM prompt changes (prompt injection risks)
- Breaking API changes (endpoint, response shape)
- Security vulnerabilities (OWASP Top 10)
- Config safety (env vars, secrets)
Verification Gates — Iron Law
KHÔNG BAO GIỜ CLAIM “done” hay “fixed” MÀ KHÔNG CÓ FRESH EVIDENCE. Quy trình verify:- IDENTIFY command cần chạy
- RUN full command
- READ output
- VERIFY output confirms claim
- THEN mới claim
- “should work”, “probably fine”, “seems to pass”
- Hài lòng trước khi verify
- Tin agent reports mà không double-check