บทความ › AI

เปิด AI หลาย session พร้อมกัน แล้วส่งงานข้ามกันด้วย ไฟล์ ไม่ใช่แชท

วันเดียวเปิด Claude Code สามหน้าต่าง ทำเว็บ ออกแบบเกม และทำวิดีโอ AI พร้อมกัน ส่งงานข้าม session ด้วย CLAUDE.md, memory และ git พร้อมกับดักเรื่อง worktree ที่เจอจริง

กลาง อ่าน 9 นาที 21 ตุลาคม 2569

อ่านจบแล้วจะรู้
  • หนึ่ง session ต่อหนึ่งโปรเจกต์ แชทเดียวทำทุกเรื่องจะช้าและปนกัน
  • ส่งงานข้าม session ด้วยไฟล์ที่ commit แล้ว คือ CLAUDE.md, โน้ต memory และ git log ไม่ใช่ก๊อปข้อความจากแชท
  • เขียนบรรทัดสถานะให้เสร็จก่อนเปิด session ใหม่ เพราะมันอ่านไฟล์ตอนเริ่มครั้งเดียว
  • session ที่เปิดจาก task อาจทำงานใน git worktree แยก ต้องบอกคนว่าเปิดไฟล์ไหน และรวม branch กลับเอง

พอใช้ AI เขียนโค้ดจริงจัง งานจะไม่ได้มีโปรเจกต์เดียว วันหนึ่งของผมมีเว็บหลายเว็บต้องเขียนบทความ มีเกม Roblox ที่กำลังออกแบบ และมีงานวิดีโอ AI ที่เพิ่งเริ่ม ถ้ายัดทุกอย่างลงแชทเดียว ทั้งคนทั้ง AI จะช้าและสับสน บทความนี้เล่าวิธีที่ใช้อยู่ คือเปิดหลาย session พร้อมกัน หนึ่ง session ต่อหนึ่งโปรเจกต์ แล้ว ส่งงานข้ามกันด้วยไฟล์ ไม่ใช่ก๊อปข้อความจากแชท พร้อมกับดักที่เจอจริงระหว่าง 16-21 ต.ค. 2026 (Claude Code บน Windows 11)

ปัญหา: แชทเดียวทำทุกเรื่อง

AI มีพื้นที่ความจำระหว่างทำงานที่เรียกว่า context ทุกไฟล์ที่อ่าน ทุกคำสั่งที่รัน กินพื้นที่นี้ พอแชทเดียวสลับไปมาระหว่างเว็บ Astro, โค้ด Luau ของเกม และ prompt สร้างภาพ จะเกิดสามอย่าง คือ context เต็มเร็วจน AI ต้องสรุปของเก่าทิ้งและลืมที่เพิ่งคุย กฎของโปรเจกต์หนึ่งรั่วไปอีกโปรเจกต์ เช่น สไตล์เขียนบทความไปโผล่ใน README ของเกม และงานที่ควรเดินขนานกันได้ต้องมาต่อคิวในแชทเดียว

EP3 ของซีรีส์ แก้เรื่องหัวรกด้วย subagent ซึ่งดีสำหรับงานย่อย ภายใน โปรเจกต์เดียว แต่เกมกับวิดีโอไม่ใช่งานย่อยของเว็บ มันคนละเครื่องมือ คนละกฎ และต้องการให้คนเข้าไปตอบคำถามคนละจังหวะ แยก session ไปเลยสะอาดกว่า

กติกา: ส่งงานด้วยไฟล์

session แต่ละอันไม่เห็นแชทและความจำของกัน สิ่งเดียวที่ทุก session เห็นเหมือนกันคือ ไฟล์บนดิสก์ที่ commit แล้ว กติกาจึงมีข้อเดียว

อะไรที่อยากให้อีก session รู้ เขียนลงไฟล์ แล้ว commit ก่อนเปิด session นั้น

ผลพลอยได้คือคนอ่านไฟล์เดียวกันได้ ย้อนดูได้ด้วย git และ session ที่เปิดในอีกสัปดาห์ก็เริ่มจากไฟล์เดิมโดยไม่ต้องเล่าใหม่ เป็นหลักเดียวกับ EP1 เรื่อง CLAUDE.md แค่ขยายจาก “AI ตัวเดียวข้ามวัน” เป็น “AI หลายตัวในวันเดียว”

เว็บ6amdev-webเกมroblox-campวิดีโอai-studioCLAUDE.md · git · memoryแชตไม่ส่งต่อทางแชต
แต่ละ session มีโฟลเดอร์ของตัวเอง สิ่งที่ใช้ร่วมกันคือไฟล์

CLAUDE.md สำหรับส่งงาน ใส่อะไรบ้าง

วันที่ 21 ต.ค. session เว็บเป็นคนเปิดงานให้อีกสอง session โดยเขียน CLAUDE.md ลงโฟลเดอร์ใหม่ที่ยังว่าง commit แล้วสร้าง task ว่า “เริ่ม session ที่โฟลเดอร์นี้” ไฟล์ทั้งสองมีโครงเดียวกัน

ส่วนใส่อะไรทำไม
หัวไฟล์ชื่อโปรเจกต์ + ประโยคเดียวว่าคืออะไร + ภาษาที่เจ้าของใช้คุยAI รู้ทันทีว่าอยู่ที่ไหน ตอบใคร
โจทย์ของเจ้าของคำพูดจริงที่เจ้าของพิมพ์มา ยกมาทั้งก้อนตีความได้ แต่ต้นฉบับต้องอยู่ ไว้เทียบว่าหลุดจากที่ขอหรือยัง
เครื่องมือชื่อ เวอร์ชัน และ path เต็ม ของเครื่องมือที่ไม่อยู่ใน PATHsession ใหม่ไม่รู้ว่าเครื่องนี้มีอะไร
โปรเจกต์อ้างอิงpath ของงานเก่า + บอกว่าลอกอะไร (layout, test style, น้ำเสียง README)ได้ของ “เหมือนที่เคยทำ” โดยไม่ต้องอธิบายสไตล์
กฎห้ามอะไร ถามก่อนทำอะไร (เสียเงิน, เผยแพร่)กฎที่ไม่ได้เขียน = ไม่มี
คำถามค้าง + ค่าเริ่มต้นที่แนะนำเรื่องที่ยังไม่ตัดสิน พร้อมคำตอบที่ AI เสนอเจ้าของตอบแค่ “ตามนั้น” หรือแก้บางข้อ
สถานะวันที่ + ทำถึงไหน + ขั้นต่อไปบรรทัดแรกที่ session ใหม่อ่าน

โฟลเดอร์เกม โจทย์คือเกมแคมปิ้งแบบสังคม ไม่แข่งขัน ขั้นแรกคือทำเอกสารออกแบบให้เจ้าของอนุมัติก่อนเขียนโค้ด ไฟล์บอก path ของ rojo.exe และ lune.exe ให้ลอกโครงจาก repo เกมก่อนหน้า บอกกฎว่า server ตัดสินทุกอย่าง และมีคำถามค้าง 5 ข้อ เช่น ทำเป็นตัวอย่างสาธารณะหรือเกมจริง ผู้เล่นเป็นเพื่อนหรือคนแปลกหน้า อะไรปลดล็อกลานใหม่ ส่วนโฟลเดอร์วิดีโอ โจทย์คือละครสั้นแนวตั้งและคลิปสินค้า ไฟล์ชี้ไปที่เครื่องมือ TTS และสร้างภาพที่มีอยู่แล้วบนเครื่องอื่น กฎข้อแรกคือ “ถามก่อนทุกคำสั่งที่กินเครดิต บอกราคาก่อน”

ทั้งสองไฟล์ไม่มีโค้ดสักบรรทัด ไฟล์ส่งงานบอก บริบทและขอบเขต การลงมือเป็นหน้าที่ของ session ใหม่

memory กับ CLAUDE.md กับ git

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

อยากให้รู้ว่าเก็บที่เพราะ
โปรเจกต์นี้ build/deploy ยังไง ห้ามแตะอะไรCLAUDE.md ใน repoผูกกับโค้ด ทุกคนที่ clone ต้องเห็น
เครื่องมืออยู่ path ไหน บน เครื่องนี้CLAUDE.md ถ้าเครื่องเดียว หรือ memory ถ้าต่างกันต่อเครื่องpath ของเครื่องหนึ่งไม่มีค่ากับอีกเครื่อง
เจ้าของทำงานกี่โมง ขัดจังหวะเรื่องไหนได้memoryเรื่องของคน และห้ามขึ้น GitHub
เว็บ A กับ B ดูจาก session นี้ เว็บ C มี session ของตัวเองmemoryเป็นการแบ่งงาน ไม่ใช่ความจริงของโค้ด
ทำอะไรไปแล้ว เมื่อไหร่ ทำไมgit logcommit message ที่ดีคือบันทึกส่งงานที่ถูกที่สุด
สถานะล่าสุด ขั้นต่อไปบรรทัด Status ใน CLAUDE.mdsession ใหม่อ่านตรงนี้ก่อน

git สำคัญกว่าที่คิด ปลายสัปดาห์ session เว็บเขียนบทความเรื่องเกมโดยอ่าน git log ของ repo เกม ว่า commit ไหนเพิ่มด่าน commit ไหนเพิ่ม test สอง session ที่ไม่เคยเห็นแชทของกัน คุยกันผ่านประวัติ git ได้ ถ้า commit message เขียนดี

กับดัก: worktree ที่คนไม่รู้

เรื่องนี้เสียเวลาที่สุดในสัปดาห์นั้น session ที่เปิดจาก task ไม่ได้ทำงานในโฟลเดอร์เดิมเสมอ มันอาจเปิดใน git worktree คือสำเนาของ repo บน branch ใหม่ อยู่อีกโฟลเดอร์หนึ่ง ข้อดีคือหลาย session แก้โค้ดพร้อมกันได้โดยไม่ชน ข้อเสียคือคนไม่รู้

session เกม build ไฟล์ place ใหม่แล้วบอกว่าเสร็จ แต่ไฟล์ที่ผมเปิดค้างไว้ใน Roblox Studio ไม่เปลี่ยนเลย เพราะไฟล์ที่ build อยู่ในโฟลเดอร์ worktree ไม่ใช่โฟลเดอร์ที่ Studio เปิด กว่าจะรู้ก็กดเล่นไปหลายรอบ

บทเรียนสองข้อ หนึ่ง การส่งงานต้องบอก path ที่คนต้องเปิด ไม่ใช่ “build เสร็จแล้ว” แต่ “เปิดไฟล์ <path เต็ม> ใน Studio” สอง รวม branch ของ worktree กลับ main ด้วยความตั้งใจ เช็คได้ในโฟลเดอร์ repo (Git Bash บน Windows)

git worktree list          # มีสำเนาอยู่ที่ไหนบ้าง branch อะไร
git branch --no-merged     # branch ไหนยังไม่รวมเข้ามา

เห็น worktree ที่ไม่รู้จัก ให้ถาม session นั้นว่าทำอะไรไว้ แล้ว merge หรือทิ้งเอง

กับดักที่สอง: โน้ตที่เขียนทีหลัง

session อ่าน CLAUDE.md ตอนเริ่ม ไม่ได้อ่านใหม่ทุกข้อความ ผมแก้บรรทัดสถานะ หลัง เปิด session ใหม่ไปแล้ว มันจึงทำต่อจากสถานะเก่า จนต้องพิมพ์ว่า “อ่าน CLAUDE.md ใหม่” ซึ่งทำได้ แต่ขัดกับเป้าหมาย

เขียนไฟล์ส่งงานให้เสร็จ commit แล้วค่อยเปิด session ไม่ใช่กลับกัน

วันที่มีสาม session

  1. เช้า session เว็บ (โฟลเดอร์ 6amdev-web) รับโจทย์เกมแคมปิ้งเป็นคำพูดสองสามบรรทัด สร้าง roblox-camp เขียน CLAUDE.md ตามตาราง ใส่คำถามค้าง 5 ข้อ commit แล้วเสนอ task “เริ่ม session ที่นี่”
  2. ต่อมา ทำแบบเดียวกันกับ ai-studio ต่างกันที่ชี้ไปหาเครื่องมือเดิมที่ใช้ซ้ำได้ และกฎเรื่องเครดิต
  3. บ่าย สามหน้าต่างเปิดพร้อมกัน เว็บเขียนบทความ เกมเสนอเอกสารออกแบบและถามคำถามค้าง วิดีโอร่างบทและ character sheet แบบไม่เสียเงินเพราะเครื่องที่มี API key ปิดอยู่ ผมสลับไปตอบแต่ละหน้าต่างตามจังหวะของมัน
  4. เย็น เจอเรื่อง worktree แก้โดยใส่ path เต็มใน Status แล้ว merge
  5. วันเดียวกัน session เว็บเขียนโน้ต memory เรื่องชั่วโมงทำงานของผม ให้ session หลังจากนี้รู้ว่าช่วงไหนทำต่อได้เอง ช่วงไหนควรรอ

ไม่มี session ไหนอ่านแชทของอีกอัน ทุกอย่างข้ามกันด้วย CLAUDE.md, memory และ git

ข้อผิดพลาดที่เจอบ่อย

  • ก๊อปข้อความจากแชทไปวางอีกแชท ใช้ได้ครั้งเดียว session ที่สามไม่เห็น
  • CLAUDE.md ยาวเป็นคู่มือทั้งเล่ม AI อ่านทั้งไฟล์ทุกครั้ง เรื่องสำคัญจมหาย เก็บหน้าเดียวถึงสองหน้า รายละเอียดไปอยู่ใน docs/
  • ลืม path เต็ม “ใช้ rojo” ไม่พอถ้าไม่อยู่ใน PATH session ใหม่จะไปโหลดเวอร์ชันอื่นมา
  • เอาข้อมูลส่วนตัวใส่ repo ชั่วโมงทำงาน เบอร์ติดต่อ IP เครื่องในบ้าน ไว้ใน memory
  • บอก “เสร็จ” โดยไม่บอกว่าดูที่ไหน โดยเฉพาะเมื่อทำงานใน worktree

ลองใน 10 นาที

  1. สร้างโฟลเดอร์ของงานที่กำลังจะเริ่ม แล้ว git init
  2. เขียน CLAUDE.md ตามตาราง 7 ส่วน ส่วนละไม่กี่บรรทัด ยกคำพูดโจทย์ของตัวเองมาทั้งก้อน
  3. ใส่คำถามค้าง 3 ข้อ พร้อมค่าเริ่มต้นที่คุณยอมรับได้
  4. ปิดท้ายด้วย ## Status วันนี้ + “ยังไม่มีโค้ด ขั้นต่อไปคือ …”
  5. git add -A && git commit -m "handoff: project brief" ก่อน
  6. เปิด session ในโฟลเดอร์นั้น ข้อความแรก “อ่าน CLAUDE.md แล้วถามคำถามค้างทีเดียว”
  7. รัน git worktree list ดูว่ามันทำงานอยู่โฟลเดอร์ไหน แล้วจดใน Status

ถ้า session ใหม่เริ่มงานได้โดยคุณไม่ต้องอธิบายเพิ่มเกินสองประโยค ไฟล์ส่งงานนั้นใช้ได้แล้ว

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

ทำไมไม่ใช้ subagent แทนการเปิดหลาย session

subagent เหมาะกับงานย่อยในโปรเจกต์เดียวแล้วส่งผลกลับหัวหลัก แต่เกมกับวิดีโอเป็นคนละโปรเจกต์ มีเครื่องมือและกฎคนละชุด และต้องคุยกับคนคนละจังหวะ แยก session จึงสะอาดกว่า

CLAUDE.md กับโน้ต memory ต่างกันตรงไหน

CLAUDE.md อยู่ใน repo ทุก session ที่เปิดโฟลเดอร์นั้นเห็น ส่วน memory อยู่นอก repo ผูกกับเครื่องและคน เก็บเรื่องของเจ้าของที่ไม่ควรไปอยู่ในโค้ด เช่น ชั่วโมงทำงาน หรือโปรเจกต์ไหนดูจากที่ไหน

ต้องเป็น Claude Code เท่านั้นไหม

ไม่ หลักคือ "ส่งงานด้วยไฟล์ที่อยู่ใน git" เครื่องมือ AI เขียนโค้ดตัวอื่นที่อ่านไฟล์คู่มือโปรเจกต์ได้ ใช้วิธีเดียวกันได้หมด

คำสั่งและค่าตั้งในบทความทดสอบบนระบบตัวอย่าง ลองบนเครื่องทดสอบก่อนใช้กับระบบจริงเสมอ

อ่านต่อ

#AIเริ่มต้น

EP1 AI เขียนโค้ดทำงานยังไง และทำไม โปรเจกต์ ต้องมีคู่มือให้มัน

เริ่มซีรีส์ใช้ AI เขียนโค้ด เข้าใจวงรอบการทำงานของ Claude Code และหลักการแรกที่สำคัญที่สุด คือเขียนสิ่งที่อยากให้ AI รู้ลงไฟล์ CLAUDE.md

อ่าน 4 นาที
#AIเริ่มต้น

EP3 Subagent ส่งงานให้ผู้ช่วยที่มีห้องของตัวเอง หัวหลักไม่รก ทำขนานได้

subagent คือผู้ช่วยที่ AI หลักส่งงานไปให้ ทำในห้องของตัวเองแล้วส่งแค่ผลกลับมา เมื่อไหร่ควรใช้ เขียนไฟล์ agent ยังไง จำกัดสิทธิ์ยังไง และข้อเสียที่ต้องรู้

อ่าน 4 นาที
#AIใช้ต่อ

ลองใช้ Claude Code สร้างเว็บสองภาษา จากสั่งงานถึงขึ้นจริง 22 นาที

บันทึกการสร้างเว็บ 6amdev.com ด้วย Claude Code ตั้งแต่ประโยคแรกจนเว็บไทย-อังกฤษขึ้นจริง ใช้เวลาเท่าไหร่ อะไรทำให้เร็ว และตรงไหนที่คนยังต้องตัดสินเอง

อ่าน 4 นาที