Claude Agent SDK คือชุดเครื่องมือพัฒนา (development kit) สำหรับสร้าง AI Agent ที่จัดทำโดย Anthropic ซึ่งเป็น framework สำหรับการพัฒนา Agent ที่ใช้ประโยชน์จาก Tool Use และการสนทนาแบบหลายรอบ (multi-turn conversation) ของ Claude ผ่านโค้ด Python และ TypeScript
การเรียก API ของ Claude โดยตรงเพื่อสร้าง Agent นั้นเป็นไปได้ แต่จะต้องมีการ implement รูปแบบซ้ำๆ ทุกครั้ง ไม่ว่าจะเป็น loop การส่งผลลัพธ์ของการเรียก tool กลับไปยัง model, การจัดการ error และการตั้งค่า guardrail Claude Agent SDK คือ framework อย่างเป็นทางการที่ abstract "agent loop" นี้ออกไป เพื่อให้นักพัฒนาสามารถมุ่งเน้นไปที่ business logic ได้ ## ปัญหาที่ SDK แก้ไข ในการพัฒนา Agent จำเป็นต้องรวมคำสั่งสำหรับ LLM (system prompt), การกำหนด external tool และการตัดสินผลการ execute ไว้ใน loop เดียวกัน หากนำไป implement อย่างตรงไปตรงมา กระบวนการต่างๆ เช่น การเพิ่ม return value ของ tool ลงใน message history, การเรียก model อีกครั้ง และการตัดสินเงื่อนไขการสิ้นสุด จะพองตัวขึ้นเป็นหลายร้อยบรรทัด SDK ย่อ loop นี้ไว้ใน class `Agent` นักพัฒนาเพียงแค่กำหนด tool เป็น function แล้วส่งให้ `Agent` เท่านั้น ส่วนการควบคุม loop, การจัดการ token และการสลับการ execute tool แบบ serial/parallel นั้น SDK จะเป็นผู้จัดการ ## โครงสร้างพื้นฐาน ศูนย์กลางของ SDK คือ object `Agent` โดย instantiate ด้วยการส่ง `name`, `instructions` (system prompt) และ `tools` (รายการ tool) จากนั้น execute ด้วย `Runner.run()` ```python from agents import Agent, Runner, function_tool @function_tool def get_weather(city: str) -> str: return f"{city}の天気は晴れです" agent = Agent( name="weather-bot", instructions="天気を聞かれたらツールで取得して回答してください。", tools=[get_weather], ) result = Runner.run_sync(agent, "東京の天気は?") ``` Input/output ของ tool จะถูกแปลงเป็น JSON Schema โดยอัตโนมัติจาก type annotation จึงไม่จำเป็นต้องเขียน schema ด้วยมือ เมื่อผู้เขียนได้ลองใช้ครั้งแรก มีความรู้สึกว่าการแปลงอัตโนมัตินี้เพียงอย่างเดียวช่วยลด boilerplate แบบเดิมลงได้มากกว่าครึ่ง ## Guardrail และ Handoff เพื่อรับมือกับกรณีที่ Agent ทำงานโดยไม่ตั้งใจ สามารถตั้งค่า guardrail สำหรับ input และ output ได้แบบ declarative ตัวอย่างเช่น ข้อจำกัดอย่าง "ปฏิเสธ input ที่มีข้อมูลส่วนบุคคล" หรือ "retry หากคำตอบไม่เป็นไปตาม format ที่กำหนด" สามารถฝังไว้เป็นส่วนหนึ่งของการกำหนด Agent ได้ นอกจากนี้ยังมีฟีเจอร์ "handoff" สำหรับการเชื่อมต่อ Agent หลายตัวเข้าด้วยกัน เป็นกลไกที่ Agent หนึ่งส่งต่อการควบคุมไปยัง Agent อื่นระหว่างการประมวลผล เช่น Agent รับเรื่องขั้นต้นของ customer support ที่เมื่อตรวจพบคำถามทางเทคนิคแล้วส่งต่อให้ Agent ผู้เชี่ยวชาญ ซึ่งสามารถสร้าง multi-agent configuration เช่นนี้ได้โดยไม่ต้องมี orchestration code อย่างชัดเจน ## การเชื่อมต่อกับ MCP SDK รองรับการเชื่อมต่อกับ MCP (Model Context Protocol) server แบบ native สามารถเพิ่ม tool ที่ MCP server เปิดเผยไว้ลงในรายการ tool ของ `Agent` ได้แบบ dynamic จึงสามารถนำฟังก์ชันภายนอก เช่น การดำเนินการกับ database หรือการเข้าถึง file system มาผนวกเข้ากับ agent loop ของ SDK ได้โดยตรง ซึ่งหมายความว่าสามารถ reproduce กลไกเดียวกับที่ Claude Code ใช้ในการดำเนินการกับ Supabase ผ่าน MCP server ใน Agent ของตัวเองได้ ## ความสัมพันธ์กับ Claude Code Claude Code คือ coding agent แบบ CLI ที่ Anthropic ให้บริการอย่างเป็นทางการ โดยมีการใช้ Claude Agent SDK ใน implementation ภายใน กล่าวคือ SDK มีตำแหน่งเป็น "building block สำหรับสร้าง Agent แบบเดียวกับ Claude Code ด้วยตัวเอง" การกำหนด Agent Skills และ flow การ execute tool ก็เป็นไปตาม architecture ของ SDK เช่นกัน อย่างไรก็ตาม SDK เองเป็น framework อเนกประสงค์ที่สามารถรองรับการใช้งานนอกเหนือจากการเขียนโค้ด ไม่ว่าจะเป็นการสนับสนุนการขาย, data analysis pipeline หรือ chatbot ภายในองค์กร ด้วย design pattern เดียวกัน



A2A (Agent-to-Agent Protocol) คือโปรโตคอลการสื่อสารที่ช่วยให้ AI Agent ต่างชนิดสามารถค้นหาความสามารถ มอบหมายงาน และซิงโครไนซ์สถานะระหว่างกันได้ โดย Google เปิดตัวในเดือนเมษายน ปี 2025

Agentic AI คือชื่อเรียกรวมของระบบ AI ที่สามารถตีความเป้าหมาย และวางแผน ดำเนินการ รวมถึงตรวจสอบผลลัพธ์ได้อย่างอิสระโดยไม่ต้องรับคำสั่งทีละขั้นตอนจากมนุษย์

ATDD (Acceptance Test-Driven Development) คือวิธีการพัฒนาซอฟต์แวร์ที่ทีมงานทั้งหมดร่วมกันกำหนดเกณฑ์การทดสอบการยอมรับ (Acceptance Test) ก่อนเริ่มการพัฒนา จากนั้นจึงทำการ Automate การทดสอบดังกล่าว แล้วจึงดำเนินการ Implement ต่อไป

Claude Code คือ AI Coding Agent ประเภท Terminal-based ที่พัฒนาโดย Anthropic ซึ่งเป็นเครื่องมือ CLI ที่สามารถทำความเข้าใจ Codebase แก้ไขโค้ด รันการทดสอบ และดำเนินการ Git ได้อย่างครบวงจรผ่านคำสั่งภาษาธรรมชาติ

DevSecOps คือแนวทางที่นำมาตรการด้านความปลอดภัยมาผนวกรวมไว้ตั้งแต่ต้นในกระบวนการ DevOps pipeline โดยบูรณาการสามด้านเข้าด้วยกัน ได้แก่ การพัฒนา (Development) ความปลอดภัย (Security) และการปฏิบัติการ (Operations)