Chuyển đến nội dung chính
Kết nối AWS CodeCommit để agent CloudThinker liệt kê và đọc repository của bạn, đồng thời chạy Review (review code tự động bằng AI) trên pull request của chúng. Kết nối đăng nhập bằng IAM role (khuyến nghị) hoặc access key của IAM user, và áp dụng cho một AWS Region.

Điều kiện tiên quyết

  • Tài khoản AWS chứa các repository CodeCommit bạn muốn kết nối.
  • Quyền tạo IAM role hoặc IAM user trong tài khoản đó, và mở AWS CloudShell. Managed policy AWSCloudShellFullAccess cấp quyền truy cập CloudShell.
  • AWS Region chứa các repository, ví dụ us-east-1.
Mỗi workspace có một kết nối AWS CodeCommit, và kết nối đó áp dụng cho một Region. Để truy cập repository ở Region thứ hai, hãy kết nối Region đó từ một workspace khác.

Thiết lập

Trong thanh bên, nhấn More → Workspace settings → Connections, giữ nguyên tab Builtin Connections và chọn AWS CodeCommit. Chọn AWS Region, rồi chọn một tab.
1

Mở AWS CloudShell

Trên tab IAM Role, mở AWS CloudShell từ bước Open AWS CloudShell. CloudShell chạy trong trình duyệt nên bạn không cần cài đặt gì.
2

Chạy script thiết lập

Trong Run Setup Script, sao chép script, dán vào CloudShell và chạy. Script tạo role CloudThinkerCodeCommitAccessRole với trust policy chứa External ID của workspace, rồi in ra role ARN. Quyền yêu cầu hiển thị cả hai policy.Nếu đã có role cùng tên, script giữ nguyên role đó, làm mới trust policy với External ID của bạn và in ra ARN. Script không thay đổi quyền của role đó, nên hãy đối chiếu các quyền đó với policy bên dưới. Trình hướng dẫn cũng liệt kê các bước tương tự dưới dạng lệnh thủ công.
3

Dán Role ARN

Dán ARN vào Role ARN và nhấn Connect.Trạng thái thành công: hộp thoại hiển thị Connected cùng số repository mà CloudThinker truy cập được.

Gửi sự kiện pull request đến Review

Review không bắt đầu trên pull request mới cho đến khi AWS gửi sự kiện đến Review.
1

Chạy script webhook

Trong trình hướng dẫn thiết lập Review, sao chép script từ bước Events. Script đã chứa sẵn webhook URL và secret của bạn. Chạy script trong AWS CloudShell của tài khoản sở hữu các repository.Với mỗi repository trong Region, script tạo các rule Amazon EventBridge tên CloudThinker-CodeCommit-* cho sự kiện pull request, comment và push. Script cũng tạo một EventBridge connection, một API destination và IAM role CloudThinker-CodeCommit-EventBridgeInvokeRole để gửi sự kiện đến CloudThinker.
2

Đánh dấu đã cấu hình

Khi script in ra “Webhook setup complete”, nhấn Mark as Configured trong trình hướng dẫn.Trạng thái thành công: pull request mới nhận được comment tiến độ của CloudThinker. Chạy lại script sau khi bạn thêm repository. Xem xác thực nhà cung cấp để biết chi tiết.

Chi tiết kết nối

Quyền yêu cầu

Script thiết lập gắn một inline policy với các action sau: Các action CodeCommit áp dụng cho mọi repository (Resource: "*"). Policy không chứa iam:PassRole.
Trust policy của IAM role chỉ cho phép AWS principal của CloudThinker assume role, và chỉ khi có External ID của workspace. Trình hướng dẫn tự điền cả hai giá trị.
Inline policy, tên CodeCommitReviewAccess trên role và CodeCommitReviewAccessKeyPolicy trên user dùng access key:
Giữ policy đúng như script đã gắn và không thêm quyền rộng hơn. Phương thức IAM role không lưu key dài hạn nào, nên hãy ưu tiên phương thức này.

Khả năng của agent

Thao tác đọc chạy mà không cần hỏi. Đăng comment lên pull request là thao tác ghi, nên cần bật Allow writes (mặc định bật) và đi qua Rules và Approval mode của bạn trước. Để chặn hoàn toàn thao tác ghi CodeCommit, mở AWS CodeCommit trong More → Workspace settings → Connections và tắt công tắc Allow writes trên bảng chi tiết. Trên CodeCommit, bạn có thể mention @cloudthinker-ai kèm câu hỏi hoặc help trong comment cấp cao nhất của pull request. Không hỗ trợ trả lời trong thread, review và autofix. Xem lệnh mention.

Xác minh kết nối

Kết quả mong đợi là tên các repository trong Region của kết nối. Số lượng phải khớp với con số hộp thoại đã hiển thị khi bạn kết nối.

Ví dụ prompt

Khắc phục sự cố

CloudThinker không thể dùng thông tin xác thực. Lần lượt kiểm tra:
Lỗi không mong đợi đã dừng quá trình kiểm tra. Hãy thử lại. Nếu lỗi lặp lại, liên hệ bộ phận hỗ trợ.
Thông tin xác thực hoạt động, nhưng Region đã chọn không có repository nào mà role hoặc user có thể liệt kê. Xác nhận AWS Region và các quyền ở trên đã được gắn.
Repository đó nằm ở Region khác. Mỗi kết nối chỉ thấy Region được thiết lập cho kết nối đó.
AWS không gửi sự kiện pull request cho đến khi hoàn tất bước webhook. Chạy script webhook từ trình hướng dẫn, rồi nhấn Mark as Configured. Xem xác thực nhà cung cấp.

Bảo mật

  • Quyền tối thiểu — chỉ cấp các quyền mà agent cần cho trường hợp sử dụng của bạn; bắt đầu với quyền chỉ đọc và mở rộng sau.
  • Chỉ đọc theo mặc định — sử dụng thông tin xác thực chỉ đọc trừ khi bạn muốn agent thực hiện thay đổi qua kết nối này.
  • Xoay vòng thông tin xác thực — xoay vòng khóa và token theo lịch trình thông thường của bạn; CloudThinker sẽ lấy giá trị mới khi bạn cập nhật kết nối.
  • Thu hồi khi bàn giao — xóa thông tin xác thực tại nhà cung cấp khi bạn xóa một kết nối hoặc khi đồng nghiệp rời nhóm.
  • External ID: trust policy của role yêu cầu External ID, giúp ngăn tài khoản AWS khác lừa CloudThinker dùng role của bạn (vấn đề confused deputy). AWS không coi External ID là secret.
  • Danh tính chuyên dụng: chỉ dùng role hoặc user do script tạo cho CloudThinker, để bạn có thể thu hồi mà không ảnh hưởng đến mọi thứ khác.

Liên quan

Thiết lập Review

Bật review code tự động cho các repository CodeCommit của bạn.

Xác thực nhà cung cấp

Phương thức xác thực và các bước webhook cho mọi nhà cung cấp Review.