Claude Code เป็น AI ช่วยเขียน code ที่ช่วยเราวางแผน เขียน และแก้ไข code บนคอมพิวเตอร์ได้ผ่านคำสั่งภาษาธรรมชาติ (natural language)
หนึ่งในสิ่งที่ทำให้ Claude Code ทำงานได้อย่างมีประสิทธิภาพ คือ context
ถ้าไม่มี context, Claude จะขาดบริบทในการทำงาน และไม่สามารถเขียน code ได้อย่างมีประสิทธิภาพได้
ในบทความนี้ เราจะมาทำความรู้จักกับ context และวิธีใช้งาน context ใน Claude Code อย่างถูกวิธีกัน
บทความนี้แบ่งเป็น 2 ส่วน:
- ความหมายของ context
- วิธีจัดการ context ที่ถูกต้อง
ถ้าพร้อมแล้ว ไปเริ่มกันเลย
- 🤨 Context ใน Claude Code คืออะไร? และสำคัญยังไง?
- 👍 วิธีจัดการ Context ที่ถูกต้อง
- 💪 บทสรุป
- 🫵 Your Turn
- 📃 References
🤨 Context ใน Claude Code คืออะไร? และสำคัญยังไง?
Context คือ ความจำในการทำงานของ Claude (working memory)
Context เก็บประวัติการพูดคุยระหว่างเรากับ Claude รวมถึงการทำงานของ Claude เช่น การอ่านไฟล์และการแก้ไขไฟล์ ซึ่งช่วยให้ Claude มีข้อมูลบริบทในการทำงาน
เมื่อ context เต็ม Claude จะลืมการพูดคุยช่วงต้น และมีโอกาสทำงานผิดพลาดมากขึ้น
เช่น ตอนต้น session เราบอกให้ Claude เขียน comment กำกับ code ทุกครั้ง พอ context เต็ม Claude จะลืมคำสั่งนี้ และไม่ comment code ตามที่เราต้องการ
ดังนั้น เราควรจะจัดการ context ให้ดี เพื่อให้ Claude ทำงานได้อย่างมีประสิทธิภาพมากที่สุด
👍 วิธีจัดการ Context ที่ถูกต้อง
5 วิธีในการจัดการ context ไม่ให้เต็มเร็ว:
- เขียน prompt ให้เจาะจง
- ใช้
CLAUDE.md - ปิดใช้งาน skills and MCPs
- ใช้ subagent
- ลบหรือสรุปข้อมูล
.
✏️ วิธีที่ 1. เขียน Prompt ให้เจาะจง
เขียน prompt ให้ชัดเจนและเจาะจง เพื่อที่ Claude จะไม่ต้องคิดทบทวนคำสั่งหลายรอบ
❌ ตัวอย่าง prompt ที่เปลือง context:
แก้ code ให้หน่อย
เพราะ Claude จะต้องคิดก่อนลงมือทำ:
- มองหาจุดไหนที่ต้องแก้
- คิดว่าแก้เพื่ออะไร
- คิดว่าแก้ยังไง
- ลงมือแก้
ทำให้เปลือง context โดยไม่จำเป็น
✅ ตัวอย่าง prompt ที่ประหยัด context:
แก้ calculate_sum() ในไฟล์ @calculator.pyเพื่อ handle data type ที่ไม่ใช่ int หรือ float
เพราะ Claude สามารถคิดและลงมือแก้ได้เลย โดยตีกรอบบริบทว่าอะไรที่ต้องแก้บ้าง
.
📑 วิธีที่ 2. ใช้ CLAUDE.md
ใส่บริบทและสิ่งที่ Claude ควรรู้ไว้ใน CLAUDE.md ซึ่งเป็นไฟล์กำกับการทำงานของ Claude เพื่อที่ Claude จะได้เข้าใจบริบทในการทำงานได้โดยไม่ต้องอ่าน code ทั้งหมดใหม่ทุกครั้ง
ไม่มี CLAUDE.md | มี CLAUDE.md |
|---|---|
| อ่าน code ทั้งหมดเพื่อเข้าใจบริบท | อ่านแค่ CLAUDE.md |
2 วิธีในการสร้าง CLAUDE.md:
- สั่งให้ Claude สร้างให้ ด้วยคำสั่ง
/init(แนะนำ) - สร้างเองใน text editor
ตัวอย่าง CLAUDE.md:
Project: My To-Do App What this isA simple to-do list app.Frontend only, no backend yet.Built with HTML, CSS, and vanilla JavaScript. Do Keep the code in plain JavaScript Explain any code changes in plain English before making them Always test in the browser before marking tasks as complete Don't Don't use React, Vue, or any framework Don't rewrite the whole file for a small fix Don't delete comments that explain "why", only "what"
.
⛏️ วิธีที่ 3. ปิดใช้งาน Skill และ MCP
ปิด skill และ MCP ที่ไม่ใช้งาน
Claude จะได้รับข้อมูล skill และ MCP ที่เปิดใช้งานทุกครั้ง ไม่ว่า skill หรือ MCP เหล่านี้ถูกใช้งานหรือไม่ก็ตาม
ดังนั้น เมื่อเราไม่ปิด skill และ MCP ที่เราไม่ใช้แล้ว เราจะเสีย context ไปโดยไม่จำเป็น
คำสั่งสำหรับปิด skill และ MCP:
/skillsเพื่อจัดการ Skill/mcpเพื่อจัดการ MCP
.
🕵️♀️ วิธีที่ 4. ใช้ Subagent
ใช้งาน subagent หรือ AI agent ที่จะทำงานเฉพาะอย่าง
Subagent มี context ที่แยกต่างหากจาก main agent ทำให้การทำงานของ subagent ไม่นำมาคิดเป็น context ของ main agent
วิธีใช้ subagent:
- ใช้คำสั่ง
/agentsเพื่อจัดการ subagent (เช่น สร้างหรือเปิด-ปิดการใช้งาน) - เรียกใช้ subagent ด้วยคำสั่ง
@ตามด้วยชื่อ subagent (เช่น@code-reviewer).
.
💻 วิธีที่ 5. ลบหรือสรุปข้อมูล
ลบหรือสรุปข้อมูล เพื่อเพิ่มพื้นที่ใน context
3 คำสั่งสำหรับลบและสรุปข้อมูล:
/context: ดูสิ่งที่เก็บไว้ใน context/clear: ลบข้อมูลใน context/compact: สรุปข้อมูลใน context
เมื่อไรควรลบและเมื่อไรควรสรุปข้อมูล?
- ลบเมื่อ context เต็ม และไม่ต้องการทำงานต่อจากเดิม (เช่น พัฒนา feature ใหม่)
- สรุปเมื่อ context เต็ม แต่ต้องทำงานต่อจากเดิม (เช่น ปรับปรุง feature เดิม)
Note: ข้อเสียของการสรุป คือ Claude อาจจะลืมรายละเอียดเล็ก ๆ น้อย ๆ ไปได้
💪 บทสรุป
Context เก็บข้อมูลเพื่อให้ Claude เข้าใจบริบทและสามารถทำงานได้อย่างมีประสิทธิภาพ
5 วิธีในการจัดการ context ไม่ให้เต็ม:
- ใช้ prompt ที่มีความเจาะจง
- เก็บสิ่งที่ Claude ควรรู้ไว้ใน
CLAUDE.md - ปิด skill และ MCP ที่ไม่ใช้งาน
- ใช้ subagent ทำงานย่อย
- ลบหรือสรุปข้อมูลที่ใน context
🫵 Your Turn
หลังอ่านบทความนี้แล้ว ลองมาใช้ Claude Code กันดูนะครับ:
- ติดตั้ง Claude Code
- คู่มือการใช้งาน Claude Code
- 4 ขั้นตอนในการใช้ Claude Code ที่ถูกต้อง
- 30+ คำสั่งสำหรับทำงานกับ Claude Code
