สร้าง Agent
สร้าง subagent, agent teams, และ orchestration pattern
ในระดับปริญญาโท-เอกผมเล่า subagent กับ agent team ผ่านๆ — บทนี้จะลงลึกที่คนถามเยอะที่สุด: ทำเมื่อไหร่ ห้ามทำเมื่อไหร่ และ pattern ไหนใช้บ่อยที่สุดในธุรกิจจริง
ผมจะใช้ตัวอย่างจริงจากบริษัทรับเหมาผม เพราะหลาย pattern ผมเรียนรู้แบบ "ทำผิดมาก่อน"
ก่อนสร้าง agent — เช็ค 3 ข้อ
ผมเคยสร้าง agent 8 ตัวในสัปดาห์เดียว แล้วใช้จริงแค่ 2 ตัว ตั้งแต่นั้นผมตอบ 3 คำถามนี้ก่อนทุกครั้ง
1. งานนี้ทำซ้ำกี่ครั้งต่อสัปดาห์?
น้อยกว่า 3 ครั้ง — ใช้ slash command พอ 3-10 ครั้ง — slash command + system prompt ที่ดี มากกว่า 10 ครั้ง — เริ่มคุ้มทำ subagent เพราะมี context ของตัวเอง
2. งานนี้มี role ที่ "คงเส้นคงวา" ไหม?
เช่น "ตรวจ proposal ก่อนส่งลูกค้า" — role นี้คงที่ คาดหวังเหมือนกันทุกครั้ง → คุ้มเป็น agent
ถ้างานคือ "ช่วยคิดไอเดียทั่วไป" — ไม่มี role ชัดเจน อย่าทำ
3. มี output rules ที่ตายตัวไหม?
agent ทำงานดีเมื่อมี output format ที่กำหนดได้ เช่น "สรุปเป็น checklist 5 ข้อ" หรือ "ตอบเป็น JSON ตาม schema นี้"
ถ้า output ขึ้นกับ context — ไม่ต้องทำ agent ใช้ chat ปกติ
3 Pattern ที่ใช้บ่อยจริง
Pattern 1 — Specialist (ตัวเดียวทำงานเฉพาะ)
ตัวอย่าง — proposal-reviewer ของผม
---
name: proposal-reviewer
description: ตรวจ proposal ก่อนส่งลูกค้า — เช็ค scope ครบ ไม่ขัด, ราคาสมเหตุผล, terms ปลอดภัย
tools: Read, Grep
---
คุณคือผู้ตรวจ proposal ของบริษัทรับเหมาก่อสร้าง [ชื่อบริษัท]
ตรวจตาม checklist นี้:
1. Scope ตรง brief ลูกค้าไหม
2. Timeline สมเหตุผลกับ scope ไหม
3. ราคามี breakdown ครบไหม (วัสดุ + แรง + management fee)
4. Payment terms ตรงนโยบาย (40-30-20-10)
5. มี exclusion ที่ควรระบุไหม (ค่าใช้จ่ายเพิ่มเติม)
Output ใน 3 ส่วน:
- ✅ จุดที่ดี
- ⚠️ จุดที่ต้องแก้ก่อนส่ง (severity: high/medium/low)
- 💡 จุดที่ "อาจเพิ่ม" (optional)
ห้ามแก้ไฟล์เอง — แค่ review
ใช้: @proposal-reviewer ดู proposal ในไฟล์ proposals/2026-04-baan-noppadol.md
ผลผมได้: catch typos + scope holes ก่อนส่ง ลด revision rounds ลงครึ่ง
Pattern 2 — Dispatcher (ตัวกลางส่งงานต่อ)
ใช้เมื่อมี agent หลายตัวและอยากให้ Claude เลือก agent ที่ถูกแทนคุณ
---
name: business-router
description: ตัวกลางตัดสินใจว่าใครควรรับงานนี้
---
ฟังคำขอจากผู้ใช้ แล้วเลือก:
- เกี่ยวกับ proposal/quote → ส่งต่อ proposal-reviewer
- เกี่ยวกับ data/sheet → ส่งต่อ analytics-agent
- เกี่ยวกับ caption/social → ส่งต่อ copywriter
- ไม่แน่ใจ → ถามผู้ใช้
อย่าทำงานเอง — แค่ route
Pattern นี้ดีเมื่อมี agent 5+ ตัว เพราะคนใช้ไม่ต้องจำชื่อ agent
Pattern 3 — Parallel (หลายตัวทำพร้อมกัน)
ใช้เมื่อต้องการ "หลายมุม" บนเรื่องเดียว
ตัวอย่างจริง — ก่อนเซ็นสัญญาโครงการใหญ่ผมส่ง draft ให้ 3 agent
รัน agent 3 ตัวพร้อมกัน บน draft sanya-baan-2026.md:
- legal-reviewer ดูข้อกฎหมาย/ความเสี่ยง
- finance-reviewer ดูเงื่อนไขการเงิน/ความเสี่ยงเงินสด
- ops-reviewer ดู timeline กับ resource
สรุปผล 3 มุมในตารางเดียว
ได้ feedback 3 มุมใน 1 รอบ แทนที่จะรัน 3 ครั้งซ้อน — เร็วกว่าและไม่ลำเอียงตาม context สะสม
Anti-pattern ที่ผมเคยทำผิด
ผิด 1 — Agent ใหญ่เกินไป
ครั้งแรกผมทำ business-assistant ที่ "ทำได้ทุกอย่าง" — สุดท้าย Claude สับสนว่าตัวเองคือใคร ทำงานทั่วไปยังกลายเป็นการพยายามกู้ชาติ
แก้: agent 1 ตัว = 1 หน้าที่ ตั้งชื่อเป็น role เฉพาะเสมอ (proposal-reviewer ไม่ใช่ general-helper)
ผิด 2 — Tools ให้เยอะเกิน
tools: * หรือไม่ระบุ — agent มีอำนาจเขียนไฟล์/รัน bash ทั้งที่งานคือแค่ "อ่านและสรุป"
แก้: ระบุ tools ชัดเจน เช่น Read, Grep สำหรับ reviewer / Read, Edit สำหรับ editor / ไม่ต้องให้ Bash ถ้าไม่ต้อง
ผิด 3 — System prompt สั้นเกิน
คุณเป็น code reviewer ตรวจโค้ดให้หน่อย — ผลลัพธ์มาคนละสไตล์ทุกครั้ง
แก้: ใส่ checklist เป็นข้อๆ + output format ที่ชัด + ตัวอย่าง 1-2 อันถ้าจำเป็น
ตัวเลือก Model ใน agent
ผมตั้ง model ตามลักษณะงาน
---
name: ...
model: haiku # งานง่าย ทำเร็ว ค่าถูก
# model: sonnet # default — งานทั่วไป
# model: opus # งานยาก คิดเยอะ
---
Haiku — สรุปสั้นๆ, classify, format converter, daily standup digest Sonnet — งานเขียน, code, review ทั่วไป (default ที่ดีที่สุด) Opus — strategy, complex analysis, sensitive content review
ผมประหยัดค่า API ครึ่งหนึ่งหลังย้าย agent งานง่ายไป Haiku
ลองเลย: ออกแบบ agent ตัวแรก
กรอกให้ตรงกับคุณ
(ไม่บังคับ — ว่างไว้ก็คัดลอกได้)ผมเป็นเจ้าของ [ใส่ธุรกิจ] อยากสร้าง subagent สำหรับงาน [ใส่งานที่ทำซ้ำบ่อย — เช่น 'ตรวจ proposal ก่อนส่งลูกค้า' หรือ 'ตอบ inquiry ใน LINE OA']
ช่วยร่าง agent ให้ครบทั้งโครง:
1. ชื่อ agent (kebab-case)
2. description 1 บรรทัด
3. tools ที่ควรให้ (อย่าให้เกินจำเป็น)
4. system prompt — ใส่ role, checklist, output format
5. ตัวอย่างวิธีเรียกใช้ 1 อัน
ถามผมเพิ่มถ้าต้องรู้รายละเอียดธุรกิจเคล็ดลับ
- • ก็อปผลลัพธ์ไปไว้ที่ .claude/agents/[ชื่อ].md
- • ตั้ง model: haiku ถ้างานง่าย ประหยัดเงิน
ลองทำดู: สร้าง agent ตัวแรกที่ใช้จริง
บทถัดไป
agent ทำงานดีเมื่อ prompt ดี — บทความเสริม "ออกแบบ Prompt" จะลงลึกเรื่องการเขียน system prompt ที่ทำให้ agent คงเส้นคงวา
บทนี้มีประโยชน์กับคุณมั้ยครับ?
ผมอ่าน feedback เองทุกอันแล้วเอาไปปรับเนื้อหา