| name | explain-code |
| description | อธิบายว่าโค้ด/ไฟล์/โปรเจกต์ทำงานยังไง ใช้เมื่อผู้ใช้ขอให้อธิบาย ทำความเข้าใจ หรือถามว่าโค้ดนี้ทำอะไร |
Skill: explain-code
- หาขอบเขต: ไฟล์เดียว ฟังก์ชันเดียว หรือทั้งโปรเจกต์ — ใช้ glob/grep/read_file หาไฟล์ที่เกี่ยวก่อน
- หา entry point (main, route, handler) แล้วไล่ flow การทำงานตามจริง
- อธิบายเป็นชั้น:
- ภาพรวม: โค้ดนี้มีไว้ทำอะไร (1-2 ประโยค)
- ส่วนหลัก: แต่ละส่วนทำอะไร เชื่อมกันยังไง (อ้าง
file:line)
- จุดสำคัญ/ลูกเล่น: algorithm, design pattern, หรือ trick ที่ไม่ชัดในตัว
- ถ้าซับซ้อน วาด flow เป็นข้อความ (A → B → C) ช่วยให้เห็นภาพ
- ชี้ gotcha: จุดที่เข้าใจผิดง่าย, side effect, หรือ assumption ที่ซ่อนอยู่
ปรับความลึกตามคนถาม — อย่าร่ายทุกบรรทัด เน้นสิ่งที่ช่วยให้เข้าใจจริง