⚡ ระดับสูง · บทที่ 25 · อ่าน 11 นาที

สร้าง Agent และ Automation ด้วย Claude

Agent คืออะไร ต่างจากแชทยังไง

การใช้แชท (แม้แต่แชทเก่ง ๆ): เราคือคนคุมวงจร — ถาม → ได้คำตอบ → เอาไปทำ → กลับมาถามต่อ ทุกรอบมีเราอยู่ตรงกลาง

Agent กลับวงจรนั้น: เราให้เป้าหมายครั้งเดียว แล้ว AI เป็นคนวนลูปเอง — วางแผน → ใช้เครื่องมือ (อ่านไฟล์ รันคำสั่ง ค้นเว็บ) → เช็คผลลัพธ์ → เจอปัญหาก็แก้แล้วลองใหม่ → จนงานเสร็จค่อยกลับมารายงาน

จริง ๆ คุณใช้ agent มาแล้ว: Claude Code นั่นแหละคือ agent — ตอนที่มันหาบั๊ก แก้ไฟล์ รันเทสต์ แล้ววนแก้จนผ่านในบทที่ 20 นั่นคือ agent loop ทำงานให้เราดูสด ๆ

Claude Agent SDK: ยืมสมอง Claude Code ไปใส่โปรแกรมเรา

ถ้าอยากได้ agent ที่ทำงานเฉพาะทางของเราเอง — รันตามเวลา, ฝังในระบบบริษัท, ทำงานซ้ำได้แบบไม่ต้องมีคนพิมพ์สั่ง — ใช้ Claude Agent SDK: ไลบรารี Python และ TypeScript ที่ให้ agent loop + เครื่องมือทั้งชุดของ Claude Code มาแบบสำเร็จรูป

# JavaScript/TypeScript
npm install @anthropic-ai/claude-agent-sdk

# Python (ต้องใช้ Python 3.10 ขึ้นไป)
pip install claude-agent-sdk

การยืนยันตัวตนใช้ API key จากบทที่ 24 (ANTHROPIC_API_KEY)

Agent ตัวแรก: นักสรุปรายงานอัตโนมัติ

โจทย์: ทุกสัปดาห์มีไฟล์รายงานหลายไฟล์กองอยู่ในโฟลเดอร์ reports/ อยากได้บทสรุปรวมไฟล์เดียวโดยไม่ต้องเปิดอ่านเอง — โค้ดทั้งหมดมีเท่านี้:

JavaScript

import { query } from '@anthropic-ai/claude-agent-sdk';

for await (const message of query({
  prompt: 'อ่านไฟล์ทั้งหมดในโฟลเดอร์ reports แล้วสรุปเป็นรายงานเดียวใน summary.md',
  options: { allowedTools: ['Read', 'Glob', 'Write'] },
})) {
  if ('result' in message) console.log(message.result);
}

Python

import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions


async def main():
    async for message in query(
        prompt="อ่านไฟล์ทั้งหมดในโฟลเดอร์ reports แล้วสรุปเป็นรายงานเดียวใน summary.md",
        options=ClaudeAgentOptions(allowed_tools=["Read", "Glob", "Write"]),
    ):
        if hasattr(message, "result"):
            print(message.result)


asyncio.run(main())

สิ่งที่เกิดขึ้นเมื่อรัน: agent จะคิดเองทั้งหมด — ใช้ Glob หาไฟล์ในโฟลเดอร์, ใช้ Read อ่านทีละไฟล์, เรียบเรียง, ใช้ Write สร้าง summary.md แล้วรายงานผล (ตอนเราทดสอบโดยที่ยังไม่มีโฟลเดอร์ reports จริง มันถึงกับรายงานกลับมาว่า หาโฟลเดอร์ไม่เจอ เช็คที่ไหนมาแล้วบ้าง และแนะนำทางแก้ — นี่คือความต่างจากสคริปต์ธรรมดา ที่จะพังเงียบ ๆ)

บรรทัดสำคัญที่สุดคือ allowedToolsเราเลือกได้ว่า agent มีสิทธิ์ทำอะไร ตัวอย่างนี้ให้แค่ อ่าน/หาไฟล์/เขียน ไม่ได้ให้ Bash (รันคำสั่ง) เพราะงานนี้ไม่จำเป็น หลักการ: ให้สิทธิ์น้อยที่สุดที่งานต้องใช้เสมอ

งาน Automation ที่คุ้มค่าสร้าง

  • สรุปอัตโนมัติ — รายงานประจำสัปดาห์, สรุป log ความผิดพลาด, ย่อยอีเมล/feedback ลูกค้า
  • ตรวจงานอัตโนมัติ — รีวิวโค้ดทุกครั้งที่มีงานใหม่เข้า (ต่อกับ CI/CD ของทีม)
  • จัดการข้อมูล — แปลงไฟล์ปนเป (Excel/CSV/PDF) ให้อยู่ในรูปแบบเดียว, ตั้งชื่อไฟล์ใหม่ตามกติกา
  • เฝ้าระวัง — เช็คเว็บ/ระบบเป็นระยะ เจอความผิดปกติให้สรุปแจ้ง

จุดตัดสินว่า “ควรเป็น agent ไหม”: งานนั้นขั้นตอนตายตัวหรือเปล่า — ถ้าตายตัวเป๊ะ เขียนสคริปต์ธรรมดาถูกกว่าเร็วกว่า / ถ้าต้อง “อ่านแล้วตีความ ตัดสินใจ ปรับตามสถานการณ์” นั่นคืองานของ agent

ข้อควรระวังก่อนปล่อย Agent ทำงานจริง

  1. เริ่มจาก read-only — ให้สิทธิ์แค่ Read, Glob, Grep ก่อน ดูพฤติกรรมจนไว้ใจ ค่อยเพิ่มสิทธิ์เขียน/รันคำสั่ง
  2. คุมค่าใช้จ่าย — agent วนลูปเองได้ = เผา token เองได้ ตั้ง budget alert (บทที่ 24) และทดสอบกับงานเล็กก่อนเสมอ
  3. มีมนุษย์ตรวจปลายทาง — ช่วงแรกให้ agent “เสนอ” ผลงาน อย่าเพิ่งให้ “ส่ง” อัตโนมัติ เช่น สร้างไฟล์สรุปให้คนอ่านก่อน ไม่ใช่ยิงอีเมลหาลูกค้าเอง
  4. ระวังข้อมูลขาเข้า — agent ที่อ่านเนื้อหาจากภายนอก (เว็บ อีเมล) เจอ prompt injection ได้เหมือน MCP ในบทที่ 23 — จำกัดสิทธิ์ + ตรวจผลลัพธ์ คือเกราะสองชั้นของเรา
✏️ ออกแบบ agent ตัวแรกของคุณ (ใช้กับ Claude ก่อนเขียนโค้ดจริง)
ฉันอยากสร้าง agent อัตโนมัติสำหรับงานนี้: [อธิบายงานซ้ำ ๆ ที่กินเวลา] ช่วยวิเคราะห์: 1) งานนี้เหมาะเป็น agent หรือสคริปต์ธรรมดา เพราะอะไร 2) ถ้าเหมาะ ควรให้เครื่องมือ (tools) อะไรบ้าง โดยยึดหลักสิทธิ์น้อยที่สุด 3) จุดไหนควรมีมนุษย์ตรวจก่อน 4) ร่างโค้ด Agent SDK เวอร์ชันแรกให้ดู

จบเส้นทางการเรียนแล้ว 🎓

จากคนที่ไม่รู้จัก Claude เลยในบทที่ 1 ถึงตรงนี้คุณ: คุยเป็น เขียนพรอมต์ระดับสูงเป็น ใช้เครื่องมือครบทั้ง claude.ai มี workflow ของอาชีพตัวเอง ใช้ Claude Code ทำงานจริงในเครื่อง ต่อ MCP เรียก API และสร้าง agent ของตัวเองได้ — ที่เหลือคือการลงมือใช้กับงานจริงของคุณ

โลก AI เปลี่ยนเร็ว สิ่งที่จะไม่เปลี่ยน: หลักการสั่งงานให้ชัด ให้บริบทให้พอ ตรวจสอบผลลัพธ์เสมอ และรู้ขอบเขตของเครื่องมือ — สี่อย่างนี้คุณมีครบแล้ว