# Khóa AI agent cho người mới: sáu agent, quyền hạn, prompt contract và memory

[AI Master](https://homus.dev/speakers/ai-master) · [AI Master](https://homus.dev/orgs/ai-master)

> Agent là gì, MCP nối tool ra sao, so sánh sáu agent, trao quyền theo độ khó hoàn tác, prompt contract năm phần và file memory của project.

Topics: Agents, Coding Agents, Context Engineering, Workflow

Canonical: https://homus.dev/talks/full-ai-agents-course-for-beginners-in-2026-become-a-pro

## 1. Demo: một thư mục lộn xộn thành bài thuyết trình hoàn chỉnh

Người dẫn video mở đầu bằng một nhận định: AI đang chuyển từ chỗ trả lời câu hỏi của bạn sang chỗ thực sự làm việc thay bạn. Trong khoảng 30 phút của video, anh hứa sẽ chỉ cách dựng những AI agent biến một chỉ dẫn đơn giản thành một sản phẩm đã làm xong, cho thấy tool nào hợp với việc nào, và cách nối chúng vào các file, các app mà bạn vẫn đang dùng hằng ngày.

Để thấy điều đó trông ra sao trong thực tế, anh mở màn hình máy mình. Trên desktop có một thư mục tên là Dinosaur Project, và bên trong là một mớ lộn xộn đúng nghĩa. Có ảnh của nhiều loài khủng long khác nhau, vài file PDF, hai file Word, một spreadsheet đầy số, một biểu đồ không ai đặt nhãn, và một đống ghi chú rời rạc với tên file chẳng nói lên được gì về nội dung bên trong.

Không có gì được sắp xếp. Trong thư mục đó không có dàn ý nào, không có danh sách những dữ kiện nào quan trọng, không file nào được đổi tên cho dễ hiểu. Toàn bộ input chính là cái thư mục ấy. Sau đó agent nhận đúng một chỉ dẫn, viết theo cách bạn sẽ nói thành lời với một người khác. Chỉ dẫn hiện trên màn hình là đoạn sau:

```
Create a polished, professionally designed 10-slide presentation about dinosaurs using the material in the DINOSAUR PROJECT folder on my Desktop.

Use only the files in that folder as source material. Do not browse the web, modify or rename the original files, install anything, or create or change anything outside that folder.

Save the finished presentation as DINOSAURS.pdf in the same folder. The job is complete when all 10 slides are fully designed, visually consistent, factually supported by the provided files, and the PDF opens correctly with no broken or missing elements.
```

![Claude Code nhận chỉ dẫn làm bài thuyết trình 10 slide về khủng long và bắt đầu đọc file](https://homus.dev/photos/c6Hxnu4JoOw-0103.jpg)

Chỉ dẫn duy nhất được gửi cho agent ở góc trên. Ngay bên dưới, agent nói sẽ bắt đầu bằng việc xem trong thư mục DINOSAUR PROJECT có gì, chạy một lệnh, đọc bốn file, rồi lần lượt đọc research_notes.pdf, paper_final.pdf, chuyển file docx sang text và đọc nội dung file xlsx.

Người dẫn video bảo người xem hãy để ý agent làm gì với đúng một dòng chỉ dẫn đó. Nó liệt kê nội dung thư mục rồi bắt đầu mở tài liệu, cái này nối tiếp cái kia. Nó đọc các file PDF và rút ra một số ít dữ kiện thực sự dùng được. Nó mở các tấm ảnh để tự xác định con khủng long nào nằm trong ảnh nào, vì tên file không hề cho biết. Đâu đó ở giữa quá trình, nó chốt được một mạch kể, và thứ tự nó chọn là hợp lý: mở đầu bằng bức tranh tổng thể, đi qua từng loài, rồi kết thúc ở sự tuyệt chủng.

Không ai đưa cho nó cấu trúc đó. Rồi nó dựng các slide và, theo lời người dẫn video, ghi một file PowerPoint thẳng trở lại vào thư mục (trong chỉ dẫn trên màn hình, file đầu ra được yêu cầu là DINOSAURS.pdf, và bản hiện ra ở cuối demo là một PDF 10 trang). Anh nhấn mạnh: anh không đưa cho nó bài thuyết trình nào, không đưa dàn ý, thậm chí không sắp xếp phần tư liệu. Anh chỉ giao một thư mục, và một file đã hoàn chỉnh quay trở ra.

![Trang 4 của file DINOSAURS.pdf với biểu đồ chiều dài sáu loài khủng long](https://homus.dev/photos/c6Hxnu4JoOw-0144.jpg)

Kết quả của agent: trang 4 trên 10 của DINOSAURS.pdf, tiêu đề "From Turkey-Sized to Titanic", có biểu đồ chiều dài ước tính của sáu loài (Brachiosaurus dài nhất, khoảng 26 m; Velociraptor ngắn nhất, khoảng 2 m) và hai ô ghi loài nhỏ nhất, loài lớn nhất.

Câu chốt của phần demo: một chatbot có thể giúp bạn làm bài thuyết trình, còn một agent có thể tự làm ra bài thuyết trình. Theo người dẫn video, mọi thứ còn lại trong video chỉ là cơ chế để chuyện đó xảy ra và cách bạn giữ quyền kiểm soát nó.

## 2. Agent thực ra là gì: model cộng ba phần

Sau một demo như thế, người dẫn video cho rằng đáng để chốt lại agent thực sự là gì. Từ "agent" đang bị kéo giãn để chỉ đủ thứ, từ một chatbot có cá tính cho tới một script chạy theo hẹn giờ. Anh bắt đầu từ model đứng một mình, vì đó là thứ hầu như ai cũng đang dùng hiện nay (tính đến lúc video đăng, 03/10/2026).

Một language model hiểu bạn hỏi gì, suy luận về câu hỏi đó và sinh ra câu trả lời. Một agent là chính model ấy cộng thêm ba phần bao quanh:

- **Model là bộ não.** Nó vẫn làm phần hiểu và phần ra quyết định.

- **Tools là đôi tay**: file system, browser, terminal, các API, và bất cứ app nào bạn cho phép nó chạm vào.

- **Memory là phần context nó mang theo giữa các bước**, ví dụ quy tắc của bạn, sở thích của bạn, và các dữ kiện về chính project này.

- **Goal là đích đến**: một kết quả cụ thể, khi agent làm xong thì kết quả đó hoặc tồn tại, hoặc không.

![Slide Agent = model + 3 parts với quả cầu Brain ở giữa](https://homus.dev/photos/c6Hxnu4JoOw-0216.jpg)

Slide "Agent = model + 3 parts": quả cầu ở giữa là Brain, "understands and decides" (hiểu và quyết định). Ba ô viền nét đứt xung quanh là chỗ dành cho ba phần còn lại: tools, memory và goal.

Bỏ đi bất kỳ một phần nào trong số đó, bạn quay về một chatbot chỉ thêm vài bước rườm rà.

## 3. Vòng lặp observe, think, act, check

Bốn phần ấy chạy trong một vòng lặp, và theo người dẫn, vòng lặp mới là cơ chế thật đứng sau mọi thứ người xem vừa thấy. Agent quan sát (observe) xem trong thư mục có gì. Nó nghĩ (think) xem file nào trong đó có ích cho một bài thuyết trình. Nó hành động (act) bằng cách mở các file ấy. Sau đó nó lại quan sát xem bên trong thực sự có gì, nghĩ cách biến chỗ đó thành một câu chuyện, rồi lại hành động bằng cách viết slide. Cuối cùng nó kiểm tra (check) kết quả so với goal được giao; nếu việc chưa xong, nó đi thêm một vòng nữa, và cùng chu trình ấy lại bắt đầu.

Vòng lặp người dẫn video mô tả: quan sát, nghĩ, hành động, rồi kiểm tra kết quả với goal; chưa đạt thì quay lại vòng mới.

Anh muốn người xem dừng lại ở điểm này một chút, vì nó gỡ bỏ phần "phép màu" theo một cách hữu ích. Agent không phải một loại model huyền bí, tách biệt nào đó. Nó là một model chạy trong vòng lặp, được cấp quyền thay đổi mọi thứ trong thế giới thật. Điều đó có nghĩa là những câu hỏi thú vị không còn xoay quanh trí thông minh nữa, mà xoay quanh phần "hệ thống ống nước" (plumbing): nó với tới được gì? Nó được phép làm gì? Nó nhớ được gì? Theo người dẫn video, toàn bộ phần còn lại của video chính là ba câu hỏi đó.

## 4. Không phải việc nào cũng cần agent

Trước khi đi vào phần tool, người dẫn video nói rõ: không phải việc nào cũng cần một agent. Một nửa những gì anh làm trong một ngày vẫn chỉ là đặt câu hỏi, và chatbot trả lời những câu đó ổn. Lỗi này nghĩa là gì? Viết lại đoạn văn này. Điều khoản này có bình thường không? Ở những chỗ đó bạn không cần một "người làm việc" (worker).

## 5. MCP: trao tool cho agent

Quay lại câu hỏi "agent với tới được gì", người dẫn video nói khoảng trống đó chính là thứ MCP lấp vào. MCP là viết tắt của Model Context Protocol, một chuẩn chung để trao một tool cho agent. Anthropic công bố nó, và phần còn lại của ngành tiếp nhận đủ nhanh để, theo anh (tính đến 03/10/2026), giờ đây nó là cách mặc định để nối tool. Trước khi có MCP, mỗi kết nối là một việc làm riêng. Agent của bạn nói chuyện với Slack theo một kiểu, với database theo một kiểu hoàn toàn khác, và bạn phải tự tay bảo trì cả hai.

![Slide MCP Model Context Protocol, một quả cầu được cắm dây tới thư mục, browser, terminal và API](https://homus.dev/photos/c6Hxnu4JoOw-0530.jpg)

Slide giới thiệu MCP: "A shared standard for handing a tool to an agent". Quả cầu (agent) được cắm một sợi dây tới thư mục, còn browser, terminal và API nằm chờ với cùng một kiểu đầu cắm.

Cách dễ nhất để hình dung, theo người dẫn, là một cái phích cắm: một hình dạng vừa với nhiều thiết bị. Bạn chạy một MCP server nhỏ cho thứ bạn muốn agent chạm vào. Agent hỏi server đó nó làm được gì, và server trả lời bằng một danh sách hành động. Database của bạn phơi ra các câu query. Browser phơi ra các thao tác click và đọc trang. File system phơi ra read, write và move.

Agent không cần biết bên dưới những thứ đó được xây thế nào. Nó chỉ thấy một "menu" các nước đi và chọn một. Người dẫn video gọi đó là toàn bộ mánh khóe, và đó là lý do cùng một agent vừa sửa bộ slide của anh cũng có thể kéo các dòng dữ liệu ra khỏi Postgres mà không cần một dòng code mới nào.

Điều thay đổi trong thực tế là nơi năng lực nằm. Nó không còn là bài toán viết code mà trở thành bài toán cấu hình. Bạn muốn agent làm việc với các task trong Notion: thêm server, khởi động lại, xong. Mặt trái cũng quan trọng không kém, và người dẫn video dặn người xem giữ nó trong đầu cho phần sau của video: mỗi server bạn nối vào là một cánh cửa bạn vừa mở ra trong chính hệ thống của mình. Một file system server nghĩa là agent có thể xóa đồ. Một browser server nghĩa là nó có thể bấm một cái nút mà chính bạn sẽ không bao giờ bấm. MCP cho agent quyền truy cập các tool đó, nhưng quyết định nó thực sự nên làm gì với chúng vẫn là việc của bạn, và anh hứa phần sau sẽ nói rất cụ thể về chuyện này.

## 6. Sáu nền tảng, bắt đầu với Claude Code

Theo người dẫn video, tính đến lúc quay video (đăng ngày 03/10/2026), có sáu nền tảng thực sự làm được vòng lặp nói trên. Chúng không làm theo cùng một cách: mỗi cái giả định một kiểu công việc khác nhau và một mức độ tin tưởng khác nhau. Anh đi qua từng cái một.

![Sáu biểu tượng: Claude Code, Codex, Hermes Agent, Antigravity, Grok Bot, OpenClaw](https://homus.dev/photos/c6Hxnu4JoOw-0814.jpg)

Sáu agent được so sánh trong video, xếp thành một hàng: Claude Code, Codex, Hermes Agent, Antigravity, Grok Bot và OpenClaw.

**Claude Code** là agent đã làm bộ slide khủng long, và là cái anh dùng khi việc cần làm là việc thật chứ không phải để demo. Tính đến video đăng ngày 03/10/2026, nó nằm ngay trong ứng dụng Claude desktop quen thuộc, hiện ra dưới dạng một tab Code riêng. Dù cảm giác giống giao diện thân thiện bạn vẫn dùng để chat, bên dưới nó thực sự gắn một console thật. Nó làm việc trực tiếp trên một thư mục trong máy bạn: đọc file, viết file mới, chạy lệnh và sửa ngay tại chỗ. Cái tên có chữ "code", và theo người dẫn, như vậy là đánh giá thấp nó rất nhiều: nó không quan tâm thư mục của bạn chứa một code base hay một đống tài liệu nghiên cứu và spreadsheet.

Có hai điều khiến nó khác những cái còn lại. Thứ nhất, nó lập kế hoạch trước khi hành động. Bạn giao một việc lớn, nó quay lại với danh sách các bước định làm, và đó là cơ hội "sạch sẽ" cuối cùng để bạn nói không. Thứ hai, nó giữ được một việc dài. Nó sẽ làm qua 15 file, nhớ những gì đã sửa, và tới cuối vẫn biết task ban đầu là gì. Đó là chỗ phần lớn agent gãy, còn Claude Code thì phần lớn là không.

Nhưng cũng có nhược điểm. Bạn phải đọc một dòng chữ chạy liên tục và duyệt (approve) từng hành động một, và việc đó cần thời gian để quen. Nó đốt token nhanh trong các việc dài, và một phiên làm việc nghiêm túc thì không rẻ. Nó cũng hoàn toàn có khả năng phá hỏng mọi thứ, vì một tool có quyền ghi vào thư mục của bạn có thể xóa nhầm file với sự tự tin tuyệt đối. Lời khuyên của anh: hãy dùng nó trên một project đã được backup. Và nếu bạn chỉ cài đúng một agent từ video này, hãy cài cái này.

## 7. Codex: giao việc qua bức tường, duyệt thứ quay về

**Codex** là agent của OpenAI, và cách hình dung về nó khác Claude Code ở một điểm quan trọng. Theo mô tả trong video (đăng ngày 03/10/2026), thay vì sống trong terminal của bạn và chạm vào máy bạn, nó làm việc trong cloud sandbox riêng, với một bản sao project của bạn. Bạn giao một task, nó đi làm trên bản sao, rồi quay lại với một thay đổi đã hoàn thiện để bạn review và chấp nhận. Không có gì trên ổ đĩa của bạn xê dịch cho tới khi bạn nói đồng ý.

Theo người dẫn video, cái sandbox đó chính là toàn bộ lời chào hàng. Kết cục tệ nhất của một lần chạy Codex hỏng là một đề xuất tồi mà bạn từ chối, chứ không phải một thư mục bạn phải khôi phục từ backup. Và vì mỗi task chạy cô lập, bạn có thể bắn ra nhiều task cùng lúc, để chúng "nấu" song song trong khi bạn làm việc khác. Anh ví nó gần nhất với việc thuê một nhà thầu làm việc ở ngoài văn phòng và gửi lại sản phẩm bàn giao.

![Slide so sánh Claude Code và Codex](https://homus.dev/photos/c6Hxnu4JoOw-1114.jpg)

Slide so sánh hai cách làm: Claude Code "On your machine, you watch it work" (chạy trên máy bạn, bạn nhìn nó làm), còn Codex "Throw tasks over the wall, review what comes back" (ném task qua bức tường, review thứ quay về).

Đánh đổi thì đúng như bạn đoán. Nó có cảm giác chậm phản hồi hơn, vì bạn chờ một vòng đi và về thay vì nhìn từng bước hiện ra trực tiếp. Nó thích nhất các project có cấu trúc, đặc biệt là code trong một repo, và càng kém thoải mái khi tư liệu của bạn càng lộn xộn, càng tùy hứng. Thư mục khủng long của anh chính là loại input nó ít thích nhất.

Anh tóm lại: nếu công việc nằm trên máy bạn và bạn muốn nhìn nó diễn ra, đó là Claude Code. Nếu bạn muốn ném task qua bức tường rồi review thứ quay về, đó là Codex.

## 8. Antigravity: thấy kế hoạch, lái browser, chia sub-agent

**Antigravity** là cách Google tiếp cận, và theo người dẫn, nó là cái trông giống nhất với một phần mềm bạn thực sự muốn mở. Nó khởi đầu là một editor đầy đủ xây quanh Gemini, nơi agent là "công dân hạng nhất" chứ không phải một khung chat gắn tạm bên cạnh. Bạn có một danh sách task hiển thị rõ, bạn nhìn nó đi qua từng bước, và bạn có thể dừng nó giữa chừng.

Sự hiển thị đó là một tính năng thật. Ai từng nhìn chằm chằm vào terminal tự hỏi "nó đang làm gì vậy" sẽ hiểu ngay. Và bạn không bị buộc phải ở trong editor của Google mới dùng được: theo video (đăng 03/10/2026), giờ đã có extension Antigravity chính thức cho VS Code, JetBrains, Zed và Xcode, nên engine chạy ngay trong workspace bạn đang dùng.

Phần người dẫn video thích nhất là, tính đến video đăng ngày 03/10/2026, nó lái được browser. Nó không chỉ chụp màn hình một trang rồi đoán. Nó thực sự mở một site, click qua các trang, điền form và báo lại chuyện gì đã xảy ra. Điều đó khép vòng cho cả một loại công việc trước đây cần một tool tự động hóa riêng.

Điều thứ hai nó làm là chia nhỏ một việc thay vì một mình cày hết. Theo video (đăng ngày 03/10/2026), nó tạo sub-agent ngay khi cần: một cái viết code, một cái khác chạy test ở chế độ nền, và cái thứ ba kiểm tra kết quả trong browser. Theo người dẫn, Claude Code làm việc như một agent đơn lẻ, và với một việc trải rộng thì bạn cảm nhận được khác biệt đó. Trong demo, anh gửi cho Antigravity một yêu cầu đúng theo kiểu này:

```
Analyze the entire DINOSAUR PROJECT folder using multiple subagents.

Have one subagent review the Research Notes, another analyze the Data folder, and another review the Images and other supporting materials.
```

![Antigravity phân tích thư mục DINOSAUR PROJECT bằng nhiều sub-agent](https://homus.dev/photos/c6Hxnu4JoOw-1303.jpg)

Antigravity nhận yêu cầu chia việc cho ba sub-agent. Bên dưới, nó đang khám phá file và chạy lệnh để xem máy có sẵn công cụ nào đọc được định dạng file (textutil, sips, file, strings có; pdftotext không có), với model Gemini 3.8 Flash ở chế độ High. Thanh bên trái còn có các phiên trước như "/browser Open Wikipedia...".

Cũng theo người dẫn, tính đến 03/10/2026 nó đang khá hào phóng ở gói miễn phí, nên thử nó chỉ tốn của bạn một buổi chiều. Nhưng nó vẫn còn mới, và đi kèm là vài chỗ thô ráp. Nó bị rối ở các việc nhiều bước, thực sự khó, thường xuyên hơn Claude Code, và phần điều khiển browser chậm đến mức bạn sẽ không dùng nó cho việc làm 20 lần mỗi ngày.

Lời phàn nàn anh có thể đã nói một năm trước là bị khóa vào hệ sinh thái (lock-in), và tính đến video đăng ngày 03/10/2026, điều đó đã hết. Bộ não có thể thay trong phần settings: tính đến video đăng ngày 03/10/2026, bạn có thể chạy agent bằng Claude Sonnet 4.6 hoặc Opus 4.6, và còn có GPT-OSS nếu không muốn dùng Gemini (trên màn hình, danh sách model gồm các bản Gemini 3.8, 3.7, 3.6 Flash, Gemini 3.1 Pro, Claude Sonnet 4.6, Claude Opus 4.6 và GPT-OSS 120B). Bạn giữ giao diện của Google mà không phải cam kết với model của Google. Anh sẽ chọn nó cho bất cứ việc gì mang tính hình ảnh hoặc "có hình dạng browser", và sẽ không chọn nó cho một lần refactor tinh tế.

## 9. Grok Bot: một đội bot trên một máy cloud

**Grok Bot** là câu trả lời của xAI cho cùng bài toán, và nó lật ngược hoàn toàn cách hình dung. Claude Code làm việc trên máy bạn. Codex dựng một sandbox mới cho mỗi task. Grok Bot thì cho bạn một đội bot có tên riêng, tất cả cùng sống trên một máy tính cloud chuyên dụng gắn với tài khoản của bạn. Theo mô tả trong video (đăng 03/10/2026), máy đó chạy suốt ngày đêm với file system, terminal và browser riêng, nên công việc vẫn tiếp tục khi laptop của bạn đã gập lại.

Bạn nói chuyện với các bot trong một luồng chat, như nói với đồng nghiệp. Theo video (đăng ngày 03/10/2026), bạn có thể dạy một bot bằng cách quay màn hình trong lúc tự mình làm task đó; nó lưu lại thành một routine rồi lặp lại mà không cần bạn.

Lời chào hàng ở đây là giao việc (delegation), và theo người dẫn nó hiệu quả vì các bot không xa lạ với nhau. Chúng dùng chung một máy và một file system, nên công việc thực sự được chuyền qua lại giữa chúng thay vì dừng lại trước một bức tường. Bạn có thể thả nhiều bot vào một group chat, và một bot sẽ đi thu thập dữ liệu trong khi bot khác ghi phiên bản đã xử lý trở lại các tool của bạn.

![Slide Many agents, one chat với hai robot hai bên một group chat](https://homus.dev/photos/c6Hxnu4JoOw-1426.jpg)

Slide "Many agents, one chat": một bot "Scout the data" (đi thu thập dữ liệu), một bot "Write it back to your tools" (ghi kết quả về các tool của bạn), cả hai nối vào cùng một group chat.

Tính đến video đăng ngày 03/10/2026, nó cũng cắm được vào Slack, Gmail và Cursor. Và khi một site hoàn toàn không có API, nó tự đăng nhập vào site đó trong browser trên máy cloud của nó và làm việc bằng tay. Người dẫn video nói đó là phần anh không ngờ mình lại thích.

Đánh đổi là "bán kính vụ nổ" (blast radius). Theo người dẫn (video đăng ngày 03/10/2026), các bot đó chạy cạnh nhau trên một máy, không ở trong các sandbox riêng, nên chúng giống các process dùng chung một máy tính hơn là các workspace cô lập. Nếu một bot làm bừa hoặc xóa một file quan trọng, mọi bot khác trên tài khoản đó cũng đứng giữa đống bừa bộn ấy. Bạn cũng phải đăng nhập các tài khoản thật của mình trên desktop cloud của nó, và theo anh, đó là một yêu cầu lớn nếu bạn cẩn trọng về bảo mật, kể cả khi đã có các cổng phê duyệt (approval gate) đứng chắn trước mọi hành động cuối cùng.

Anh sẽ chọn Grok Bot cho đúng một tình huống: khi muốn một dây chuyền chạy nền suốt ngày mà không cần anh ngồi canh. Theo anh, không cái nào khác trong danh sách được xây cho việc đó.

## 10. Hermes Agent: worker cấu hình một lần rồi để chạy

**Hermes** thuộc một "họ" khác với mọi thứ phía trên. Bốn cái đầu là trợ lý bạn nói chuyện cùng, còn Hermes gần với một worker bạn cấu hình một lần rồi để nó chạy. Theo video (đăng ngày 03/10/2026), bạn định nghĩa công việc và chỉ cho nó các tool cần dùng, sau đó nó chạy theo lịch hoặc theo một trigger, thay vì chờ bạn mở cửa sổ ra gõ.

Nhưng nó không làm việc mù. Theo video (tính đến video đăng ngày 03/10/2026), Hermes trả lời bạn qua Telegram, Discord và Slack. Khi một lần chạy tới một bước thực sự quan trọng, nó gửi báo cáo về đó rồi dừng lại. Một hóa đơn sắp được gửi đi, hay một file sắp bị xóa, sẽ chờ tới khi bạn bấm approve trong khung chat ấy. Sợi dây cương vẫn trong tay bạn, chỉ là nằm trong một ứng dụng nhắn tin.

Hình dạng đó hợp với một kiểu việc rất cụ thể, và là kiểu nhàm chán: thứ diễn ra mỗi ngày, có input rõ ràng và output rõ ràng, nơi giá trị nằm ở chỗ bạn không bao giờ phải nhớ tới nó. Người dẫn video đưa ví dụ:

- kéo lead mới ra từ một form và ghi vào CRM, kèm một bản tóm tắt;

- canh một thư mục và xử lý bất cứ thứ gì rơi vào đó;

- mỗi sáng kiểm tra một danh sách site và đánh dấu chỗ nào đã thay đổi.

Không cái nào trong đó thú vị, và cái nào cũng ăn của bạn 20 phút mỗi ngày, mãi mãi, nếu làm tay.

![Slide Same misunderstanding. Every day. Nothing pings you.](https://homus.dev/photos/c6Hxnu4JoOw-1703.jpg)

Slide "Same misunderstanding. Every day. Nothing pings you.": bảy tờ lịch từ DAY 1 tới DAY 7 lặp lại cùng một khối, cạnh một cái chuông bị gạch, minh họa agent chạy theo lịch lặp lại một hiểu lầm mà không ai được báo.

Điểm vướng là cổng phê duyệt chỉ che những bước mà bạn đã nghĩ tới để đặt cổng. Khi một agent chat hiểu sai bạn, bạn thấy ngay và dừng nó. Khi một agent chạy theo lịch hiểu sai chính công việc, nó lặng lẽ lặp lại sự hiểu sai đó mỗi ngày cho tới khi có người để ý. Không có gì báo cho bạn. Không có ranh giới nào bị vượt qua. Ngoài ra phần cài đặt ở đây nhiều hơn các cái khác, vì bạn phải định nghĩa trigger, quyền hạn, các bước phê duyệt, và chuyện gì xảy ra khi một bước thất bại.

Người dẫn video sẽ không để Hermes làm agent đầu tiên của bạn. Khi một việc cụ thể đã làm bạn bực đủ nhiều lần, đó là lúc bạn đóng gói nó vào Hermes.

## 11. OpenClaw: tự chạy, tự chịu trách nhiệm

**OpenClaw** là đầu open source của danh sách, và theo người dẫn, là cái có cả trần lẫn sàn đều xa hơn. Bạn tự chạy nó, trên máy của mình hoặc server của mình, nghĩa là dữ liệu không đi qua sản phẩm của ai khác và không ai có thể đổi điều khoản với bạn. Tính đến video đăng ngày 03/10/2026, bạn chọn được model đứng sau nó: có thể trỏ nó tới một frontier model được host khi cần suy luận thật sự, hoặc tới một model nhỏ chạy local khi việc lặp đi lặp lại và bạn không muốn trả tiền theo từng token.

Quyền kiểm soát đó là lý do người ta chịu đựng phần còn lại. Bạn có thể viết lại cách nó hành xử ở một mức mà các tool thương mại sẽ không bao giờ phơi ra, cắm vào bất kỳ tool nào bạn muốn, và nối nó vào một hệ thống thực sự là của riêng bạn. Với người xử lý tư liệu không được gửi cho bên thứ ba, hoặc người muốn một agent chạy thường trực mà không có đồng hồ tính phí subscription gắn kèm, người dẫn video gọi đây là câu trả lời thật lòng. Và nó sẽ tốn của bạn thời gian thay vì tiền.

Theo người dẫn (video đăng ngày 03/10/2026), phần cài đặt là việc của bạn, độ chau chuốt thì không có, tài liệu giả định bạn đã quen tay, và khi có gì hỏng, bạn sẽ đọc một GitHub issue thay vì gửi ticket cho bộ phận hỗ trợ. Nó thay đổi đủ nhanh để những gì bạn cấu hình tháng trước có thể cần được chăm lại tháng này.

![Slide It moves fast với con tôm hùm OpenClaw và các phiên bản v1.2 tới v1.5](https://homus.dev/photos/c6Hxnu4JoOw-1831.jpg)

Slide "It moves fast, What you configured may need attention": linh vật tôm hùm của OpenClaw phía trên một dải kết nối chạy từ "Last month" sang "This month" qua các phiên bản v1.2 tới v1.5.

Hãy chọn nó nếu việc tự vận hành stack của mình nghe hấp dẫn chứ không phải kiệt sức. Còn nếu đọc câu đó đã thấy mệt, theo người dẫn, câu trả lời của bạn là một trong bốn cái đầu.

## 12. Chọn agent theo nơi công việc nằm

Sáu lựa chọn là cách để rốt cuộc bạn không cài cái nào, nên người dẫn video "ép phẳng" chúng lại. Đừng bắt đầu từ tool. Hãy bắt đầu từ chỗ công việc nằm về mặt vật lý, vì riêng câu hỏi đó đã loại phần lớn danh sách trước khi bạn phải nghĩ tới tính năng. Bản ngắn gọn theo từng tình huống:

- Thư mục lộn xộn, tài liệu, việc thật trên máy bạn và bạn muốn nhìn nó diễn ra: Claude Code.

- Một project có cấu trúc, nơi bạn muốn nhận đề xuất để review thay vì sửa trực tiếp: Codex.

- Bất cứ việc gì "có hình dạng browser", hoặc đơn giản là bạn muốn thấy kế hoạch trên màn hình trong lúc nó chạy: Antigravity.

- Một đội bot chạy nền, chuyền việc cho nhau suốt ngày: Grok Bot.

- Một việc nhàm chán lặp lại hằng ngày: Hermes.

- Yêu cầu về quyền riêng tư, hoặc bạn rất muốn sở hữu stack của mình: OpenClaw.

Bản "ép phẳng" của người dẫn video: bắt đầu từ chỗ công việc nằm, mỗi tình huống ứng với một agent.

Rồi tới phần mà theo anh không ai nói thẳng ra: chọn một cái và dùng nó trong một tuần cho việc thật, không phải cho một bài test. So sánh tool tạo cảm giác như đang tiến bộ nhưng không sinh ra gì cả, và anh nói điều đó với tư cách một người làm nghề so sánh tool để kiếm sống. Tuần đầu tiên của bạn phần lớn sẽ là học cách viết chỉ dẫn tốt hơn, và kỹ năng đó chuyển được sang cả sáu cái. Tool quan trọng ít hơn nhiều so với việc bạn có mô tả được công việc một cách rõ ràng hay không, và đó cũng chính là chủ đề của hai phần tiếp theo trong video.

## 13. Trao bao nhiêu quyền: đo bằng độ khó hoàn tác

Tool nào trong số này cũng hỏi bạn cùng một câu từ rất sớm, thường dưới dạng một ô checkbox mà bạn có xu hướng bấm luôn không đọc: nó có nên xin phép trước mỗi hành động, hay cứ thế làm? Theo người dẫn video, ô checkbox đó là thiết lập quan trọng nhất trong cả nhóm sản phẩm này, và người ta sai theo cả hai hướng. Nếu bạn tự tay duyệt mọi thứ, agent rốt cuộc còn chậm hơn bạn tự làm. Nhưng nếu bạn không duyệt gì, bạn đã trao quyền ghi cho một thứ tự tin mà sai khoảng 8% số lần (con số người dẫn nêu trong video, tính đến video đăng ngày 03/10/2026).

Anh thấy hữu ích hơn khi nghĩ về việc một hành động dễ đảo ngược tới mức nào. Trước khi để agent tự làm gì đó, hãy hỏi: nếu nó sai thì mất bao lâu để hoàn tác?

- Nếu agent đang đọc, tìm kiếm, tóm tắt, hoặc viết nháp vào một tài liệu mới, lỗi thường dễ sửa, nên anh để nó chạy không giám sát.

- Nếu nó đang sửa file tại chỗ, xóa hoặc di chuyển đồ, hay chạy lệnh, lỗi tốn thời gian thật để đảo ngược, nên anh giữ các hành động đó trong tầm giám sát cho tới khi tin được khuôn mẫu.

- Bất cứ thứ gì rời khỏi máy bạn, như gửi email, chạm vào database đang chạy thật, chuyển tiền, thì giữ ở chế độ duyệt tay vĩnh viễn. Thế giới bên ngoài không có nút undo.

Cách người dẫn video chia mức quyền: càng khó hoàn tác thì càng cần người duyệt; thứ rời khỏi máy thì luôn duyệt tay.

Có hai thói quen giúp việc này dễ dàng. Một: làm việc bên trong version control hoặc một bản backup, để hoàn tác chỉ là một lệnh thay vì cả buổi chiều hối hận. Hai: giao cho agent một thư mục hẹp thay vì cả ổ đĩa, vì quyền truy cập một project chỉ có thể làm hỏng một project. Bắt đầu chặt, rồi nới dần khi nó giành được lòng tin của bạn, theo từng loại task một. Rốt cuộc bạn sẽ có những việc nhàm chán tự chạy, còn những việc có hệ quả thì chờ bạn.

## 14. Prompt contract: năm thứ luôn phải có

Theo người dẫn video, phần lớn các lần agent chạy tệ đều quy về chỉ dẫn, không phải model hay tool. Khi chat với một model, một prompt mơ hồ chỉ tốn của bạn một đoạn văn tồi và bạn thử lại. Khi một agent nhận một chỉ dẫn mơ hồ, nó đưa ra 40 quyết định thay bạn, và quyết định nào cũng là một phỏng đoán về ý bạn. Nó sẽ không dừng lại để hỏi. Nó chọn một thứ nghe có vẻ hợp lý rồi đi tiếp, và 20 phút sau bạn mới phát hiện điều agent thấy hợp lý không phải điều bạn muốn.

Vậy nên hãy thôi coi nó là một prompt và bắt đầu coi nó là một hợp đồng (contract). Một hợp đồng không cần dài hơn. Nó chỉ cần lấp những khoảng trống mà một nhà thầu sẽ tự điền theo ý mình. Có năm thứ anh luôn đưa vào: kết quả hoàn chỉnh phải là gì; tư liệu đầu vào nằm ở đâu; agent được chạm và không được chạm vào gì; output phải ở định dạng nào và đặt ở đâu; và làm sao agent biết việc đã xong. Để trống một trong số đó, agent phải tự quyết định chuyện đó thay bạn.

![Slide Five things I always include với năm biểu tượng](https://homus.dev/photos/c6Hxnu4JoOw-2243.jpg)

Slide "Five things I always include": Finished result (kết quả hoàn chỉnh), Input material (tư liệu đầu vào), Can & can't touch (được và không được chạm), Output format (định dạng output) và Done signal (tín hiệu xong).

**Goal đi trước**, vì đây là thứ người ta sai nhiều nhất. Hãy mô tả thứ bạn muốn có trong tay khi agent làm xong. "Improve my presentation" (cải thiện bài thuyết trình của tôi) không cho agent một điểm rõ ràng nào để biết việc đã xong. "Rewrite every slide so each one has a single headline and no more than three bullets" (viết lại mọi slide để mỗi slide có đúng một headline và không quá ba gạch đầu dòng) thì cho nó một thứ thực sự kiểm tra được. Người dẫn video dùng một phép thử đơn giản: liệu ai đó có thể nhìn file đã hoàn thành và nói task đã xong hay chưa mà không cần hỏi anh muốn nói gì không? Nếu câu trả lời là không, goal vẫn quá mơ hồ và bạn sắp lãng phí một lần chạy.

**Input** nghe thì tầm thường cho tới khi bạn nhìn một agent đi lục lọi. Hãy nói chính xác nó nên dùng thư mục nào, file nào, sheet nào, tab nào. Nếu một phần tư liệu là rác, hãy nói ra, vì một agent đọc thư mục sẽ coi mọi thứ trong đó đều liên quan. Thư mục khủng long của anh có một biểu đồ không ai đặt nhãn và agent đã dùng nó; trong trường hợp ấy, dùng nó là quyết định đúng, nhưng sẽ là quyết định sai trong một project công việc nơi một nửa số file là bản nháp cũ. Bạn chặn được chuyện đó chỉ bằng một chỉ dẫn:

```
Use the files in this folder, but ignore anything with draft or old in the file name.
```

**Boundaries** (ranh giới) là phần cứu bạn khỏi thiệt hại thật, và thường chỉ cần một câu: đừng chạm vào thứ gì ngoài thư mục này; đừng cài gì cả; đừng đổi tên file gốc, hãy viết file mới; đừng gửi gì đi đâu. Người dẫn video nói bạn không hề đa nghi quá mức: bạn đang gỡ bỏ những quyết định mà bạn không muốn agent tự đưa ra thay mình. Phần này đi đôi trực tiếp với thiết lập quyền ở phần trước. Permissions quyết định tool có khả năng làm gì, còn boundaries nói cho nó biết bạn thực sự cho phép nó làm gì, và bạn muốn hai thứ đó khớp nhau.

## 15. Output, done condition và đọc lại một contract ba câu

Tiếp theo là **output**, nơi phần lớn ma sát còn lại nằm. Hãy nói cho agent định dạng bạn muốn và nơi bạn muốn lưu kết quả. Bạn có thể yêu cầu một file PowerPoint trong cùng thư mục, một file markdown tên là summary, hoặc một sheet mới thay vì viết đè lên sheet đang có. Nếu bỏ qua bước này, agent sẽ tự chọn, và nó có xu hướng chọn thứ dễ nhất cho agent chứ không phải thứ hữu ích nhất cho bạn. Còn khi kết quả sẽ được đưa vào một bước khác, hãy mô tả hình dạng bạn cần, vì một bản tóm tắt văn xuôi đẹp đẽ là vô dụng nếu bước kế tiếp là import vào spreadsheet.

**Done condition** (điều kiện hoàn thành) là thứ không ai viết và ai cũng nên viết. Nó nói cho agent chính xác điều gì phải đúng trước khi nó được dừng làm và báo cáo lại. Với một bài thuyết trình, đó có thể là cả 10 slide đều tồn tại và slide nào cũng có headline. Với một spreadsheet, đó có thể là dòng nào cũng đã điền category. Không có điều kiện đó, agent có xu hướng dừng sớm vì thứ gì đó trông như đã xong, hoặc cứ làm tiếp và bắt đầu cải thiện những thứ bạn chưa từng yêu cầu. Một done condition cũng cho bước check trong vòng lặp observe, think, act, check một thứ thật để so sánh, và đó là khác biệt giữa một agent tự kiểm tra công việc của mình và một agent chỉ tuyên bố chiến thắng.

Done condition cho bước check một thứ thật để so sánh: agent biết đúng lúc nào được dừng.

Người dẫn video đề nghị nhìn lại chỉ dẫn trong demo, vì đó là một contract chỉ dài ba câu. Goal là một bài thuyết trình 10 slide chau chuốt, và điều đó kiểm tra được. Input là thư mục. Boundary là ngầm định nhưng có thật, vì agent làm việc trong thư mục đó và không ở đâu khác. Output, theo lời anh, là một file PowerPoint (trong chỉ dẫn trên màn hình ghi DINOSAURS.pdf), và done condition là cả 10 slide đều tồn tại, nên nó đã dừng lại thay vì thiết kế lại mãi không thôi. Một contract không cần dài; nó chỉ cần bao trọn những quyết định bạn thực sự quan tâm.

Còn một thói quen nữa giúp rất nhiều. Khi một lần chạy hỏng, đừng chỉ chạy lại với một cú "huých" nhẹ. Hãy đọc agent thực sự đã làm gì và tìm đúng quyết định mà ở đó nó rẽ khỏi điều bạn muốn. Sau đó viết câu chỉ dẫn lẽ ra đã chặn được quyết định đó và thêm nó vào chỉ dẫn. Làm vậy 10 lần, bạn sẽ có "house style" của riêng mình để brief agent, thứ mà theo người dẫn là một trong những thứ hữu ích nhất bạn có thể xây được từ toàn bộ quá trình này. Thay vì đổ lỗi cho model rồi thử lại, bạn đang dần dần làm cho chỉ dẫn của mình khó bị hiểu sai hơn.

## 16. Memory: ba tầng và file quy tắc của project

Mọi agent vừa giới thiệu đều mắc cùng một chứng mất trí nhớ. Đóng cửa sổ lại là ngày mai nó không biết gì về project của bạn. Thế là bạn lại giải thích tất cả: quy ước đặt tên của bạn, chuyện khách hàng ghét gạch đầu dòng, chuyện dữ liệu thật nằm ở sheet thứ hai. Theo người dẫn video, khoảng trống đó là khác biệt giữa một tool bạn thử hai lần rồi bỏ và một tool thực sự giỏi dần lên trong công việc của bạn.

Memory có ba tầng. Context window chỉ giữ cuộc hội thoại hiện tại và không có gì từ các phiên khác. Project memory là một file text thuần trong thư mục của bạn, được đọc ở đầu mỗi lần chạy, và đó là tầng làm phần việc thật. Account-level memory mang các sở thích của bạn qua mọi project. Phần lớn mọi người chỉ dùng tầng đầu tiên, rồi thắc mắc vì sao mình cứ phải lặp lại.

![Slide Three layers of memory với ba khối chồng lên nhau](https://homus.dev/photos/c6Hxnu4JoOw-2730.jpg)

Slide "Three layers of memory": ba khối xếp chồng, từ dưới lên là Context window, Project memory (khối được tô nổi bật) và Account-level memory.

Tầng project là tầng nên dựng ngay hôm nay. Tính đến video đăng ngày 03/10/2026, trong Claude Code đó là một file tên là CLAUDE.md. Codex và một số agent khác thì đọc AGENTS.md, cùng một ý tưởng. Hãy coi nó như ghi chú onboarding cho một freelancer không bao giờ được hỏi lại câu nào: mọi thứ nằm ở đâu, bạn muốn output định dạng thế nào, những file không ai được chạm vào, và những điều bạn đã mệt vì phải sửa đi sửa lại, viết một lần dưới dạng quy tắc.

Sai lầm lúc nào cũng giống nhau. Người ta phát hiện ra file này rồi viết cả một bản tuyên ngôn vào đó, nhưng mọi token trong file đều được đọc ở mỗi lần chạy và tranh giành sự chú ý của model với chính task của bạn. Một file phình to làm agent tệ đi chứ không tốt lên. Hãy giữ nó trong khoảng một trang và kiểm từng dòng bằng một câu hỏi: dòng này có làm thay đổi một quyết định mà agent đưa ra không? Lịch sử project của bạn thì không. "Never write to the live database" (không bao giờ ghi vào database đang chạy thật) thì có.

Đừng viết cả file trong một lần ngồi, vì bạn sẽ đoán sai thứ gì quan trọng. Hãy để nó lớn lên từ những lần sửa. Mỗi khi agent làm sai, hãy hỏi đó là quy tắc lâu dài hay chỉ cho task này. Nếu là lâu dài, nó thành một dòng trong file và bạn không bao giờ phải nói lại thành lời nữa. Sau vài tuần, file đó là thứ giá trị nhất trong hệ thống của bạn, và nó mang đi được, vì tool nào trong số này cũng đọc được một file text.

Thêm một điều. Trong các lần chạy rất dài, những chỉ dẫn ban đầu mất dần trọng lượng khi context đầy lên, và đó là lý do agent quên task ban đầu vào khoảng phút thứ 20 (slide minh họa ghi "Minute 20"). Cách sửa là mỗi task một phiên mới, và để file nhớ thay.

## 17. Lời kết: agent tự tin cả khi sai

Người dẫn video kết luận rằng các agent đang đi trước cách phần lớn mọi người brief chúng, và khoảng cách đó chính là toàn bộ vấn đề. Theo anh (tính đến 03/10/2026), nút thắt giờ thường nằm ở chỉ dẫn bạn đưa cho agent, chứ không phải ở khả năng của chính model.

Điều vẫn làm anh bận lòng là sự tự tin. Một agent đọc sai task của bạn không chậm lại, không rào đón. Nó cam kết, làm xong, và báo thành công bằng một giọng hoàn toàn dễ chịu trong khi đã làm sai việc.

Ba thói quen người dẫn video chốt ở cuối video.

Vì vậy anh chốt ba việc: backup thư mục, giữ các hành động không thể đảo ngược ở chế độ duyệt tay, và viết done condition mỗi lần, không trừ lần nào. Lời dặn cuối: tuần này hãy chọn một agent và giao cho nó một việc thật. Theo người dẫn video, bây giờ bạn chỉ cần làm có vậy.

## Nguồn và liên kết

- Tên gốc: FULL AI Agents Course for Beginners in 2026! (Become a PRO!)
- Sự kiện: [YouTube](https://homus.dev/events/youtube)
- Video gốc: [https://www.youtube.com/watch?v=c6Hxnu4JoOw](https://www.youtube.com/watch?v=c6Hxnu4JoOw)

- Kênh YouTube AI Master (AI Master): [youtube.com/channel/UC0yHbz4OxdQFwmVX2BBQqLg](https://www.youtube.com/channel/UC0yHbz4OxdQFwmVX2BBQqLg)

- Model Context Protocol, tài liệu chính thức: [modelcontextprotocol.io](https://modelcontextprotocol.io/)

- Claude Code, tổng quan: [code.claude.com/docs/en/overview](https://code.claude.com/docs/en/overview)

- Claude Code, cách Claude nhớ project qua file CLAUDE.md: [code.claude.com/docs/en/memory](https://code.claude.com/docs/en/memory)

- Codex của OpenAI, trang cho developer: [developers.openai.com/codex](https://developers.openai.com/codex)

- Google Antigravity, trang chính thức: [antigravity.google](https://antigravity.google/)

- Grok Bot, tài liệu tổng quan của xAI: [docs.x.ai/grok-bot/overview](https://docs.x.ai/grok-bot/overview)

- Hermes Agent, repo chính thức: [github.com/NousResearch/hermes-agent](https://github.com/NousResearch/hermes-agent)

- OpenClaw, repo open source: [github.com/openclaw/openclaw](https://github.com/openclaw/openclaw)

- AGENTS.md, định dạng file chỉ dẫn mà Codex và nhiều agent khác đọc: [agents.md](https://agents.md/)

Nguồn: https://homus.dev/talks/full-ai-agents-course-for-beginners-in-2026-become-a-pro · cập nhật 2026-10-20
