สรุปสั้นๆ
Agent skill คือ operating procedure ที่นำกลับมาใช้ซ้ำได้สำหรับ AI agent มันบอก agent ว่าเมื่อเจอสถานการณ์แบบนี้ควรใช้ workflow อะไร ต้องระวังอะไร และต้อง verify อย่างไรก่อนบอกว่างานเสร็จ
ฟังดูเหมือนเรื่องเล็ก แต่จริงๆ แล้วมันเปลี่ยนพฤติกรรมของ coding agent อย่างมาก Prompt ปกติอาจบอกว่า “ช่วยสร้าง feature นี้ให้หน่อย” แต่ skill จะบอกว่า “เมื่อสร้าง feature ให้ทำความเข้าใจเป้าหมายก่อน inspect repo วางแผน แก้แบบจำกัด scope run test และห้ามบอกว่าเสร็จจนกว่าจะมีหลักฐาน”
ปัญหาของ coding agent สมัยใหม่ไม่ใช่แค่มันเขียนโค้ดไม่เป็น หลายครั้งมันเขียนได้เร็วมาก แต่พลาดเพราะขาดวินัยของ process เช่น รีบแก้ทันทีโดยไม่เข้าใจ root cause, แก้กว้างเกิน, ไม่ run test, หรือพูดมั่นใจทั้งที่ยังไม่มีหลักฐาน
Skills คือหนึ่งในคำตอบของปัญหานี้
Skill สำหรับ agent คืออะไร?
ในโปรเจกต์ Superpowers skill มักอยู่ในรูป directory ที่มีไฟล์ `SKILL.md` อยู่ข้างใน ไฟล์นี้จะมี metadata, เงื่อนไขว่าเมื่อไรต้องใช้, workflow, ตัวอย่าง และข้อผิดพลาดที่ต้องหลีกเลี่ยง
Superpowers อธิบายตัวเองว่าเป็น software development methodology สำหรับ coding agents ที่สร้างจาก composable skills และ startup instructions เพื่อให้ agent ใช้ skill อย่างสม่ำเสมอ คุณดู repo ได้ที่ obra/superpowers on GitHub และดู skills directory
Skill ที่ดีไม่ใช่เรื่องเล่าว่าเคยแก้ปัญหาอย่างไรครั้งหนึ่ง แต่มันคือคู่มือใช้งานซ้ำ เป็น playbook ที่ agent เอาไปใช้กับงานประเภทเดิมได้
Skill ที่ดีควรตอบคำถามเหล่านี้:
- Agent ควรใช้ skill นี้เมื่อไร
- ขั้นตอนที่ต้องทำคืออะไร
- Shortcut อะไรที่ต้องหลีกเลี่ยง
- หลักฐานแบบไหนถึงเรียกว่างานเสร็จจริง
ข้อสุดท้ายสำคัญมาก เพราะ agent เก่งในการพูดให้ดูน่าเชื่อถือ แต่งาน software ต้องการ evidence
Skill ต่างจาก prompt และ system instruction อย่างไร
คนส่วนใหญ่เริ่มจาก prompt ซึ่งถูกต้องแล้ว คุณบอก agent ว่าต้องการอะไร agent ก็ตอบกลับมา วิธีนี้เหมาะกับคำถามสั้นๆ งานเล็กๆ หรือ brainstorming
แต่ prompt ไม่ค่อยพอเมื่อ task ยาวขึ้น ข้อความที่เคยสั่งไว้ต้น session อาจถูกลืม หรือ agent อาจทำตามคำขอผิวเผินแต่ไม่ทำตามวิธีทำงานที่เราต้องการจริงๆ
System instruction กว้างกว่า มันกำหนด default behavior เช่น ตอบให้ชัด ระวัง user changes run test ก่อนสรุป แต่มันมักไม่ละเอียดพอสำหรับ task เฉพาะทาง
Skill อยู่ตรงกลาง มันเฉพาะกับประเภทงาน เช่น debugging skill บังคับให้หา root cause ก่อนแก้ planning skill บังคับให้ design ก่อน implementation testing skill บังคับ red-green-refactor
จำง่ายๆ:
- Prompt: คำขอเฉพาะหน้า
- System instruction: พฤติกรรมพื้นฐานของ agent
- Skill: ขั้นตอน reusable สำหรับงานประเภทหนึ่ง
นี่คือเหตุผลที่ skills สำคัญกับ coding agents มันเปลี่ยน engineering practice ให้กลายเป็น behavior ที่ใช้ซ้ำได้
ทำไม skills สำคัญกับงาน coding มากกว่างาน chat ทั่วไป
งาน coding มี hidden state เยอะ คำตอบ chat ที่ผิดแก้ได้ด้วยข้อความใหม่ แต่ code edit ที่ผิดอาจทำให้ build พัง migration พัง user changes หาย หรือเกิด production bug
งาน coding ยังเป็น chain ยาว agent อาจต้องอ่าน config เข้าใจ routing inspect tests patch code run build update deploy script แล้วสรุปผล ถ้าไม่มี process แม้ model เก่งก็ drift ได้
Skills ช่วยเพราะมันทำให้ agent หยุดในจุดที่ควรหยุด
ตัวอย่าง:
- ก่อนสร้าง feature ใช้ brainstorming หรือ planning skill
- ก่อนแก้ bug ใช้ systematic debugging skill
- ก่อนบอกว่าเสร็จ ใช้ verification skill
- ก่อนสร้าง behavior ที่อยาก reuse ใช้ writing-skills skill
ประเด็นไม่ใช่การเพิ่มพิธีกรรม แต่คือการกันความผิดพลาดที่แพง
Superpowers สอนอะไรเกี่ยวกับ skills
`using-superpowers` skill ของ Superpowers เข้มงวดมากกับการเช็ค skill ก่อนลงมือ มันบอกว่าเมื่อมี skill ที่เกี่ยวข้อง agent ต้องใช้ skill ก่อนตอบ ก่อน inspect file หรือก่อนถามคำถามเพิ่มเติม อ่านไฟล์ได้ที่ using-superpowers/SKILL.md
เหตุผลที่ต้องเข้มงวดคือ agent มัก rationalize เช่น “เรื่องนี้ง่าย”, “ขอเช็คเร็วๆ แป๊บเดียว”, “แก้ตรงนี้ได้เลย” ซึ่งความคิดแบบนี้มักเป็นจุดเริ่มของ bug
Skill system ทำให้วินัยที่ดีเกิดแบบอัตโนมัติ:
- Bug trigger พฤติกรรม debugging
- Feature request trigger design และ planning
- Complex implementation trigger execution workflow
- Branch ที่จบแล้ว trigger verification และ handoff
การเปลี่ยนแปลงสำคัญคือ user ไม่ต้องจำทุกกฎ engineering ทุกครั้งที่สั่งงาน agent จะรู้ว่าควรหยิบ playbook ไหนมาใช้
Anatomy ของ SKILL.md ที่ดี
1. Name
ชื่อควร active และชัด เช่น `systematic-debugging` ดีกว่า `bug-notes`
2. Description
Description ควรบอกว่าเมื่อไรต้องใช้ skill ไม่ใช่สรุป workflow ทั้งหมด Superpowers `writing-skills` guide เน้นเรื่องนี้ เพราะ agent อาจอ่านแค่ description แล้วข้าม body ถ้า description ยาวเกิน อ่านได้ที่ writing-skills/SKILL.md
3. Overview
Overview ควรบอกหลักการหลักแบบภาษาคน เช่น “อย่าเดา root cause ก่อนแก้”
4. Workflow
Workflow ต้องชัดพอให้ทำตาม แต่ไม่ยาวจน agent หลงประเด็น
5. Common mistakes
ส่วนนี้สำคัญ เพราะ agent มักพลาดซ้ำๆ เช่น skip test, assume route, edit unrelated files, หรือบอกว่าเสร็จเพราะ compile ผ่านครั้งเดียว
6. Verification
Skill ควรกำหนดว่า proof คืออะไร เช่น tests, build, screenshot, API response, logs หรือ live checks
Skills คือ process memory
Developer ใช้ process memory อยู่แล้ว เช่น checklist, runbook, PR template, incident guide, architecture decision record และ onboarding docs
Agent skills คือสิ่งเดียวกัน แต่เขียนให้ AI worker ใน development loop ใช้ได้
สิ่งนี้มีประโยชน์มากกับทีม ทีมสามารถ encode วิธี debug, deployment checklist, code review standard, migration policy หรือ testing discipline ของตัวเองได้ แทนที่จะสั่งซ้ำทุกครั้ง ก็ให้ agent ใช้ skill ที่ reusable
Superpowers ไม่ได้จำกัดแค่ agent เดียว โปรเจกต์มี installation สำหรับ Claude Code, Codex App, Codex CLI, Cursor, Gemini CLI, OpenCode, Kimi Code และ environment อื่นๆ แนวคิดที่ใหญ่กว่าคือ agent behavior จะดีขึ้นเมื่อมี reusable workflow ที่ถูกเรียกใช้ถูกเวลา
ทำไม founder, creator และ developer ควรสนใจ
ถ้าคุณใช้ AI สร้าง software จริง คุณต้องการ reliability มากกว่า speed อย่างเดียว Speed ที่ไม่มี discipline จะสร้างงาน cleanup ตามมา
Skills ช่วยลด failure modes ที่เกิดจริง:
- Agent สร้างของผิดเพราะ goal ไม่ชัด
- Agent แก้หลายไฟล์เกินเพราะไม่มี plan
- Agent แก้ symptom ไม่ใช่ root cause
- Agent บอกว่าเสร็จโดยไม่ test
- Agent ลืม convention ของ project
- Agent อธิบายไม่ได้ว่าเปลี่ยนอะไร
Skill ไม่ได้ทำให้ model สมบูรณ์แบบ แต่มันใส่รางให้ model ทำงานดีขึ้น
Mental model ง่ายๆ
- ถ้าสั่งครั้งเดียว คือ prompt
- ถ้าทุก agent ต้องทำเสมอ คือ instruction
- ถ้าใช้กับงานประเภทเดิมซ้ำๆ คือ skill
คุณค่าของ Superpowers คือการแสดงให้เห็นว่าอนาคตของ AI development ไม่ได้มีแค่ model ที่เก่งขึ้น แต่ต้องมีระบบการทำงานที่ดีขึ้นรอบ model ด้วย
คำแนะนำสุดท้าย
ถ้าคุณจริงจังกับ coding agents ให้เริ่มเก็บสถานการณ์ที่ agent ทำให้คุณผิดหวัง เช่น skip test, เดา, overwrite file, สร้างของใหญ่เกิน, หรือหยุดเร็วเกิน
Failure ที่เกิดซ้ำคือ candidate สำหรับ skill
Skills สำคัญเพราะมันเปลี่ยนบทเรียนราคาแพงให้กลายเป็น agent behavior ที่นำกลับมาใช้ซ้ำได้ นั่นคือวิธีทำให้ coding agent เป็น collaborator ที่มีวินัยมากขึ้น ไม่ใช่แค่ autocomplete ที่มั่นใจเกินไป
