Messages and delivery
คิวการควบคุมทิศทาง
เมื่อพรอมต์ปกติมาถึงขณะที่การรันเซสชันกำลังสตรีมอยู่แล้ว และโหมดคิวเป็น steer (ค่าเริ่มต้น ไม่ต้องกำหนดค่า) OpenClaw จะพยายามส่งพรอมต์นั้นเข้าสู่รันไทม์ที่ทำงานอยู่ OpenClaw และชุดทดสอบ app-server แบบเนทีฟของ Codex ใช้รายละเอียดการนำส่งที่แตกต่างกัน
หน้านี้อธิบายการชี้นำด้วยโหมดคิวสำหรับข้อความขาเข้าปกติในโหมด steer ในโหมด followup หรือ collect ข้อความปกติจะข้ามเส้นทางนี้และรอจนกว่าการรันที่ทำงานอยู่จะเสร็จสิ้น สำหรับคำสั่ง /steer <message> โดยตรง โปรดดู การชี้นำ
ขอบเขตรันไทม์
การชี้นำจะไม่ขัดจังหวะการเรียกใช้เครื่องมือที่กำลังทำงานอยู่ OpenClaw ตรวจสอบข้อความชี้นำที่อยู่ในคิว ณ ขอบเขตของโมเดล:
- ผู้ช่วยร้องขอการเรียกใช้เครื่องมือ
- OpenClaw ดำเนินการชุดการเรียกใช้เครื่องมือของข้อความผู้ช่วยปัจจุบัน
- OpenClaw ส่งเหตุการณ์สิ้นสุดเทิร์น
- OpenClaw ระบายข้อความชี้นำที่อยู่ในคิว
- OpenClaw เพิ่มข้อความเหล่านั้นเป็นข้อความผู้ใช้ก่อนการเรียก LLM ครั้งถัดไป
วิธีนี้ทำให้ผลลัพธ์ของเครื่องมือจับคู่กับข้อความผู้ช่วยที่ร้องขอผลลัพธ์นั้น จากนั้นจึงให้การเรียกโมเดลครั้งถัดไปเห็นอินพุตล่าสุดจากผู้ใช้
ชุดทดสอบ app-server แบบเนทีฟของ Codex เปิดให้ใช้ turn/steer แทนคิวการชี้นำภายในของรันไทม์ OpenClaw โดย OpenClaw จะรวมพรอมต์ที่อยู่ในคิวตามช่วงเวลาสงบที่กำหนดค่าไว้ แล้วส่งคำขอ turn/steer รายการเดียวซึ่งมีอินพุตผู้ใช้ทั้งหมดที่รวบรวมไว้ตามลำดับการมาถึง
เทิร์นการรีวิวของ Codex และเทิร์น Compaction แบบดำเนินการเองจะปฏิเสธการชี้นำภายในเทิร์นเดียวกัน เมื่อรันไทม์ไม่สามารถรับการชี้นำในโหมด steer ได้ OpenClaw จะรอให้การรันที่ทำงานอยู่เสร็จสิ้นก่อนเริ่มพรอมต์
โหมด
| โหมด | ลักษณะการทำงานขณะมีการรันอยู่ | ลักษณะการทำงานภายหลัง |
|---|---|---|
steer |
ชี้นำพรอมต์เข้าสู่รันไทม์ที่ทำงานอยู่เมื่อสามารถทำได้ | รอให้การรันที่ทำงานอยู่เสร็จสิ้น หากไม่สามารถชี้นำได้ |
followup |
ไม่ชี้นำ | เรียกใช้ข้อความในคิวภายหลัง หลังจากการรันที่ทำงานอยู่สิ้นสุดลง |
collect |
ไม่ชี้นำ | รวมข้อความในคิวที่เข้ากันได้เป็นเทิร์นเดียวในภายหลัง หลังจากช่วงเวลาดีบาวน์ |
interrupt |
ยกเลิกการรันที่ทำงานอยู่แทนการชี้นำ | เริ่มข้อความล่าสุดหลังจากยกเลิกการรัน |
ตัวอย่างข้อความที่เข้ามาต่อเนื่อง
หากผู้ใช้สี่คนส่งข้อความขณะที่เอเจนต์กำลังดำเนินการเรียกใช้เครื่องมือ:
- เมื่อใช้ลักษณะการทำงานเริ่มต้น รันไทม์ที่ทำงานอยู่จะได้รับข้อความทั้งสี่ตามลำดับการมาถึง ก่อนการตัดสินใจครั้งถัดไปของโมเดล OpenClaw จะระบายข้อความเหล่านั้น ณ ขอบเขตโมเดลถัดไป ส่วน Codex จะได้รับข้อความเหล่านั้นเป็น
turn/steerที่รวมเป็นชุดเดียว - เมื่อใช้
/queue collectOpenClaw จะไม่ชี้นำ โดยจะรอจนกว่าการรันที่ทำงานอยู่จะสิ้นสุดลง จากนั้นสร้างเทิร์นติดตามผลพร้อมข้อความในคิวที่เข้ากันได้หลังจากช่วงเวลาดีบาวน์ - เมื่อใช้
/queue interruptOpenClaw จะยกเลิกการรันที่ทำงานอยู่และเริ่มข้อความล่าสุดแทนการชี้นำ
ขอบเขต
การชี้นำจะกำหนดเป้าหมายไปยังการรันเซสชันปัจจุบันที่ทำงานอยู่เสมอ โดยจะไม่สร้างเซสชันใหม่ เปลี่ยนนโยบายเครื่องมือของการรันที่ทำงานอยู่ หรือแยกข้อความตามผู้ส่ง ในช่องทางที่มีผู้ใช้หลายคน พรอมต์ขาเข้าจะมีบริบทของผู้ส่งและเส้นทางอยู่แล้ว ดังนั้นการเรียกโมเดลครั้งถัดไปจึงเห็นได้ว่าใครเป็นผู้ส่งแต่ละข้อความ
ใช้ followup หรือ collect เมื่อต้องการให้ข้อความเข้าคิวโดยค่าเริ่มต้น แทนการชี้นำการรันที่ทำงานอยู่ ใช้ interrupt เมื่อพรอมต์ล่าสุดควรแทนที่การรันที่ทำงานอยู่
ดีบาวน์
ดีบาวน์คิวในตัวใช้กับการนำส่ง followup และ collect ที่อยู่ในคิว ในโหมด steer เมื่อใช้ชุดทดสอบ Codex แบบเนทีฟ ค่านี้ยังใช้กำหนดช่วงเวลาสงบก่อนส่ง turn/steer ที่รวมเป็นชุดด้วย สำหรับ OpenClaw การชี้นำขณะทำงานเองจะไม่ใช้ตัวจับเวลาดีบาวน์ เนื่องจาก OpenClaw จะรวมข้อความตามธรรมชาติจนถึงขอบเขตโมเดลถัดไป