บทความนี้สรุปคลิป All Codex CLI Essentials in 12min ของ Lyubomir Stoykov จากช่อง lustoykov ซึ่งเป็น walkthrough ความยาว 12 นาที 14 วินาทีสำหรับผู้ใช้ Codex CLI ของ OpenAI เนื้อหาครอบคลุมตั้งแต่การติดตั้ง การ auth ผ่าน ChatGPT account ความต่างระหว่างโหมด interactive กับ codex exec และชุด slash command ที่ใช้บ่อย รวมถึง flag กลุ่ม sandbox ระบบ Skills ที่ขยายความสามารถของ agent และการ integrate เข้า Cursor หรือ VS Code

จุดที่ทำให้คลิปนี้น่าสนใจกว่า tutorial ทั่วไปคือ Lyubomir ไม่ได้แค่ไล่ feature แต่ยกประเด็น opinion ที่กระทบ workflow โดยตรง โดยเฉพาะคำแนะนำให้ "ข้าม" คำสั่ง /init ที่สร้างไฟล์ AGENTS.md เขาอ้างงานวิจัยที่พบว่าไฟล์ context อัตโนมัติแบบนี้ทำให้อัตราความสำเร็จของงานลดลง และเพิ่ม inference cost มากกว่า 20% สำหรับนักพัฒนาไทยที่คุ้นกับ Claude Code อยู่แล้ว เนื้อหานี้จึงเป็นจุดเริ่มต้นที่ดีในการมองเครื่องมือทางเลือกอีกตัวจากมุมใช้งานจริง ไม่ใช่แค่เทียบ benchmark

ภาพรวมของคำสั่ง Codex CLI ทั้งหมดที่กล่าวถึงในคลิป จัดเป็น cheat sheet ครอบคลุม install, interactive vs exec, slash command, flag, skills

1. ติดตั้งและ auth ภายในไม่ถึงสองนาที

ขั้นตอนติดตั้ง Codex CLI สั้นมาก ในคลิป Lyubomir ระบุว่า ถ้าเครื่องยังไม่มี Node.js ให้ดาวน์โหลดจาก nodejs.org และติดตั้งให้เรียบร้อย จากนั้นเปิด terminal แล้วรันคำสั่ง

npm install -g @openai/codex

เพียงเท่านี้ก็เสร็จสิ้นการติดตั้ง ขั้นถัดมาคือพิมพ์ codex ใน terminal เพื่อเปิด CLI แล้วจะมี prompt ให้เลือกว่าจะ sign in ด้วย ChatGPT account, device code หรือ API key ในคลิป Lyubomir เลือก sign in ด้วย ChatGPT account ผ่าน Google เบราว์เซอร์จึงเปิดหน้า auth ขึ้นมา และเมื่อยืนยันสำเร็จ ก็จะเห็นข้อความ success ทั้งฝั่งเบราว์เซอร์และฝั่ง terminal ถือว่าพร้อมใช้งาน

ตามที่ลูบอเมียร์อธิบาย เหตุผลที่ agent กลุ่มนี้ทรงพลังคือมีเครื่องมือครบสำหรับทำงานเกือบทุกอย่างบนคอมพิวเตอร์ ถ้าผู้ใช้ให้สิทธิ์เพียงพอ ตัวอย่างในคลิปคือคำสั่ง one-off ที่ให้บีบขนาดไฟล์รูปบนเดสก์ท็อปจาก 5 MB ลงต่ำกว่า 2 MB ผ่าน codex exec พร้อม flag --yolo ซึ่งเป็นรูปแบบ non-interactive ที่จะกล่าวถึงในหัวข้อถัดไป

2. แยกให้ออกระหว่าง interactive และ codex exec

Codex CLI มีสองโหมดใช้งานหลักที่ Lyubomir แยกชัดในคลิป

โหมด non-interactive เรียกผ่าน subcommand exec เหมาะกับงานครั้งเดียวจบหรือใช้ในไปป์ไลน์ CI ตัวอย่างจากคลิปคือ

codex exec "reduce the size of sample.png image on my desktop to below 2 MB, save it under sample-optimize" --yolo

โหมดนี้จะไม่เข้าหน้า chat แบบโต้ตอบ Codex จะรันคำสั่งจนเสร็จ แล้วคืน control กลับมาที่ shell ในคลิป Lyubomir ระบุว่างานบีบรูปใช้ไป 7,675 token คิดเป็นราคาประมาณ 3-11 cent โดยอ้างอิง rate ที่ 1 ล้าน input token ราคา 2.50 ดอลลาร์ และ 1 ล้าน output token ราว 15 ดอลลาร์

โหมด interactive เรียกง่าย ๆ ด้วยคำสั่ง codex เพียงคำเดียว แล้วจะเข้าสู่หน้า chat ที่ส่ง prompt โต้ตอบได้ต่อเนื่อง ในคลิป Lyubomir ระบุว่าโดยรวมแล้วโหมด interactive คือโหมดหลักสำหรับการใช้งานประจำวัน เพราะรองรับ slash command, flag override ระหว่าง session และ context ที่ต่อเนื่อง

Tip: งานที่ทำซ้ำใน CI หรืองาน script ที่รู้ผลลัพธ์แน่นอนใช้ codex exec ส่วนงานที่ต้องวางแผน ตัดสินใจ หรือทำ iteration ใช้โหมด interactive จะเหมาะกว่า

3. Slash command ที่ใช้บ่อยที่สุดในโหมด interactive

ในคลิป Lyubomir ระบุว่ามี slash command อยู่หลายตัว แต่หยิบมาเฉพาะที่ใช้บ่อยในชีวิตประจำวัน สรุปได้ดังนี้

  • /permissions: เปิดหน้าให้กำหนดสิทธิ์การเข้าถึงเครื่อง ในคลิป Lyubomir เลือก full access เพื่อให้ Codex ทำงานได้โดยไม่ต้องอนุมัติทีละ action
  • /model: เลือกโมเดลและระดับ reasoning effort ในคลิปแนะนำว่า medium ให้สมดุลที่ดีระหว่าง cost กับความเร็ว และเหมาะกับผู้ที่ไม่ได้สมัครแพ็คเกจระดับ pro ส่วน high หรือ extra high เหมาะกับผู้ที่มีโควต้าเหลือเฟือ
  • /plan: สลับเข้าสู่ plan mode ซึ่ง Codex จะถามคำถามเชิงรายละเอียดเพื่อรีดข้อกำหนดของงานออกมา ก่อนแปลงเป็น plan + to-do list แล้วค่อยเริ่มเขียนโค้ด
  • /new: เปิด chat ใหม่ภายใน session เดิม ไม่ต้องปิดและเปิด Codex ใหม่
  • /copy: copy output ล่าสุดเข้า clipboard
  • /clear: เคลียร์ terminal และเริ่ม chat ใหม่
  • /personality: เลือก communication style ระหว่าง friendly กับ pragmatic
  • /review: รีวิว Git changes เทียบกับ branch หรือดู uncommitted changes ในคลิป Lyubomir ใช้รีวิว uncommitted ทั้ง project แล้วได้ผลเป็น actionable item เรียงตาม priority P1/P2
  • /status: ดู token usage ปัจจุบันและรายละเอียดของ session
  • /statusline: กำหนดสิ่งที่จะแสดงบน status line เช่น ระบุให้แสดงชื่อโมเดลที่ใช้อยู่
  • /compact: สรุปบทสนทนาเพื่อปล่อย token คืน เหมาะกับ session ยาว ๆ ที่ context window เริ่มเต็ม

ในคลิป Lyubomir แนะนำว่า หลังรันงานที่ยาวมาก ควรใช้ /compact เพื่อเก็บประเด็นสำคัญไว้โดยไม่เสีย context ทั้งหมด

เปรียบเทียบโหมด interactive กับ codex exec แบบการ์ดซ้ายขวา แสดง use case, ตัวอย่างคำสั่ง, ข้อดี

4. ทำความเข้าใจ flag กลุ่ม sandbox ก่อนเปิด yolo

นอกจาก slash command ในโหมด interactive แล้ว Codex ยังมี flag ระดับ command-line สำหรับควบคุมพฤติกรรมตอนเริ่มใช้งาน Lyubomir เน้นสามตัวที่สำคัญที่สุด

--yolo เป็น flag ที่ให้สิทธิ์ Codex รันคำสั่งใด ๆ บนเครื่องโดยไม่ต้องขออนุมัติ เทียบเท่ากับการตั้ง --ask-for-approval never คู่กับ --sandbox danger-full-access เหมาะกับผู้ที่รู้ว่ากำลังทำอะไรอยู่ และพร้อมรับผลที่ตามมา

--ask-for-approval มีสามค่าให้เลือก

  • untrusted: ถามอนุมัติก่อนทุก action
  • on-request: ถามอนุมัติเฉพาะเมื่อ action นั้นมีความเสี่ยง
  • never: ไม่ถามเลย

--sandbox กำหนดขอบเขตการเข้าถึงไฟล์ระบบ มีสามค่า

  • read-only: อ่านอย่างเดียว
  • workspace-write: เขียนได้เฉพาะใน workspace ปัจจุบัน
  • danger-full-access: เข้าถึงได้ทั้งระบบ

ในคลิป Lyubomir ระบุชัดว่าตัวเองทำงานในโหมด --yolo เป็นหลัก เพราะเครื่องไม่มีข้อมูล sensitive ที่ไม่ได้ backup ไว้ ดังนั้นผู้ที่จะใช้โหมดนี้ควรประเมินความเสี่ยงก่อนเสมอ สำหรับงานที่รันบนเครื่องที่มีไฟล์สำคัญ การใช้ workspace-write คู่กับ on-request มักเป็นจุดเริ่มต้นที่ปลอดภัยกว่า

Warning: --yolo ไม่ใช่ default ที่เหมาะกับทุกเครื่อง ก่อนเปิดควรประเมินว่าใน home directory มีไฟล์อะไรที่ไม่อยากให้ agent แตะ และมี backup ครบหรือยัง

นอกจากนี้ยังมี config file ที่ ~/.codex/config.toml สำหรับเก็บการตั้งค่าระดับ global โดยค่าที่กำหนดในไฟล์นี้สามารถ override ด้วย flag ตอน launch ได้

5. Bang command, @file และการ resume session

Lyubomir แทรกฟีเจอร์เล็ก ๆ ไว้ระหว่างคลิปหลายตัว แต่ทั้งหมดใช้บ่อยมากในชีวิตประจำวัน

Bang command เรียกใช้คำสั่ง bash ตรงจากโหมด interactive ได้ด้วยการใส่ ! นำหน้า เช่น !ls เพื่อดูไฟล์ใน directory ปัจจุบัน หรือ !cat <file> เพื่อดูเนื้อหาไฟล์ ผู้ใช้จึงไม่ต้องสลับ window ออกไป shell อื่น

คำสั่ง /ps แสดง terminal ทุกตัวที่รันอยู่ใน background ในคลิปใช้ดูว่ามี process ของ application server ที่ Codex สั่งรันค้างอยู่หรือไม่

ใช้ @ อ้างไฟล์ใน project เป็นวิธีส่ง context ให้ Codex แบบตรง ๆ ตัวอย่างจากคลิปคือ Lyubomir แนบ screenshot จาก Dribbble แล้วขอให้ Codex เลียนสไตล์ดีไซน์นั้น

Codex resume เมื่อปิด session ไปแล้วและอยากกลับเข้ามาทำต่อ มีสามรูปแบบ

codex resume                  # เปิด list ให้เลือก session เก่า
codex resume <session-id>     # เปิด session โดยตรงด้วย ID
codex resume-last             # กลับเข้า session ล่าสุด

เรื่องนี้สำคัญมาก เพราะระบบจะเก็บ context window ของ agent ไว้ ทำให้ workflow ต่อเนื่อง ไม่ต้องเริ่ม onboarding agent ใหม่ทุกครั้งที่กลับมาทำงาน

6. Skills system ระบบที่ขยายขีดความสามารถของ Codex

จุดที่ Lyubomir ใช้เวลานานในคลิปคือเรื่อง Skills เพราะนี่คือกลไกที่ทำให้ Codex ขยับจาก coding agent ทั่วไป สู่ agent เฉพาะทางได้ ในคลิปอธิบายว่า Skills แบ่งเป็นสองประเภท

  • System skills ติดตั้งมาให้พร้อมกับ Codex เช่น skill-creator, skill-installer และล่าสุดคือ OpenAI docs
  • Curated skills เป็น skill เสริมที่ติดตั้งเพิ่มได้ จาก GitHub repository ของ OpenAI

แต่ละ skill คือ folder ที่มีไฟล์ skill.md ภายในกำหนดชื่อ คำอธิบาย และ instruction ให้ Codex ทำตาม โครงสร้างเก็บอยู่ใน ~/.codex/skills/ แบบ hierarchical โดยแบ่งเป็นระดับ system, home directory และ project root ลดหลั่นกันไป

วิธีอ้างถึง skill ใน prompt คือใช้สัญลักษณ์ $ นำหน้าชื่อ skill เช่น $skill-installer ในคลิป Lyubomir สาธิตการติดตั้ง Playwright Interactive skill ด้วยคำสั่ง

$skill-installer please install the playwright-interactive skill

หลังจากนั้น Codex จะดาวน์โหลด skill จาก GitHub ของ OpenAI และติดตั้งลงใน ~/.codex/skills/playwright-interactive พร้อมใช้งานทันที Lyubomir สั่งต่อว่า "use the playwright-interactive skill to test the application" ทำให้ Codex เปิด browser ขึ้นมาเอง คลิก เลื่อนหน้า และทำ QA flow โดยอัตโนมัติ จากนั้นสรุปผลที่นำไปสั่งให้ Codex แก้ bug ต่อใน session เดียวกันได้เลย

ในคลิประบุว่ายังมีอีกหนึ่งช่องทางสำหรับดู skill ที่ติดตั้งไว้ คือผ่าน Codex App ซึ่งเป็น GUI ที่แสดง skill ทั้งที่มากับระบบและที่ติดตั้งภายหลังได้สะดวกกว่าการดูรายชื่อผ่าน file system

โครงสร้าง folder ของ Skills system แสดง hierarchy system → home → project + ตัวอย่างไฟล์ skill.md และวิธีอ้างด้วย $skill-name

7. AGENTS.md และเหตุผลที่ Lyubomir แนะนำให้ข้าม /init

หัวข้อที่น่าสนใจที่สุดของคลิปคือคำเตือนเกี่ยวกับ /init ซึ่ง Codex มีให้เป็นค่า default หน้าที่ของคำสั่งนี้คือสร้างไฟล์ AGENTS.md ให้เป็น system prompt ระดับ project โดย Codex จะอ่านไฟล์นี้ก่อนเริ่มงานใหม่ทุกครั้ง

แต่ Lyubomir ระบุในคลิปว่า "นี่คือคำสั่งที่ไม่ควรใช้" โดยอ้างถึงงานวิจัยที่สรุปว่า

across multiple coding agents and LLMs, we find that context files tend to reduce task success rates compared to providing no repository context while also increasing inference cost by over 20%

ตามที่ลูบอเมียร์อธิบาย ปรากฏการณ์ที่เกิดขึ้นคือไฟล์ AGENTS.md ที่ /init สร้างให้นั้น "pollute" context ของ Codex มากกว่าจะช่วย ส่งผลให้อัตราความสำเร็จของงานลดลง และต้นทุน inference เพิ่มเกิน 20%

ข้อแนะนำของ Lyubomir จึงตรงไปตรงมา: เลี่ยงคำสั่ง /init ไปก่อน หรือถ้าจำเป็นต้องมีไฟล์ context จริง ๆ ให้เขียนเองอย่างกระชับ อย่าปล่อยให้คำสั่งอัตโนมัติสร้างไฟล์ยาว ๆ ที่กิน context ทุกครั้งที่ Codex อ่าน

Note: ข้อสรุปนี้สวนทางกับ default ของ agent framework หลายตัวที่สนับสนุนให้สร้างไฟล์ context ระดับ project ดังนั้นการตัดสินใจว่าจะใช้ AGENTS.md หรือไม่ ควรวัดผลกับ workflow จริงของแต่ละทีม ไม่ใช่ทำตาม default แบบไม่ตั้งคำถาม

8. การ integrate Codex เข้ากับ IDE

ช่วงท้ายคลิป Lyubomir สาธิตการใช้ Codex ภายใน IDE ขั้นตอนเหมือนกันทั้ง Cursor และ Visual Studio Code คือเข้า extension marketplace ค้นคำว่า Codex ติดตั้ง extension แล้วเปิด terminal ภายใน IDE เพื่อรันคำสั่ง codex ตามปกติ

จุดที่เด่นคือเมื่อ Codex แก้โค้ด การเปลี่ยนแปลงจะสะท้อนใน IDE ทันที ผู้ใช้ accept หรือ reject การเปลี่ยนแปลงผ่าน UI ของ IDE ได้ ทำให้ workflow ที่เคยต้องสลับระหว่าง terminal กับ editor ทั้งวันรวมอยู่ในหน้าจอเดียว

9. สามอย่างที่ควรลองใน 10 นาทีแรก

สรุปจากคลิป ลำดับที่ช่วยให้ผู้ใช้ใหม่เห็นพลังของ Codex CLI ได้เร็วที่สุดมีดังนี้

  1. ติดตั้งและ auth ผ่าน ChatGPT account ด้วย npm install -g @openai/codex จากนั้นพิมพ์ codex เพื่อเข้าหน้า auth
  2. ลอง codex exec ทำงาน one-off ก่อน เช่นบีบรูป แปลงไฟล์ หรือสรุปไฟล์ในเครื่อง เพื่อเห็นว่า agent ทำงานต่อเนื่องโดยไม่ต้องโต้ตอบอย่างไร
  3. เข้าโหมด interactive แล้วเรียก /plan ทำงาน scaffold เล็ก ๆ เช่นสร้าง recipe generator แบบในคลิป จะเห็นว่าระบบถามคำถามเพื่อดึงข้อกำหนดอย่างไร และแปลงเป็น to-do list ที่รันต่อเนื่องได้ทันที

หลังผ่านสามข้อนี้ แนะนำให้ลองติดตั้ง skill อย่าง Playwright Interactive ผ่าน $skill-installer เพื่อเห็นว่า skill ขยายขอบเขตของ agent ออกไปนอกงานเขียนโค้ดล้วน ๆ ได้อย่างไร

สรุป

คลิปของ Lyubomir Stoykov สรุปจุดที่ผู้ใช้ Codex CLI ต้องรู้ไว้อย่างหนาแน่นภายใน 12 นาที ตั้งแต่การติดตั้งจนถึง Skills system ตามที่ลูบอเมียร์อธิบาย OpenAI ออกแบบ Codex CLI ให้เป็น coding agent ที่ทำงานได้กว้างกว่าการเขียนโค้ด ทั้งรีวิวโค้ด บีบไฟล์ ควบคุม browser และรันคำสั่ง shell ได้ในตัวเดียวกัน

จุดที่ทำให้คลิปนี้น่าจดจำคือมุม opinion อย่างคำแนะนำให้ข้าม /init ซึ่งสะท้อนว่า workflow ที่ดีไม่ได้ขึ้นกับ default ของเครื่องมือเสมอไป สำหรับนักพัฒนาไทยที่กำลังประเมินว่าจะใช้ Codex CLI ควบคู่หรือทดแทน CLI ตัวอื่นที่ใช้อยู่ คลิปนี้เป็นจุดเริ่มต้นที่ครอบคลุมในเวลาสั้นมาก

ดูคลิปต้นฉบับเต็มของ Lyubomir Stoykov ที่ All Codex CLI Essentials in 12min โดย lustoykov

ที่มา: lustoykov · All Codex CLI Essentials in 12min