top of page

Codex ห้องยาวจนเริ่มหลงงาน? วิธีทำงานต่อ แตกห้อง และย้าย Session โดยไม่เริ่มใหม่จากศูนย์

21 ชั่วโมงที่ผ่านมา
ยาว 3 นาที

ทำงานจริงกับ Codex ไปสักพัก มีโอกาสเจอปัญหานี้แน่นอนค่ะ

ตอนเริ่มโปรเจกต์ ห้องยังสั้น Codex รู้ว่าเรากำลังทำอะไร ไฟล์ไหนแก้ไปแล้ว ขั้นตอนต่อไปคืออะไร

แต่พอทำต่อหลายวัน...

ทั้งการแก้ Code, Debug, วาง Architecture, เพิ่ม Feature, เปลี่ยน Requirement และการทดลองต่าง ๆ เริ่มรวมอยู่ใน Session เดียว

จนเกิดคำถามว่า

“ห้องนี้เริ่มยาวแล้ว ถ้าจะย้ายไปห้องใหม่ จะทำยังไงให้ Codex ไม่เริ่มงานใหม่จากศูนย์?”

หรือบางครั้งเราไม่ได้อยากย้ายงานเลยค่ะ

แค่อยากถามอีกเรื่องหนึ่ง ทดลองอีกแนวหนึ่ง หรือแตกงานออกไปทำอีกทาง โดยไม่ทำให้ Main Session เดิมเละ

ตรงนี้ Codex มีวิธีจัดการอยู่หลายระดับ

แก่นที่ควรรู้มี 4 ตัวนี้ค่ะ

Resume → Side → Fork → Handoff + Repo

แต่ละตัวไม่ได้ใช้แทนกันนะคะ

1. ถ้าแค่ต้องการกลับมาทำ Session เดิมต่อ — ใช้ Resume

กรณีแรกง่ายที่สุด

ถ้างานยังอยู่เรื่องเดิม ทิศทางเดิม และเราต้องการกลับเข้ามาทำ Session เดิมต่อ

ไม่จำเป็นต้องสร้างห้องใหม่ค่ะ

Codex CLI มีคำสั่งสำหรับ Resume session เดิมโดยตรง เช่น

codex resume

หรือกลับไป Session ล่าสุด

codex resume --last

Codex จะให้เรากลับเข้า Session ที่เคยทำไว้แล้วและทำต่อจากประวัติเดิมได้

เหมาะกับสถานการณ์เช่น

  • เมื่อวานหยุดทำงาน วันนี้กลับมาทำต่อ

  • ปิด Terminal หรือ Codex ไปแล้ว

  • งานยังอยู่โปรเจกต์เดิม

  • ไม่ได้ต้องการสร้างแนวทางใหม่

  • ไม่ได้ต้องการแยก Context

จำง่าย ๆ ว่า

งานเดิม + ห้องเดิม = Resume

2. อยากถามหรือทดลองเรื่องข้างทาง แต่ไม่อยากให้ Main Session ยาวขึ้น — ใช้ Side

นี่เป็นฟีเจอร์ที่มีประโยชน์มากเวลาทำงานยาวค่ะ

สมมติ Codex กำลังทำระบบหลักอยู่

ระหว่างนั้นเราเกิดสงสัยว่า

Library ตัวนี้รองรับวิธีนี้ไหม?

หรือ

ถ้าเปลี่ยน Architecture เป็นอีกแบบจะมีข้อเสียอะไร?

เราอยากคุย อยากวิเคราะห์ แต่ยังไม่อยากให้เรื่องเหล่านั้นเข้าไปปนกับ Main Thread

ตรงนี้ใช้ Side Conversation

ใน Codex มี /side สำหรับเปิด Side Conversation โดย Codex implementation ปัจจุบันอธิบาย Side ว่าเป็น ephemeral fork หรือการแตกจาก Thread หลักแบบชั่วคราว

ตัวอย่าง

/side

แล้วค่อยถามเรื่องที่ต้องการแยกออกมา

ประโยชน์คือ Main Session ยังสามารถรักษาแกนงานหลักไว้ได้ โดยไม่ต้องเอาทุกคำถาม ทุกการทดลอง และทุกเรื่องข้างทางไปรวมอยู่ใน Context เดียว

เหมาะกับ

  • ถามเรื่องข้างเคียง

  • Research ก่อนตัดสินใจ

  • วิเคราะห์ Alternative

  • ตรวจ Documentation

  • Debug ประเด็นที่ยังไม่แน่ว่าเกี่ยวกับงานหลักหรือไม่

  • อยากคิดก่อน แต่ยังไม่อยากเปลี่ยน Main Work

แต่มีเรื่องที่ต้องเข้าใจค่ะ

Side ไม่ใช่ Fork แบบถาวร

Side Conversation ถูกออกแบบให้เป็นลักษณะชั่วคราวมากกว่า ดังนั้นถ้าเรื่องที่ทดลองเริ่มกลายเป็น “งานจริงที่จะเดินต่อ” ไม่ควรฝากงานสำคัญไว้ใน Side อย่างเดียว

3. ถ้าอยากแตกจากงานปัจจุบัน แล้วเอา Context เดิมไปสร้าง Session ใหม่จริง ๆ — ใช้ Fork

นี่คือจุดสำคัญของบทความนี้เลยค่ะ

Fork ต่างจากการเปิด Session ใหม่จากศูนย์

เวลาทำงานมาถึงจุดหนึ่ง เราอาจต้องการเก็บ Main Session เดิมเอาไว้ แต่สร้าง Session ใหม่ที่เริ่มจากสิ่งที่เราทำมาถึงตอนนี้

นี่คือหน้าที่ของ Fork

Codex รองรับการ Fork previous interactive session ไปเป็น Session ใหม่ และในหน้าจอ Codex สามารถเลือกได้ทั้ง Fork chat และ Fork chat in new worktree ตามลักษณะงานที่ต้องการแยก

ถ้าใช้งานผ่าน CLI ก็สามารถ Fork session ได้ เช่น

codex fork

หรือ

codex fork --last

แนวคิดคือ

SESSION เดิม
      │
      ├── เดินต่อแนวทางเดิม
      │
      └── FORK → SESSION ใหม่ → ทดลอง/พัฒนาอีกแนวทาง

ข้อมูลก่อนจุด Fork กลายเป็นฐานให้ Session ใหม่เริ่มต้นได้ โดยไม่ต้องกลับไปอธิบายโปรเจกต์ใหม่ทั้งหมด

นี่จึงเหมาะมากกับงานพัฒนา

ตัวอย่างค่ะ

เรากำลังสร้าง Agent ตัวหนึ่ง

Architecture ปัจจุบันใช้วิธี A

แต่เราอยากลองวิธี B

ถ้าทดลอง B ต่อใน Main Session เลย แล้วสุดท้ายไม่เวิร์ก Context จะเต็มไปด้วยการลองผิดลองถูกจำนวนมาก

วิธีที่สะอาดกว่าคือ

Fork จากจุดที่ระบบยังถูกต้อง

แล้วให้ Session ใหม่ทดลอง B

ถ้า B ไม่ดี ก็กลับ Session เดิม

ถ้า B ดีกว่า ก็พัฒนาต่อจาก Fork นั้นได้

นี่เป็นประโยชน์ที่ต่างจาก Side อย่างชัดเจนค่ะ

Side

เหมือนเดินออกจากโต๊ะไปถามอะไรสั้น ๆ แล้วกลับมาทำงานเดิม

Fork

เหมือน Copy สถานะงานถึงจุดนี้ แล้วเปิดโต๊ะทำงานอีกโต๊ะหนึ่งเพื่อเดินงานต่อจริง

แล้ว Fork ช่วยเรื่อง Context ได้ทั้งหมดไหม?

ช่วยได้มากค่ะ แต่ครูเฟิร์นไม่แนะนำให้คิดว่า

“มี Fork แล้วไม่ต้องจัดระบบข้อมูลโปรเจกต์อีก”

เพราะเมื่อโปรเจกต์ใหญ่ขึ้น ปัญหาจะไม่ได้มีแค่ “AI จำบทสนทนาได้ไหม”

แต่จะเริ่มมีเรื่อง

  • ตอนนี้ Version ไหนคือของจริง

  • Architecture ล่าสุดคืออะไร

  • ไฟล์ไหนเลิกใช้แล้ว

  • Decision ไหนถูกยกเลิกแล้ว

  • Agent ตัวไหนรับผิดชอบอะไร

  • งานอะไรเสร็จแล้ว

  • Next Action จริงคืออะไร

เรื่องพวกนี้ไม่ควรถูกฝากไว้กับ Chat History เพียงอย่างเดียวค่ะ

4. งานใหญ่ หลายวัน หลาย Agent — ทำ Handoff แล้วให้ Repo เป็น Source of Truth

นี่คือวิธีที่ครูเฟิร์นใช้กับงานจริงมากขึ้นเรื่อย ๆ

พอโปรเจกต์เริ่มใหญ่ เราจะไม่ถามว่า

“ทำยังไงให้ Codex จำทุกอย่าง?”

แต่เปลี่ยนเป็น

“ทำยังไงให้ Codex เปิดเข้ามาแล้วอ่านสถานะล่าสุดของโปรเจกต์ได้?”

สองอย่างนี้ต่างกันมากค่ะ

วิธีแรกพึ่งความจำของ Session

แต่วิธีที่สองสร้าง Project Memory ที่อยู่นอกบทสนทนา

ก่อนจะย้าย Session สามารถให้ Codex สร้าง Handoff เป็น Markdown เช่น

สรุป Handoff ล่าสุดของโปรเจกต์นี้เป็นไฟล์ Markdown

ให้มี:
- เป้าหมายของโปรเจกต์
- สถานะปัจจุบัน
- สิ่งที่ทำเสร็จแล้ว
- Architecture ล่าสุด
- repo/path ที่เกี่ยวข้อง
- ไฟล์สำคัญ
- commit ล่าสุด
- Decision ที่ต้องยึด
- สิ่งที่ทดลองแล้วและไม่ควรทำซ้ำ
- งานค้าง
- Next Action
- Prompt สำหรับ Agent/Session ที่รับงานต่อ

จากนั้น Session ใหม่ไม่ต้องย้อนอ่านบทสนทนายาวทั้งหมด

ให้เริ่มจาก

อ่าน AGENTS.md
อ่าน README.md
อ่าน Handoff ล่าสุด
ตรวจสถานะใน repo

จากนั้นทำงานต่อจาก Next Action
ห้ามเริ่มโปรเจกต์ใหม่จากศูนย์

นี่คือจุดที่ Repo กลายเป็นสมองกลางของงาน

ตัวอย่างโครงสร้างง่าย ๆ

PROJECT/
│
├── AGENTS.md
├── README.md
├── ARCHITECTURE.md
├── SOP/
├── DECISIONS/
├── HANDOFF/
├── LOGS/
└── source code / project files

เมื่อจัดแบบนี้แล้ว ต่อให้เปลี่ยน Session เปลี่ยน Agent หรือ Fork ไปกี่ครั้ง

ความจริงของโปรเจกต์ยังอยู่ที่เดิม

สรุป Side, Fork, Resume และ Handoff ต่างกันอย่างไร?

จำแบบนี้ง่ายที่สุดค่ะ

Resume

กลับไปทำงานเดิม

Session เดิม Context เดิม งานเดิม

Side

แตกไปถามหรือสำรวจชั่วคราว

ไม่อยากให้คำถามข้างทางไปรบกวน Main Thread

เหมาะกับ Research และการคิดระยะสั้น

Fork

เอางานจากจุดปัจจุบันไปสร้าง Session ใหม่

รักษาฐาน Context เดิมไว้ แต่เปิดทางให้ทำงานต่ออีกเส้นหนึ่ง

นี่เหมาะมากกับการทดลอง Architecture, Feature หรือแนวทางใหม่

Handoff + Repo

ส่งมอบสถานะของโปรเจกต์ให้ Session หรือ Agent ไหนก็อ่านต่อได้

เหมาะกับงานจริง งานหลายวัน งานหลาย Agent และโปรเจกต์ที่ต้องกลับมาทำต่อในอนาคต

ถ้าถามว่าครูเฟิร์นใช้แบบไหน?

จริง ๆ ไม่ได้เลือกเพียงตัวใดตัวหนึ่งค่ะ

Workflow ที่เหมาะกับงานจริงคือ

MAIN CODEX SESSION
       │
       ├── /side
       │   └── ถาม / Research / ทดลองความคิดชั่วคราว
       │
       ├── Fork
       │   └── แตกงานจริงไปอีกแนวทาง
       │
       └── Handoff
            ↓
          REPO
            ↓
       NEW SESSION / NEW AGENT

และถ้าวันถัดไปแค่กลับมาทำ Session เดิม

Resume → ทำต่อ

นี่ช่วยให้เราไม่ต้องเอาทุกอย่างยัดอยู่ในห้องเดียว

และไม่ต้องกลัวว่าเปิด Session ใหม่แล้ว Codex จะไม่รู้เรื่องอะไรเลย

สิ่งที่สำคัญกว่า “จำ Prompt เก่ง”

เมื่อเริ่มใช้ Codex ทำงานจริง ครูเฟิร์นมองว่าทักษะที่สำคัญไม่ได้มีแค่การเขียน Prompt ค่ะ

แต่คือการออกแบบว่า

AI จะรับงานต่อกันอย่างไร สถานะงานอยู่ที่ไหน อะไรคือ Source of Truth เมื่อ Session ยาวแล้วจะแตกงานตรงไหน เมื่อเปลี่ยน Agent แล้วตัวใหม่จะเริ่มจากอะไร

เมื่อจัด 5 เรื่องนี้ได้ Codex จะเริ่มเปลี่ยนจาก

AI ที่เราต้องคอยเล่างานให้ฟัง

ไปเป็น

ทีมงานที่เปิด Project เข้ามาแล้วรู้ว่าจะทำอะไรต่อ

และนี่เป็นพื้นฐานสำคัญมากสำหรับคนที่กำลังจะขยับจากการ “ใช้ Codex” ไปสู่การสร้าง AI Agent Team สำหรับธุรกิจจริง

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

Fork ใน Codex คืออะไร?

Fork คือการนำ Session ที่มีอยู่ไปสร้าง Session ใหม่ เพื่อให้สามารถพัฒนาหรือทดลองงานต่อจากบริบทเดิมได้ โดยไม่ต้องเปลี่ยนหรือทำลาย Session ต้นทาง

Fork กับ Side ต่างกันอย่างไร?

Side เหมาะกับการถามหรือสำรวจเรื่องข้างทางชั่วคราว และปัจจุบันถูกออกแบบเป็น ephemeral fork ส่วน Fork เหมาะกับการสร้าง Session ใหม่เพื่อเดินงานต่อจริงอย่างเป็นอิสระจากต้นทาง

ถ้าปิด Codex แล้วอยากกลับมาทำงานเดิมควรใช้ Fork หรือไม่?

ถ้าต้องการทำ Session เดิมต่อ ให้ใช้ Resume ไม่จำเป็นต้อง Fork

Fork แล้วจำเป็นต้องทำ Handoff อีกไหม?

สำหรับงานสั้นอาจไม่จำเป็น แต่โปรเจกต์สำคัญควรมี Handoff และ Project Files อยู่ดี เพราะ Fork แก้เรื่องการแตก Session แต่ไม่ได้แทนระบบ Knowledge และ Project State

ทำไมควรเก็บข้อมูลไว้ใน Repo?

เพราะ Repo สามารถเก็บ Code, Version, SOP, Architecture, Decision และ Handoff ไว้เป็นแหล่งข้อมูลกลาง ทำให้ Session หรือ Agent ใหม่ไม่ต้องพึ่ง Chat History เพียงอย่างเดียว

 
 
 

ความคิดเห็น


Contact

8/22 ซอย 1 

หมู่บ้านวิสต้าปาร์ค ถ.รัชดา-รามอินทรา คันนายาว กรุงเทพฯ

ติดต่อด่วน:

096-8514545
065-4642383

ฝ่ายขาย:
wepluscoporation@gmail.com

บริการลูกค้า:
weplusacademy@ gmail.com

Follow

ลงทะเบียน รับโปรโมชั่นพิเศษ และข่าวสารเทคโนโลยีและแพลทฟอร์มโซเชียลก่อนใคร

Thanks for subscribing!

ฝากวางผลงาน:
wepluservices@ gmail.com

Punyachoksap Co.,Ltd

© 2023 by Weplus Academy ( Punyachoksap Co.Ltd.)

bottom of page