Dựng một director agent và các role từ một folder trống
Từ folder trống, Matt Maher xin một director agent, định nghĩa role, thêm và đổi việc khi hệ thống đang chạy, ra một gallery travel poster.
✓ Đã duyệt độc lập · cập nhật 30/10/2026 · 27 min
1. Agent systems, hay factories: một sơ đồ phức tạp để thấy đích đến
Matt Maher mở video (đăng ngày 23/10/2026) bằng chủ đề hôm nay: agent systems, hay còn gọi là factories. Anh nói có lẽ bạn đã nghe người ta gọi chúng là factories, và theo anh đó thật ra là cùng một thứ. Nhưng trước hết anh muốn cho xem sơ đồ của một phiên bản rất phức tạp. Anh dặn đừng sợ: đây không phải chỗ bắt đầu, nhưng đó là thứ anh sắp chỉ cách build. Và theo Matt (video đăng ngày 23/10/2026), nó đơn giản tới mức có thể đi qua từng bước một.

Theo Matt (video đăng ngày 23/10/2026), các bộ phận chuyển động trong sơ đồ là những thành phần khác nhau bên trong một agentic system. Mỗi phần có responsibilities riêng, có rules, instructions, evaluations, guardrails riêng, và đủ thứ khác nữa. Từng thành phần một đều có thể được tune theo cách đó, và theo anh đó chính là chỗ tạo ra giá trị.
Khi zoom ra xa hơn một chút, sơ đồ cho thấy hệ thống nhỏ vốn đã trông phức tạp kia thật ra chỉ là một phần trong cả loạt hệ thống tiềm năng khác đang giao tiếp chéo với nhau. Matt nói (video đăng ngày 23/10/2026) đến lúc đó bạn bắt đầu thấy sức mạnh của nó, thấy vì sao ai cũng đang nói về agentic systems hay factories, và vì sao ta cần tiến vào hướng này trong cách dùng AI về sau.
Anh thừa nhận đó là một hệ thống phức tạp. Theo lời anh trong video đăng ngày 23/10/2026, đó là loại hệ thống anh đang build và đã làm việc bên trong suốt nhiều tháng tính tới lúc quay. Anh nói chúng mang lại lợi ích cực lớn và bạn tuyệt đối nên áp dụng. Nhưng anh nói thêm: chúng không cần phức tạp tới mức đó mới có lợi lớn. Ngay khoảnh khắc bạn ghép nó lại, nó đã có giá trị. Và anh hứa sẽ bắt đầu từ con số không ngay sau đây.
2. Kẹt trong main loop
Trước khi vào demo, Matt (video đăng ngày 23/10/2026) nói với người đang làm việc với một agent duy nhất: một agent system nào đó mà bạn giao việc, nó làm, rồi bạn đánh giá kết quả. Nếu bạn đang làm như vậy, anh nói bạn sẽ hiểu cảm giác "bị kẹt trong main loop", kẹt trong vòng iteration đó. Bạn bị buộc phải tự kéo việc tới đích nhiều tới mức không thể hình dung chuyện scale rộng ra.
Theo Matt (video đăng ngày 23/10/2026), các hệ thống này cho phép bạn scale rất mạnh, vì cuối cùng chúng nhận một số lượng job rất lớn và codify từng job một. Và anh nhấn mạnh: bạn mới là người mô tả hình dạng của toàn bộ hệ thống. Nên đây không phải phép màu, và anh sẽ chỉ cách bắt đầu.
3. Bắt đầu từ một folder trống: Poster Maker
Theo Matt (video đăng ngày 23/10/2026), cách hay nhất để bắt đầu là chọn một project "vô dụng một cách buồn cười" trong một folder hoàn toàn trống. Anh nói sẽ cho xem đúng những bước anh vẫn làm khi khởi động một thứ như vậy, và đi luôn.
Anh bắt đầu trên desktop, tạo một folder mới tên Poster Maker (trên màn hình là poster_maker), tất nhiên là folder trống hoàn toàn. Rồi anh mở poster_maker trong Claude Code để bắt đầu trò chuyện với nó, và gõ "hello" (demo trong video đăng ngày 23/10/2026).

~/Desktop/poster_maker, sẵn sàng, và hỏi anh muốn làm gì. Góc dưới ghi Opus 5.5.Việc sắp làm, theo Matt (video đăng ngày 23/10/2026), là xin một thứ anh gọi là director. Director về cơ bản chỉ là nhân vật đầu tiên trong bộ role của agentic system này, "trong company này, trong tool này" mà ta sắp tạo ra. Và đó là tất cả những gì anh xin ở bước này.
4. Xin một director bằng chính lời của mình
Matt nói yêu cầu của mình bằng giọng nói, thành một đoạn dài (demo trong video đăng ngày 23/10/2026). Anh muốn agent tạo một director pattern trong folder này, để agent chính mà anh bắt đầu trò chuyện cùng là thứ anh gọi là director. Anh xin thêm một chi tiết nhỏ: mỗi khi director nói chuyện với "chúng ta", hãy dùng một emoji clapboard (tấm bảng clapper của đoàn làm phim) để biết là mình đang nói với director, "nếu bạn không phiền".
Về việc của director, theo yêu cầu Matt nói trong video (đăng ngày 23/10/2026): nó phải rất thông minh và là một co-partner trong vấn đề đang giải. Nó cần sáng tạo, quan tâm tới việc giải quyết vấn đề, nhưng phải cố không tự làm việc. Việc của nó là trò chuyện với anh, luôn sẵn sàng trò chuyện với anh, và dùng sub-agent pattern để tạo worker mới khi cần, làm các role khác nhau cho phần việc phải làm. Khi một request tới, director hiểu request đó là gì và chia nhỏ nó một cách thông minh.

Phần tiếp theo của yêu cầu, theo Matt (video đăng ngày 23/10/2026): director còn có khả năng tune các sub-agent nó khởi động để dùng các mức intelligence khác nhau. Nó có thể dùng một model rất nhỏ nếu việc rất nhẹ, hoặc một model thông minh hơn nếu nó nghĩ việc đó cần sáng tạo hay cần reasoning nhiều hơn. Anh nói đây là một khía cạnh rất quan trọng của director. Và thêm một việc nữa: director báo lại cho anh đều đặn. Trong lúc các sub-agent còn chạy, thread của director vẫn luôn chạy và báo đều đặn chuyện gì đang diễn ra, trạng thái của các sub-agent ra sao.
Bản làm gọn của đoạn yêu cầu Matt nói, do chính anh đưa ra kèm video (đăng ngày 23/10/2026):
Okay, I want you to create a director pattern here, so that the main agent that I start talking to is what I call a director. And I want you to use a little clapboard emoji whenever that director talks to us, just so that we know we're talking to the director, if you don't mind. But what I want the director to be able to do is, its job is to be very intelligent and to be a co-partner in what we're trying to solve. So it needs to be creative and interested in solving the problem, but it needs to try to not do the work. Its job is to have a conversation with me, and always be available to have a conversation with me, and use sub-agent patterns to kind of create new workers as needed to do the different roles for the work that's needing to be done. So when a request comes in, the director will figure out what that request is and kind of break it down intelligently. Now, the director also has the capacity to tune those different sub-agents that it's bringing up to use different levels of intelligence. So it can use a very small model if it's asking to do something that's very lightweight, or a more intelligent model if it thinks that it's doing something that needs some creativity or some more reasoning behind it. So that's a really important aspect of what this director does. And one other thing that it does is it reports back to me on a regular basis. While sub-agents are still running, the director thread is always running and reporting back on a regular basis what's going on and what the status of those sub-agents are.
"Và thế là gần như xong", Matt nói (video đăng ngày 23/10/2026). Giờ thứ anh gọi là director pattern đã được cài vào folder này. Trên màn hình, agent nạp một skill tên director-pattern rồi đi qua các bước: xem setup hiện tại của project, cài director pattern, chỉnh director theo yêu cầu của anh, và kiểm các file đã cài (demo trong video đăng ngày 23/10/2026).
Theo Matt (video đăng ngày 23/10/2026), còn thêm một chút nữa nếu bạn muốn phức tạp hơn để tiến dần về sơ đồ mở đầu. Nhưng việc ở đây chỉ là có sẵn một thứ đơn giản để dùng. Anh nói những gì anh vừa nói là quá đủ để có một partner tốt trong công việc. Nếu bạn tạo một skill rất đơn giản chỉ chứa đúng đoạn đó, kiểu "install a director here", và nó cài như vậy, thì mỗi lần mở một conversation mới trong project đó, bạn sẽ đang nói chuyện với một director.
5. Vì sao phải tách công việc
Matt dừng lại để giải thích concept director, director pattern này là về cái gì (video đăng ngày 23/10/2026). Khi ta nói về factories, hay bất kỳ việc gì thuộc agentic system, điều thật sự muốn nói là: ta muốn tách công việc thành những phần có ý nghĩa, những thành phần nhỏ hơn, atomic hơn đang làm việc.
Ví dụ của anh (video đăng ngày 23/10/2026): trong project đang build, nếu có một job cần làm research, thì anh có những định nghĩa về cách research hoạt động: responsibilities là gì, guardrails có thể là gì, nó có thể test ra sao, tất cả độ phức tạp xoay quanh việc research. Anh cần tạo được định nghĩa đó để mỗi khi một researcher chạy, nó dùng đúng những rules đó. Tương tự cho một job làm writing, một job build ứng dụng, một job chạy PR hay làm CI/CD, hay bất kỳ bộ phận chuyển động nào khác trong hệ thống của bạn.
Theo Matt (video đăng ngày 23/10/2026), mỗi job như vậy thành một vùng mà bạn muốn tách khỏi các vùng khác vì nhiều lý do. Ít nhất là để chẩn đoán khi có gì đó chạy chưa hoàn hảo, hoặc khi cần tune: sự tách bạch cho phép tune từng phần độc lập. Anh nhắc lại sơ đồ mở đầu: rất rối, nhiều bộ phận, và bộ phận nào cũng có những rules khá căng. Sự tách bạch này là thứ đưa ta tới đó, là thứ cho phép đặt các rules ấy vào đúng chỗ.
Theo Matt (video đăng ngày 23/10/2026), không có sự tách bạch này thì bạn không thể tạo một hệ thống phức tạp có khả năng lớn lên, thu nhỏ lại và học. Bạn chỉ có một agent duy nhất, và đó trở thành vấn đề. Anh gọi riêng mảnh tách bạch này là director pattern, để anh có một interlocutor (người đối thoại) duy nhất để làm việc cùng. Director giao tiếp với các sub-agent khác theo những cách có ý nghĩa, tạo thêm sub-agent khi cần, cho chúng chạy song song khi có thể. Những việc kiểu đó là việc của nó. Và toàn bộ sự tách bạch ấy, theo anh, chỉ nhằm tạo ra không gian cho nhu cầu hay độ phức tạp của hệ thống về sau.
6. "Tôi là director của project này"
Trước đó, ngay trong phiên cài đặt, agent đã ghi hai lưu ý trên màn hình (demo trong video đăng ngày 23/10/2026): mọi phiên đều đọc CLAUDE.md, kể cả các worker, nên file mở đầu bằng một dòng báo cho worker rằng nó không áp dụng cho họ; và chính phiên này không phải director vì nó bắt đầu trước khi các file tồn tại, muốn gặp director thì mở một phiên mới trong poster_maker. Cũng trên màn hình đó, agent giải thích .claude/agents/worker.md định nghĩa worker: bám đúng việc được giao, ghi một progress log ngắn vào .director/status/<name>.md và kết thúc bằng một báo cáo ngắn; những log đó là cách director kể cho bạn chuyện gì đang diễn ra, vì nó không nhìn trực tiếp vào worker được.
Matt mở một conversation mới và chỉ chào "hello" với phiên hoàn toàn mới này (demo trong video đăng ngày 23/10/2026). Tất nhiên nó trả lời kiểu: chào, tôi là director của project này, hôm nay bạn muốn làm gì? Anh chỉ ra rằng chưa hề nói cho nó biết nó hoạt động ra sao hay ta đang làm gì ở đây. Thật ra chính người xem cũng chưa biết. Đây là một project ngớ ngẩn: chưa có gì cả, và ta sẽ build poster, một hệ thống biết cách tạo ra một loại poster nào đó.

7. Định nghĩa các role cho poster
Matt bắt đầu trò chuyện với director (demo trong video đăng ngày 23/10/2026). Anh nói anh muốn hệ thống này build được poster, và tạm thời các poster gắn với một khu vực, một địa điểm, chẳng hạn Paris. Điều cần làm là tạo ra các role do mình định nghĩa, để director gửi việc tới từng role và cho chúng chạy song song khi có thể.
Role đầu tiên Matt mô tả (demo trong video đăng ngày 23/10/2026) là một artist, tức poster generator: role tổng hợp mọi thông tin lại và làm việc với một skill anh có sẵn trong folder, anh gọi là GPT image, dùng skill đó để viết prompt và tạo ảnh. Role này tất nhiên cũng phải đánh giá được ảnh trả về, xem nó có đạt yêu cầu không, những việc kiểu như vậy.
Nhưng còn các role khác. Matt nói (demo trong video đăng ngày 23/10/2026) anh muốn một pattern gồm ba yếu tố được ghép với nhau một cách sáng tạo cho mỗi poster. Sau artist, role tiếp theo lo numbers, và nó phải tự đi research. Hai role còn lại cũng vậy. Role kế tiếp là colors: có màu nào đại diện cho thành phố không? Và role thứ ba là words: tuỳ vào việc chọn chữ gì và vì sao chọn, điều đó có thể dẫn hai role kia tới lựa chọn của chúng.

Anh nói tiếp (demo trong video đăng ngày 23/10/2026): anh không biết rồi mọi thứ sẽ ra sao, nhưng có lẽ artist là role quyết định cấu trúc cơ bản, và cần có ai đó làm research để tìm ra concept cơ bản của poster. Rồi anh hỏi director: "Bạn giúp tôi tạo những role này được không?"
Quay sang người xem, Matt nhận xét (video đăng ngày 23/10/2026): bạn đã nghe hết những gì anh yêu cầu, khá thẳng, nhưng hơi lộn xộn. Chính anh cũng không chắc mình đang build gì; chỉ là đang vui một chút. Theo anh, sự lộn xộn đó có thể chính là cách bạn làm việc với agent khi nói chuyện với chúng: bạn không nhất thiết có bức tranh hoàn chỉnh về thứ mình muốn ngay từ đầu. Và điều đó không quan trọng, vì ta sẽ chạy thử một lần, xem nó có tốt không, rồi quay lại nói: thật ra thứ ta cần là một artistic director, hay thậm chí một historical researcher đưa thông tin trước, hay một researcher về khu vực hoặc đồ vật, gì cũng được. Ta có thể thêm role.
8. Role thật ra là gì
Matt nói nhanh một ý về role (video đăng ngày 23/10/2026). Anh thường không thích nghĩ về chúng như role; anh nghĩ đó chỉ là một mental model giúp bạn bắt đầu. Chữ "role" gắn ta vào thứ mà một con người từng làm: đây là role researcher, đây là role writer, chính là những ví dụ anh vẫn đưa. Anh không nghĩ đó là cách nhìn hay nhất.
Theo Matt (video đăng ngày 23/10/2026), một role thật ra là một context, hay một domain, mà ai đó có thể kiểm soát. Đó là một mảnh việc hay một mối quan tâm đủ nhỏ để bạn viết được các rules cho nó và các rules đó chạy ăn khớp với nhau. Nó cũng có thể khá lớn, vì các rules lồng vào nhau tới mức bạn muốn để chúng ở cùng một chỗ.
Ví dụ ngay trong demo (video đăng ngày 23/10/2026): ta đang làm colors, words và numbers. Lúc đang định nghĩa, anh chợt nhận ra: ta sẽ lấy một con số từ một tham chiếu lịch sử, còn chữ thì lấy từ một meme nào đó vừa mới ra, và chúng sẽ chẳng khớp với nhau. Anh đang tách chúng ra quá mạnh. Lẽ ra hợp lý hơn nhiều nếu nói: hãy chọn numbers, words, và có lẽ cả colors, cùng nhau trong một role. Phần định nghĩa chủ đề của sản phẩm này, của poster này, lẽ ra nên nằm trong một role. Nhưng không sao: anh tách chúng ra để người xem thấy được phần chênh lệch (delta), thấy được cái gì có thể khác đi.
Theo Matt (video đăng ngày 23/10/2026), role làm được đủ mọi loại việc: gần như bất cứ thứ gì bạn nghĩ ra đều có thể làm thành một role. Kể cả một trách nhiệm tí hon, kiểu "mỗi lần ta làm gì đó, tôi muốn bạn check it in", hay "hãy kiểm là bạn đã pull gần đây", những thứ rất đơn giản mà ngày nay bạn có thể nghĩ là hook, đều có thể là role trong hệ thống. Và director có thể là thứ quyết định: lúc này mình có cần dùng role này không?
Điều anh để ý tránh (video đăng ngày 23/10/2026), dù đôi khi khó, là một workflow cứng kiểu "cái này phải gọi cái này, rồi cái kia gọi cái nọ". Anh muốn director tự điều phối được; agent đó thật sự đang chỉ đạo mọi thứ có chủ đích. Nên tất cả độ phức tạp khiến bạn thốt lên "trời ơi, làm sao đi tới được sản phẩm khổng lồ làm đủ thứ điên rồ kia" thật ra chỉ là iteration. Anh nói đừng sợ những gì các role đang làm.
Anh cũng nói thêm (video đăng ngày 23/10/2026) rằng role không cứng tới mức là thứ duy nhất hệ thống làm được. Theo lời anh, gần như mọi hệ thống của anh tính tới lúc quay đều tự học và tự tạo role. Khi chúng nhận ra anh đang làm cùng một loại việc lặp đi lặp lại, chúng bắt đầu viết role cho loại việc anh hay yêu cầu, để có sự nhất quán mỗi lần làm loại việc đó.
9. Các role bắt đầu làm việc
Quay lại xem các role tới đâu rồi, Matt cho thấy hệ thống đang chạy và có thể thấy các background task đang diễn ra (demo trong video đăng ngày 23/10/2026). Anh nói đây là điều tốt: ví dụ cho thấy director biết nó có thể tạo subagent để làm việc. Việc của nó là bắt đầu tách ra các subagent khác nhau để tính xem cần làm bao nhiêu việc. Nhìn danh sách agent đã chạy, có hai cái đang chạy và những cái khác đã xong.
Nhìn vào thứ nó đang build (demo trong video đăng ngày 23/10/2026), nó đã nghĩ ra các worker, về cơ bản là các role, theo đúng những gì anh yêu cầu mà nó có thể cần dùng: một concept writer, một research writer, một artist writer, một pipeline writer, những thứ kiểu vậy. Trên màn hình là một bảng gồm cột Worker, Role, Tier và State.

STYLE.md (opus · high), pipeline-writer viết phần poster trong AGENTS.md (sonnet · medium). Cột bên phải có một "Director heartbeat" chạy nền và "4 finished".Theo Matt (demo trong video đăng ngày 23/10/2026), có vẻ nó thậm chí đã chọn các model khác nhau ngay từ đầu. Anh không chắc mình có muốn đặt model vào trong role definition không, nhưng điều đó hoàn toàn làm được: có thể nói khi dùng role này thì nó chạy thế này, nếu việc này dễ thì luôn dùng Sonnet chẳng hạn. Anh nói tất nhiên anh thích nó chỉ ghi "medium" hơn, để role dùng được trên bất kỳ agent system nào, bất kỳ agentic platform nào ta có thể chạy nó.
Docs của Claude Code (đọc ngày 30/10/2026) mô tả subagent được định nghĩa bằng file markdown trong thư mục .claude/agents/, và frontmatter của file có thể có trường model như model: sonnet.
Sau đó nó tiếp tục viết nốt các role còn lại (demo trong video đăng ngày 23/10/2026). Matt nói sẽ không đi qua từng cái, nhưng có thể thấy mỗi role có một định nghĩa khá tốt về cách làm việc của nó. Bạn có thể vào xem và tự hỏi: đây có đúng là cách mình muốn làm colors không? Bạn có thể tự đọc, hoặc hỏi ngay director.
10. Hỏi director về Colors và chạy thử Paris
Vì nó là director, Matt hỏi thẳng (demo trong video đăng ngày 23/10/2026): "Bạn tóm tắt giúp tôi cách ta đang xử lý colors được không? Định nghĩa của ta tới giờ là gì?" Cùng lúc, director báo mọi thứ đã sẵn sàng và hỏi có muốn thử Paris không. Anh trả lời: thử Paris đi, ngay trong lúc nó vẫn đang trò chuyện với anh về chuyện kia.
Câu trả lời về colors trên màn hình mở đầu bằng emoji clapboard (demo trong video đăng ngày 23/10/2026): trong hệ thống này, một "color" không chỉ là một sắc độ, mà là một màu có lý do để nằm trên poster; role Colors đưa cho Artist một bộ nhỏ các màu thật, có nguồn, mỗi màu một nhiệm vụ. Mỗi màu có bốn phần:
- Hex: giá trị chính xác, ví dụ
#2E5E4E, phải đến từ một nguồn thật như thông số sơn chính thức, một bảo tàng hay một hãng sơn; nếu lấy mẫu từ ảnh thì đánh dấu là xấp xỉ (theo định nghĩa trên màn hình, demo trong video đăng ngày 23/10/2026). - Name: tên gọi, ví dụ "Guimard Métro green" (định nghĩa trên màn hình, demo trong video đăng ngày 23/10/2026).
- Job: một trong background, dominant, accent hoặc text (định nghĩa trên màn hình, demo trong video đăng ngày 23/10/2026).
- Story: một dòng gắn màu đó với một điều có thật về chủ đề, như một chất liệu, loại sơn, lá cờ, công trình, ánh sáng, một poster cũ hay chính sản phẩm (định nghĩa trên màn hình, demo trong video đăng ngày 23/10/2026).
Một palette, theo cùng màn hình đó (demo trong video đăng ngày 23/10/2026), là 3 đến 5 màu như vậy phối với nhau: một nền lớn, một màu cho hình chính, một accent kéo ánh mắt, và màu chữ đọc được.
Matt nói sẽ không đi qua chi tiết (video đăng ngày 23/10/2026), nhưng nó đang mô tả cho ta chuyện gì diễn ra bên trong hệ thống màu đó. Nếu bạn muốn chỉnh theo cách nào đó, hoặc đưa cho một agent khác và bảo "hãy nghĩ ra một paradigm chu đáo hơn nhiều để chọn color palette", rồi cập nhật role đó, thì đó chính là sự tách bạch anh đã nói. Bỗng nhiên, nếu muốn chọn chữ theo cách khác, anh có khả năng tune ở đúng một chỗ: làm việc với director và nói "giờ chỉ làm về cách ta chọn words thôi", hoặc "chỉ bàn cách ta chọn numbers: số nào được phép, số nào không". Tất cả cho anh sự tách bạch, kể cả việc đó khó tới đâu, research nên đi sâu tới đâu. Theo anh, những thứ đó đều làm được vì ta đã tạo ra sự tách bạch.
Rồi nó chạy (demo trong video đăng ngày 23/10/2026). Nó đi tìm concept cho Paris ở rất nhiều nơi, trong đó có Guinness World Records. Concept role đang tìm xem poster nên nói về điều gì trước khi các role khác nhận việc. Matt nói đó là concept role khởi động; sau đó nó sẽ đi vào từng role riêng để lấy numbers, colors và mọi thứ khác.

Trên màn hình (demo trong video đăng ngày 23/10/2026), director viết: Concept chạy trên opus vì chọn góc nhìn (angle) là việc cần phán đoán nhiều nhất và mọi thứ khác đi theo nó; nó không truyền ghi chú nào nên Concept bắt đầu từ đầu và sẽ không đơn giản tái dùng ví dụ 1887 trong role file; khi Concept báo lại, nó sẽ báo angle và khởi động Words, Numbers và Colors cùng lúc; nó cũng sẽ đăng một status update mỗi 5 phút cho tới khi poster xong. Danh sách bước gồm: dựng folder poster Paris, chạy Concept để chọn angle, chạy Words, Numbers, Colors song song, chạy Artist để làm poster, kiểm poster rồi gửi.
Matt nhấn mạnh (video đăng ngày 23/10/2026): tất nhiên đây không phải thứ anh tự định nghĩa. Và nếu anh không thích cách nó đang làm, như đã nói, chỉ cần một cuộc trò chuyện là chỉnh được.
11. Thêm trách nhiệm khi hệ thống đang chạy
Trong lúc Paris vẫn đang chạy, Matt muốn thêm trách nhiệm cho hệ thống, thật đơn giản, để người xem thấy cách anh làm (demo trong video đăng ngày 23/10/2026). Thứ này còn đang chạy. Anh có một director ngồi đó và sẽ tiếp tục cập nhật cho anh chuyện gì đang diễn ra; đó là một trong các trách nhiệm của "anh ấy". Ngoài ra, theo Matt, director về cơ bản đang rảnh: nó ở đó và sẵn sàng làm việc với anh.
Anh nói với director (demo trong video đăng ngày 23/10/2026): làm mấy cái poster này khá thú vị, và anh muốn chắc chắn hai điều. Thứ nhất, thiết kế của poster trả về phải được tích hợp cao, rất sáng tạo và thú vị. Anh muốn nó có cảm giác như một travel poster, giàu đồ hoạ, không phải realism. Anh không tìm ảnh chụp. Anh tìm đồ hoạ, thứ có cảm giác như một lý do để ghé thăm một nơi, hay để tự hào về một nơi. Đó là điều anh muốn ở phần art design. Nếu director dựng được một cơ chế để các role, có thể là concept role hay ai đó khác, và chắc chắn là artist, bắt đầu hiểu art style của ta là gì, anh sẽ rất thích; hãy tìm cách lồng nó vào.
Thứ hai (demo trong video đăng ngày 23/10/2026), anh muốn các poster được cập nhật lên một web system nào đó. Anh chỉ muốn cập nhật được một website, và làm local. Hãy build một website nhỏ chứa các poster để vào xem được, ở dạng full screen nếu cần, hay full mode, hay thumbnail mode. Có thể duyệt qua các poster khi chúng bắt đầu tới, và khi chúng tới thì website tự cập nhật đều đặn nếu được. Anh muốn thứ đó được build. Và có lẽ cũng cần một engineer làm role, để tiếp tục cập nhật website, bắt đầu tìm ra best practices, và có thể về sau đẩy nó lên một cloud service nào đó. "Nếu bạn khởi động được mấy việc này thì tôi cảm ơn."
Director nhận việc (demo trong video đăng ngày 23/10/2026): nó khởi động hệ thống art direction và cả role engineering. Ở cột background tasks lúc này có một "Director heartbeat" chạy theo vòng lặp, đọc .director/status/*.md và đăng status board, bên cạnh worker Words role của poster Paris chạy trên Sonnet 5.5.
12. Đổi việc đang chạy dở
Ngay sau đó, Matt quay lại với director (demo trong video đăng ngày 23/10/2026): "À, tốt. Tôi thấy bạn đang làm mấy việc này. Nghe này, tôi cần đổi một số thứ trong yêu cầu vừa rồi." Anh muốn thử nhiều art direction khác nhau. Vẫn phải giàu đồ hoạ, nhưng mỗi lần tạo một poster, anh nghĩ nên tạo ba tác phẩm, ba poster khác nhau, và để chúng mang những art style khác nhau, như vậy hoàn toàn ổn. Chúng phải tách biệt với nhau, nhưng trên hết là ta muốn có ba lựa chọn.
Điều đó cũng có nghĩa là khi hiển thị trên website (demo trong video đăng ngày 23/10/2026), anh không muốn ba thumbnail riêng rẽ. Anh muốn một chồng thumbnail đặt lên nhau. Ví dụ poster Paris vừa tạo sẽ có ba thumbnail nhỏ; bấm vào thì thấy một lưới hay một bản ghép của cả ba, hoặc một cách nào đó để lật qua chúng.

Theo Matt (video đăng ngày 23/10/2026), điều thú vị ở đây là anh đang thay đổi công việc đang chạy dở (in flight). Về cơ bản, hệ thống sẽ phải sửa những gì đang diễn ra bên trong role engineering, bên trong gallery site đang được build, và cả bên trong art direction. Anh nói đây là một giá trị của cách làm này: director có trách nhiệm hiểu công việc xung quanh nó, cập nhật được công việc đang làm trong các phần đó, và truyền đạt xuống các subagent.
Matt hiểu điều này nghe có vẻ tinh tế, nhưng theo anh (video đăng ngày 23/10/2026) nó rốt cuộc là một pattern cực lớn. Nó có nghĩa là bạn không phải đợi một phần việc xong rồi mới điều chỉnh và lái (steer). Director thật sự lái được các phần đó cho bạn, và bạn thậm chí không cần biết những bộ phận nào đang làm việc ngoài kia. Và tất nhiên bạn sẽ không biết, vì theo anh các hệ thống này rốt cuộc lớn hơn nhiều so với bạn dự tính, có nhiều bộ phận chuyển động hơn bạn nghĩ. Nên đây là một pattern rất hữu ích.
13. Xếp thêm việc và dạy director cách gọi worker
Hệ thống tiếp tục chạy và, theo Matt, chạy rất ổn (demo trong video đăng ngày 23/10/2026). Nó đã tạo gallery. Gallery lúc này chưa có poster nào, nhưng đã chọn được một số theme và vài thứ khác, nên rồi sẽ vào xem được. "Rất, rất hay", anh nói.
Anh muốn làm thêm một việc nữa (demo trong video đăng ngày 23/10/2026). Theo anh, đẩy nó đi lòng vòng khá vui: nó chưa build xong các phần đã yêu cầu lần trước, nhưng trong lúc đó, thử xem director có đủ mạnh để xếp việc (stage) và giữ việc lại không. Anh nói với director: tôi biết bạn vẫn đang build nhiều phần và có thể chưa biết cách làm việc này, nhưng tôi muốn chạy, chẳng hạn, Athens, và Cairo. Và tôi muốn làm, không biết nữa, kiểu bicycles, airplanes và New York City. Hãy cho chạy các poster đó luôn, và ta muốn bản final của chúng.

localhost:4747 ghi "6 subjects · 0 done", các ô New York City và Airplanes đang ở bước Concept.Thế là tất cả đang chạy, Matt nói (demo trong video đăng ngày 23/10/2026). Anh nói người xem đang thấy rằng càng thêm nhiều thứ vào, nó càng mô tả thêm nhiều thành phần. Một trong những việc cuối cùng anh sẽ làm là dặn director: khi khởi động một subagent, anh không muốn subagent đó lại là một director. Tin nhắn anh gửi trên màn hình:
Listen, I want you, when you start a sub-agent, I don't want that sub-agent to be a director, of course. So I want you to make some change in our instructions so that when you start a sub-agent, you can tell it what role it needs to take and what intelligence it needs. So what model or what level of effort it needs to be able to use. And that is what it chooses from kind of our agents file today. Instead of naturally starting as a director, can you make that change,
Trên màn hình (demo trong video đăng ngày 23/10/2026), director ghi "Adding worker guardrails to instructions", và trong background tasks xuất hiện các worker Paris Artist 1: Art Deco, Paris Artist 2: Linocut, Paris Artist 3: Paper-cut cùng Concept role cho Athens, Cairo, Bicycles, Airplanes và New York City, tất cả trên Opus 5.5, cùng một task "Add worker guardrails to instructions" trên Sonnet 5.5.
Nhìn vào các background task đang chạy, Matt đọc (demo trong video đăng ngày 23/10/2026): có 12 cái đã xong, và anh nghĩ cũng có khoảng 12 cái đang chạy ngay lúc đó. Đó là tất cả những việc đang diễn ra. Nhưng agent của anh, director của anh, vẫn ở đó để làm việc cùng anh, và nó hiểu rằng đang có chừng ấy việc diễn ra. Theo Matt, có một người cùng tham gia hiểu được hệ thống như vậy là rất giá trị, và bạn được dịp củng cố nó.
14. Build dần trong lúc làm
Matt nói (video đăng ngày 23/10/2026) đó là chỗ anh dành phần lớn thời gian: củng cố mối quan hệ anh xây với director. Ý anh là mô tả các rules nó cần theo, hay các kỳ vọng của anh với nó. Tới một lúc nào đó, director sẽ có nhiều rules tới mức bạn nhận ra nó cũng đang tự làm các role. Bạn cần nó đừng làm nhiều role như vậy, nên bạn quay lại nói với director: này, trong đây có những việc đang diễn ra mà tôi không muốn bạn làm; bạn phải biến chúng thành role, và khi tôi nhờ bạn làm một số việc, bạn giao chúng cho role khi cần. Theo anh, đó là cách build các hệ thống này về sau.
Vì vậy, theo Matt (video đăng ngày 23/10/2026), điều kỳ diệu của hệ thống này chắc chắn là bạn build nó dần trong lúc làm. Bạn đã làm iteration từ lâu, có lẽ hôm nay vẫn đang làm, và anh nói đó không còn là cách làm nữa. Vì điều bạn đang làm là đẩy vào những câu như: "Sao bạn lại quên cái này nữa? Tôi đã nhờ bạn ba lần rồi", hay "hãy xem lại conversation lần trước, ta đang làm loại việc này, sao vẫn mắc những lỗi này?". Theo anh, tất cả những câu đó lẽ ra phải đáp xuống một chỗ nào đó. Trong đầu bạn, chúng có đáp xuống một chỗ, và bạn muốn chúng như vậy.
Về memory, Matt nói (video đăng ngày 23/10/2026) các hệ thống này đã dùng memory system được một thời gian, nên chúng có theo dõi một số điều như thế và đang khá hơn. Nhưng theo anh, chúng sẽ không theo dõi tuyệt đối mọi thứ, và chắc chắn sẽ không theo dõi kỳ vọng của bạn theo từng role khi hệ thống ngày càng lớn. Chưa kể bạn muốn thứ này bền qua các lần thay đổi, qua các hệ thống khác nhau, các môi trường khác nhau, trong khi những memory đó không phải lúc nào cũng bền theo cách ấy.
Nên thứ bạn thật sự đang build, theo Matt (video đăng ngày 23/10/2026), là một điểm khởi đầu nhỏ, nơi bạn trò chuyện được với một agent. Và thoả thuận với agent đó là: bạn không làm việc, bạn chia việc ra, và bạn được chọn việc đó khó tới mức nào. Rồi bạn cứ đẩy tiếp vào mối quan hệ đó với director: tôi cần thêm một role làm việc này. Ví dụ ta muốn chắc chắn không có bản trùng lặp, hay muốn có một bước đánh giá xem art style có đạt mong muốn không, hay xem có phải mọi poster ra trong cùng một ngày đều trông giống nhau không. Ta có thể cứ tạo hết role này tới role khác.
Một evaluator nữa làm việc đó, và theo Matt (video đăng ngày 23/10/2026), director thông minh của ta sẽ tự tìm cách phối hợp các role với nhau.
15. Director của các director
Quay lại sơ đồ mở đầu, Matt kể (video đăng ngày 23/10/2026): ở một số hệ thống của mình, anh đã làm mọi thứ phức tạp tới mức phải gom chúng lại sau các director. Anh có một director lo toàn bộ phần audio trong game của anh, vì audio có rất nhiều role. Anh không muốn director chính của mình nắm mọi role của cả hệ thống. Nên anh nói: được, mình sẽ có thứ anh gọi là một department lo audio. Và khi director chính nói chuyện với department audio, thật ra nó đang nói chuyện với một director khác, đúng y hệt thứ người xem vừa thấy. Theo anh, đó là một hệ thống đệ quy đi dần xuống dưới.

Cách ghép đồ thị này hoạt động như sau, theo Matt (video đăng ngày 23/10/2026): một director nói với một director khác "đây là thứ ta nghĩ cần ở bạn". Director đó biết mọi role trong vùng của nó. Và cứ thế tiếp tục khi mọi thứ phức tạp hơn. Anh nói câu trả lời thật sự chỉ là tạo ra không gian để làm được điều này. Anh không thể nhấn mạnh đủ: nó đơn giản như vậy.
16. Poster Gallery
Trước khi kết, Matt muốn cho xem vài poster rất hay đã liên tục hiện lên trước mắt anh (demo trong video đăng ngày 23/10/2026). Đây là các travel poster do hệ thống tạo ra cho demo. Anh nói có cái đẹp hơn cái khác. Gallery giờ hiện sáu chủ đề, mỗi chủ đề một chồng ba style: Airplanes, Cairo, New York City, Bicycles, Athens và Paris.
Anh mở poster máy bay trước (demo trong video đăng ngày 23/10/2026). Tất nhiên nó đưa ra toàn bộ concept: đây là concept cơ bản cho phần art. Lướt qua từng cái, có thể thấy color scheme của từng poster.

Poster New York City vẫn đang chạy, Matt nói (demo trong video đăng ngày 23/10/2026): "Hero's Welcome", về Tượng Nữ thần Tự do. Anh không nghĩ năm 1886 các toà nhà đã cao tới vậy. Nên anh nói sẽ muốn đặt một evaluator vào đây: hãy kiểm ảnh trả về có hợp lệ không; nếu là một tác phẩm về một thời kỳ thì nó phải đúng với thời kỳ đó, vân vân. "Okay, rất hay."
Rồi tới bicycle, 1896 (demo trong video đăng ngày 23/10/2026); trên màn hình là ba bản "Free Wheeling" theo style Art Nouveau, Swiss modernist và Cut-paper collage. Poster Paris ghi 1797, và Matt đọc: cú nhảy dù đầu tiên từ một khinh khí cầu, "hình như" là ở Paris, "hay đấy". Ba bản Paris trên màn hình có chữ "Expérience du Parachute" theo style Art Deco geometric, WPA-era relief print và Cut-paper collage. Và Athens là "violet-crowned", thành phố đội vương miện tím. "Mấy cái này tuyệt đấy", anh nói.
17. Một partner và vài role là đủ để bắt đầu
Matt nói video đã khá dài nên anh sẽ kết ngắn (video đăng ngày 23/10/2026). Anh hy vọng người xem đã thấy giá trị của việc tạo ra một hệ thống cho mình và cho công việc của mình về sau. Bạn không cần có ý tưởng xuất sắc ngay từ đầu về tất cả các bộ phận chuyển động. Việc đó đáng sợ, và theo anh là bất khả thi. Nên hãy chỉ cần có một partner để làm việc cùng, và tách ra vài role hợp lý, những loại việc bạn cứ hay nhờ đi nhờ lại.
Theo Matt (video đăng ngày 23/10/2026), bạn có thể có một front end engineer và một back end engineer nếu đang build phần mềm, hoặc có ai đó quản lý slide của bạn, ai đó làm research, hay ai đó xem email cho bạn, gì cũng được. Đó là các role trong hệ thống của bạn, kể cả khi mỗi role chỉ là một dòng định nghĩa cách nó làm việc. Ví dụ: "Hãy lấy các email mới nhất của tôi và cho tôi xem năm cái quan trọng." Thế là một role. Một role khác: "Hãy theo dõi giúp tôi tất cả các email", gì cũng được.

Theo Matt (video đăng ngày 23/10/2026), từ đó nó bắt đầu tự lớn lên. Bạn sẽ thấy khi đã có không gian đó, sự tách bạch tạo ra không gian để bạn xếp lớp độ phức tạp của mình vào và tạo ra một hệ thống thật sự giúp giải quyết vấn đề.
Anh nói sẽ dừng ở đây và rất hào hứng với chuyện này (video đăng ngày 23/10/2026). Anh hy vọng video đã chạm được phần nào, và người xem có chút hứng thú hay kiên nhẫn để chỉ việc xin một director ngay từ đầu. Anh nói bạn có thể lấy đoạn anh đã nói làm director của mình (bản ở mục 4), hoặc trỏ agent của bạn vào video này để nó tự lấy, rồi bắt đầu từ đó. Như đã nói, nó hoàn toàn chưa hoàn hảo.
Matt hy vọng video (đăng ngày 23/10/2026) giúp người xem bắt đầu hành trình tạo agentic system. Theo anh, nó thật sự sẽ thay đổi mọi thứ, và anh "gần như cam đoan" điều đó. Anh cảm ơn mọi người đã đi cùng chuyến này, một chuyến đi "rất, rất dài".
Nguồn và liên kết 6 nguồn
- Tên gốc: How the Pros Actually Work With AI Now
- Sự kiện: YouTube
- Video gốc: https://www.youtube.com/watch?v=KbuSHtTeyEA youtube.com
- Kênh YouTube Matt Maher (Matt Maher): youtube.com/channel/UC6-EGajbNF0DPD9AJ8oQC1A youtube.com
- Claude Code docs, "Create custom subagents": subagent định nghĩa bằng file markdown trong
.claude/agents/, frontmatter có thể đặtmodel(đọc ngày 30/10/2026): code.claude.com/docs/en/sub-agents code.claude.com - Claude Code docs, "How Claude remembers your project":
CLAUDE.mdvà auto memory (đọc ngày 30/10/2026): code.claude.com/docs/en/memory code.claude.com