blog.dopana

Back

Alibaba không chỉ dùng AI code review nội bộ — họ còn tự xây dựng công cụ, phục vụ hàng chục nghìn lập trình viên, phát hiện hàng triệu lỗi code trong hai năm sản xuất, và sau đó mã nguồn mở nó.

Open Code Review (open-code-review) là công cụ code review AI của Alibaba. Nó đọc Git diff, gửi các file đã thay đổi cho một LLM agent có thể cấu hình, và tạo ra các bình luận review có cấu trúc với độ chính xác từng dòng. Không giống các wrapper prompt ngây thơ, nó kết hợp các ràng buộc kỹ thuật xác định với ra quyết định LLM động để tránh các lỗi kinh điển như bỏ sót file và lệch số dòng.

Open Code Review là gì?#

Open Code Review là công cụ CLI thực hiện code review bằng AI với:

  • Review chính xác từng dòng — bình luận khớp chính xác với đường dẫn file và phạm vi dòng
  • Review workspace & nhánh (ocr review) — thay đổi staged, unstaged và untracked; diff giữa hai refs; hoặc commit đơn lẻ
  • Quét toàn file (ocr scan) — kiểm toán toàn bộ repository không cần Git diff, hoàn hảo cho codebase mới và kiểm toán bảo mật
  • Chế độ delegate (ocr delegate) — để một AI coding agent bên ngoài review bằng LLM của riêng nó, không cần API key riêng
  • Quản lý phiên — liệt kê, tiếp tục và phát lại các phiên review bị gián đoạn
  • Tích hợp CI/CD — GitHub Actions composite action, GitLab CI, Gerrit workflows

Cài đặt#

npm install -g @alibaba-group/open-code-review
bash

Yêu cầu Git ≥ 2.41 và Node.js ≥ 14. Binary cũng có sẵn qua GitHub Releases và container runners.

Cấu hình#

ocr config provider # Chọn provider tích hợp hoặc endpoint tùy chỉnh
ocr config model # Chọn model
bash

Hoặc dùng biến môi trường: OCR_LLM_URL, OCR_LLM_TOKEN, OCR_LLM_MODEL, OCR_USE_ANTHROPIC.

Cách hoạt động#

Open Code Review sử dụng kiến trúc hybrid — pipeline kỹ thuật xác định cộng với LLM agent động.

Kỹ thuật xác định (Ràng buộc cứng)#

  • Chọn và lọc file chính xác — xác định theo chương trình file nào cần review, lọc bỏ tài nguyên không liên quan
  • Gộp file thông minh — nhóm các file liên quan (header/implementation, file property khớp nhau) để sub-agent có context mạch lạc
  • Khớp luật bằng template engine — áp dụng mẫu luật nghiêm ngặt dựa trên đường dẫn file, không chỉ ngôn ngữ tự nhiên
  • Định vị và phản chiếu bên ngoài — mô-đun xác minh chuyên dụng kiểm tra lại vị trí dòng comment và độ chính xác nội dung trước khi xuất

LLM Agent động#

  • Prompt template tinh chỉnh theo kịch bản
  • Bộ công cụ chuyên dụng chưng cất từ dữ liệu call-trace sản xuất
  • Truy xuất context động, tìm kiếm code và suy luận lỗi

Sự kết hợp này quan trọng: coding agent thông thường thường bỏ sót file trên changeset lớn, lệch vị trí và chất lượng không ổn định. Open Code Review đạt hoặc vượt độ chính xác của chúng trong khi tiêu thụ chỉ khoảng 1/9 token và chạy nhanh hơn.

Tích hợp CI/CD#

GitHub Actions#

Composite action (action.yml) tự động:

  1. Kích hoạt khi có pull request hoặc sự kiện comment
  2. Checkout repository và tính merge-base
  3. Chạy ocr review
  4. Tải lên artifacts chẩn đoán (ocr-result.json)
  5. Đăng inline comments và sticky PR summaries

Đăng thông minh#

  • Incremental comments — không phá hủy, cập nhật thread hiện có thay vì spam
  • Sticky PR summaries — cập nhật tại chỗ
  • Batching — chia review lớn thành các batch tuần tự (vd: 50 comment mỗi batch) để tôn trọng giới hạn API GitHub
  • Định tuyến mức độ nghiêm trọng — chuyển các phát hiện mức thấp hoặc style từ inline comments vào PR summary chính

Lệnh chính#

LệnhMục đích
ocr reviewReview thay đổi workspace, refs hoặc commits
ocr scanKiểm toán toàn bộ repo hoặc thư mục (không cần diff)
ocr delegateGiao review cho AI coding agent bên ngoài
ocr session listLiệt kê, tiếp tục hoặc phát lại phiên review
ocr configCấu hình LLM provider và model

Use Cases#

PR review tự động trong CI — bắt lỗi, lỗ hổng bảo mật và lỗi logic tự động trong merge request GitHub/GitLab.

Kiểm toán code cũ & bảo mật — ocr scan review toàn bộ codebase về tuân thủ và code smells mà không cần diff.

Kiểm tra trước commit — tự review thay đổi staged hoặc unstaged trước khi push.

Tiêu chuẩn code doanh nghiệp — thực thi luật review riêng của nhóm trên các codebase đa ngôn ngữ lớn.

So sánh#

Khía cạnhOpen Code ReviewCoding agent thông thườngStatic analyzer (SonarQube, ESLint)
Độ chính xác dòng✅ Chính xác⚠️ Rủi ro lệch✅ Chính xác
Hiểu ngữ nghĩa✅ LLM✅ LLM❌ Khớp mẫu
Hiệu quả token✅ ~1/9❌ Dài dòngN/A
False positive lỗi logic✅ Thấp⚠️ Thay đổi❌ Cao
Kiểm toán toàn repoocr scan⚠️ Hạn chế
Bảo mật✅ Mọi LLM endpointThay đổi✅ On-prem
Giấy phép✅ Apache 2.0Thay đổiThay đổi

Tại sao quan trọng#

Open Code Review là trường hợp hiếm hoi của công cụ AI được chứng minh trong sản xuất chuyển sang mã nguồn mở: hàng triệu lỗi được phát hiện trên hàng chục nghìn lập trình viên trước khi được phát hành. Kiến trúc hybrid của nó — pipeline xác định cho độ chính xác, LLM agent cho hiểu ngữ nghĩa — là bản thiết kế để xây dựng công cụ AI phát triển phần mềm đáng tin cậy.

Và nó hoàn toàn mã nguồn mở, bảo mật: cắm bất kỳ LLM endpoint nào, bao gồm model chạy local, và giữ codebase của bạn hoàn toàn riêng tư.

Tài liệu tham khảo#