Vấn đề
Bạn viết story trong công cụ AI, rồi copy thủ công từng field vào Jira/Azure DevOps: tiêu đề, mô tả, AC, labels, epic link, story point. Mỗi story mất 3-5 phút gõ lại. Nhân với vài chục story mỗi sprint, đó là hàng giờ đồng hồ. Đây là lúc chuyển từ AI trợ giúp sang agent thao tác trực tiếp trên công cụ.
Ba cách kết nối AI với Jira/Azure DevOps
- Output có cấu trúc + import: AI xuất bảng/CSV, bạn dùng tính năng import của Jira. An toàn nhất, kiểm soát tốt.
- Trợ lý tích hợp sẵn: Jira có Atlassian Intelligence; Azure DevOps có GitHub Copilot. Gõ mô tả ngắn, công cụ gợi ý tạo work item.
- Agent qua API (MCP/automation): Agent gọi REST API của Jira/Azure DevOps để tạo/cập nhật ticket theo lệnh bạn ra. Mạnh nhất nhưng cần kiểm soát quyền chặt.
Prompt mẫu: xuất story sang định dạng import
Bạn là trợ lý PO. Chuyển các story dưới đây thành bảng để import vào Jira.
Cột: Summary | Issue Type | Description | Acceptance Criteria | Labels | Epic Link | Story Points (để trống).
Giữ nguyên nội dung, không tự thêm story. Xuất ở dạng CSV, dấu phân cách phẩy, mỗi story 1 dòng.
Story: <dán danh sách story>
Prompt mẫu: lệnh cho agent cập nhật (khi dùng API/automation)
Hành động: cập nhật các ticket sau trên Jira.
- PROJ-142: thêm label "needs-refinement", set thành phần "Checkout"
- PROJ-155: cập nhật mô tả bằng AC mới bên dưới, KHÔNG đổi trạng thái
Ràng buộc bắt buộc:
- Chỉ thao tác đúng 2 ticket được liệt kê.
- Không xóa nội dung cũ, chỉ bổ sung.
- Trước khi thực hiện, in ra bản tóm tắt thay đổi để tôi xác nhận (chế độ dry-run).
Quy tắc vàng: với agent có quyền ghi, luôn yêu cầu dry-run (in ra dự định) trước khi cho phép thực thi.
Các bước áp dụng
- Bắt đầu với luồng import CSV cho các story mới — rủi ro thấp.
- Xác định phạm vi quyền của agent: chỉ 1 project, chỉ tạo/sửa, không xóa.
- Với mỗi lệnh ghi, bật dry-run và đọc bản tóm tắt trước khi duyệt.
- Chạy thử trên 1 ticket sandbox trước khi áp lên backlog thật.
- Ghi log lại thay đổi agent thực hiện để đối soát.
- Chỉ mở rộng quyền khi agent đã chạy đúng nhiều lần.
Checklist an toàn khi cho agent ghi vào Jira/Azure DevOps
[ ] Agent chỉ có quyền trên đúng project cần thiết
[ ] Không cấp quyền xóa ticket / xóa nội dung
[ ] Mọi lệnh ghi đều qua bước dry-run xác nhận
[ ] Có giới hạn số ticket mỗi lần chạy (tránh sửa nhầm hàng loạt)
[ ] Token/API key lưu an toàn, không dán vào chat công cộng
[ ] Có nhật ký (audit log) để truy vết
[ ] Ticket quan trọng (release, hợp đồng) cần người duyệt tay
Sai lầm thường gặp
- Cho agent quyền quá rộng: Một agent có quyền xóa và sửa mọi project là quả bom hẹn giờ. Giới hạn phạm vi tối thiểu cần thiết.
- Bỏ qua dry-run: Agent hiểu sai lệnh có thể sửa 200 ticket sai. Dry-run là phanh an toàn — đừng tắt để "cho nhanh".
- Ảo giác ID ticket: AI có thể bịa mã ticket không tồn tại (PROJ-999) hoặc gán nhầm. Luôn để agent xác nhận ticket tồn tại trước khi ghi.
- Rò rỉ dữ liệu / token: API token bị lộ nghĩa là ai đó điều khiển được cả backlog. Lưu token trong kho bí mật, không hard-code, không dán vào prompt.
- Phụ thuộc quá mức: Nếu agent tự cập nhật trạng thái mà không ai theo dõi, board Jira có thể phản ánh sai thực tế. Giữ con người trong vòng lặp cho các thay đổi trạng thái quan trọng.
Chốt bài
Bạn đã biết cách để AI/agent thao tác trực tiếp trên Jira/Azure DevOps một cách an toàn với dry-run và giới hạn quyền. Bài 5 sẽ dùng agent cho việc nhắc nhở refinement và giữ backlog sạch tự động.
Học xong bài này rồi?
Tạo tài khoản miễn phí để lưu lại — lần sau vào là biết ngay đang dở ở đâu,
và học hết khóa thì có chứng chỉ.
Lưu tiến độ của tôi