Android Studio cho đổi coding agent ngay trong IDE — điều đáng kiểm không phải tên model
BYOA cho phép dùng Claude Agent, Codex hoặc Antigravity trong Android Studio Canary. Cách thử hữu ích là giữ nguyên một task, quyền và build/test gate rồi mới so agent.
Xong bài này bạn làm được Có thể đổi agent theo quota hoặc loại task mà vẫn giữ một chuẩn kiểm chứng chung trước khi merge.
Ngày 24/9/2026, Google công bố Bring Your Own Agent (BYOA) cho bản Canary của Android Studio Rabbit 2. Điểm mới không chỉ là có thêm một menu chọn model. Theo Android Developers Blog, IDE có thể kết nối các agent tương thích Agent Client Protocol (ACP), với Claude Agent, OpenAI Codex và Google Antigravity là các lựa chọn được nêu sẵn. Android Studio còn cung cấp project graph, thông tin build và công cụ như build diagnostics, Compose Preview, Android SDK và emulator cho agent.
Điều đó làm việc đổi agent dễ hơn, nhưng cũng tạo một bẫy đánh giá: chạy cùng một yêu cầu trên hai agent rồi chọn bên trả lời nghe hay hơn. Với code chuẩn bị merge, tiêu chí hữu ích hơn là agent nào hoàn thành task trong cùng ranh giới quyền và để lại bằng chứng dễ kiểm hơn.
Bài này dành cho lập trình viên Android đang cân nhắc dùng nhiều coding agent. Ví dụ dưới đây là tình huống giả lập để minh họa cách đánh giá; đây không phải benchmark đã chạy giữa Claude Agent, Codex và Antigravity.
BYOA thay lớp điều phối, không thay trách nhiệm kiểm code
Google mô tả BYOA như một cách ghép agent bạn chọn với hạ tầng và công cụ sẵn trong Android Studio. IDE có thể đưa project graph cho agent để nó lọc phần liên quan, đồng thời cho agent gọi các công cụ build, UI preview, SDK và emulator. Google cũng nói người dùng có thể đổi sang agent khác khi một agent hết quota hoặc không phù hợp với công việc hiện tại.
Đó là lợi ích thật về workflow. Nhưng một agent có thể đọc file, sửa file, chạy lệnh và dùng công cụ IDE không có nghĩa thay đổi của nó đã đúng. Cùng một nguyên tắc nên tồn tại dù bạn đổi nhà cung cấp: diff phải nằm trong phạm vi task, test phải chứng minh hành vi cần sửa, và quyền/công cụ agent dùng phải hợp lý với task đó.
Thử bằng một task đủ nhỏ để nhìn thấy khác biệt
Giả sử app có form tạo hồ sơ và yêu cầu là: Không cho gửi khi trường tên chỉ chứa khoảng trắng; thêm test cho trường hợp này.
Đây là task tốt để so hai agent vì kết quả mong đợi quan sát được. Trước khi chạy, ghi lại bốn điều:
| Mục | Điều kiện giữ cố định |
|---|---|
| Phạm vi | Chỉ validation của form và test liên quan |
| Hành vi | Chuỗi chỉ có khoảng trắng phải bị từ chối |
| Bằng chứng | Test mới fail trước sửa, pass sau sửa nếu môi trường cho phép |
| Ranh giới | Không đổi dependency, cấu hình CI hay file ngoài task nếu chưa có lý do |
Sau đó chạy Agent A. Khi xong, lưu diff, lệnh test/build đã chạy và mọi yêu cầu cấp quyền. Reset branch hoặc dùng một worktree sạch rồi chạy Agent B với cùng yêu cầu và cùng ranh giới.
Đừng chấm điểm theo số dòng chat. Một agent giải thích dài hơn chưa chắc tạo patch tốt hơn; một agent sửa nhanh hơn cũng chưa chắc đã kiểm đúng.
Bốn câu hỏi sau mỗi lượt chạy
1. Diff có vượt task không? Nếu yêu cầu chỉ sửa validation nhưng agent đồng thời đổi thư viện, format hàng loạt file hoặc sửa cấu hình build, phần phát sinh cần được xem như một quyết định riêng.
2. Test có kiểm đúng lỗi không? Một dòng BUILD SUCCESSFUL không tự chứng minh trường hợp khoảng trắng đã được bao phủ. Mở test mới và xem nó có thực sự đưa input đó vào hay không.
3. Agent đã dùng những công cụ nào? BYOA có thể cho agent tiếp cận các công cụ Android Studio. Việc có công cụ không đồng nghĩa task nào cũng cần dùng tất cả. Một sửa validation cục bộ thường không cần mở rộng quyền sang các tài nguyên không liên quan.
4. Bạn có thể tái hiện bằng chứng không? Hãy chạy lại test hoặc build gate quan trọng từ IDE/terminal của bạn. Nếu kết quả chỉ tồn tại trong lời tường thuật của agent, nó chưa phải bằng chứng merge.
Khi nào việc đổi agent thực sự có ích
BYOA hữu ích khi bạn muốn dùng agent phù hợp với loại task, quota hoặc gói dịch vụ đang có mà không phải rời Android Studio. Google nói người dùng có thể đăng nhập bằng plan của nhà cung cấp hoặc API key tùy agent, và có thể chuyển agent khi quota hoặc hiệu năng không phù hợp. Đây là khả năng sản phẩm do Google công bố, không phải bằng chứng rằng một agent cụ thể tốt hơn agent khác trên repository của bạn.
Vì vậy, hãy giữ một scorecard rất nhỏ cho vài task thật:
- patch có nằm trong scope;
- test/build gate có qua;
- số lần bạn phải sửa lại;
- quyền hoặc công cụ ngoài dự kiến;
- thời gian review của con người.
Sau 5–10 task, dữ liệu này hữu ích hơn một cuộc tranh luận chung về model nào mạnh nhất. Nó đo đúng thứ bạn đang mua: một workflow tạo thay đổi có thể kiểm chứng trong repository của mình.
Dừng thử khi ranh giới bắt đầu trôi
Nếu một agent liên tục cần quyền rộng hơn task, tạo diff khó giải thích, bỏ qua test hỏng hoặc buộc bạn nới gate chỉ để demo chạy, đừng sửa tiêu chuẩn để giữ agent. Chuyển task về manual hoặc thử agent khác với cùng điều kiện.
BYOA làm chi phí chuyển agent thấp hơn. Giá trị lớn nhất của sự linh hoạt đó chỉ xuất hiện khi tiêu chuẩn chấp nhận không chuyển theo agent. Bạn có thể thay Claude Agent bằng Codex hay Antigravity trong IDE; diff, test và quyền vẫn phải trả lời cùng một câu hỏi trước merge: thay đổi này có đúng, có đủ bằng chứng và có nằm trong phạm vi đã giao không?
Nguồn để đối chiếu
- Android Developers Blog — Build your way: Use any AI agent of your choice in Android Studio (24/9/2026): nguồn chính thức cho BYOA, ACP, các agent được hỗ trợ ban đầu, project graph, native tool injection, quyền và khả năng đổi agent.