EP1 AI เขียนโค้ดทำงานยังไง และทำไม โปรเจกต์ ต้องมีคู่มือให้มัน
เริ่มซีรีส์ใช้ AI เขียนโค้ด เข้าใจวงรอบการทำงานของ Claude Code และหลักการแรกที่สำคัญที่สุด คือเขียนสิ่งที่อยากให้ AI รู้ลงไฟล์ CLAUDE.md
- AI เก่งแต่จำอะไรข้าม session ไม่ได้ สิ่งที่อยากให้มันรู้ต้องอยู่ในไฟล์
- CLAUDE.md คือคู่มือโปรเจกต์ที่ Claude Code อ่านเองทุกครั้งที่เริ่มงาน
- ใส่เฉพาะสิ่งที่ดูจากโค้ดไม่เห็น เช่น คำสั่ง กฎห้าม และคำว่า "เสร็จ" แปลว่าอะไร
ซีรีส์นี้เล่าเส้นทางการใช้ AI เขียนโค้ด ตั้งแต่มี Claude Code ตัวเดียวในโปรเจกต์ จนเป็นระบบที่ AI หลายตัวหลายเจ้าทำงานด้วยกัน มีทั้งหมด 8 ตอน แต่ละตอนสอนหลักการเดียวพร้อมตัวอย่างจากงานจริง ตอนแรกเริ่มจากเรื่องพื้นฐานที่สุด และพลาดกันบ่อยที่สุด
Claude Code ทำงานยังไง
Claude Code เป็น AI agent ที่ทำงานใน terminal ถ้ายังไม่แน่ใจว่า agent ต่างจากแชทบอทยังไง อ่าน AI Agent คืออะไร ก่อนได้ สรุปสั้น ๆ คือมันทำงานเป็นวงรอบ
- อ่าน ไฟล์ในโปรเจกต์ที่เกี่ยวกับงาน
- คิด ว่าต้องแก้อะไร
- ลงมือ แก้ไฟล์ หรือรันคำสั่ง
- ดูผล เช่น build ผ่านไหม เทสต์ผ่านไหม แล้ววนกลับไปข้อ 1 จนงานเสร็จ
ฟังดูเหมือนมีโปรแกรมเมอร์มาช่วยอีกคน และก็ใช่ แต่มีจุดอ่อนข้อใหญ่ที่ต้องรู้ก่อน
ปัญหา: เพื่อนร่วมงานที่มาวันแรกทุกวัน
ลองนึกถึงเพื่อนร่วมงานที่เก่งมาก แต่ทุกเช้าเขาจำอะไรเมื่อวานไม่ได้เลย ไม่รู้ว่าโปรเจกต์นี้ deploy ยังไง ไม่รู้ว่าไฟล์ไหนห้ามแตะ ไม่รู้ว่าทีมตกลงกันไว้ว่าอะไร
นั่นคือ AI ทุกครั้งที่เปิด session ใหม่ มันเห็นแค่โค้ด ส่วนที่อยู่ในหัวคน เช่น “เซิร์ฟเวอร์นี้มีเว็บอื่นรันอยู่ด้วย ระวัง” หรือ “repo นี้ต้อง private” มันไม่รู้ ถ้าไม่บอก มันก็เดา และบางครั้งเดาผิดในเรื่องที่แพง
หลักการแรก: สิ่งที่อยากให้ AI รู้ ต้องอยู่ในไฟล์ ไม่ใช่อยู่ในหัวเรา
วิธีแก้: CLAUDE.md คู่มือที่มันอ่านเองทุกครั้ง
Claude Code จะอ่านไฟล์ชื่อ CLAUDE.md ที่รากของโปรเจกต์ให้เองทุกครั้งที่เริ่มงาน ไม่ต้องสั่ง ไม่ต้องแปะซ้ำ เขียนครั้งเดียว ใช้ได้ทุก session
มีสองระดับที่ควรรู้:
| ไฟล์ | ใช้กับ | ใส่อะไร |
|---|---|---|
CLAUDE.md ในโปรเจกต์ | โปรเจกต์นั้น | กติกาของงานนี้ commit ไว้ใน repo ด้วย |
~/.claude/CLAUDE.md | ทุกโปรเจกต์ในเครื่อง | นิสัยส่วนตัว เช่น ภาษาที่อยากให้ตอบ หรือสไตล์โค้ด |
ใส่อะไรดี
ใส่เฉพาะสิ่งที่ ดูจากโค้ดไม่เห็น ห้าเรื่องนี้ครอบคลุมเกือบทุกโปรเจกต์
# ชื่อโปรเจกต์ — ทำอะไร ให้ใคร (1-2 บรรทัด)
## โครงสร้าง
- src/api/ ← endpoint ทั้งหมด
- src/web/ ← หน้าเว็บ
## คำสั่ง
npm run dev # รันในเครื่อง
npm test # ต้องผ่านก่อน commit
## กฎ
- ห้ามแก้ไฟล์ใน migrations/ ที่รันไปแล้ว
- เงินใช้ decimal ห้ามใช้ float
## เสร็จแปลว่า
- build ผ่าน เทสต์ผ่าน และเปิดดูบนจอมือถือแล้ว
ข้อสุดท้ายสำคัญกว่าที่คิด ถ้าไม่บอกว่า “เสร็จ” แปลว่าอะไร AI จะใช้มาตรฐานของมันเอง ซึ่งมักแค่ “โค้ดดูถูกแล้ว”
ตัวอย่างจริง: เว็บนี้
เว็บที่คุณอ่านอยู่มี CLAUDE.md หนึ่งไฟล์ เขียนไว้ว่า “ก่อนบอกว่าเสร็จ ต้องดูที่จอกว้าง 375px ทั้งสองภาษา” บรรทัดเดียวนี้ทำให้ AI เปิดหน้าเว็บดูเองแล้วเจอหัวข้อภาษาอังกฤษที่ล้นจอมือถือ ซึ่งดูจากโค้ดไม่มีทางเห็น อ่านเรื่องเต็มได้ในบันทึกทดลองสร้างเว็บนี้ใน 22 นาที
อีกบรรทัดหนึ่งเขียนว่า repo ของเว็บต้อง private เสมอ ประโยคแบบนี้ AI ไม่มีทางรู้เองจากโค้ด
สิ่งที่ไม่ควรใส่
- รหัสผ่าน key และ token ไฟล์นี้อยู่ใน repo ใครเห็น repo ก็เห็น
- สิ่งที่โค้ดบอกอยู่แล้ว เช่น รายชื่อทุกฟังก์ชัน AI อ่านโค้ดเองได้
- ทุกอย่างที่นึกออก ไฟล์ที่ยาวเกินทำให้เรื่องสำคัญจมหาย และเปลืองทุกครั้งที่มันอ่าน
ลองเองใน 10 นาที
- เปิด terminal ในโปรเจกต์ที่มีอยู่ แล้วรัน
claude - พิมพ์
/initให้มันอ่านโปรเจกต์แล้วร่าง CLAUDE.md ให้ - อ่านร่างนั้น ลบส่วนที่โค้ดบอกอยู่แล้ว แล้วเติมสิ่งที่อยู่ในหัวคุณ: กฎห้าม และคำว่าเสร็จแปลว่าอะไร
- ปิด session เปิดใหม่ แล้วถามมันว่า “โปรเจกต์นี้ห้ามทำอะไรบ้าง” ถ้ามันตอบได้ แปลว่าคู่มือใช้งานได้แล้ว
ตรงไหนที่คนต้องทำ
AI ร่าง CLAUDE.md ได้ แต่ กติกาเป็นของคน อะไรห้ามแตะ อะไรต้องระวัง และงานแบบไหนถึงเรียกว่าพร้อมใช้ เป็นการตัดสินใจที่มาจากประสบการณ์กับโปรเจกต์นั้น AI ช่วยเขียนให้อ่านง่ายได้ แต่ไม่ควรคิดกติกาแทน
ตอนหน้า
คู่มือหนึ่งไฟล์ใช้ได้ดีตอนแรก แต่พอใช้ไปนาน ๆ จะเริ่มยัดทุกอย่างลงไปจนไฟล์บวม EP2 จะแยกของสามแบบออกจากกัน คือ ความรู้ ที่ AI ควรจำ ขั้นตอน ที่ทำซ้ำบ่อย และ กฎ ที่ต้องบังคับให้ได้จริง
คำถามที่พบบ่อย
ต้องใช้ Claude Code เท่านั้นไหม เครื่องมืออื่นใช้หลักการนี้ได้หรือเปล่า
ได้ เครื่องมือ AI เขียนโค้ดหลายตัวมีไฟล์คู่มือแบบเดียวกัน ชื่อไฟล์อาจต่างกัน แต่หลักการเหมือนกัน คือเขียนกติกาโปรเจกต์ไว้ในไฟล์ที่ AI อ่านทุกครั้ง
CLAUDE.md ควรยาวแค่ไหน
สั้นที่สุดที่ยังครบ AI อ่านทั้งไฟล์ทุกครั้ง ยิ่งยาวยิ่งเปลือง และเรื่องสำคัญจะจมหายไปในเรื่องจุกจิก หน้าเดียวถึงสองหน้าพอสำหรับโปรเจกต์ส่วนใหญ่
คำสั่งและค่าตั้งในบทความทดสอบบนระบบตัวอย่าง ลองบนเครื่องทดสอบก่อนใช้กับระบบจริงเสมอ