1 คะแนน โดย GN⁺ 2025-05-20 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Claude Agent SDK ช่วยให้ควบคุมการรันเครื่องมือ, agent loop และการจัดการ context ของ Claude Code ได้จากโค้ด Python·TypeScript ทำให้ทำงานอัตโนมัติได้ เช่น อ่านไฟล์ รันคำสั่ง ค้นเว็บ และแก้ไขโค้ด
  • มีเครื่องมือพื้นฐานอย่าง Read, Write, Edit, Bash, Monitor, Glob, Grep, WebSearch, WebFetch, AskUserQuestion จึงจัดการได้ตั้งแต่การสำรวจ codebase ไปจนถึงคำถามยืนยันจากผู้ใช้ โดยไม่ต้องมีชั้นรันแยกต่างหาก
  • เมื่อนำ hooks, subagents, MCP, permissions และ sessions มาประกอบกัน สามารถสร้างคอนฟิกได้ เช่น audit log สำหรับการเปลี่ยนไฟล์, subagent เฉพาะสำหรับ code review, browser automation บน Playwright และ read-only analysis agent
  • ติดตั้งด้วย @anthropic-ai/claude-agent-sdk หรือ claude-agent-sdk โดย Python ต้องใช้ 3.10 ขึ้นไป และ TypeScript SDK รวมไบนารี Claude Code แบบ native สำหรับแพลตฟอร์มไว้เป็น optional dependency
  • Agent SDK ต่างจาก Anthropic Client SDK ที่ต้อง implement tool loop เอง เพราะมี การรันเครื่องมือในตัว และต่างจาก Managed Agents ตรงที่รันในโปรเซสและโครงสร้างพื้นฐานของผู้ใช้ ไม่ใช่บนโครงสร้างพื้นฐานของ Anthropic

ขอบเขตที่ Claude Agent SDK รับผิดชอบ

  • Claude Agent SDK ทำให้เครื่องมือ, agent loop และการจัดการ context ที่ขับเคลื่อน Claude Code ใช้งานได้จาก Python และ TypeScript
  • Agent สามารถอ่านไฟล์ รันคำสั่ง ค้นเว็บ และแก้ไขโค้ดได้
  • มีการรันเครื่องมือในตัว ทำให้ agent เริ่มทำงานได้โดยผู้ใช้ไม่ต้องสร้างชั้นรันเครื่องมือแยกเอง
  • ตัวอย่างพื้นฐานอนุญาตให้ใช้เครื่องมือ Read, Edit, Bash สำหรับงานค้นหาและแก้บั๊กใน auth.py

การติดตั้งและ flow การยืนยันตัวตน

  • ติดตั้งเป็นแพ็กเกจตามภาษา
    • TypeScript: npm install @anthropic-ai/claude-agent-sdk
    • Python: pip install claude-agent-sdk
  • แพ็กเกจ Python ต้องใช้ Python 3.10 ขึ้นไป
    • หากเกิดข้อผิดพลาด No matching distribution found for claude-agent-sdk อาจเป็นเพราะ interpreter เป็นเวอร์ชันเก่ากว่า 3.10
    • บน macOS หรือ Linux ตรวจสอบด้วย python3 --version ส่วนบน Windows ใช้ py --version
  • TypeScript SDK รวม ไบนารี Claude Code แบบ native สำหรับแพลตฟอร์มไว้เป็น optional dependency จึงไม่จำเป็นต้องติดตั้ง Claude Code แยกต่างหาก
  • ออก API key ได้จาก Console แล้วตั้งเป็น environment variable ANTHROPIC_API_KEY
  • รองรับการยืนยันตัวตนกับผู้ให้บริการ API ภายนอกด้วย
    • Amazon Bedrock: ตั้งค่า CLAUDE_CODE_USE_BEDROCK=1 แล้วกำหนด AWS credentials
    • Claude Platform on AWS: ตั้งค่า CLAUDE_CODE_USE_ANTHROPIC_AWS=1, ANTHROPIC_AWS_WORKSPACE_ID แล้วกำหนด AWS credentials
    • Google Vertex AI: ตั้งค่า CLAUDE_CODE_USE_VERTEX=1 แล้วกำหนด Google Cloud credentials
    • Microsoft Azure: ตั้งค่า CLAUDE_CODE_USE_FOUNDRY=1 แล้วกำหนด Azure credentials
  • Anthropic ไม่อนุญาตให้นักพัฒนาภายนอกนำการล็อกอิน claude.ai หรือ rate limit ไปใช้ในผลิตภัณฑ์ที่ใช้ Claude Agent SDK โดยไม่ได้รับอนุมัติล่วงหน้า

เครื่องมือพื้นฐานและความสามารถของ agent

  • SDK ทำให้จัดการฟีเจอร์หลักของ Claude Code จากโค้ดได้
    • เครื่องมือในตัว
    • hooks
    • subagents
    • MCP
    • permissions
    • sessions
  • เครื่องมือในตัว หลักทำหน้าที่ดังนี้
    • Read: อ่านไฟล์ภายในไดเรกทอรีทำงาน
    • Write: สร้างไฟล์ใหม่
    • Edit: ปรับแก้ไฟล์ที่มีอยู่แบบแม่นยำ
    • Bash: รันคำสั่งเทอร์มินัล สคริปต์ และงาน git
    • Monitor: เฝ้าดูสคริปต์เบื้องหลังและตอบสนองต่อแต่ละบรรทัด output เป็น event
    • Glob: หาไฟล์ด้วย pattern เช่น **/*.ts, src/**/*.py
    • Grep: ค้นหาเนื้อหาไฟล์ด้วย regular expression
    • WebSearch: ค้นหาข้อมูลล่าสุดบนเว็บ
    • WebFetch: ดึงและ parse เนื้อหาหน้าเว็บ
    • AskUserQuestion: ถามคำถามยืนยันกับผู้ใช้ด้วยตัวเลือกแบบ multiple choice
  • ตัวอย่าง agent อนุญาตให้ใช้ Read, Glob, Grep เพื่อค้นหาและสรุป คอมเมนต์ TODO ใน codebase

hooks, subagents, MCP

  • hook คือการรันโค้ดของผู้ใช้ ณ จุดสำคัญใน lifecycle ของ agent
    • ใช้ callback function เพื่อตรวจสอบ บันทึก บล็อก หรือแปลงพฤติกรรมของ agent ได้
    • hook ที่ใช้ได้มี PreToolUse, PostToolUse, Stop, SessionStart, SessionEnd, UserPromptSubmit เป็นต้น
    • ตัวอย่างตรวจจับงาน Edit|Write ใน PostToolUse แล้วบันทึกการเปลี่ยนไฟล์ลงใน audit.log
  • subagent คือ agent เฉพาะทางสำหรับจัดการงานย่อยที่โฟกัสชัดเจน
    • agent หลักมอบหมายงาน และ subagent ส่งผลลัพธ์กลับมา
    • custom agent นิยามด้วยคำอธิบาย prompt และเครื่องมือที่จะใช้
    • การเรียก subagent ทำผ่านเครื่องมือ Agent ดังนั้นหากต้องการอนุมัติอัตโนมัติ ต้องใส่ Agent ไว้ใน allowedTools
    • ข้อความใน context ของ subagent มีฟิลด์ parent_tool_use_id เพื่อให้ติดตามได้ว่าเป็นของการรัน subagent ใด
  • ใช้ Model Context Protocol(MCP) เพื่อเชื่อมต่อกับระบบภายนอก เช่น ฐานข้อมูล เบราว์เซอร์ และ API

การจัดการ permissions และ sessions

  • การตั้งค่า permissions จำกัดเครื่องมือที่ agent ใช้ได้
    • อนุญาตงานที่ปลอดภัย บล็อกงานที่เสี่ยง และกำหนดให้ขออนุมัติสำหรับการกระทำที่อ่อนไหวได้
    • ตัวอย่างคือกำหนด read-only agent ที่วิเคราะห์โค้ดแต่ไม่แก้ไข โดยอนุมัติล่วงหน้าเฉพาะ Read, Glob, Grep
  • เครื่องมือ AskUserQuestion และ prompt อนุมัติแบบโต้ตอบถูกใช้ร่วมกันใน flow การจัดการ input จากผู้ใช้
  • session รักษา context ต่อเนื่องตลอดหลายรอบการโต้ตอบ
    • Claude จดจำไฟล์ที่อ่าน การวิเคราะห์ที่ทำ และประวัติการสนทนา
    • ภายหลังสามารถ resume session เดิม หรือ fork เพื่อสำรวจแนวทางอื่นได้
    • ตัวอย่างคือรับ session_id จาก query แรก แล้วใช้ resume=session_id ใน query ที่สองเพื่อสานต่อ context เดิม

การรองรับการตั้งค่า Claude Code

  • SDK รองรับการตั้งค่าแบบอิงไฟล์ซิสเต็มของ Claude Code
  • ใน option พื้นฐาน จะโหลดการตั้งค่าจาก .claude/ ในไดเรกทอรีทำงานและจาก ~/.claude/
  • หากต้องการจำกัดแหล่งตั้งค่าที่จะโหลด ให้ใช้ option setting_sources ใน Python และ settingSources ใน TypeScript
  • ฟีเจอร์และตำแหน่งที่รองรับมีดังนี้
    • Skills: ความสามารถเฉพาะทางที่ Claude ใช้อัตโนมัติหรือเรียกด้วย /name, .claude/skills/*/SKILL.md
    • Commands: คำสั่ง custom รูปแบบ legacy, .claude/commands/*.md
    • Memory: context และคำสั่งของโปรเจกต์, CLAUDE.md หรือ .claude/CLAUDE.md
    • Plugins: ขยาย skills, agents, hooks, MCP servers โดยคอนฟิกแบบโปรแกรมผ่าน option plugins

ความแตกต่างจากเครื่องมือ Claude อื่นๆ

  • Anthropic Client SDK ให้การเข้าถึง API โดยตรง ผู้ใช้ส่ง prompt และ implement การรันเครื่องมือเอง
  • ใน Agent SDK Claude จัดการเครื่องมืออย่างอัตโนมัติ
    • ใน Client SDK ผู้ใช้ implement tool loop เอง
    • Agent SDK ให้การรันเครื่องมือในตัวกับ Claude
  • เกณฑ์เลือกใช้ตามงานมีดังนี้
    • การพัฒนาแบบโต้ตอบ: CLI
    • CI/CD pipeline: SDK
    • แอปพลิเคชัน custom: SDK
    • งานครั้งเดียว: CLI
    • production automation: SDK
  • หลายทีมใช้ CLI สำหรับงานพัฒนาประจำวัน และใช้ SDK ใน production โดย workflow สามารถย้ายไปมาระหว่างกันได้โดยตรง
  • Managed Agents คือ hosted REST API ที่ Anthropic รัน agent และ sandbox ให้
  • Agent SDK เป็นไลบรารีที่รัน agent loop ภายในโปรเซสของผู้ใช้
    • ตำแหน่งการรัน: Agent SDK รันในโปรเซสและโครงสร้างพื้นฐานของผู้ใช้ ส่วน Managed Agents รันบนโครงสร้างพื้นฐานที่ Anthropic จัดการ
    • interface: Agent SDK เป็นไลบรารี Python หรือ TypeScript ส่วน Managed Agents เป็น REST API
    • เป้าหมายของงาน: Agent SDK ทำงานกับไฟล์ในโครงสร้างพื้นฐานของผู้ใช้ ส่วน Managed Agents ทำงานกับ sandbox ที่จัดการแบบราย session
    • สถานะ session: Agent SDK ใช้ JSONL บนไฟล์ซิสเต็ม ส่วน Managed Agents ใช้ event log ที่ Anthropic host
    • เครื่องมือ custom: Agent SDK ใช้ฟังก์ชัน Python หรือ TypeScript ในโปรเซส ส่วน Managed Agents ให้ Claude trigger เครื่องมือและผู้ใช้ส่งผลลัพธ์การรันกลับไป
    • เหมาะกับ: Agent SDK เหมาะกับ local prototyping และ agent ที่เข้าถึงไฟล์ซิสเต็ม·บริการโดยตรง ส่วน Managed Agents เหมาะกับ production agent ที่ไม่ต้องการดูแล sandbox หรือ session infrastructure เอง รวมถึง session ระยะยาว·แบบ async
  • แนวทางทั่วไปคือสร้าง prototype ในเครื่องด้วย Agent SDK แล้วค่อยย้ายไป Managed Agents ใน production

change log, การรายงานบั๊ก และ branding

  • ตรวจสอบ SDK updates, bug fixes และฟีเจอร์ใหม่ได้จาก change log ของแต่ละ repository
  • รายงานบั๊กหรือ issue ได้บน GitHub
  • เมื่อ partner ผสานรวม Claude Agent SDK การใช้ Claude branding เป็นทางเลือก
    • อนุญาต: “Claude Agent”, “Claude”, “Powered by Claude”
    • ห้าม: “Claude Code”, “Claude Code Agent”, ASCII art แบรนด์ Claude Code หรือองค์ประกอบภาพที่เลียนแบบ Claude Code
    • ผลิตภัณฑ์ต้องคง branding ของตนเอง และต้องไม่ดูเหมือน Claude Code หรือผลิตภัณฑ์ของ Anthropic
  • การใช้ Claude Agent SDK อยู่ภายใต้ Anthropic’s Commercial Terms of Service
    • ยกเว้นกรณีที่ component หรือ dependency บางรายการระบุ license อื่นไว้ในไฟล์ LICENSE ของ component นั้น

1 ความคิดเห็น

 
GN⁺ 2025-05-20
ความคิดเห็นจาก Hacker News
  • ทิศทางที่ Claude Code มุ่งไปนั้นตรงกับสิ่งที่ผมต้องการจาก เครื่องมือเขียนโค้ดแบบเอเจนต์ พอดี และก็ชอบปรัชญาแบบ “เครื่องมือ Unix” ด้วย
    ผมใช้มาตั้งแต่ช่วงพรีวิวสาธารณะระยะแรก ๆ และเห็นทิศทางชัดเจน ผมมองว่าสภาวะปลายทางในอุดมคติของเอเจนต์เขียนโค้ดคือ เมื่อให้คำขอฟีเจอร์อย่างทิกเก็ต Jira มันจะตรวจสอบและสร้าง PR ให้เราฟีดแบ็กได้ ในแง่นั้น เครื่องมือที่เน้นเอดิเตอร์บนเครื่องอย่าง Cursor, Windsurf แทบจะเป็นทางตัน เพราะทำงานภายใน CI ไม่ได้ ถ้าจะจัดระเบียบโค้ดเบสให้เหมาะกับ AI ด้วยกฎ, MCP ฯลฯ ก็ควรมุ่งไปที่เทคโนโลยีที่ต่อยอดไปสู่การใช้งานแบบ headless ได้ Claude Code ใช้ผ่านเครื่องมือต่าง ๆ เป็นส่วนหนึ่งของระบบอัตโนมัติได้ง่าย จึงกลายเป็นค่าเริ่มต้นเวลาผมนึกถึงเอเจนต์เขียนโค้ดไปแล้ว และแพ็กเกจ npm ของ Codex ก็คล้ายกัน อย่างไรก็ดี ผมทำงานช่วยบริษัทต่าง ๆ จัดระเบียบโค้ดเบสให้เหมาะกับการใช้เอเจนต์ จึงอาจมีอคติไปทางเครื่องมือที่ตั้งค่าได้ง่าย

    • ผมเห็นด้วยยากกับ “สภาวะปลายทางในอุดมคติ” นั้น ภาพที่ผมต้องการคืออยู่ในห้องที่ล้อมรอบด้วยหลายหน้าจอ มี เอเจนต์ AI กำลังเขียนโค้ด ออกแบบ และทดสอบ ส่วนผมนั่งอยู่ตรงกลางคอยกำหนดทิศทางและใส่รสนิยมของตัวเอง
      ทุกอย่างเกิดขึ้นผ่านการสนทนา และคาดหวังรูปแบบที่ 99% ไม่ต้องแตะแป้นพิมพ์
    • ผมว่าไม่ใช่ “สภาวะปลายทางในอุดมคติ” ของเอเจนต์เขียนโค้ดควรเป็น เอเจนต์เขียนโค้ดแบบเสรีและโอเพนซอร์ส ที่รันบนคอมพิวเตอร์ของผมหรือเครื่องที่ผมต้องการ
      ลองนึกภาพว่าต้องจ่ายเงินทุกครั้งที่รันคำสั่งอย่าง ls, ps, kill ในเทอร์มินัลสิ มันไม่สมเหตุสมผลเลย LLM ก็เช่นกัน ผมไม่ได้หมายความว่าควรแบน LLM แบบปิด แต่เครื่องมือหลักที่เหล่าแฮกเกอร์ยุคก่อนควรใช้ควรเป็นเครื่องมือที่เสรีและโอเพนซอร์ส
    • วันนี้ Anthropic ก็ประกาศฟีเจอร์แนวคล้ายกันในเบต้า: https://docs.anthropic.com/en/docs/claude-code/github-action...
    • ผมเคยลองทำงานแบบนี้ด้วย Cursor และ MCP แล้ว ผ่านไปประมาณหนึ่งวันก็ชน ขีดจำกัดการใช้งาน แล้วถูกลดไปใช้โมเดลที่ช้าที่สุดและโง่ที่สุด
      ลองกับ Claude ด้วย แต่ก็ใช้โควตาหมดอย่างรวดเร็วเหมือนกัน มีแค่ราว 25% ของ PR เท่านั้นที่อยู่ในระดับ “ปล่อยผ่านได้” ทันที และหลายครั้งการทำเองให้ถูกต้องตั้งแต่แรกก็เร็วกว่าการไปไล่หาว่า AI พังตรงไหน
    • ผมเข้าใจที่บอกว่าสถานะที่ให้คำขอฟีเจอร์แล้วสร้าง PR ให้ตรวจสอบได้ แต่แบบนั้นก็เท่ากับว่าสิ่งที่เหลืออยู่คือ ทิกเก็ต Jira ซึ่งเป็นส่วนที่กัดกินจิตวิญญาณที่สุดของงานซอฟต์แวร์ ฟังแล้วหดหู่
  • Claude Code เป็นวิธีใช้ LLM กับการเขียนโค้ดที่ผมชอบที่สุด
    แต่สิ่งที่จำเป็นจริง ๆ คือ เวอร์ชันโอเพนซอร์ส ที่ส่งโมเดลอะไรก็ได้เข้าไปใช้ และเปรียบเทียบคำตอบจากหลายโมเดลได้ Aider หรือทางเลือกอื่น ๆ ยังไม่รู้สึกว่าใช้งานดีเท่า Claude Code จากมุมของ Anthropic ก็คงไม่อยากทำเพราะคูเมืองจะหายไป แต่จากมุมผู้บริโภค เราแค่อยากใช้โมเดลที่ดีที่สุดโดยไม่ถูกผูกกับอีโคซิสเต็มใดอีโคซิสเต็มหนึ่ง บางทีนี่อาจเป็นจุดที่ผู้ให้บริการโมเดล LLM กลัวที่สุด

    • OpenAI Codex น่าจะเป็นทางเลือกที่ใกล้เคียงที่สุด เป็นโอเพนซอร์สและใช้โมเดลจากผู้ให้บริการใดก็ได้
      ตอนนี้ยังไม่ดีเท่า Claude Code แต่ดูเหมือนจะตามทันในไม่ช้า https://github.com/openai/codex/tree/main
    • โปรเจกต์ OpenCode อาจตรงกับสิ่งที่คุณสนใจ: https://github.com/opencode-ai/opencode
      ยังอยู่ระหว่างพัฒนา แต่ดูมีอนาคต
    • อยากรู้ว่า Claude Code ทำอะไรได้ดีกว่า Aider
    • ช่วงหลังผมโปรโมตตัวเองมากไปหน่อยก็จริง แต่ถ้าดูคอมเมนต์ก่อน ๆ จะเห็นว่าผมมีบริการที่สร้างด้วย Go อยู่ มันตั้งใจทำมาเพื่อโจทย์แบบนี้พอดี
    • เห็นด้วย แต่โมเดลอื่น ๆ ก็ต้องถูกฝึกให้รู้ วิธีทำงานกับ MCP server ด้วยไม่ใช่หรือ? หรือมันไม่เป็นปัญหา?
  • Aider รองรับ Python และเชลล์สคริปต์ มานานแล้ว [0]
    ระหว่างเพิ่มการรองรับภาษาโปรแกรมใหม่ 130 ภาษาเมื่อเร็ว ๆ นี้ ผมยังทำสกรีนแคสต์การใช้ Aider เขียน Bash script แบบเฉพาะหน้าไว้ด้วย [1] น่าจะช่วยให้เห็นว่าแนวทางนี้ทรงพลังได้แค่ไหน
    [0] https://aider.chat/docs/scripting.html
    [1] https://aider.chat/docs/recordings/tree-sitter-language-pack...

    • ผมชอบ Aider มาก MCP ก็กำลังจะรองรับเร็ว ๆ นี้ และผมกำลังทดสอบบรานช์พัฒนาอยู่
      พอถึงตอนนั้นก็จะสามารถใช้โมเดลที่ไว้ใจได้เพื่อ พัฒนาตั้งแต่ต้นจนจบ ผ่าน PR, ทิกเก็ต ฯลฯ
    • ผมสงสัยว่าจะทำให้ Aider ใกล้เคียงกับ Claude Code ได้แค่ไหน ประสบการณ์ผู้ใช้ของ Claude Code ดี แต่ผมชอบใช้ Gemini 2.5 Pro มากกว่าเลยไม่ได้ใช้
      ผมไม่ได้ต้องการให้มัน commit ให้เท่าไร แค่ชอบความรู้สึกในการใช้งานของ Claude Code เป็นหลัก
    • Aider จะดีขึ้นได้มากถ้ามี เวิร์กโฟลว์ GitHub Actions ที่ขัดเกลามาอย่างดี
      แค่เพิ่มไฟล์เดียวในรีโพ แล้วคุยกับโมเดลใดก็ได้ผ่าน issue ได้ แบบนั้นก็พอ
  • สิ่งที่ทีม Claude Code พูดถึงอย่างละเอียดมากขึ้น: http://latent.space/p/claude-code
    แค่อ่านสคริปต์ผ่าน ๆ ก็ได้ แต่ส่วนตัวแล้วสิ่งที่น่าประทับใจคือ แม้พนักงาน Anthropic จะใช้ Claude ได้ไม่จำกัด แต่โดยเฉลี่ยใช้ประมาณวันละ 6 ดอลลาร์, มอง Claude Code แบบ headless เหมือนยูทิลิตี้ “Linux” ที่ใช้ได้ทุกที่ใน CI, มองว่าเป็นแพลตฟอร์มที่ผู้ใช้ขยายได้, ฟีเจอร์ sandboxing·branching·planning อยู่ในโรดแมปอนาคต และมอง Sonnet 3.7 เป็นโมเดลเอเจนต์แบบทำงานต่อเนื่อง

    • ในลิงก์บอกว่ามีวิศวกรภายใน Anthropic บางคนที่ใช้ไป มากกว่า 1,000 ดอลลาร์ต่อวัน ด้วย
      อยากรู้ว่า P50, P75, P95 ของค่าใช้จ่ายต่อพนักงานอยู่ที่เท่าไร
    • อาจเป็นเพราะผมใช้งานผิดวิธีก็ได้ แต่ถ้าใช้ Claude Code 2 ชั่วโมง ก็ทะลุ 20 ดอลลาร์ขึ้นไป ได้ง่าย ๆ
      สำหรับโปรเจกต์ส่วนตัวมันแพงเกินไป เลยหยุดใช้แล้ว
    • ช่วงหลังฟังพอดแคสต์ latent space อย่างสนุกมาก ผมคิดว่าแทบไม่มีคนหรือพอดแคสต์ไหนที่รักษาอัตราส่วนสัญญาณต่อสัญญาณรบกวนได้สูงขนาดนี้ ในขณะที่มีปริมาณผลงานโดยรวมระดับนี้
      น่าทึ่งที่ตลอดครึ่งปีที่ผ่านมา หรือหลายปีที่ผ่านมา แม้จะขยายธุรกิจหลายอย่างไปพร้อมกัน แต่ปริมาณและคุณค่าของงานสาธารณะก็ยังเพิ่มขึ้นเรื่อย ๆ อยากให้คนอื่น ๆ หาเส้นความชันด้านผลิตภาพแบบเดียวกันได้บ้าง พวกเขาแชร์คร่าว ๆ ว่าอะไรเวิร์กดี แต่ทำซ้ำตามได้ไม่ง่าย นึกถึงประมาณ simonw, gwern
    • อยากรู้ว่าพอดแคสต์ตอนนั้นเป็นกลางแค่ไหน หรือจริง ๆ แล้วเป็นแค่ การโปรโมตเชิงขาย ของผลิตภัณฑ์นี้
  • ถ้าผมจะสร้าง AI code assistant ผมคงทำให้มันผูกกับ ผู้ให้บริการ foundation model รายใดรายหนึ่งเป็นสิ่งสุดท้าย
    ถ้าผลิตภัณฑ์นี้จะประสบความสำเร็จ ต้องตั้งอยู่บนสมมติฐานว่า ตอนนี้ประสิทธิภาพของโมเดลเพิ่งถึงจุดอิ่มตัวแล้ว foundation model ทั้งหมดกำลังลู่เข้าหากันจนมีประสิทธิภาพและความสามารถแทบเท่ากัน และผู้รวมระบบจะเลือกกันด้วยความสะดวกเล็ก ๆ น้อย ๆ อย่าง SDK ที่คุ้นเคย

    • นอกจากคำสั่งและอาร์กิวเมนต์แล้ว ส่วนที่ถูกผูกไว้ไม่ได้มีมากนัก มันก็แค่ อินพุตกับเอาต์พุต
      จะเปลี่ยนไปใช้อย่างอื่นหรือครอบด้วย wrapper ก็ได้ ตรงนี้ไม่ได้มีอะไรซับซ้อนมาก
    • ณ ตอนนี้ Claude Code คือ ปัจจัยสร้างความแตกต่างด้านซอฟต์แวร์ ในพื้นที่การเขียนโค้ดแบบเอเจนต์
      ผมกำลังทำอะไรบางอย่างที่เกี่ยวกับ AI code assistant และกำลังแฮ็กวิธีผสาน Claude Code อยู่ มันคือสิ่งแรกสุดที่เราอยากสร้างทับลงไป ตอนนี้ยังเร็วเกินไปที่จะกังวลเรื่อง lock-in และเพราะเราต้องการของที่ดีที่สุด เราจะสร้างโดยยึดของที่ดีที่สุดเป็นศูนย์กลางเท่านั้น
  • Claude Code ใช้ใน โหมดไม่โต้ตอบ ได้อยู่แล้ว ดังนั้นจึงสามารถผสานเข้ากับแอปอื่นได้เหมือนยูทิลิตี้บรรทัดคำสั่ง Unix อื่น ๆ
    SDK นี้ดูเหมือนจะรองรับแค่การใช้งานผ่านบรรทัดคำสั่งในตอนนี้ ถ้าอย่างนั้นมันก็เหมือนของที่มีอยู่แล้วไม่ใช่หรือ? ไม่รู้จริง ๆ ว่ามีอะไรใหม่ ผมพลาดอะไรไปหรือเปล่า?

    • ผมก็ไม่รู้เหมือนกัน ในสายตาผม แปลกที่แทบไม่มีใครพูดถึงประเด็นนี้เลย
  • ขอแนะนำ Codebuff(https://www.codebuff.com/) ด้วย เป็น CLI code assistant ที่ยอดเยี่ยม คล้ายกับ Claude Code และช่วยประหยัดค่าโทเคนได้มาก
    ผมไม่มีส่วนเกี่ยวข้องกับโปรเจกต์นี้ เป็นแค่ผู้ใช้

  • ในข้อกำหนดระบุว่า “ห้ามใช้เพื่อพัฒนาผลิตภัณฑ์หรือบริการที่แข่งขันกับบริการ, เพื่อพัฒนาหรือฝึกอัลกอริทึมหรือโมเดลปัญญาประดิษฐ์หรือแมชชีนเลิร์นนิง, หรือเพื่อขายบริการต่อ”
    อยากรู้จริง ๆ ว่า ผลิตภัณฑ์หรือบริการซอฟต์แวร์ที่ไม่แข่งขันกับปัญญาทั่วไป นั้นมีอะไรบ้าง พอขายปัญญา แล้วถ้าตีความอย่างเคร่งครัดก็เท่ากับแนบข้อกำหนดทางกฎหมายว่าอย่าเอาไปใช้ที่ไหนเลย มันคลุมเครือเกินไปจนบังคับใช้ไม่ได้หรือเปล่า? ถ้าใช้เพื่อแข่งขันกับปัญญาทั่วไปไม่ได้ แล้วจะถือครองผลงานเอาต์พุตได้อย่างไร? เป็นแนวว่า “ไม่มีใครสนใจเงื่อนไขทางกฎหมายหรอก” อย่างนั้นหรือ? ถ้าไม่มีใครสนใจ แล้วจะใส่ข้อห้ามแบบครอบจักรวาลในการใช้บริการไว้ทำไม? ต้องยอมรับความรับผิดชอบหากแพ้คดี เพื่อจะได้ผลลัพธ์แบบนี้มาหรือเปล่า มีคำถามเยอะมาก

    • ถ้าปล่อยให้ทนายเขียนตามใจ ก็จะเกิดเรื่องแบบนี้
    • พอเปลี่ยน “artificial” เป็น “general” ความหมายก็ย่อมเปลี่ยนอยู่แล้ว
  • ถ้ามี model lock-in จะเป็นข้อเสียใหญ่ต่อการใช้งาน ถ้ามีใครปล่อยโมเดลรุ่นใหม่ที่มีประสิทธิภาพดีที่สุดออกมา แต่เราได้ลงทุนกับโครงสร้างพื้นฐานนี้ไปแล้ว ก็จะติดอยู่ในนั้น
    ต่อให้เปิดให้ใช้โมเดลอื่นภายหลัง โมเดลนั้นก็อาจถูกฝึกมาโดยเฉพาะให้เข้ากับ CLI นั้น ทำให้ใช้งานได้ไม่ดีนัก แค่ดู Codex CLI ก็พอ แม้จะใช้ Gemini 2.5 Pro ได้ แต่เมื่อเทียบกับโมเดลของ OpenAI แล้ว มันมักหยุดหรือ fail แบบสุ่มมากกว่า

  • GitHub Action ตัวใหม่นี่แหละคือฟีเจอร์ที่ผมตามหาอยู่: https://docs.anthropic.com/en/docs/claude-code/github-action...
    แต่ดูเหมือนจะไม่มีวิธีใช้ผ่าน Max plan ของ Claude Code เท่าที่ผมดู เหมือนจะรับแค่ API key