“Agent” là từ bị dùng loạn nhất trong AI engineering hiện nay. Trang này định nghĩa nó một cách hẹp và dùng được: agent là một hệ thống trong đó model tự quyết định các bước tiếp theo và tự gọi tool để thực hiện, lặp lại đến khi hoàn thành mục tiêu.
Claude Code chính là một agent. Hiểu định nghĩa này giúp bạn biết khi nào nên xây một agent - và quan trọng hơn, khi nào không nên.
Ba mức: một lần gọi → workflow → agent
Phần tiêu đề “Ba mức: một lần gọi → workflow → agent”| Mức | Ai quyết định các bước | Ví dụ |
|---|---|---|
| Một lần gọi model (single call) | Không có bước nào - vào một prompt, ra một câu trả lời | Phân loại ticket, tóm tắt tài liệu, trích xuất dữ liệu, dịch |
| Workflow | Bạn viết code quyết định luồng; model chỉ điền vào từng ô | Pipeline: đọc file → gọi model tóm tắt → lưu DB → gọi model viết email |
| Agent | Model quyết định: gọi tool nào, theo thứ tự nào, khi nào dừng | Claude Code, một agent tự debug và sửa test đến khi pass |
Sự khác biệt cốt lõi giữa workflow và agent là ai giữ vòng lặp điều khiển. Trong workflow, luồng là tất định (deterministic) - bạn đọc code là biết nó sẽ làm gì. Trong agent, luồng do model quyết định tại runtime - mạnh hơn nhiều nhưng cũng khó dự đoán, khó test, khó giới hạn chi phí hơn.
Vòng lặp agentic
Phần tiêu đề “Vòng lặp agentic”Cơ chế đứng sau mọi agent đều giống nhau - xem Cách Claude Code hoạt động để thấy phiên bản cụ thể:
1. Model nhận mục tiêu + danh sách tool khả dụng2. Model quyết định: trả lời luôn, hay gọi một/nhiều tool?3. Nếu gọi tool → harness thực thi tool, đưa kết quả trở lại ngữ cảnh4. Quay lại bước 25. Dừng khi model cho rằng đã xong (hoặc chạm giới hạn bạn đặt)“Harness” là phần code bạn (hoặc Anthropic) viết để chạy vòng lặp này: nó nhận yêu cầu gọi tool từ model, thực thi thật, và đưa kết quả về. Model không tự chạy được gì cả - nó chỉ phát ra yêu cầu gọi tool. Mọi giới hạn an toàn nằm ở harness, không nằm ở model. Đây là lý do chế độ quyền hạn và hooks trong Claude Code hoạt động được: harness là nơi chặn.
Bốn thành phần của một agent
Phần tiêu đề “Bốn thành phần của một agent”| Thành phần | Vai trò | Trong Claude Code |
|---|---|---|
| Model | Bộ não suy luận và ra quyết định | Claude Opus 5 / Sonnet 5… |
| Tool | Cách agent tác động lên thế giới | Read, Write, Edit, Bash, Grep, WebFetch, MCP |
| Ngữ cảnh | Những gì agent “biết” tại thời điểm này | Cửa sổ ngữ cảnh, CLAUDE.md, auto memory |
| Vòng lặp + guardrail | Chạy, giới hạn, kiểm chứng | Harness, permission mode, hooks, /goal |
Thiếu tool thì đó là chatbot. Thiếu vòng lặp thì đó là một lần gọi model. Thiếu guardrail thì đó là một agent bạn không dám để chạy một mình.
Có nên xây agent không? Bốn câu hỏi
Phần tiêu đề “Có nên xây agent không? Bốn câu hỏi”Trước khi chọn mức agent, kiểm tra cả bốn:
- Độ phức tạp - tác vụ có nhiều bước và không thể đặc tả đầy đủ trước không? (“biến design doc này thành một PR” → có; “trích tiêu đề từ PDF này” → không)
- Giá trị - kết quả có đáng với chi phí và độ trễ cao hơn không? Agent tốn nhiều token hơn một lần gọi hàng chục lần.
- Khả thi - model có thực sự giỏi loại việc này không?
- Chi phí khi sai - sai có phát hiện và khôi phục được không? (test, review, rollback)
Trả lời “không” cho bất kỳ câu nào → hãy dùng workflow hoặc một lần gọi.
Các pattern agent thường gặp
Phần tiêu đề “Các pattern agent thường gặp”- ReAct (Reason + Act) - model xen kẽ suy luận và gọi tool. Đây là pattern mặc định của gần như mọi agent hiện đại, kể cả Claude Code.
- Plan-then-execute - lập kế hoạch đầy đủ trước, rồi thực thi. Chính là plan mode.
- Writer–Reviewer - một agent làm, một agent khác review trong ngữ cảnh sạch. Xem Best practices.
- Orchestrator–Worker - một agent điều phối, giao việc con cho các subagent. Xem Multi-agent.
- Reflection / self-critique - agent tự đánh giá kết quả của mình rồi sửa. Kém hiệu quả hơn để một agent mới (ngữ cảnh sạch) review.
Vì sao agent khó
Phần tiêu đề “Vì sao agent khó”Ba khó khăn lặp lại ở mọi hệ agent, không riêng Claude Code:
- Ngữ cảnh là ràng buộc cứng. Mỗi lần gọi tool đều đổ kết quả vào ngữ cảnh. Agent chạy lâu sẽ đầy ngữ cảnh và bắt đầu mắc lỗi. Xem Context engineering.
- Không có tín hiệu “xong” đáng tin. Model dừng khi trông như đã xong. Phải cấp cho nó phép kiểm chứng tự chạy được - test, build, ảnh chụp so sánh.
- Lỗi tích lũy. Xác suất đúng ở mỗi bước nhân với nhau: 20 bước, mỗi bước đúng 95% → chỉ còn ~36% đúng cả chuỗi. Đây là lý do các bước kiểm chứng giữa chừng quan trọng hơn nhiều so với việc chọn model tốt hơn.
Đọc thêm
Phần tiêu đề “Đọc thêm”- Cách Claude Code hoạt động - vòng lặp agentic cụ thể của Claude Code.
- Tool use & function calling - cơ chế model gọi tool.
- Multi-agent - khi một agent không đủ.
- Best practices - cách làm việc hiệu quả với một agent trong thực tế.
lượt xem