Cách tạo Subagent mã Claude tùy chỉnh (Hướng dẫn cấu hình)

Cách tạo các subagent tùy chỉnh cho Claude Code: tệp cấu hình .claude/agents, các trường frontmatter, ủy quyền tự động và thiết lập đánh giá mã và kiểm thử song song.

Ashley Innocent

Ashley Innocent

9 tháng 6 2026

Cách tạo Subagent mã Claude tùy chỉnh (Hướng dẫn cấu hình)

Apidog cho doanh nghiệp

Triển khai tại chỗ

SSO & RBAC

Tuân thủ SOC 2

Khám phá Apidog Enterprise

Có một giới hạn mà bạn sẽ gặp phải với bất kỳ phiên mã hóa AI nào: cửa sổ ngữ cảnh. Nhồi nhét một cuộc trò chuyện với một lần tái cấu trúc lớn, ba vòng đầu ra kiểm tra và một đánh giá mã, và tác nhân sẽ bắt đầu mất dấu. Các subagent của Claude Code là giải pháp. Thay vì một tác nhân xử lý tất cả mọi thứ trong một ngữ cảnh, bạn tạo ra các tác nhân chuyên biệt, mỗi tác nhân có cửa sổ ngữ cảnh riêng, hướng dẫn riêng và quyền công cụ riêng. Chúng thực hiện một công việc, trả về kết quả và giữ cho luồng chính sạch sẽ. Đây là hướng dẫn xây dựng thực hành. Cách tạo một subagent tùy chỉnh dưới dạng tệp cấu hình, mỗi trường frontmatter làm gì, cách Claude quyết định ủy quyền cho nó, và cách thiết lập một cấu hình thực tế nơi một tác nhân đánh giá mã trong khi một tác nhân khác viết kiểm thử song song. Nếu bạn muốn tổng quan về khái niệm trước, bài viết của chúng tôi về subagent của Claude Code là gì và tại sao chúng quan trọng bao gồm các kiến thức cơ bản. Ở đây, chúng tôi tập trung vào việc xây dựng chúng, và vào góc độ kiểm thử API biến một subagent kiểm thử thành một bước xác minh đáng tin cậy.

TL;DR

Bạn tạo một subagent của Claude Code bằng cách viết một tệp Markdown trong ` .claude/agents/ ` với YAML frontmatter: một ` name `, một ` description ` cho Claude biết khi nào cần ủy quyền, một danh sách cho phép ` tools ` tùy chọn và một ` model ` tùy chọn. Phần nội dung của tệp trở thành lời nhắc hệ thống của subagent. Mỗi subagent chạy trong cửa sổ ngữ cảnh riêng với các công cụ riêng, để bạn có được sự cô lập ngữ cảnh, song song hóa và chuyên môn hóa. Claude tự động ủy quyền dựa trên mô tả, hoặc bạn gọi một subagent bằng tên. Tài liệu tham khảo chính thức là tài liệu subagent của Claude Code.

Subagent trong 60 giây

Một subagent là một phiên bản tác nhân riêng biệt mà tác nhân chính của Claude Code giao một nhiệm vụ cho. Tác nhân chính là kỹ sư trưởng; các subagent là các chuyên gia mà nó kéo vào. Chuyên gia làm việc trong cuộc trò chuyện riêng của mình, với cửa sổ ngữ cảnh và lời nhắc hệ thống riêng, sau đó chỉ trả về kết quả. Ba thuộc tính khiến chúng đáng để cấu hình:

Đó là nền tảng khái niệm; tổng quan về khái niệm đi sâu hơn vào lý do tại sao. Phần còn lại của hướng dẫn này là về việc xây dựng chúng, đó là nguyên tắc tương tự đằng sau kiến trúc harness của Claude Code được áp dụng ở cấp độ các nhiệm vụ riêng lẻ.

Tại sao nên sử dụng subagent

Ba lý do, và chúng bổ sung cho nhau.

Cô lập ngữ cảnh. Một phiên làm việc dài sẽ giảm hiệu suất khi cửa sổ ngữ cảnh đầy. Mỗi lần đọc tệp, mỗi lần chạy kiểm thử, mỗi chủ đề phụ đều tiêu tốn ngân sách và làm loãng sự tập trung. Ủy quyền một nhiệm vụ lớn cho một subagent giữ tất cả công việc đó trong ngữ cảnh của subagent, chứ không phải ngữ cảnh chính. Tác nhân chính nhận lại một bản tóm tắt rõ ràng thay vì 50.000 token nhiễu trung gian. Sự cô lập đó cũng là một đòn bẩy chi phí, vì bạn không phải kéo một ngữ cảnh cồng kềnh qua mỗi lượt. Các ghi chú của chúng tôi về việc giảm chi phí token của tác nhân đi sâu vào khía cạnh kinh tế.

Song song hóa. Các nhiệm vụ độc lập không cần phải chạy tuần tự. Một tác nhân chính có thể điều phối nhiều subagent cùng lúc: đánh giá module này trong khi kiểm thử module kia và ghi tài liệu cho module thứ ba. Thời gian thực tế giảm xuống mức của nhiệm vụ đơn lẻ chậm nhất thay vì tổng cộng. Các quy trình làm việc động của Claude Code đẩy điều này đến giới hạn, phân tán hàng trăm subagent song song từ một phiên duy nhất.

Chuyên môn hóa. Một tác nhân tổng quát thì ổn ở mọi thứ nhưng không giỏi ở bất cứ điều gì. Một subagent với lời nhắc hệ thống chặt chẽ và các công cụ phù hợp thì rất giỏi ở một việc. Một người đánh giá được nhắc nhở là phản biện sẽ tìm thấy nhiều lỗi hơn một người tổng quát chỉ nhìn lướt qua sự khác biệt. Một người viết kiểm thử biết phong cách kiểm định của bạn sẽ tạo ra các kiểm thử mà bạn thực sự sẽ giữ lại. Bạn xây dựng một đội ngũ nhỏ các chuyên gia thay vì một người tổng quát bị quá tải.

Cách tạo một subagent tùy chỉnh

Subagent là các tệp Markdown thuần túy. Đặt các tệp cấp dự án trong ` .claude/agents/ ` và các tệp cá nhân trong ` ~/.claude/agents/ `. Mỗi tệp có YAML frontmatter và phần nội dung trở thành lời nhắc hệ thống của subagent. Đây là một người đánh giá mã:

---
name: code-reviewer
description: Reviews code changes for bugs, security issues, and convention violations. Use after writing or editing code.
tools: Read, Grep, Glob
model: sonnet
---

You are a senior code reviewer. When given a diff or a set of files:

1. Look for correctness bugs, security holes, and missed edge cases.
2. Check that the code matches the project's existing conventions.
3. Report only high-confidence issues, ranked by severity.

Be specific. Cite file and line. Do not rubber-stamp.

Các trường frontmatter:

Phần nội dung là lời nhắc hệ thống. Đây là nơi thể hiện sự chuyên môn hóa, vì vậy hãy viết nó như cách bạn hướng dẫn một nhân viên mới: phải làm gì, ưu tiên cái gì, và tránh cái gì. Kết hợp nó với một tệp design.md hoặc AGENTS.md của dự án sẽ cung cấp cho subagent các quy ước của bạn mà không cần lặp lại chúng trong mỗi tệp.

Cách gọi các subagent

Có hai cách để một subagent hoạt động.

Ủy quyền tự động. Claude đọc trường `description` của mỗi subagent có sẵn và tự động ủy quyền khi một nhiệm vụ phù hợp. Hoàn tất chỉnh sửa tệp và tác nhân chính có thể chuyển phần diff cho `code-reviewer` của bạn mà không cần được yêu cầu, vì mô tả nói "sử dụng sau khi viết mã." Các mô tả tốt thúc đẩy ủy quyền tốt.

Gọi rõ ràng. Bạn cũng có thể gọi nó trực tiếp: “sử dụng subagent code-reviewer trên các thay đổi trong module orders.” Đây là cách bạn buộc một chuyên gia cụ thể khi bạn không muốn để việc ủy quyền cho ngẫu nhiên.

Dù bằng cách nào, subagent chạy trong ngữ cảnh riêng của nó, thực hiện công việc và trả về kết quả cho luồng chính. Bạn thấy quá trình chuyển giao diễn ra, và bạn có thể cấu hình mức độ chi tiết hiển thị. Để xâu chuỗi các subagent thành các chuỗi xác định, lặp lại được, các lệnh slash và SDK cung cấp cho bạn nhiều quyền kiểm soát hơn so với lời nhắc ad hoc; tổng quan về Claude Code bao gồm bề mặt cấu hình.

Subagent so với Agent SDK so với các quy trình làm việc động

Chúng có sự chồng chéo, vì vậy đây là lúc mỗi loại phù hợp.

Công cụ Mô hình điều khiển Tốt nhất cho
Subagent Mô hình quyết định khi nào ủy quyền (hoặc bạn chỉ định tên) Chuyên môn hóa trong phiên và song song hóa nhẹ
Quy trình làm việc động Mô hình điều phối phân tán quy mô lớn trong một phiên Hàng trăm nhiệm vụ song song, quét rộng
Agent SDK Bạn viết luồng điều khiển trong mã Vòng lặp xác định, chạy theo lịch hoặc tự động

Subagent là tùy chọn tương tác, trong phiên: bạn đang làm việc trong Claude Code và muốn một hoặc hai chuyên gia. Khi bạn cần một vòng lặp lập trình chạy theo lịch trình mà không có sự hiện diện của con người, bạn chuyển sang Claude Agent SDK và tự viết phần điều phối. Nếu bạn đang cân nhắc giữa một tùy chọn được lưu trữ và việc tự triển khai, so sánh giữa các tác nhân được quản lý và Agent SDK của chúng tôi sẽ phân tích các đánh đổi. Ba loại này không phải là đối thủ cạnh tranh mà là các bậc thang trên một chiếc thang từ tương tác đến tự động hoàn toàn.

Một ví dụ thực tế: đánh giá và viết kiểm thử song song

Hãy kết hợp chúng lại. Giả sử bạn vừa yêu cầu tác nhân chính triển khai một endpoint orders mới. Bạn muốn nó được đánh giá và kiểm thử, và không có lý do gì để chúng phải xảy ra tuần tự. Xác định hai subagent. `code-reviewer` ở trên, cộng với một người viết kiểm thử:

---
name: api-test-writer
description: Writes API test cases for new or changed endpoints. Use after an endpoint is implemented.
tools: Read, Grep, Write, Bash
model: sonnet
---

You write API tests against the project's OpenAPI spec.

1. Read the spec and the endpoint implementation.
2. Write tests covering success, validation errors, and auth.
3. Assert status codes and validate response bodies against the schema.
4. Run the suite and report pass/fail with reasons.

Bây giờ tác nhân chính điều phối cả hai cùng lúc: người đánh giá đọc phần diff trong khi người viết kiểm thử đọc đặc tả và viết độ bao phủ. Hai chuyên gia, hai ngữ cảnh cô lập, chạy song song. Luồng chính vẫn sạch sẽ và nhận lại hai bản tóm tắt: một báo cáo đánh giá và một kết quả kiểm thử. Kết quả kiểm thử đó là phần làm cho điều này đáng tin cậy. Một subagent chạy bộ kiểm thử API của bạn là một cổng xác minh, kiểm tra xác định cho biết liệu endpoint có thực sự hoạt động hay chỉ trông có vẻ đã hoàn thành. Đây là ý tưởng cốt lõi từ các vòng lặp tác nhân mã hóa: sự tự tin của tác nhân không quan trọng, phán quyết của cổng mới quan trọng. Kết nối subagent kiểm thử với một nền tảng kiểm thử API thực tế và phản hồi sẽ sắc bén hơn. Các nhóm sử dụng Apidog trỏ subagent đến một kịch bản kiểm thử Apidog để mọi phản hồi đều được xác thực theo lược đồ, và định tuyến các cuộc gọi endpoint trực tiếp của tác nhân thông qua trình gỡ lỗi tác nhân AI của Apidog để nó kiểm tra các yêu cầu theo cách một người kiểm thử con người sẽ làm. Lấy cùng cấu hình đó, gói nó trong một vòng lặp, và bạn có quy trình làm việc tự động mà chúng tôi đã xây dựng trong các quy trình làm việc của Claude chạy mà không cần bạn. Tải xuống Apidog nếu bạn muốn cổng kiểm thử nhận biết lược đồ ngay từ đầu.

Các phương pháp hay nhất

Một vài thói quen giúp subagent hữu ích thay vì hỗn loạn.

Những điều này phản ánh các mô hình kết nối công cụ trong quy trình làm việc tác nhân mà chúng tôi đã đề cập, và chúng vẫn đúng dù bạn có hai hay hai mươi subagent.

Khi nào nên sử dụng subagent (và khi nào không)

Subagent là một công cụ, không phải là mặc định. Biết khi nào nên bỏ qua chúng sẽ giúp thiết lập của bạn nhanh chóng và rẻ tiền. Hãy sử dụng subagent khi một nhiệm vụ **có giới hạn, độc lập và nhiều nhiễu**. Một đánh giá mã có giới hạn (có một điểm kết thúc rõ ràng), độc lập (không cần trạng thái chạy của luồng chính), và nhiều nhiễu (tạo ra nhiều thông tin đọc trung gian mà bạn không muốn làm tắc nghẽn ngữ cảnh chính). Tương tự đối với việc viết một bộ kiểm thử, tái tạo lỗi, hoặc kiểm tra một module về các vấn đề bảo mật. Đây là những ủy quyền hoàn hảo: cô lập công việc, nhận lại một phán quyết. Bỏ qua subagent khi nhiệm vụ **nhỏ, liên kết chặt chẽ hoặc tuần tự với công việc chính**. Đổi tên một biến, sửa một lỗi một dòng, hoặc bất cứ điều gì mà tác nhân chính đã có ngữ cảnh cần thiết trong tầm nhìn thì không có lợi từ việc chuyển giao. Việc tạo ra một subagent ở đó chỉ làm tăng độ trễ và một chuyến đi khứ hồi ngữ cảnh mà không mang lại lợi ích gì. Nếu tác nhân chính phải giải thích một nửa cuộc trò chuyện để hướng dẫn subagent, hãy giữ nó trong luồng chính. Quy tắc chung: ủy quyền công việc đủ độc lập để mô tả trong một đoạn văn và đủ giá trị để chạy song song. Một endpoint mới để đánh giá và kiểm thử thì phù hợp. Một lỗi chính tả thì không. Khi bạn mở rộng sang nhiều subagent đồng thời, các mô hình điều phối trong quy trình làm việc động sẽ đảm nhiệm, nhưng phán đoán tương tự vẫn áp dụng: song song hóa các tác vụ độc lập, giữ các tác vụ liên kết chặt chẽ với nhau.

Những lỗi thường gặp

Làm đúng những điều này và một vài subagent được phân tách rõ ràng sẽ biến Claude Code từ một trợ lý bận rộn duy nhất thành một nhóm nhỏ, tập trung. Bài viết về việc xây dựng các tác nhân hiệu quả của Anthropic đưa ra một lập luận rộng hơn: cấu trúc xung quanh mô hình tốt hơn một lời nhắc lớn hơn.

Các câu hỏi thường gặp

Subagent của Claude Code là gì? Đó là một phiên bản tác nhân riêng biệt mà tác nhân chính của Claude Code ủy quyền. Mỗi subagent có cửa sổ ngữ cảnh riêng, một lời nhắc hệ thống tùy chỉnh và một bộ công cụ có thể cấu hình. Nó thực hiện một nhiệm vụ tập trung và trả về kết quả, giữ cho cuộc trò chuyện chính sạch sẽ và cho phép bạn chạy các chuyên gia song song.

Làm thế nào để tạo một subagent của Claude Code? Tạo một tệp Markdown trong ` .claude/agents/ ` (dự án) hoặc ` ~/.claude/agents/ ` (cá nhân). Thêm YAML frontmatter với ` name `, ` description `, ` tools ` tùy chọn và ` model ` tùy chọn, sau đó viết lời nhắc hệ thống vào phần nội dung. Mô tả cho Claude biết khi nào nên tự động ủy quyền cho nó.

Claude quyết định sử dụng subagent nào bằng cách nào? Nó đọc trường `description` của mỗi subagent có sẵn và tự động ủy quyền khi một nhiệm vụ phù hợp. Bạn cũng có thể gọi một subagent rõ ràng bằng tên, ví dụ “sử dụng subagent code-reviewer.” Các mô tả rõ ràng, theo kiểu trình kích hoạt làm cho việc ủy quyền tự động trở nên đáng tin cậy.

Sự khác biệt giữa subagent và Claude Agent SDK là gì? Subagent là tác nhân trong phiên và được điều phối bởi mô hình: bạn đang làm việc trong Claude Code và nó kéo các chuyên gia vào. Agent SDK là lập trình, nơi bạn viết luồng điều khiển trong mã cho các lần chạy xác định hoặc không giám sát. Sử dụng subagent cho chuyên môn hóa tương tác, SDK cho các vòng lặp theo lịch trình.

Các subagent có thể chạy song song không? Có. Tác nhân chính có thể điều phối nhiều subagent cùng lúc cho các nhiệm vụ độc lập, vì vậy việc đánh giá, kiểm thử và ghi tài liệu diễn ra cùng nhau thay vì tuần tự. Đối với việc phân tán quy mô lớn, các quy trình làm việc động của Claude Code mở rộng điều này đến nhiều subagent song song trong một phiên duy nhất.

Subagent giúp kiểm thử API như thế nào? Xác định một subagent viết và chạy các kiểm thử API của bạn dựa trên đặc tả OpenAPI. Nó trở thành một cổng xác minh kiểm tra xem một endpoint có thực sự hoạt động hay không, chứ không chỉ là liệu nó có vẻ đã hoàn thành. Việc trỏ nó đến một nền tảng như Apidog làm cho phản hồi nhận biết được lược đồ, để mọi phản hồi đều được xác thực theo hợp đồng.

Điểm mấu chốt

Các subagent của Claude Code giải quyết vấn đề mà một cửa sổ ngữ cảnh không thể chứa mọi thứ. Bằng cách cấp cho mỗi nhiệm vụ ngữ cảnh, hướng dẫn và công cụ riêng, bạn đổi một tác nhân duy nhất bị quá tải lấy một đội ngũ nhỏ các chuyên gia làm việc song song và báo cáo lại một cách sạch sẽ. Thiết lập chỉ là một tệp Markdown, và lợi ích là sự tập trung, tốc độ và khả năng đặt đúng mô hình vào đúng công việc. Bắt đầu với hai: một người đánh giá và một người kiểm thử. Viết mô tả chặt chẽ để Claude tự động ủy quyền, chỉ cấp cho mỗi subagent các công cụ nó cần, và biến người kiểm thử thành một cổng xác minh thực sự bằng cách trỏ nó vào bộ kiểm thử API của bạn. Đối với bất cứ điều gì liên quan đến endpoint, Apidog cung cấp cho cổng đó một lược đồ để kiểm tra; tải xuống và để một subagent kiểm thử chứng minh mã của bạn hoạt động trước khi bạn đọc phần diff.

Thực hành thiết kế API trong Apidog

Khám phá cách dễ dàng hơn để xây dựng và sử dụng API