การแจ้งเตือนของ Codex: รับการแจ้งเตือนเมื่อทำเสร็จหรือรอการอนุมัติ
Codex บอกคุณได้ว่าเมื่อไรเทิร์นจบ และเมื่อไรต้องการการอนุมัติจากคุณ ข้อควรระวังคือ กลไกสองตัวในไฟล์การกำหนดค่าครอบคลุม event ต่างกัน และในเทอร์มินัลส่วนใหญ่ “การแจ้งเตือนบนเดสก์ท็อป” จะถูกเปลี่ยนเป็นแค่เสียงกระดิ่งโดยไม่มีอะไรบอก
คำตอบสั้น ๆ
ใช้ส่วน [tui]: notifications = ["agent-turn-complete", "approval-requested"] และ notification_condition = "always" หากต้องการการแจ้งเตือนแม้เทอร์มินัลจะโฟกัสอยู่ Codex ส่งการแจ้งเตือนบนเดสก์ท็อป (OSC 9) เฉพาะใน Ghostty, iTerm2, Kitty, Warp และ WezTerm ที่อื่นทั้งหมด รวมถึง Windows Terminal จะใช้เสียงกระดิ่ง การตั้งค่า notify ระดับบนสุดจะรันโปรแกรมของคุณเอง แต่เฉพาะสำหรับ agent-turn-complete เท่านั้น ไม่เคยทำงานกับการอนุมัติ
การตั้งค่าสองแบบที่ต่างกัน
| [tui] notifications | notify | |
|---|---|---|
| สิ่งที่ทำ | การแจ้งเตือนในเทอร์มินัลจาก Codex CLI | รันโปรแกรมที่คุณเลือก |
| จบเทิร์น | มี (agent-turn-complete) | มี (agent-turn-complete) |
| มีคำขออนุมัติ | มี (approval-requested) | ไม่มี |
| พรอมต์แผน / คำถาม | มี (plan-mode-prompt, async-question) | ไม่มี |
| ค่าเริ่มต้น | เปิด | ปิด |
หากคุณต้องการรู้ว่าเมื่อไร Codex รอคุณอยู่ notify อย่างเดียวจะทำไม่ได้เลย ให้ใช้การแจ้งเตือนของ TUI สำหรับเรื่องนั้น
การแจ้งเตือนของ TUI
นี่คือส่วนที่เกี่ยวข้องของการกำหนดค่าตัวอย่างจาก OpenAI:
notifications:true,falseหรือรายการ eventapproval-requestedครอบคลุมคำขออนุมัติคำสั่ง การแก้ไขไฟล์ และ MCPnotification_condition: โดยค่าเริ่มต้นการแจ้งเตือนจะทำงานเฉพาะเมื่อเทอร์มินัลไม่ได้โฟกัสอยู่ ตั้งเป็นalwaysหากคุณเปิดเทอร์มินัลไว้ให้เห็นบนจออีกจอnotification_method:auto,osc9หรือbel
ข้อความจะมีหน้าตาแบบ “Approval requested: <command>”, “Codex wants to edit <file>” และ “Agent turn complete”
ทำไมคุณได้ยินแค่เสียงบี๊บ (Windows Terminal และอื่น ๆ)
ในโหมด auto Codex จะส่งการแจ้งเตือนบนเดสก์ท็อป (escape sequence OSC 9) เฉพาะเมื่อรู้จักเทอร์มินัลว่าเป็น Ghostty, iTerm2, Kitty, Warp หรือ WezTerm เทอร์มินัลอื่นทั้งหมด (Windows Terminal, เทอร์มินัลของ VS Code, Apple Terminal) จะได้เสียงกระดิ่งเทอร์มินัล ข้อมูลนี้มาจากซอร์สโค้ดของ Codex (tui/src/notifications/mod.rs) เอกสารบอกแค่ว่า auto “prefers OSC 9” (เลือกใช้ OSC 9 ก่อน)
ใน Windows Terminal คุณทำให้กระดิ่งสังเกตได้ง่ายขึ้นได้: ตั้ง bellStyle เป็น all ในการตั้งค่าโปรไฟล์ เพื่อเล่นเสียงและทำให้ไอคอนบนแถบงานกะพริบ (ค่าเริ่มต้นคือ audible)
คุณยังบังคับใช้ notification_method = "osc9" ได้ ส่วนเทอร์มินัลจะแปลงเป็นการแจ้งเตือนของระบบหรือไม่นั้นขึ้นอยู่กับเทอร์มินัล
รันโปรแกรมของคุณเองด้วย notify
notify รันโปรแกรมภายนอกเมื่อเทิร์นจบ และส่งอาร์กิวเมนต์ JSON หนึ่งตัวที่มี type, thread-id, turn-id, cwd, input-messages และ last-assistant-message จึงเหมาะกับการพุชไปที่โทรศัพท์ webhook หรือล็อก: อะไรก็ตามที่อยู่นอกเทอร์มินัล มันเป็นคีย์ระดับบนสุด จึงต้องวางไว้เหนือ [section] ใด ๆ:
สคริปต์ขั้นต่ำ ตามแบบในเอกสารของ OpenAI:
.codex/config.tomlของโปรเจกต์ไม่สามารถตั้งnotifyได้ ต้องอยู่ในการกำหนดค่าผู้ใช้ของคุณ- ซอร์สโค้ดของ Codex ระบุว่า
notifyเป็นของเดิม (legacy) และมีแผนจะแทนที่ด้วย hook ตอนนี้ยังใช้งานได้ คอยติดตาม changelog ไว้
แล้ว hook ล่ะ?
Codex ก็มี hook เช่นกัน เปิดอยู่โดยค่าเริ่มต้นและมี event PermissionRequest และ Stop กำหนดค่าใน ~/.codex/hooks.json หรือตาราง [hooks] และทุก hook ที่ไม่ใช่แบบ managed ต้องได้รับการตรวจทานและเชื่อถือด้วย /hooks ก่อนจะรัน ไม่มี event Notification และเอกสารของ OpenAI ไม่ได้แสดง hook สำหรับการแจ้งเตือน สำหรับการแจ้งเตือน การตั้งค่า TUI ข้างต้นคือวิธีที่มีในเอกสาร
แอป Codex และส่วนขยาย IDE
แอปเดสก์ท็อป Codex มีตัวควบคุมของตัวเอง: การแจ้งเตือนเมื่อจบเทิร์นตั้งได้เป็นไม่แจ้งเลย แจ้งเฉพาะเมื่อแอปอยู่เบื้องหลัง หรือแจ้งเสมอ และมีสวิตช์แยกสำหรับเปิดหรือปิดการแจ้งเตือนเรื่องสิทธิ์และคำถาม ส่วนขยาย IDE ไม่มีการตั้งค่าการแจ้งเตือนของตัวเอง เอกสารของ OpenAI แนะนำให้ใช้ notify แทน
หากคุณอนุมัติจากโทรศัพท์ผ่านแอป ChatGPT issue #39346 รายงานกรณีที่โทรศัพท์แสดง “approval waiting” แต่ไม่มีการ์ดให้ตอบ
เห็นได้ และตอบได้
กระดิ่งบอกคุณว่ามีบางอย่างเกิดขึ้นในเทอร์มินัลสักอัน Pet Island แสดง Codex บนเกาะเล็ก ๆ ที่ด้านบนของหน้าจอ (กำลังทำงาน กำลังรอ หรือเสร็จแล้ว) และเมื่อ Codex ขอรันคำสั่งหรือแก้ไขไฟล์ คำขอจะปรากฏที่นั่นพร้อมคำสั่งหรือ diff อนุญาตหรือปฏิเสธได้โดยไม่ต้องสลับหน้าต่าง สำหรับคำถาม คลิกเดียวก็พาคุณไปยังเทอร์มินัลที่ถูกต้อง ใช้ได้กับ Codex CLI และแอป Codex ควบคู่กับ Claude Code, Cursor และเอเจนต์อื่น ๆ ของคุณ
คำถามที่พบบ่อย
จะรับการแจ้งเตือนเมื่อ Codex ทำเสร็จได้อย่างไร?
การแจ้งเตือนของ TUI ใน Codex เปิดอยู่โดยค่าเริ่มต้นสำหรับ agent-turn-complete แต่โดยค่าเริ่มต้นจะทำงานเฉพาะเมื่อเทอร์มินัลไม่ได้โฟกัสอยู่ ตั้ง notification_condition = "always" ใน [tui] หากต้องการให้แจ้งขณะที่โฟกัสอยู่
จะรับการแจ้งเตือนเมื่อ Codex ต้องการการอนุมัติได้อย่างไร?
เพิ่ม "approval-requested" ลงใน notifications ในส่วน [tui] ของ ~/.codex/config.toml การตั้งค่า notify ไม่ทำงานกับการอนุมัติ
ทำไม Codex ถึงแค่ส่งเสียงบี๊บแทนที่จะแสดงการแจ้งเตือน?
ในโหมด auto Codex ส่งการแจ้งเตือนบนเดสก์ท็อปเฉพาะใน Ghostty, iTerm2, Kitty, Warp และ WezTerm เทอร์มินัลอื่น รวมถึง Windows Terminal จะได้เสียงกระดิ่ง
ใส่ notify ใน .codex/config.toml ของโปรเจกต์ได้ไหม?
ไม่ได้ การกำหนดค่าโปรเจกต์ตั้ง notify ไม่ได้ ให้ใส่ไว้ใน ~/.codex/config.toml
Codex มี hook Notification ไหม?
ไม่มี hook ของ Codex มี PermissionRequest และ Stop แต่ไม่มี event Notification และไม่มี hook สำหรับการแจ้งเตือนในเอกสาร
แหล่งข้อมูล
การตั้งค่าและพฤติกรรมทุกอย่างในหน้านี้ได้รับการตรวจสอบกับหน้าเหล่านี้เมื่อวันที่ 26 ตุลาคม 2026 เอเจนต์เปลี่ยนแปลงเร็ว หากมีอะไรไม่ตรงกันแล้ว ให้ยึดหน้าทางการเป็นหลัก
- OpenAI: Codex sample config
- OpenAI: Codex advanced config (notify)
- OpenAI: Codex notifications
- OpenAI: Codex hooks
- ซอร์สโค้ด openai/codex: tui/src/notifications/mod.rs
- ซอร์สโค้ด openai/codex: tui/src/chatwidget/notifications.rs
- Issue #39346: Mobile shows approval waiting but no approval card
- Microsoft Learn: การตั้งค่าโปรไฟล์ Windows Terminal (bellStyle)