Bỏ qua điều hướng
Công cụ & SDK

Claude Code ra mắt Dynamic Workflows điều phối hàng trăm agent

Dynamic workflows trong Claude Code: cơ chế điều phối đa tác nhân qua mã nguồn JavaScript, giúp xử lý di chuyển codebase lớn và kiểm tra bảo mật tự động.

Tuan Tran Van
8 phút đọc
Mục lục (8 phần)
  1. Dynamic workflows trong Claude Code là gì?
  2. Dynamic workflows hoạt động thế nào?
  3. Bật và kích hoạt dynamic workflows thế nào?
  4. Bạn dùng dynamic workflows cho việc gì?
  5. Case study: Bun viết lại 750.000 dòng Rust trong 11 ngày
  6. Dynamic workflows khác gì Cursor, Copilot và Codex?
  7. Khi nào KHÔNG nên dùng dynamic workflows?
  8. Tài liệu tham khảo

Dynamic workflows là tính năng cho phép Claude tự động viết kịch bản điều phối (orchestration script) bằng JavaScript để quản lý hàng chục đến hàng trăm tác nhân phụ (subagents) chạy song song, nhằm giải quyết các tác vụ kỹ thuật quy mô lớn.

Về mặt kỹ thuật, cách làm này giúp Claude vượt giới hạn của cửa sổ ngữ cảnh (context window): trạng thái công việc nằm trong các biến của runtime JavaScript thay vì bị đẩy hết vào phiên chat. Nhờ đó hệ thống vẫn chạy ổn định ngay cả khi điều phối tới 1.000 tác nhân trong những dự án phức tạp kéo dài nhiều ngày.

Khác với các cơ chế trước, kế hoạch hành động không còn nằm trong hội thoại mà được lưu dưới dạng mã nguồn (Plan-as-Code).

Sơ đồ minh hoạ dynamic workflows: kế hoạch chuyển từ hội thoại thành tệp mã nguồn workflow.js, điều phối hàng trăm agent chạy song song.

Dynamic workflows trong Claude Code là gì?

Dynamic workflows là một cơ chế điều phối đa tác nhân (multi-agent orchestration) nâng cao.

Điểm khác biệt nằm ở chỗ Claude không chỉ dự đoán bước tiếp theo, mà thực sự lập trình ra một quy trình thực thi. Kế hoạch này là một tệp mã nguồn hữu hình, cho phép kiểm soát chặt logic rẽ nhánh và vòng lặp.

Đặc tínhSkills (Kỹ năng)Subagents (Tác nhân phụ)Agent Teams (Đội ngũ)Dynamic Workflows
Nơi giữ kế hoạchClaude (trong chat)Lead orchestratorShared task listScript JavaScript
Lưu trạng tháiContext windowContext windowContext windowBiến trong script
Tính song songThấp / tuần tựSong song (đơn lẻ)Song song (có thảo luận)Song song quy mô lớn
Khả năng kiểm traThấpTrung bìnhTrung bìnhRất cao (audit kịch bản)

Chính việc lưu kết quả trung gian trong biến của runtime JavaScript là điều giúp Claude vận hành hàng nghìn agent mà không làm tràn bộ nhớ ngữ cảnh của mô hình chính.

Dynamic workflows hoạt động thế nào?

Quy trình vận hành dựa trên các nguyên mẫu (primitives) như agent.parallelpipeline, đi qua ba giai đoạn:

  1. Quét (Scan): chia tác vụ thành các phần độc lập. Để tối ưu chi phí, các subagent thực thi thường chạy trên model Haiku, còn agent điều phối và tổng hợp dùng Opus.
  2. Xác thực (Verify): áp dụng xác thực đối kháng (adversarial verification) — một nhóm agent thực hiện thay đổi, nhóm khác chủ động tìm lỗi và phản biện. Workflow chỉ đi tiếp khi kết quả hội tụ (convergence).
  3. Báo cáo (Report): tổng hợp dữ liệu từ các biến trong script và trả về một kết quả duy nhất đã qua kiểm chứng.

Sơ đồ ba giai đoạn của dynamic workflows — Quét, Xác thực đối kháng và Báo cáo — với nhiều agent kiểm tra chéo lẫn nhau cho đến khi kết quả hội tụ.

Thông số và giới hạn vận hành:

  • Đồng thời (concurrency): tối đa 16 agent chạy cùng lúc để bảo vệ tài nguyên CPU.
  • Tổng số agent: giới hạn cứng 1.000 agent mỗi lần chạy để ngăn lỗi "vòng lặp chạy hoang" (runaway loops) đốt token.
  • Trạng thái theo phiên (session-bound): nếu bạn thoát hẳn Claude Code, phiên sau sẽ chạy lại workflow từ đầu thay vì tiếp tục từ checkpoint cũ — dù script đã được lưu.

Bật và kích hoạt dynamic workflows thế nào?

Tính năng yêu cầu Claude Code từ phiên bản v2.1.154 trở lên. Kiểm tra bằng claude --version. Có hai cách kích hoạt chính:

  • Cách 1 — từ khóa trực tiếp: đặt từ "workflow" trong prompt. Khi nhận diện đúng, CLI tô màu cầu vồng từ khóa này để xác nhận đã kích hoạt kịch bản động.
  • Cách 2 — chế độ Ultracode: dùng lệnh /effort ultracode. Chế độ này đẩy mức suy nghĩ lên xhigh và tự động dùng workflow cho mọi tác vụ phức tạp. Lưu ý: Ultracode hiện yêu cầu model Opus 4.8 hoặc 4.7; các model đời cũ không hỗ trợ mức suy nghĩ này.

Các lệnh hỗ trợ trong CLI:

  • /workflows: xem danh sách workflow đang chạy, số agent và token đã dùng.
  • Phím p: tạm dừng (pause) một tiến trình trong giao diện /workflows.
  • Quyền hạn: trong workflow, các subagent mặc định ở chế độ acceptEdits. Nghĩa là AI tự động ghi đè hàng loạt file mà không dừng xin phép từng lần — một đánh đổi về bảo mật để có tự động hóa hoàn toàn.

Bạn dùng dynamic workflows cho việc gì?

Workflow không dành cho các chỉnh sửa lẻ; nó phát huy tác dụng ở những kịch bản quy mô lớn:

  • Quét lỗi toàn codebase: tìm các mẫu code không an toàn (unsafe patterns) hay lỗi logic trên cả dự án, có kiểm tra chéo giữa nhiều agent.
  • Di chuyển mã nguồn lớn: đổi framework hay port ngôn ngữ (ví dụ Java sang Kotlin, hoặc port API cũ sang mới).
  • Nghiên cứu đối chiếu: lệnh /deep-research quét nhiều nguồn, đối chiếu các tuyên bố và chỉ giữ thông tin có sự đồng thuận.
  • Tái sử dụng: nhấn s trong giao diện /workflows để lưu kịch bản vào thư mục .claude/workflows/. Sau đó nó trở thành một lệnh / tùy chỉnh, chia sẻ cho cả team qua Git.

Case study: Bun viết lại 750.000 dòng Rust trong 11 ngày

Jarred Sumner (tác giả Bun) đã minh chứng sức mạnh của workflow khi chuyển runtime từ Zig sang Rust:

  • Quy mô: 750.000 dòng Rust được tạo ra trong 11 ngày, tỷ lệ vượt kiểm thử đạt 99,8%.
  • Quy trình ba bước:
    1. Một workflow ánh xạ chính xác Rust lifetime cho từng struct field.
    2. Hàng trăm agent song song chuyển đổi file, mỗi file có 2 reviewer độc lập kiểm tra tính tương đồng về hành vi (behavioral equivalence).
    3. Một workflow chạy qua đêm để tối ưu việc sao chép dữ liệu thừa (data copies).

Đồ hoạ case study Bun chuyển Zig sang Rust: 750.000 dòng code, 11 ngày, 99,8% test đạt, qua ba bước ánh xạ lifetime, chuyển đổi file song song và tối ưu qua đêm.

Góc nhìn phản biện: dù con số 99,8% gây ấn tượng, cộng đồng kỹ sư trên Reddit và Hacker News chỉ ra rằng mã nguồn chứa tới 13.255 khối lệnh unsafe và nhiều đoạn không an toàn (unsound code). Workflow giúp hoàn thành khối lượng khổng lồ, nhưng kết quả vẫn cần con người thẩm định trước khi đưa vào vận hành thực tế (production).

Dynamic workflows khác gì Cursor, Copilot và Codex?

Claude Code là công cụ duy nhất hiện nay lưu được "công thức" điều phối (blueprint) dưới dạng artifact có thể kiểm soát, đọc lại và chia sẻ.

So sánh Plan-as-Conversation và Plan-as-Code: kế hoạch trong cửa sổ chat biến mất khi hết phiên, đối lập với script JavaScript trong .claude/workflows lưu lại và tái dùng được.

Khía cạnhCursor (/multitask)GitHub Copilot (/fleet)Claude Code (Workflows)
Cơ chế song songGiao diện sidebarLớp điều phối / Git worktreesĐiều phối bằng script
Lưu kế hoạchTạm thời (trong chat)Trong lớp điều phối nội bộTệp JavaScript (.js)
Cấu trúc agentAgent cloud / localLớp điều phốiSubagent định địa chỉ theo path
Kiểm tra (audit)ThấpQua dashboardRất cao (đọc code kịch bản)
Chia sẻ / tái dùngKhôngKhôngCó (commit vào repo)

Khi nào KHÔNG nên dùng dynamic workflows?

Workflow là con dao hai lưỡi về chi phí. Chỉ nên dùng khi có một thước đo đúng/sai khách quan (objective oracle) — thường là bộ unit test hoàn chỉnh để AI biết khi nào đạt yêu cầu. Nên tránh trong các trường hợp:

  • Thiếu bộ test tự động: workflow sẽ chạy theo "cảm giác" (vibes) và dễ đốt hàng triệu token mà không cho kết quả đúng.
  • Tác vụ sáng tạo / chủ quan: những việc không có tiêu chuẩn kỹ thuật rõ ràng.
  • Thay đổi nhỏ: sửa một hai file thì dùng subagent nhanh và rẻ hơn nhiều.
  • Cần can thiệp liên tục: workflow chạy tự động đến khi xong; nếu muốn điều hướng từng bước, hãy dùng Agent Teams.
  • Ngân sách token hạn hẹp: một prompt có thể ngốn từ 1,2 đến 7,2 triệu token chỉ trong vài phút.

Tài liệu tham khảo

Đọc tiếp

Chia sẻ bài viết

X / TwitterFacebookLinkedIn