Knowledge Hub

Multi-agent ใน Claude Code: เลือกวิธีให้ถูกงาน

Subagents, Workflows และ Agent Teams ต่างกันที่คำถามเดียว คือใครถือแผน ถ้า Claude ตัดสินทีละ turn ใช้ subagent ถ้าสคริปต์ถือแผนใช้ workflow ถ้า agent ต้องคุยและถกกันเองใช้ทีม และงานส่วนมากยังจบได้ใน session เดียว หน้านี้สรุปเกณฑ์เลือก หลักการที่ใช้ได้ทุกวิธี และกรณีที่พังจริง

AI และเทคโนโลยีอ่าน 10 นาทีเผยแพร่ 19 ตุลาคม 2569

ภาพประกอบสไตล์อนิเมะ: หนังสือสามเล่มซ้อนกันมีหมวกรับปริญญาวางบนสุด และหลอดไฟดวงเล็กข้างกอง สื่อถึงการเรียนรู้

แก่นของเรื่อง

แนวคิดหลัก: วิธี multi-agent ทั้งสามต่างกันที่ "ใครถือแผน" ไม่ใช่ที่จำนวน agent เลือกวิธีตามคำตอบข้อนี้ แล้วเพิ่ม agent เฉพาะเมื่อได้ของที่ session เดียวให้ไม่ได้

ทำไมถึงได้ผล (กลไก):

  • ถ้า LLM ตัดสินว่าจะวนต่อหรือหยุดทีละ turn โครงของงานจะเปลี่ยนทุกครั้งที่รัน ย้าย loop และเงื่อนไขหยุดเข้าโค้ด (workflow) ได้ลำดับงานที่คาดเดาและทำซ้ำได้
  • งานย่อยที่เริ่มจาก context สะอาด ไม่ถูกปนด้วยของเก่า ผลจึงนิ่งกว่า และ context หลักไม่บวม (subagent)
  • เมื่อโจทย์ต้องการมุมมองที่ขัดกัน การให้ agent คุยและท้าทายกันเองให้ผลที่ session เดียวสร้างไม่ได้ (ทีม)

20% ที่สำคัญที่สุด:

  1. ถามก่อนว่า session เดียวพอไหม ค่าเริ่มต้นคือใช่
  2. ตัวตรวจต้องเป็นกลไกที่รันจริง ไม่ใช่คำบอกเล่าของ agent
  3. ใส่ตัวกัน "ลดมาตรฐานเพื่อให้ผ่าน" ก่อนปล่อยงานยาว

ส่วนที่รอได้: pattern เฉพาะทางอย่าง migrate ใน worktree หรือร่างแผนหลายมุม

ช่วยให้ดีขึ้นอย่างไร

ตัวเลขในตารางเป็นตัวเลขที่รายงานไว้ ยังไม่ได้ตรวจซ้ำในหน้านี้ จึงติดป้าย ยังไม่ทดสอบ จนกว่าจะรันเอง

สถานการณ์ ไม่ใช้ ใช้ วัดอย่างไร หลักฐาน
ฟีเจอร์ที่แตะทุกชั้นของระบบ คนเดียวแก้ไฟล์ทั้งหมดต่อเนื่อง ทีม 3 คนแบ่งตามเจ้าของไฟล์ เทสต์ผ่าน 90/90 ไม่มีไฟล์ชน ยังไม่ทดสอบ
แผนหลายเฟส ไม่มีคนเฝ้า Claude ตัดสินต่อ/หยุดเองทุก turn workflow ที่มีลูปในโค้ด เทสต์ผ่าน 104/104 โดยไม่ถามคน ยังไม่ทดสอบ
เอกสาร API ที่ต้องรันตัวอย่างจริง agent เขียนแล้วรายงานว่าเสร็จ pipeline ที่รันทุกตัวอย่าง curl ผ่าน 86/86 ยังไม่ทดสอบ
PR review ทั่วไป แตก agent หลายตัว session เดียว ราคา 0.62 USD และจัดอันดับปัญหาหลักได้ดีที่สุดในสามแบบ ยังไม่ทดสอบ
หาบั๊กใน repo เดียวกัน (เกณฑ์เทียบ) session / subagent / workflow / ทีม ทั้งสี่แบบเจอบั๊กที่ฝังไว้ครบ 12 ข้อ ยังไม่ทดสอบ
ประโยชน์ของ subagent ทุกงานย่อยใช้ context หลัก แต่ละงานย่อยเริ่มจาก context สะอาด ขนาด context หลักหลังจบงาน ตีความ

แถวสุดท้ายของกลุ่มบั๊ก 12 ข้อบอกว่า "ความสามารถในการหาบั๊ก" อิ่มตัวแล้วในชุดทดสอบนั้น ความต่างอยู่ที่ของแถม ไม่ใช่จำนวนบั๊กที่เจอ

ลองใช้

ตัวอย่างประกอบ: ต้นทุนของการแตก agent ที่ไม่จำเป็น

ตัวเลขชุดนี้เป็นของเราเอง ใช้ดูทิศทาง ไม่ใช่ค่าวัด

  • diff ของ PR 400 บรรทัด ประมาณ 15 token ต่อบรรทัด = 6,000 token
  • session เดียวอ่านครั้งเดียว = 6,000 token
  • ส่ง subagent 3 ตัวไปอ่าน diff เดียวกัน = 18,000 token ส่วนต่าง 12,000 token (3 เท่า) ก่อนนับผลสรุปที่ส่งกลับ
  • คุ้มก็ต่อเมื่อ context หลักจะเกินขีดจำกัด หรือต้องการ noise ต่ำ หรือเจอบั๊กเพิ่ม มิฉะนั้นจ่ายเพิ่มโดยไม่ได้อะไร

เมื่อไหร่ใช้ เมื่อไหร่ไม่ใช้

วิธี ใช้เมื่อ ไม่ใช้เมื่อ ต้องมีก่อน
session เดียว งานเดียว context พอ context จะล้น หรือมีงานขนาน ไม่มี
subagent งานย่อยอ่านเยอะแต่ผลสรุปสั้น งานย่อยพึ่งผลของกันและกันแน่น prompt ที่ระบุผลลัพธ์ที่ต้องส่งกลับ
workflow ขั้นตอนรู้ล่วงหน้า ต้องวนซ้ำ ไม่มีคนเฝ้า ขั้นตอนต้องปรับตามที่เจอระหว่างทาง เงื่อนไขหยุดและตัวตรวจที่รันจริง
ทีม ต้องถกเถียง ต่อรอง contract ข้ามชั้น งานเล็ก หรือแบ่งไฟล์ไม่ได้ การแบ่งเจ้าของไฟล์ และ quality gate

ก้าวแรกที่เล็กที่สุด

เลือกงานที่เสร็จไปแล้ว 3 งาน เขียนลงตารางว่าแต่ละงาน "ใครควรถือแผน" ตามตารางข้างบน แล้วเทียบกับที่ทำจริง ไม่ต้องรัน agent เพิ่ม

ทดสอบว่าช่วยจริง

รายการ ค่า
งานทดสอบ งานที่มีบั๊กหรือข้อผิดพลาดที่รู้คำตอบอยู่แล้ว (ฝังเอง)
baseline session เดียว: จำนวนบั๊กที่เจอ, token ของ context หลัก, ค่าใช้จ่าย, เวลา
ทางเลือก วิธีที่เสนอ (subagent / workflow / ทีม) กับงานเดียวกัน
เงื่อนไขผ่าน (กำหนดก่อนรัน) บั๊กไม่น้อยกว่า baseline และ context ลด 30% หรือเจอบั๊กเพิ่ม 1 ข้อ
ถ้าไม่ผ่าน กลับไป session เดียวสำหรับงานประเภทนี้

ทดสอบความเข้าใจ

คำถาม คำตอบ คำตอบที่มักผิด
workflow รายงานเทสต์ผ่านครบ แต่ไฟล์ tsconfig ถูกแก้ ถือว่าเสร็จไหม ยัง ต้องดู diff ว่ามาตรฐานถูกลดเพื่อให้ผ่านหรือไม่ เสร็จ เพราะเทสต์ผ่าน
ขั้นตอนของงานต้องปรับตามสิ่งที่เจอระหว่างทาง ควรใช้ workflow ไหม ไม่เหมาะ เพราะสคริปต์ถือแผนตายตัว ใช้ session หรือ subagent ใช้ เพราะงานใหญ่
สี่วิธีเจอบั๊กครบ 12 ข้อเท่ากัน ควรเลือกวิธีที่ถูกที่สุดไหม ไม่ ผลอิ่มตัวแล้ว ให้เลือกตามของแถมที่ต้องการ เลือกถูกสุดเพราะผลเท่ากัน
agent บอกว่าตัวอย่าง curl ใช้ได้ ควรแก้ prompt ให้ "ระวังขึ้น" ไหม ไม่ เพิ่มขั้นสคริปต์รันทุกตัวอย่างและอ่านผลจริง ใช่ บอกให้ตรวจละเอียดขึ้น
สั่งให้ทีมใช้ worktree แล้วระบบรับคำสั่งโดยไม่ error แปลว่าได้ที่ต้องการไหม ไม่แน่ ต้องตรวจ branch และโหมดที่ได้จริงหลังสั่ง ได้ เพราะไม่มี error
ทีม 3 คนแก้ไฟล์เดียวกันได้ไหมถ้าคุยกันเก่ง ไม่ควร ต้องแบ่งเจ้าของไฟล์ก่อนเริ่ม ได้ เพราะคุยกันได้

สามวิธี ใครถือแผน

Subagents Workflows Agent Teams
ผู้ถือแผน Claude ตัดสินทีละ turn สคริปต์ lead ที่คุมทีม
การสื่อสาร ส่งกลับแค่บทสรุป ผ่านโค้ด (pipeline, parallel) agent คุยกันตรง มี task list
ความทำซ้ำได้ ปานกลาง สูง เรียกซ้ำเป็นคำสั่ง /ชื่อ ต่ำกว่า แลกกับมุมมองที่หลากหลาย
ขนาด หนึ่งถึงหลายตัวเบื้องหลัง หลักสิบถึงหลักร้อย ทีมเล็ก
ได้อะไร context หลักเล็ก ลำดับงานที่คาดเดาได้ การถก ต่อรอง ท้าทายสมมติฐาน
ตัวกัน prompt ชัด pattern คุณภาพ (ด้านล่าง) quality gate ด้วย hook

Subagent รันเบื้องหลัง แตกตัว (fork) และสั่งงานต่อได้ Workflow มี pattern ด้านคุณภาพให้ใช้: ตรวจหักล้าง, วนแก้จนเทสต์ผ่าน, migrate ใน worktree, ค้นจนรายการไม่โต, ร่างแผนหลายมุม

ผังตัดสินใจ

flowchart TD
    A[งานใหม่] --> B{session เดียวพอ?}
    B -->|ใช่| S[ใช้ session เดียว]
    B -->|ไม่| C{ขั้นตอนรู้ล่วงหน้า และต้องทำซ้ำ?}
    C -->|ใช่| W[workflow]
    C -->|ไม่| D{ต้องถกหรือต่อรองข้ามบทบาท?}
    D -->|ใช่| T[ทีม]
    D -->|ไม่| U[subagent]

หลักการที่ใช้ได้ทุกวิธี

หลักการ เหตุผล ทำอย่างไร
loop และเงื่อนไขหยุดอยู่ในโค้ด LLM ตัดสินทีละ turn ทำให้โครงงานไม่นิ่ง ใช้ workflow หรือ Bash loop ป้อน prompt ซ้ำ (แนว Ralph Wiggum)
context สะอาดต่องานย่อย ของเก่าปนเข้ามาทำให้ผลเพี้ยน ส่งงานย่อยให้ subagent พร้อมข้อมูลที่จำเป็นเท่านั้น
ตรวจด้วยการรันจริง รายงานของ agent เป็นแค่คำบอกเล่า สคริปต์รันทุกตัวอย่าง ทุกเทสต์ แล้วอ่านผล
กันการลดมาตรฐานเพื่อให้ผ่าน agent หาทางให้ตัวตรวจเขียวได้ทั้งแบบถูกและแบบโกง ตรวจ diff หา threshold ที่ลด, test ที่ skip, suppression ใหม่, stub
แบ่งงานด้วยเจ้าของไฟล์ สองคนแก้ไฟล์เดียวกันคือที่มาของความขัดแย้ง กำหนดว่าไฟล์ไหนเป็นของใครก่อนเริ่ม
ตรวจผลของตัวเลือกที่เปลี่ยนความหมายเงียบ ๆ ขอ worktree แล้วทีมอาจกลายเป็นโหมดอื่นโดยไม่แจ้ง ตรวจ branch และโหมดจริงหลังสั่ง
ออกแบบเรื่อง permission สำหรับงานไม่มีคนเฝ้า workflow ค้างรอคำอนุญาตที่ถูกหน้าจอบังเกือบ 10 นาที ตั้ง permission ล่วงหน้า หรือมีตัวเตือนเมื่อค้างเกินเวลา

เคสที่พังและบทเรียน

เคส อาการ ต้นเหตุ แก้อย่างไร
ทีมที่ขอ worktree กลายเป็นโหมดอื่นโดยไม่มีใครบอก ตัวเลือกเปลี่ยนความหมายเงียบ ๆ ตรวจโหมดจริงหลังสั่ง
workflow ที่รอ permission ค้างเกือบ 10 นาที คำขอถูกหน้าจอบัง ตั้ง permission ล่วงหน้า
workflow แก้ tsconfig ตัวตรวจผ่านแต่ปัญหาจริงอยู่ ลดมาตรฐานแทนแก้ปัญหา diff guard
documentation sprint รอบแรก ไม่ได้รันตัวอย่าง curl เลย ไม่มีขั้นรันจริง สคริปต์ 16 บรรทัดรันทุกตัวอย่าง รอบสองผ่าน 86/86
incident สัญญาณขัดกัน สมมติฐานหลายทาง ข้อมูลชี้คนละทาง ให้ agent แข่งพิสูจน์สมมติฐาน แล้วยืนยันด้วย benchmark จริง

ใน incident ที่ทั้ง workflow และทีมโต้วาทีหาสาเหตุเจอ การซักค้านทำให้คำอธิบายแม่นขึ้น ไม่ได้ทำให้เจอสาเหตุเพิ่ม

Risks

Warning ตัวเลขทั้งหมดในหน้านี้ (90/90, 104/104, 86/86, 0.62 USD, 12 ข้อ) เป็นผลรันครั้งเดียวต่อกรณี บน Claude Code รุ่น v2.1.296 และยังไม่ได้ตรวจซ้ำ อย่าใช้เป็นฐานตัดสินต้นทุนหรือความน่าเชื่อถือ

  • Agent Teams เปลี่ยนเร็วเพียงพอที่เนื้อหาอ้างอิงต้องเขียนใหม่ทั้งชุด (ตีความ: ยังไม่นิ่ง) อย่าสร้างงานจริงบน behavior ที่ยังไม่ผ่านการใช้งานซ้ำ
  • ผลที่ทุกวิธีเจอบั๊กครบ 12 ข้อบอกแค่ว่าชุดทดสอบนั้นอิ่มตัว ไม่ได้บอกว่าวิธีไหนดีกว่าบน repo จริง
  • การเพิ่ม agent เพิ่มค่าใช้จ่ายแน่นอน แต่ผลดีไม่แน่นอน ต้องมีเกณฑ์ผ่านที่ตั้งไว้ก่อนรัน

Decision / next steps

Recommendation ตั้งค่าเริ่มต้นเป็น session เดียว แล้วย้ายไปวิธีอื่นเมื่อมีเหตุผลชัดหนึ่งข้อ: context ล้น, ต้องรันซ้ำโดยไม่มีคนเฝ้า, หรือต้องการมุมมองที่ขัดกัน ก่อนปล่อยงานยาว ให้ใส่สองอย่างเสมอ คือตัวตรวจที่รันจริง และ diff guard

ขั้น ทำอะไร ผ่านเมื่อ
1 จัดหมวดงานที่ทำเสร็จแล้ว 3 งานตามตารางข้างบน ตอบได้ว่าแต่ละงาน "ใครถือแผน"
2 ฝังบั๊กที่รู้คำตอบใน repo ทดสอบ มีรายการบั๊กที่ใช้ตรวจครบ
3 รัน baseline แล้วรันทางเลือก เข้าเงื่อนไขในหัวข้อลองใช้

ตัวย่อที่ใช้ในหน้านี้

ตัวย่อ ชื่อเต็ม คืออะไร อ่านค่าอย่างไร
PR Pull Request ชุดการเปลี่ยนแปลงโค้ดที่ขอให้รีวิวก่อนรวม PR 400 บรรทัด = diff ยาว 400 บรรทัด
API Application Programming Interface ช่องทางที่โปรแกรมหนึ่งเรียกใช้อีกโปรแกรม เอกสาร API = คู่มือวิธีเรียก
LLM Large Language Model โมเดลภาษาที่ตัดสินทีละ turn ใน subagent LLM ตัดสิน = ผลไม่ตายตัวทุกรอบ
USD United States Dollar หน่วยเงินดอลลาร์สหรัฐ 0.62 USD = ประมาณ 62 เซนต์

ตัวย่อ PR, API, LLM, USD และชื่อ curl, tsconfig, hook เป็นความรู้ทั่วไป ไม่ได้นิยามไว้ในหัวข้อนี้ สัญลักษณ์ n ใน "n เท่ากับ 1" หมายถึงจำนวนตัวอย่างที่รัน

Summary

Recommendation เลือกวิธี multi-agent ตามคำตอบข้อเดียว: ใครถือแผน

  • Claude ตัดสินทีละ turn = subagent, สคริปต์ถือแผน = workflow, agent ถกกันเอง = ทีม, งานทั่วไป = session เดียว
  • ตัวตรวจต้องรันจริงและต้องมี diff guard กันการลดมาตรฐานเพื่อให้ผ่าน
  • แบ่งงานด้วยเจ้าของไฟล์ ตรวจโหมดจริงหลังเลือกตัวเลือกที่เปลี่ยนความหมาย ตั้ง permission ล่วงหน้า
  • ตัวเลขที่รายงานเป็นผลรันครั้งเดียว ยังไม่ทดสอบซ้ำ
  • วัดผลของตัวเองด้วยบั๊กที่ฝังไว้ และเกณฑ์ผ่านที่ตั้งก่อนรัน
Facebook

ความรู้ที่เกี่ยวข้อง