Skip to main content

แนวทางปฏิบัติที่ดีที่สุดสำหรับ Claude Code

เคล็ดลับและรูปแบบสำหรับการใช้ Claude Code ให้ได้ประโยชน์สูงสุด ตั้งแต่การกำหนดค่าสภาพแวดล้อมไปจนถึงการขยายขนาดด้วย parallel sessions

ให้ Claude มีวิธีตรวจสอบงาน

tip

ให้ Claude มีการตรวจสอบที่สามารถรันได้: test, build, screenshot เพื่อเปรียบเทียบ นี่คือความแตกต่างระหว่าง session ที่คุณดูและ session ที่คุณออกจากได้

Claude หยุดเมื่องานดูเสร็จ โดยไม่มีการตรวจสอบที่สามารถรันได้ "ดูเสร็จ" เป็นสัญญาณเดียวที่มี ให้ Claude มีบางอย่างที่ให้ผลผ่านหรือล้มเหลว และลูปจะปิดเองได้

กลยุทธ์ก่อนหลัง
ให้เกณฑ์การตรวจสอบ"implement a function ที่ตรวจสอบ email addresses""เขียน validateEmail function ตัวอย่าง test cases: [email protected] เป็น true, invalid เป็น false รัน test หลังจาก implement"
ตรวจสอบการเปลี่ยนแปลง UI ด้วยภาพ"ทำ dashboard ให้ดูดีขึ้น""[วาง screenshot] implement design นี้ ถ่าย screenshot ผลลัพธ์และเปรียบเทียบกับต้นฉบับ ระบุความแตกต่างและแก้ไข"
แก้ปัญหาต้นเหตุ ไม่ใช่อาการ"build ล้มเหลว""build ล้มเหลวพร้อม error นี้: [วาง error] แก้และตรวจสอบว่า build สำเร็จ แก้ปัญหาต้นเหตุ อย่าซ่อน error"

สำรวจก่อน วางแผน แล้วเขียนโค้ด

tip

แยกการวิจัยและการวางแผนออกจากการดำเนินการเพื่อหลีกเลี่ยงการแก้ปัญหาผิด

การปล่อยให้ Claude เริ่มเขียนโค้ดทันทีอาจผลิตโค้ดที่แก้ปัญหาผิด ใช้ plan mode เพื่อแยกการสำรวจออกจากการดำเนินการ

Workflow ที่แนะนำ:

  1. สำรวจ: เข้า plan mode Claude อ่านไฟล์และตอบคำถามโดยไม่ทำการเปลี่ยนแปลง
  2. วางแผน: ขอให้ Claude สร้างแผนการดำเนินการโดยละเอียด กด Ctrl+G เพื่อเปิดแผนในโปรแกรมแก้ไขข้อความ
  3. ดำเนินการ: ออกจาก plan mode และให้ Claude เขียนโค้ด
  4. Commit: ขอให้ Claude commit พร้อมข้อความอธิบายและสร้าง PR

ให้บริบทที่ชัดเจนใน Prompt

tip

ยิ่ง instruction ของคุณชัดเจนมากเท่าไหร่ คุณต้องแก้ไขน้อยลงเท่านั้น

กลยุทธ์ก่อนหลัง
กำหนดขอบเขตงาน"เพิ่ม test สำหรับ foo.py""เขียน test สำหรับ foo.py ครอบคลุม edge case ที่ user ออกจากระบบแล้ว หลีกเลี่ยง mocks"
ชี้แหล่งข้อมูล"ทำไม ExecutionFactory ถึงมี API แปลกๆ?""ดู git history ของ ExecutionFactory และสรุปว่า API มาจากไหน"
อ้างอิงรูปแบบที่มีอยู่"เพิ่ม calendar widget""ดูวิธีที่ widget ถูก implement บนหน้า home เพื่อเข้าใจรูปแบบ HotDogWidget.php เป็นตัวอย่างที่ดี ทำตามรูปแบบเพื่อ implement calendar widget ใหม่"

กำหนดค่าสภาพแวดล้อม

เขียน CLAUDE.md ที่มีประสิทธิภาพ

tip

รัน /init เพื่อสร้างไฟล์ CLAUDE.md เบื้องต้นตาม project structure ปัจจุบัน แล้วปรับปรุงตามเวลา

CLAUDE.md คือไฟล์พิเศษที่ Claude อ่านเมื่อเริ่ม conversation ทุกครั้ง รวม Bash commands, code style และกฎ workflow

# Code style
- ใช้ ES modules (import/export) syntax ไม่ใช่ CommonJS (require)
- Destructure imports เมื่อเป็นไปได้ (เช่น import { foo } from 'bar')

# Workflow
- ตรวจสอบ typecheck เมื่อเสร็จการเปลี่ยนแปลงโค้ด
- ชอบรัน test เดียวมากกว่า test suite ทั้งหมด เพื่อประสิทธิภาพ
รวมไม่รวม
Bash commands ที่ Claude เดาไม่ได้สิ่งที่ Claude สามารถหาได้จากการอ่านโค้ด
กฎ code style ที่แตกต่างจาก defaultconvention ภาษาที่ Claude รู้แล้ว
Testing instructions และ test runner ที่ต้องการAPI documentation โดยละเอียด (ลิงก์ไปที่ docs แทน)
Repository etiquette (ตั้งชื่อ branch, PR conventions)ข้อมูลที่เปลี่ยนบ่อย

กำหนดค่า Permissions

tip

ใช้ auto mode ให้ classifier จัดการการอนุมัติ หรือใช้ /permissions เพื่อ allowlist commands เฉพาะ หรือ /sandbox สำหรับ OS-level isolation

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

  • Auto mode: classifier แยก model ตรวจสอบ commands และบล็อกเฉพาะสิ่งที่ดูเสี่ยง
  • Permission allowlists: อนุญาต tools เฉพาะที่คุณรู้ว่าปลอดภัย
  • Sandboxing: เปิด OS-level isolation ที่จำกัดการเข้าถึงไฟล์และเครือข่าย

สื่อสารอย่างมีประสิทธิภาพ

ถาม Claude เกี่ยวกับ Codebase

tip

ถาม Claude คำถามที่คุณจะถาม senior engineer

เมื่อเรียนรู้ codebase ใหม่ ใช้ Claude Code เพื่อการเรียนรู้และสำรวจ คุณสามารถถาม Claude ประเภทคำถามเดียวกับที่คุณถาม engineer อื่น:

  • Logging ทำงานอย่างไร?
  • ฉันสร้าง API endpoint ใหม่อย่างไร?
  • async move { ... } ทำอะไรในบรรทัดที่ 134 ของ foo.rs?
  • CustomerOnboardingFlowImpl จัดการ edge case อะไรบ้าง?

ให้ Claude สัมภาษณ์คุณ

tip

สำหรับฟีเจอร์ขนาดใหญ่ ให้ Claude สัมภาษณ์คุณก่อน เริ่มด้วย prompt น้อยที่สุดและขอให้ Claude สัมภาษณ์โดยใช้ AskUserQuestion tool

ฉันต้องการสร้าง [description สั้น] สัมภาษณ์ฉันโดยละเอียดโดยใช้ AskUserQuestion tool

ถามเกี่ยวกับการดำเนินการเชิงเทคนิค, UI/UX, edge cases, ข้อกังวล และ tradeoffs
อย่าถามคำถามชัดเจน ขุดลึกเข้าไปส่วนที่ยากที่ฉันอาจยังไม่ได้พิจารณา

ยังคงสัมภาษณ์จนกว่าจะครอบคลุมทุกอย่าง แล้วเขียน spec ที่สมบูรณ์ไปที่ SPEC.md

จัดการ Session

แก้ไขเส้นทางแต่เนิ่นๆ และบ่อยครั้ง

tip

แก้ไข Claude ทันทีที่คุณสังเกตว่าออกนอกเส้นทาง

  • Esc: หยุด Claude กลางทางด้วยปุ่ม Esc บริบทจะถูกเก็บรักษาเพื่อเปลี่ยนทิศทาง
  • Esc + Esc หรือ /rewind: กด Esc สองครั้งหรือรัน /rewind เพื่อเปิด rewind menu
  • "/clear": รีเซ็ตบริบทระหว่างงานที่ไม่เกี่ยวข้อง

ใช้ Subagent สำหรับการสืบสวน

tip

มอบหมายการวิจัยด้วย "use subagents to investigate X" พวกเขาสำรวจในบริบทแยกต่างหาก ทำให้ conversation หลักสะอาดสำหรับการดำเนินการ

เนื่องจากบริบทเป็นข้อจำกัดพื้นฐาน subagent จึงเป็นหนึ่งในเครื่องมือที่ทรงพลังที่สุด:

ใช้ subagent เพื่อตรวจสอบว่าระบบ authentication ของเราจัดการ token refresh อย่างไร
และว่าเรามี OAuth utilities ที่มีอยู่ที่ฉันควรนำมาใช้ซ้ำหรือไม่

ทำงานอัตโนมัติและขยายขนาด

รันหลาย Claude Sessions

tip

รัน Claude session หลายตัวแบบขนานเพื่อเร่งการพัฒนา รัน isolated experiments หรือเริ่ม workflow ที่ซับซ้อน

เลือกแนวทางการทำงานแบบขนานตามปริมาณการประสานงานที่คุณต้องการ:

  • Worktree: รัน CLI sessions แยกใน isolated git checkouts
  • Desktop app: จัดการ local sessions หลายตัวด้วยภาพ
  • Claude Code บนเว็บ: รัน sessions บน cloud infrastructure ที่ Anthropic จัดการ
  • ทีม Agent: การประสานงานอัตโนมัติของหลาย sessions พร้อม task ร่วมกัน

หลีกเลี่ยงรูปแบบที่ล้มเหลวบ่อย

  • The kitchen sink session: เริ่มด้วยงานหนึ่ง แล้วถามสิ่งที่ไม่เกี่ยวข้อง แก้ไขด้วย /clear ระหว่างงานที่ไม่เกี่ยวข้อง
  • แก้ไขซ้ำๆ: แก้ไขหลังจากแก้ไขสองครั้งไม่สำเร็จ /clear และเขียน prompt ที่ดีกว่า
  • CLAUDE.md ที่มีมากเกินไป: ถ้า CLAUDE.md ยาวเกินไป Claude จะเพิกเฉยครึ่งหนึ่ง ตัดออกอย่างไม่ปรานี
  • ความเชื่อมั่น-แล้วตรวจสอบที่ช้า: ให้บริบทการตรวจสอบ (test, scripts, screenshots)
  • การสำรวจไม่มีขอบเขต: กำหนดขอบเขตการสำรวจหรือใช้ subagent

แหล่งข้อมูลที่เกี่ยวข้อง