95% ของผู้ใช้ Claude Code พลาดไฟล์นี้ไป นี่คือสิ่งที่คุณกำลังขาดหายไป

@Jouhatsu_ai
ฝรั่งเศส2 เดือนที่ผ่านมา · 17 พ.ค. 2569
851K
474
58
14
2.3K

TL;DR

คู่มือนี้ให้รายละเอียดเกี่ยวกับการปรับแต่ง Claude Code ให้เหมาะสมที่สุดโดยใช้ไฟล์ CLAUDE.md เพื่อกำหนดกฎทางสถาปัตยกรรมและคำสั่งเวิร์กโฟลว์ พร้อมอธิบายวิธีหลีกเลี่ยงปัญหาคำสั่งล้น (instruction fatigue) และรับประกันว่า AI จะปฏิบัติตามข้อกำหนดทางเทคนิคเฉพาะของคุณได้อย่างแม่นยำ

ฉันได้ทดสอบการตั้งค่า Claude Code มากมายหลายสิบแบบ

สิ่งเดียวที่เปลี่ยนผลลัพธ์ของฉันจริงๆ คือไฟล์ขนาด 60 บรรทัดที่ชื่อว่า CLAUDE.md

บันทึกหน้านี้ไว้เลย 🔖

นี่คือวิธีการทำงานที่แท้จริง ทำไมคนส่วนใหญ่ถึงมองข้ามมันไปโดยสิ้นเชิง และเทมเพลตฉบับเต็มที่คุณสามารถคัดลอกไปใช้ได้วันนี้

สิ่งที่ไม่มีใครบอกคุณเกี่ยวกับ Claude Code

ก่อนที่คุณจะพิมพ์คำขอแรก ก่อนที่จะเขียนโค้ดแม้แต่บรรทัดเดียว ก่อนที่อะไรจะเกิดขึ้นในเซสชันของคุณ

Claude อ่านไฟล์เดียว แค่ไฟล์เดียว

CLAUDE.md.

และมันถือว่าไฟล์นี้คือความจริงสูงสุดสำหรับทั้งเซสชัน ไม่ใช่แค่คำแนะนำ ไม่ใช่บริบทหนึ่งในหลายๆ อย่าง แต่เป็นคำสั่งที่ชัดเจนที่กำหนดทุกการตัดสินใจที่มันจะทำ

นั่นคือเหตุผลที่ไฟล์นี้เป็นตัวแปรที่ถูกมองข้ามมากที่สุดในชุดเครื่องมือ Claude Code ทั้งหมด

คนส่วนใหญ่ไม่มีไฟล์นี้เลย และคนที่มีก็ทำผิดพลาดหนึ่งในสองอย่าง: ไฟล์นั้นไม่มีเนื้อหาที่เป็นประโยชน์ หรือไม่ก็เป็นไฟล์ 300 บรรทัดที่บอกว่า "จงเป็นวิศวกรอาวุโสที่มีประสบการณ์ซึ่งคิดทีละขั้นตอน"

ทั้งสองแบบไร้ประโยชน์ ด้วยเหตุผลที่แตกต่างกัน

ทำไมไฟล์ CLAUDE.md ส่วนใหญ่ถึงใช้ไม่ได้: 3 เหตุผลที่แท้จริง

เหตุผลที่ 1: ยาวเกินไป

Claude สามารถปฏิบัติตามคำสั่งได้ประมาณ 150 ถึง 200 คำสั่งต่อเซสชันอย่างน่าเชื่อถือ นี่คือข้อจำกัดเชิงโครงสร้าง ไม่ใช่เรื่องของความเต็มใจ

ปัญหา: พรอมต์ระบบภายในของ Claude Code มีคำสั่งอยู่ประมาณ 50 คำสั่งแล้ว นั่นหมายความว่า CLAUDE.md ของคุณมีช่องว่างสำหรับคำสั่ง 100 ถึง 150 คำสั่งก่อนที่ Claude จะเริ่มละเว้นคำสั่งเหล่านั้น

ถ้าไฟล์ของคุณยาว 200 บรรทัด Claude ไม่ได้จงใจละเว้นกฎของคุณ มันลืมกฎเหล่านั้นโดยอัตโนมัติ คุณไม่มีปัญหาด้านการปฏิบัติตามกฎ แต่คุณมีปัญหาด้านงบประมาณความสนใจ

เหตุผลที่ 2: เนื้อหาไม่ดี

ไฟล์ CLAUDE.md ส่วนใหญ่เต็มไปด้วยสิ่งที่ Claude สามารถสรุปได้เองหรือสิ่งที่ไม่เปลี่ยนพฤติกรรมของมันในทางที่วัดผลได้

"ทำตัวเป็นวิศวกรอาวุโส" → Claude รู้อยู่แล้วว่ามันหมายถึงอะไร และมันไม่ได้ยึดติดกับพฤติกรรมเฉพาะใดๆ

"คิดทีละขั้นตอน" → สิ่งนั้นอยู่ในข้อมูลฝึกของมันแล้ว คุณกำลังเสียบรรทัดหนึ่งไปเปล่าๆ

"เขียนโค้ดที่สะอาดและบำรุงรักษาได้" → ไม่มีเกณฑ์ที่เป็นรูปธรรม Claude ไม่รู้ว่า "สะอาด" หมายถึงอะไรในบริบทเฉพาะของคุณ

ทุกบรรทัดที่ไม่ได้ป้องกันข้อผิดพลาดเฉพาะเจาะจงและเป็นรูปธรรม คือบรรทัดที่ถูกขโมยมาจากคำสั่งที่สำคัญจริงๆ การทดสอบนั้นง่าย: ถ้าคุณลบบรรทัดนี้ Claude จะทำอะไรผิดพลาดเฉพาะเจาะจงหรือไม่? ถ้าคำตอบคือไม่ บรรทัดนั้นก็ไม่ควรอยู่ที่นั่น

เหตุผลที่ 3: ไม่มีลำดับชั้น

คนส่วนใหญ่มองข้างความจริงที่ว่ามีสามระดับของคำสั่งใน Claude Code และพวกเขายัดทุกอย่างไว้ในที่เดียวกัน

~/.claude/CLAUDE.md → ส่วนกลาง (ใช้กับทุกโปรเจกต์ของคุณ)

.claude/CLAUDE.md → โปรเจกต์ (แชร์กับทีม, อยู่ใน git)

./CLAUDE.local.md → ส่วนตัว (การตั้งค่าส่วนบุคคล, อยู่ใน gitignore)

ระดับส่วนกลางมีไว้สำหรับกฎที่คุณจะทำซ้ำในทุกโปรเจกต์ ระดับโปรเจกต์มีไว้สำหรับบริบทเฉพาะของสแตกและทีมของคุณ ระดับส่วนตัวมีไว้สำหรับความชอบส่วนบุคคลของคุณที่ไม่จำเป็นต้องแชร์

การใช้สามระดับอย่างถูกต้องคือสิ่งที่ทำให้แต่ละไฟล์สั้น ตรงประเด็น และมีประสิทธิภาพอย่างแท้จริง การใส่ทุกอย่างในไฟล์เดียวก็เหมือนกับการสร้างกรวยเพื่อกลบกฎสำคัญของคุณด้วยเสียงรบกวน

5 ส่วนที่ประกอบกันเป็น CLAUDE.md ที่มีประสิทธิภาพ

หลังจากค้นหาไฟล์ CLAUDE.md หลายสิบไฟล์ในโปรดักชัน—โปรเจกต์โอเพนซอร์ส เอกสารอย่างเป็นทางการของ Anthropic คลังแนวทางปฏิบัติที่ดีที่สุดของชุมชน—นี่คือ 5 ส่วนที่ไฟล์ที่มีประสิทธิภาพทั้งหมดมีเหมือนกัน

ส่วนที่ 1: คำสั่งที่สำคัญ

Claude เริ่มทุกเซสชันโดยไม่รู้วิธีสร้างโปรเจกต์ของคุณ รันเทส หรือแก้ไขข้อผิดพลาด lint มันจะเดา และการเดาของมันจะทำให้คุณเสียรอบ

บอกมันให้แน่ชัดว่าต้องพิมพ์อะไร:

Commands

  • สร้าง: npm run build
  • พัฒนา: npm run dev
  • ทดสอบไฟล์เดียว: npm test -- path/to/file
  • ทดสอบทั้งหมด: npm test
  • ตรวจสอบโค้ด + แก้ไข: npm run lint:fix
  • ตรวจสอบชนิดข้อมูล: npx tsc --noEmit

สั้น กระชับ ใช้ได้ทันที

หากไม่มีส่วนนี้ Claude จะพยายามใช้ npm test เมื่อโปรเจกต์ของคุณทำงานบน pnpm vitest มันจะใช้เวลาสามรอบในการดีบักปัญหาคำสั่งที่ไม่มีทางทำงานได้ สามรอบที่คุณจะใช้กับงานจริงได้

ส่วนที่ 2: แผนผังสถาปัตยกรรม

Claude เริ่มทุกเซสชันโดยไม่มีความรู้เกี่ยวกับโค้ดเบสของคุณเลย ไม่รู้เลย มันไม่รู้ว่าตรรกะทางธุรกิจของคุณอยู่ที่ไหน ไม่รู้ว่าคอมโพเนนต์ของคุณควรไม่มีสถานะหรือไม่ ไม่รู้ว่าเส้นทาง API ของคุณไม่ควรมีตรรกะทางธุรกิจ

ให้แผนผังแก่มัน:

Architecture

  • src/lib/services/ → ตรรกะทางธุรกิจทั้งหมด
  • src/components/ → คอมโพเนนต์ UI แบบไม่มีสถานะเท่านั้น
  • src/lib/store/ → สถานะส่วนกลาง (Zustand)
  • src/app/api/ → เส้นทาง API, ไม่มีตรรกะทางธุรกิจที่นี่
  • เข้าถึง DB ผ่าน Server Actions หรือ API routes เท่านั้น

ไม่ใช่รายการโครงสร้างต้นไม้ทั้งหมด แค่พอให้ Claude รู้ว่าสิ่งต่างๆ อยู่ที่ไหน และที่สำคัญกว่าคือ ไม่ควรไปที่ไหน

ความแตกต่างนี้... ว่ามันไปที่ไหน vs. ไม่ควรไปที่ไหน... คือสิ่งที่ป้องกันข้อผิดพลาดทางสถาปัตยกรรมที่พบบ่อยที่สุด

ส่วนที่ 3: กฎที่เข้มงวด

นี่คือส่วนที่สำคัญที่สุดของไฟล์ทั้งหมด โดยไม่มีข้อยกเว้น

ทุกกฎที่นี่ต้องตอบคำถามเดียว: "ถ้าฉันลบบรรทัดนี้ Claude จะทำผิดพลาดที่เป็นรูปธรรมหรือไม่?"

ถ้าใช่ → กฎนั้นอยู่ต่อ ถ้าไม่ใช่ → มันไม่มีเหตุผลที่จะอยู่ที่นั่น

ตัวอย่างของกฎที่มีคุณค่าสูง:

Rules

  • ห้าม commit ไฟล์ .env หรือความลับเด็ดขาด
  • การเรียก async ทั้งหมดต้องอยู่ใน try/catch
  • ใช้ Functional components เท่านั้น, ห้ามใช้ class components
  • คำนำหน้า commit ที่จำเป็น: feat:, fix:, docs:, refactor:
  • ทุก PR ต้องผ่าน npm run verify ก่อน merge
  • ส่งออกแบบ static เท่านั้น, ไม่มี SSR (ปรับใช้บน S3)
  • IMPORTANT: ตรวจสอบชนิดข้อมูลหลังจากแก้ไขโค้ดทุกครั้ง

สองสิ่งที่ควรสังเกตเกี่ยวกับรายการนี้

ประการแรก กฎเชิงลบมีความสำคัญเท่ากับกฎเชิงบวก "ห้าม commit ไฟล์ .env" เป็นกฎที่ดูเหมือนชัดเจนจนถึงวันที่ Claude ทำมัน ใส่ไว้ในนั้น

ประการที่สอง เครื่องหมายเน้นย้ำ เช่น IMPORTANT หรือ YOU MUST ใช้งานได้จริง

นี่ไม่ใช่เรื่องเล่าลือ Anthropic ยืนยันในเอกสารของพวกเขา: การเพิ่ม IMPORTANT หรือ YOU MUST ก่อนกฎจะช่วยปรับปรุงการปฏิบัติตามกฎของ Claude ได้อย่างวัดผลได้

ใช้เท่าที่จำเป็น: สงวนไว้สำหรับกฎที่มีผลกระทบร้ายแรงที่สุดหากถูกละเลย

ให้มีกฎไม่เกิน 15 ข้อในส่วนนี้ หากเกินกว่านั้น คุณจะทำให้ความสนใจกระจายไปจากกฎที่สำคัญ

ส่วนที่ 4: ค่ากำหนดขั้นตอนการทำงาน

คุณเคยเจอแบบนี้แล้ว คุณขอให้ Claude แก้ไขหนึ่งบรรทัด มันเขียนไฟล์สามไฟล์ใหม่ เปลี่ยนชื่อฟังก์ชันของคุณ และรีแฟกเตอร์คลาสที่ไม่เกี่ยวข้องกับคำขอของคุณเลย

ส่วนนี้ป้องกันสิ่งนั้น:

Workflow

  • ถามคำถามเพื่อความชัดเจนก่อนเริ่มงานที่ซับซ้อน
  • เปลี่ยนแปลงให้น้อยที่สุด อย่ารีแฟกเตอร์โค้ดที่ไม่เกี่ยวข้อง
  • รันเทสหลังจากทุกการเปลี่ยนแปลง แก้ไขข้อผิดพลาดก่อนดำเนินการต่อ
  • สร้าง commit แยกตามการเปลี่ยนแปลงเชิงตรรกะ ไม่ใช่ commit ใหญ่ก้อนเดียว
  • ในกรณีที่ไม่แน่ใจระหว่างสองแนวทาง ให้อธิบายทั้งสองแล้วให้ฉันเลือก

ทุกบรรทัดที่นี่ตอบปัญหาเจ็บปวดที่เป็นรูปธรรม commit ใหญ่ 47 ไฟล์ การเขียนใหม่ทั้งหมดโดยไม่ได้รับการร้องขอ การตัดสินใจทางสถาปัตยกรรมที่ Claude ตัดสินใจเพียงลำพังทั้งที่ควรถามคุณ

ส่วนที่ 5: สิ่งที่ไม่ควรใส่ใน CLAUDE.md ของคุณ

ส่วนนี้สำคัญเท่ากับส่วนอื่นๆ อาจจะมากกว่าด้วยซ้ำ

Do NOT include:

  • คำแนะนำเกี่ยวกับบุคลิกภาพ ("เป็นวิศวกรอาวุโส")
  • กฎการจัดรูปแบบที่ linter ของคุณจัดการอยู่แล้ว
  • @ imports ที่ดึงเอกสารทั้งหมดเข้าสู่ทุกเซสชัน
  • กฎที่ซ้ำกัน (ถ้าส่วนกลางบอกว่า "รันเทส" โปรเจกต์ไม่ต้องทำซ้ำ)
  • สิ่งที่ Claude เรียนรู้ด้วยตนเองผ่านความจำอัตโนมัติ

ประเด็นสุดท้ายนี้ถูกมองข้ามอย่างกว้างขวาง

Claude เก็บโน้ตของมันเองใน ~/.claude/projects/<project>/memory/ รัน /memory ในเซสชันของคุณเพื่อดูว่ามันได้เรียนรู้อะไรเกี่ยวกับโปรเจกต์ของคุณบ้าง หลังจากไม่กี่เซสชัน คุณมักจะพบว่า Claude ได้เก็บข้อมูลที่คุณกำลังจะเขียนด้วยมือใน CLAUDE.md ของคุณแล้ว

อย่าเสียคำสั่งอันจำกัดของคุณไปกับสิ่งที่ Claude จำได้ด้วยตนเอง

เทมเพลตฉบับสมบูรณ์ใน 60 บรรทัด พร้อมใช้งาน

Jouhatsu | AI Influence Operator - inline image

ลบส่วนที่ไม่เกี่ยวข้องกับโปรเจกต์ของคุณ เป้าหมายไม่ใช่การใส่ให้ครบทุกอย่าง เป้าหมายคือเก็บเฉพาะสิ่งที่เปลี่ยนแปลงพฤติกรรมของ Claude ในทางที่วัดผลได้

บรรทัดที่มีผลกระทบมากที่สุดต่อผลลัพธ์ของฉัน: ผลลัพธ์ที่เป็นรูปธรรม

หลังจากทดสอบการตั้งค่าหลายสิบแบบ นี่คือห้าบรรทัดที่สร้างความแตกต่างที่เห็นได้ชัดที่สุด

IMPORTANT: ตรวจสอบชนิดข้อมูลหลังจากแก้ไขโค้ดทุกครั้ง → ป้องกันไม่ให้ Claude ส่งโค้ดที่มีชนิดข้อมูลเสียซึ่งมันตรวจไม่พบหากไม่ได้รับการแจ้งให้ตรวจสอบอย่างชัดเจน

เปลี่ยนแปลให้น้อยที่สุด อย่ารีแฟกเตอร์โค้ดที่ไม่เกี่ยวข้อง → ป้องกันการเขียนไฟล์ทั้งหมดใหม่โดยไม่ได้รับการร้องขอ

สร้าง commit แยกตามการเปลี่ยนแปลงเชิงตรรกะ ไม่ใช่ commit ใหญ่ก้อนเดียว → ป้องกัน commit ปีศาจ 47 ไฟล์ที่อ่านไม่ได้

ในกรณีที่ไม่แน่ใจระหว่างสองแนวทาง ให้อธิบายทั้งสองแล้วให้ฉันเลือก → ป้องกันไม่ให้ Claude ตัดสินใจทางสถาปัตยกรรมเพียงลำพังซึ่งควรเป็นของคุณ

ส่งออกแบบ static เท่านั้น, ไม่มี SSR → ป้องกันไม่ให้ Claude เพิ่มโค้ดฝั่งเซิร์ฟเวอร์ในโปรเจกต์ที่ปรับใช้แบบ static บน S3

สิ่งที่ห้าบรรทัดนี้มีเหมือนกัน: แต่ละบรรทัดป้องกันข้อผิดพลาดที่เฉพาะเจาะจง บ่อยครั้ง และมีค่าใช้จ่ายสูงในเวลาดีบัก

นี่คือการทดสอบสูงสุดสำหรับทุกบรรทัดใน CLAUDE.md ของคุณ

ข้อผิดพลาดพื้นฐานและเหตุผลที่มันแพร่หลาย

ผู้คนปฏิบัติต่อ CLAUDE.md ของตนเหมือนรายการความต้องการหรือพรอมต์บุคลิกภาพ

"เป็นผู้เชี่ยวชาญ" "ทำอย่างละเอียดถี่ถ้วน" "คิดเหมือนผู้เชี่ยวชาญ"

นี่ไม่ใช่คำสั่ง มันเป็นการคิดแบบเวทมนตร์

CLAUDE.md ของคุณควรเป็นเอกสารทางเทคนิค ไม่ใช่สุนทรพจน์สร้างแรงบันดาลใจ สแตก คำสั่ง สถาปัตยกรรม กฎที่เป็นรูปธรรม ขั้นตอนการทำงาน ทุกอย่างอื่นคือเสียงรบกวนที่แข่งขันกับคำสั่งที่สำคัญจริงๆ

เก็บไฟล์ให้ต่ำกว่า 80 บรรทัด แก้ไขทุกครั้งที่ Claude ทำผิดพลาดที่คุณสามารถป้องกันได้

และเหนือสิ่งอื่นใด: เข้าใจว่าไฟล์นี้กลายเป็นอะไรเมื่อเวลาผ่านไป

CLAUDE.md ที่ดีในเดือนแรกช่วยประหยัดเวลาในทุกเซสชัน ภายในเดือนที่สาม มันได้บันทึกธรรมเนียมและสแตกของคุณอย่างแม่นยำพอที่ Claude ทำงานได้เกือบเหมือนสมาชิกในทีม

ภายในเดือนที่หก มันมีข้อผิดพลาดทุกครั้งที่ Claude เคยทำในโปรเจกต์นี้และป้องกันทั้งหมดโดยอัตโนมัติ

ไฟล์นี้เพิ่มมูลค่า มันดีขึ้นด้วยทุกการแก้ไข มันค่อยๆ กลายเป็นเอกสารปฐมนิเทศที่ดีที่สุดที่คุณเคยเขียน

ไม่ใช่เพื่อ Claude แต่เพื่อคุณ

Save to YouMind

Use YouMind to read viral articles deeply

Save the source, ask focused questions, summarize the argument, and turn a viral article into reusable notes in one AI workspace.

Explore YouMind
สำหรับครีเอเตอร์

เปลี่ยน Markdown ของคุณให้เป็นบทความ 𝕏 ที่สะอาดตา

เวลาคุณเผยแพร่งานเขียนยาวของตัวเอง การจัดรูปแบบรูปภาพ ตาราง และบล็อกโค้ดให้เข้ากับ 𝕏 นั้นน่าปวดหัว YouMind เปลี่ยนร่าง Markdown ทั้งฉบับให้เป็นบทความ 𝕏 ที่สะอาดตาและพร้อมโพสต์ทันที

ลอง Markdown เป็น 𝕏

แพตเทิร์นให้ถอดรหัสเพิ่มเติม

บทความไวรัลล่าสุด

สำรวจบทความไวรัลเพิ่มเติม