ข้ามไปยังเนื้อหา
azd เปิด multi-language hooks — เขียน hook ของ Azure Developer CLI ด้วย Python, JS, TS, .NET ได้แล้ว ไม่ต้องกลับไป Bash/PowerShell
เครื่องมือนักพัฒนา

azd เปิด multi-language hooks — เขียน hook ของ Azure Developer CLI ด้วย Python, JS, TS, .NET ได้แล้ว ไม่ต้องกลับไป Bash/PowerShell

อ่าน 4 นาที ที่มา: Microsoft DevBlogs

Microsoft Azure SDK Blog ประกาศใน month-end recap ของ April 2026 ว่า Azure Developer CLI (azd) ส่ง 5 release ในเดือนเดียว โดยหัวข้อใหญ่ที่สุดคือ multi-language hook support — เป็น quality-of-life upgrade ที่นักพัฒนา Python และ TypeScript รอมาตั้งแต่ azd ออก

ก่อนหน้านี้ ถ้าจะเขียน prepackage, predeploy, หรือ postprovision hook ใน azure.yaml ต้องเขียนเป็น Bash หรือ PowerShell เท่านั้น — ทำให้ทีมที่ stack เป็น Python/Node ต้องสลับไปคิดในภาษา shell scripting ที่ไม่ถนัด หรือเขียน wrapper สั้น ๆ เพื่อเรียกสคริปต์ของจริง

ตอนนี้ — ชี้ hook ไปที่ไฟล์สคริปต์ของภาษาที่ใช้ตรง ๆ ได้เลย และ azd จัดการที่เหลือให้

ภาษาที่รองรับและ behavior อัตโนมัติ

Python hooks — ชี้ไปที่ .py script — azd auto-detect — ถ้ามี requirements.txt หรือ pyproject.toml จะสร้าง virtual environment แล้ว install dependency ก่อนรัน

JavaScript hooks — ชี้ไปที่ .js script — ถ้ามี package.json azd จะ run npm install ก่อน

TypeScript hooks — ชี้ไปที่ .ts script — รันผ่าน npx tsx ไม่ต้อง compile ก่อน

.NET hooks — รองรับ .NET project hook ในรูปแบบเดียวกัน

หัวใจของ feature นี้คือ — คุณเขียน hook ในภาษาเดียวกับ application เลยใช้ library, type, helper เดียวกัน — ไม่ต้อง maintain logic เดียวใน 2 ภาษา และไม่ต้องเรียก subprocess หลอกให้ shell script ไปเรียก Python/Node ทีหลัง

ตัวอย่าง azure.yaml

hooks:
  prepackage:
    posix:
      shell: sh
      run: scripts/prepackage.py
    windows:
      shell: pwsh
      run: scripts/prepackage.py

azd อ่าน extension .py แล้วจัดการ venv + install + รันให้เอง — สิ่งที่เคยเป็น 30-50 บรรทัดของ wrapper script เหลือบรรทัดเดียว

ความหมายในมุม developer experience

azd เริ่มมาเป็น tool ที่เน้น “infra-as-yaml + minimal scripting” — ตั้งใจให้ developer ไม่ต้องเขียน Bicep หรือ Terraform เป็น expert ก่อนถึงจะ deploy app ขึ้น Azure ได้ — แต่จุดอ่อนคือทุกครั้งที่ logic ซับซ้อนขึ้น (เช่น generate config, seed database, run migration) ต้องสลับกลับไปเขียน shell script

multi-language hook คือการยอมรับว่าทีมส่วนใหญ่ในยุค 2026 ทำ Python (data, ML, AI agent), TypeScript (web app, edge function), หรือ .NET (enterprise) — ไม่ใช่ Bash อีกต่อไป และทุก context switch ระหว่าง language ภายใน build pipeline เดียวกันคือ friction ที่ลดได้

ที่น่าสังเกตคือ feature นี้ทำให้ azd ใกล้เคียงกับ developer experience ของ tool รุ่นใหม่ เช่น Pulumi (เขียน infra เป็นภาษา general-purpose) มากขึ้น — โดยไม่ต้องทิ้ง YAML-first model ที่ azd ยึดอยู่

Release อื่นใน April 2026

นอกจาก multi-language hook ใน April 2026 azd ยังส่ง:

  • GitHub Copilot project setup — ใช้ Copilot ช่วย scaffold project แบบ conversational
  • Container App Jobs deployment — รองรับ deploy job (ไม่ใช่ service) ขึ้น Azure Container Apps ตรง ๆ
  • Local AI agent run/debug loop (ตามจาก March release) — รัน AI agent local ก่อน deploy
  • Stability + performance fixes ตามปกติของ release ประจำเดือน

มุมมอง AI Curator

สำหรับนักพัฒนาไทยที่ใช้ Azure อยู่แล้ว — multi-language hook เป็น productivity boost ที่ migrate ได้ใน 1 sprint เพราะ Bash/PowerShell hook เก่ายังทำงานต่อ — ไม่มี breaking change — ค่อย ๆ ย้ายเฉพาะ hook ที่ logic ซับซ้อนพอที่ Python/TS จะอ่านง่ายกว่า

ในระดับ ecosystem — feature นี้สะท้อนการแข่งขันที่ Microsoft กับ AWS กับ Google Cloud กำลัง converge ในเรื่อง “deployment tool ที่ AI agent friendly” — เพราะ Copilot/Claude Code/Gemini CLI ทุกตัวเขียน Python หรือ TypeScript ได้ดีกว่า Bash มาก — การที่ hook ใน infra config รองรับภาษาเดียวกับที่ agent generate ออกมา ลด friction ของ “agent ทำ devops” ลงอย่างมีนัย

ส่วนสำหรับองค์กรไทยที่ยังลังเลระหว่าง azd, Terraform, Pulumi — ตอนนี้ความต่างระหว่าง 3 tool นี้แคบลงมาก — ทางเลือกขึ้นกับ team skillset (TS-heavy → Pulumi, multi-cloud-heavy → Terraform, Azure-only + want fastest start → azd) มากกว่า capability ของ tool

ภาพใหญ่กว่า — devblogs.microsoft.com ในรอบ April-May 2026 เน้น 2 เรื่องชัด: Foundry Agent Service ที่ pivot เป็น hosted agent และ azd ที่กลายเป็น first-class agent runtime สำหรับ devops workflow — Microsoft กำลัง bet ว่า “agent + cloud-native deployment” จะเป็น default workflow ของ developer ในอีก 18 เดือน และทุก release ของ tool ต้องสะท้อนความ bet นั้น

แหล่งข่าว

บทความนี้เรียบเรียงจากแหล่งข่าวต้นทาง — Microsoft DevBlogs

เนื้อหาบน blog นี้สร้างโดย AI โดยมีการกำกับบรรณาธิการจากมนุษย์

อ่านเพิ่มในหมวด เครื่องมือนักพัฒนา

Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ
เครื่องมือนักพัฒนา

Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ

Betelgeuse ฟอร์ก llama.cpp ที่เปิดเมื่อ 31 ต.ค. ดึง expert จาก NVMe เข้า VRAM ตามต้องการ อ้าง 22 tok/s แบบไม่ทิ้ง expert แต่ README เตือนเองว่ายังทดลองและตัวเลขมาจากคนละรอบ วันเดียวกันผู้พัฒนา Basalt เผยผลวัดว่าแฟล็กเร่งความเร็วทำคุณภาพ Q8 ตกไปใกล้ Q2

· อ่าน 5 นาที
กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง
เครื่องมือนักพัฒนา

กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง

ต่อจากที่เราพบกฎนี้ในไบนารี Claude Code ผู้ใช้เริ่มรายงานว่างานเชิงพาณิชย์ถูกปฏิเสธ และ Tom's Hardware กับ Mashable หยิบไปรายงาน แต่เมื่อไล่ issue ที่อ้างถึง พบว่าหลายรายการเกิดก่อนกฎจะมา จึงน่าจะเป็นตัวกรองด้านไซเบอร์ ส่วน Anthropic ยังไม่ชี้แจง

· อ่าน 4 นาที
Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้
เครื่องมือนักพัฒนา

Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้

รายงานอิสระพบว่าฟีเจอร์ agent_summary ของ Claude Code ส่ง transcript เต็มของ background agent ไปถามสถานะทุก ~30 วินาที คิดเป็น 16.4% ของค่าใช้จ่ายในระบบของผู้วัด Issue เปิดมาตั้งแต่ ส.ค. ยังไม่มีสวิตช์ปิดที่รองรับ เราตรวจพบโค้ดนี้ใน 2.1.314 และพบกฎใหม่เรื่องเกมที่ไม่อยู่ใน changelog

· อ่าน 4 นาที