ความรู้วันนี้

เทคโนโลยี การศึกษา อาชีพ และข่าวสาร

บล็อกที่ดูแลโดย พี่อาโต

วิธี Resume Session ของ Claude Code

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

ปัญหาที่พบบ่อยเมื่อปิด Claude Code แล้วต้องเริ่มใหม่

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

ประเด็นสำคัญที่ต้องรู้ก่อนเริ่มใช้งาน

ประเด็นสำคัญ
  • Claude Code บันทึกบทสนทนาแต่ละ session ลงเครื่องอย่างต่อเนื่องระหว่างทำงาน โดยผูกไว้กับไดเรกทอรีโปรเจกต์ที่เริ่มต้นใช้งาน
  • มีวิธีกลับไปทำงานต่อหลักๆ สี่แบบ คือ claude –continue, claude –resume, claude –resume ระบุชื่อ session และ claude –from-pr
  • คำสั่ง /resume ที่พิมพ์ภายใน session ที่กำลังทำงานอยู่ ใช้สลับไปยังบทสนทนาอื่นได้โดยไม่ต้องปิดโปรแกรมก่อน
  • session ที่สร้างจาก claude -p หรือผ่าน Agent SDK จะไม่ปรากฏในหน้าต่างเลือก session แต่ยัง resume ได้ด้วยการระบุ session ID โดยตรง

ความแตกต่างระหว่าง claude –continue กับ claude –resume

คำสั่งสองแบบนี้เป็นคำสั่งที่ใช้บ่อยที่สุด แต่มีจุดประสงค์ต่างกันชัดเจน

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

ปัญหาการเริ่มบทสนทนาใหม่หลังปิด Claude Code

claude –resume เมื่อไม่ระบุอาร์กิวเมนต์เพิ่มเติม จะเปิดหน้าต่างเลือก session แบบอินเทอร์แอกทีฟให้เลือกจากรายการบทสนทนาที่มีอยู่ ส่วนถ้าระบุชื่อ session ต่อท้าย เช่น claude –resume ชื่อ-session จะกลับไปที่ session นั้นโดยตรงทันทีโดยไม่ต้องเปิดหน้าต่างเลือก เหมาะกับกรณีที่มีหลาย session ค้างอยู่และต้องการเลือกงานเฉพาะเจาะจง

ประเด็นสำคัญก่อนใช้งานฟีเจอร์ resume session

ตารางเปรียบเทียบคำสั่ง resume ทั้งหมด

คำสั่ง วิธีการทำงาน เหมาะกับกรณีใด
claude –continue กลับไปบทสนทนาล่าสุดในไดเรกทอรีปัจจุบันโดยอัตโนมัติ ต้องการทำงานต่อจากจุดเดิมทันทีโดยไม่ต้องเลือก
claude –resume เปิดหน้าต่างเลือก session แบบอินเทอร์แอกทีฟ มีหลาย session ค้างอยู่และต้องการดูรายการก่อนเลือก
claude –resume ระบุชื่อ กลับไปที่ session ที่ระบุชื่อไว้โดยตรง รู้ชื่อ session ที่ต้องการอยู่แล้ว ไม่ต้องเลือกจากรายการ
claude –from-pr หมายเลข กลับไปที่ session ที่เชื่อมโยงกับ pull request นั้น ทำงานต่อจากบทสนทนาที่เกี่ยวข้องกับ PR เฉพาะเจาะจง
/resume สลับไปยังบทสนทนาอื่นจากภายใน session ที่กำลังทำงานอยู่ ต้องการสลับงานโดยไม่ต้องปิดโปรแกรมก่อน

วิธีใช้หน้าต่างเลือก session

เมื่อรัน claude –resume โดยไม่ระบุชื่อ หน้าต่างเลือก session จะแสดงรายการบทสนทนาแบบอินเทอร์แอกทีฟที่มีอยู่ในไดเรกทอรีโปรเจกต์ปัจจุบัน โดยค่าเริ่มต้นจะแสดงเฉพาะ session จาก worktree ปัจจุบัน รวมถึง session จากที่อื่นที่เคยถูกเพิ่มเข้ามาด้วยคำสั่ง /add-dir หากต้องการค้นหาบทสนทนาที่กระจายอยู่ใน worktree อื่นของ repository เดียวกัน หรือค้นหาข้ามไปยังโปรเจกต์อื่นทั้งหมดในเครื่อง หน้าต่างนี้มีตัวเลือกสำหรับขยายขอบเขตการค้นหาให้ครอบคลุมมากขึ้นด้วย วิธีนี้ช่วยแก้ปัญหาจำ session เดิมไม่ได้ว่าอยู่ในโฟลเดอร์ไหน โดยไม่ต้องพิมพ์ path เองทุกครั้ง

ความแตกต่างระหว่างคำสั่ง continue กับ resume

ข้อควรระวังเรื่องไดเรกทอรีการทำงาน

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

ตารางเปรียบเทียบคำสั่ง resume ทั้งหมด

การ resume session ที่สร้างจาก claude -p หรือ Agent SDK

session ที่ถูกสร้างขึ้นผ่านโหมด claude -p หรือผ่านการเรียกใช้งานด้วย Agent SDK จะไม่ปรากฏอยู่ในหน้าต่างเลือก session แบบอินเทอร์แอกทีฟตามปกติ อย่างไรก็ตาม session ประเภทนี้ยังคงถูกบันทึกไว้และสามารถ resume ได้โดยระบุ session ID ต่อท้ายคำสั่ง claude –resume โดยตรง ข้อควรทราบคือการค้นหา session ด้วย ID จะถูกจำกัดขอบเขตอยู่เฉพาะไดเรกทอรีโปรเจกต์ปัจจุบันและ git worktree ของมันเท่านั้น จึงต้องรันคำสั่งจากไดเรกทอรีเดียวกับที่ session นั้นถูกสร้างขึ้นในตอนแรก

วิธีใช้หน้าต่างเลือก session แบบอินเทอร์แอกทีฟ

🛒 สินค้าแนะนำ

AliExpress 🛒 สินค้าแนะนำ

ตำแหน่งจัดเก็บข้อมูล session

ข้อมูล session ทั้งหมดของ Claude Code ถูกเก็บไว้ในเครื่องของผู้ใช้เอง โดยแบ่งออกเป็นสองส่วนหลัก ส่วนแรกคือดัชนีรวมที่เก็บประวัติของทุกบทสนทนาไว้ในที่เดียว ส่วนที่สองคือโฟลเดอร์ที่แยกตามแต่ละโปรเจกต์ ซึ่งภายในจะเก็บไฟล์บทสนทนารายบุคคลของแต่ละ session พร้อมข้อมูลสรุปประกอบ การเข้าใจโครงสร้างนี้ช่วยให้วิเคราะห์ได้ง่ายขึ้นเวลา resume แล้วหา session ไม่เจอ เพราะสาเหตุมักมาจากการรันคำสั่งผิดไดเรกทอรีโปรเจกต์ ไม่ใช่ข้อมูลสูญหาย

ข้อควรระวังเรื่องไดเรกทอรีการทำงาน

เช็กลิสต์ก่อนและหลังการ resume session

  • ตรวจสอบก่อนว่ากำลังอยู่ในไดเรกทอรีโปรเจกต์เดียวกับที่เริ่ม session ไว้หรือไม่
  • ถ้าต้องการกลับไปงานล่าสุดในโปรเจกต์เดียวกันทันที ให้ใช้ claude –continue
  • ถ้ามีหลาย session ค้างและต้องการเลือกดูรายการก่อน ให้ใช้ claude –resume แล้วเลือกจากหน้าต่างที่เปิดขึ้นมา
  • ถ้าเป็น session จาก claude -p หรือ Agent SDK ให้เตรียม session ID ไว้และรันจากไดเรกทอรีเดิมที่สร้าง session นั้น
  • หลัง resume สำเร็จ ควรตรวจสอบว่าประวัติการสนทนาและไฟล์ที่เคยอ่านก่อนหน้ากลับมาครบตามที่คาดไว้ ก่อนเริ่มทำงานต่อ
การ resume session จาก claude -p หรือ Agent SDK

คำถามที่พบบ่อย

ถาม: ถ้าจำชื่อ session ไม่ได้ต้องทำอย่างไร
ตอบ: ให้ใช้ claude –resume โดยไม่ระบุชื่อ เพื่อเปิดหน้าต่างเลือก session แล้วดูรายการบทสนทนาที่มีอยู่ก่อนตัดสินใจเลือก

ถาม: resume แล้วหา session ไม่เจอ ต้องตรวจอะไรก่อน
ตอบ: ให้ตรวจสอบก่อนว่ากำลังรันคำสั่งจากไดเรกทอรีโปรเจกต์เดียวกับตอนที่เริ่ม session ไว้หรือไม่ เพราะ session ผูกอยู่กับไดเรกทอรีนั้น

ตำแหน่งจัดเก็บข้อมูล session บนเครื่อง

ถาม: session จาก claude -p resume ได้หรือไม่
ตอบ: ได้ แต่จะไม่ปรากฏในหน้าต่างเลือก session ต้องระบุ session ID โดยตรงกับคำสั่ง claude –resume และรันจากไดเรกทอรีเดิมที่สร้าง session นั้น

เช็กลิสต์ก่อนและหลังการ resume session

ถาม: /resume ต่างจาก claude –resume อย่างไร
ตอบ: /resume เป็นคำสั่งที่พิมพ์จากภายใน session ที่กำลังทำงานอยู่เพื่อสลับไปบทสนทนาอื่น ส่วน claude –resume เป็นคำสั่งที่รันตอนเปิดโปรแกรมใหม่จาก terminal

  1. Claude Code Documentation, Manage sessions, code.claude.com/docs/en/sessions

ต้องการเปรียบเทียบและคู่มือการซื้อเพิ่มเติมไหม

ดูเพิ่มเติมที่ Atovia →

เข้าร่วมชุมชนของเรา

Leave a Comment