Tools

ระดับการคิด

ทำหน้าที่อะไร

  • คำสั่งแบบอินไลน์ในเนื้อหาขาเข้าใด ๆ: /t <level>, /think:<level> หรือ /thinking <level>
  • ระดับ (นามแฝง): off | minimal | low | medium | high | xhigh | adaptive | max | ultra ซึ่งใกล้เคียงกับลำดับคำวิเศษณ์แบบดั้งเดิมของ Anthropic คือ "คิด" < "คิดให้หนัก" < "คิดให้หนักยิ่งขึ้น" < "คิดอย่างเต็มกำลัง":
    • minimal ~ "คิด"
    • low ~ "คิดให้หนัก"
    • medium ~ "คิดให้หนักยิ่งขึ้น"
    • high ~ "คิดอย่างเต็มกำลัง" (งบประมาณสูงสุด)
    • xhigh ~ "คิดอย่างเต็มกำลัง+" (โมเดล GPT-5.2+ และ Codex รวมถึงระดับความพยายามของ Anthropic Claude Opus 4.7+)
    • adaptive → การคิดแบบปรับตัวที่จัดการโดยผู้ให้บริการ (รองรับ Claude 4.6 บน Anthropic/Bedrock, Anthropic Claude Opus 4.7+ และการคิดแบบไดนามิกของ Google Gemini)
    • max → การให้เหตุผลระดับสูงสุดของผู้ให้บริการ (Anthropic Claude Opus 4.7+; Ollama จะแมปค่านี้เป็นระดับความพยายาม think ดั้งเดิมที่สูงที่สุด)
    • ultra → การให้เหตุผลระดับสูงสุดของผู้ให้บริการ พร้อมการประสานงานเอเจนต์ย่อยเชิงรุกเมื่อโมเดล/รันไทม์ที่เลือกสนับสนุน
    • x-high, x_high, extra-high, extra high และ extra_high จะแมปเป็น xhigh
    • highest จะแมปเป็น high
  • หมายเหตุเกี่ยวกับผู้ให้บริการ:
    • เมนูและตัวเลือกการคิดขับเคลื่อนด้วยโปรไฟล์ของผู้ให้บริการ Plugin ของผู้ให้บริการจะประกาศชุดระดับที่แน่นอนสำหรับโมเดลที่เลือก รวมถึงป้ายกำกับอย่าง on แบบไบนารี
    • ระบบจะแสดง adaptive, xhigh, max และ ultra เฉพาะสำหรับโปรไฟล์ผู้ให้บริการ/โมเดล/รันไทม์ที่รองรับเท่านั้น คำสั่งแบบระบุชนิดสำหรับระดับที่ไม่รองรับจะถูกปฏิเสธ พร้อมแสดงตัวเลือกที่ใช้ได้สำหรับโมเดลนั้น
    • ระดับที่ไม่รองรับซึ่งจัดเก็บไว้เดิมจะถูกแมปใหม่ตามลำดับของโปรไฟล์ผู้ให้บริการ adaptive จะย้อนกลับไปใช้ medium บนโมเดลที่ไม่รองรับการปรับตัว ส่วน xhigh และ max จะย้อนกลับไปใช้ระดับที่รองรับซึ่งสูงที่สุดและไม่ใช่ off สำหรับโมเดลที่เลือก
    • โมเดล Anthropic Claude 4.6 ใช้ adaptive เป็นค่าเริ่มต้นเมื่อไม่ได้กำหนดระดับการคิดอย่างชัดเจน
    • Anthropic Claude Opus 4.8 และ Opus 4.7 จะปิดการคิดไว้ เว้นแต่คุณจะกำหนดระดับการคิดอย่างชัดเจน ค่าเริ่มต้นของระดับความพยายามที่ผู้ให้บริการเป็นเจ้าของสำหรับ Opus 4.8 คือ high หลังจากเปิดใช้การคิดแบบปรับตัว
    • Anthropic Claude Opus 4.7+ แมป /think xhigh เป็นการคิดแบบปรับตัวร่วมกับ output_config.effort: "xhigh" เนื่องจาก /think เป็นคำสั่งการคิด และ xhigh เป็นการตั้งค่าระดับความพยายามของ Opus
    • Anthropic Claude Opus 4.7+ ยังรองรับ /think max ซึ่งจะแมปไปยังเส้นทางระดับความพยายามสูงสุดที่ผู้ให้บริการเป็นเจ้าของเช่นเดียวกัน
    • โมเดล DeepSeek V4 แบบเชื่อมต่อโดยตรงรองรับ /think xhigh|max โดยทั้งสองค่าจะแมปเป็น reasoning_effort: "max" ของ DeepSeek ขณะที่ระดับต่ำกว่าซึ่งไม่ใช่ off จะแมปเป็น high
    • โมเดล DeepSeek V4 ที่ส่งผ่าน OpenRouter รองรับ /think xhigh และส่งค่า reasoning.effort ที่ OpenRouter รองรับ แทน reasoning_effort ระดับบนสุดแบบดั้งเดิมของ DeepSeek ระดับต่ำกว่าซึ่งไม่ใช่ off จะแมปเป็น high และค่าลบล้าง max ที่จัดเก็บไว้จะย้อนกลับไปใช้ xhigh
    • โมเดล Ollama ที่รองรับการคิดรองรับ /think low|medium|high|max โดย max จะแมปเป็น think: "high" แบบดั้งเดิม เนื่องจาก API ดั้งเดิมของ Ollama ยอมรับสตริงระดับความพยายาม low, medium และ high
    • โมเดล OpenAI GPT แมป /think ผ่านการรองรับระดับความพยายามของ Responses API ซึ่งเฉพาะเจาะจงตามโมเดล /think off จะส่ง reasoning.effort: "none" เฉพาะเมื่อโมเดลเป้าหมายรองรับเท่านั้น มิฉะนั้น OpenClaw จะละเว้นเพย์โหลดการให้เหตุผลที่ปิดใช้งาน แทนการส่งค่าที่ไม่รองรับ
    • GPT-5.6 Sol และ Terra รองรับ /think ultra แบบดั้งเดิมผ่านรันไทม์ Codex ส่วน GPT-5.6 Luna รองรับระดับต่าง ๆ จนถึง max เนื่องจากแค็ตตาล็อก Codex ของโมเดลนี้ไม่ได้ประกาศรองรับ Ultra
    • รันไทม์ OpenClaw แบบฝังตัวรองรับ /think ultra เชิงตรรกะสำหรับ GPT-5.6 Sol, Terra และ Luna โดยจะส่งระดับความพยายามสูงสุดของผู้ให้บริการและเพิ่มคำแนะนำการประสานงานเอเจนต์ย่อยเชิงรุกที่มีขอบเขตเฉพาะการรัน
    • รายการแค็ตตาล็อกที่กำหนดเองและเข้ากันได้กับ OpenAI สามารถเลือกใช้ /think xhigh ได้โดยกำหนดให้ models.providers.<provider>.models[].compat.supportedReasoningEfforts มี "xhigh" อยู่ด้วย ซึ่งใช้เมทาดาทาความเข้ากันได้ชุดเดียวกับที่แมปเพย์โหลดระดับความพยายามในการให้เหตุผลขาออกของ OpenAI ทำให้เมนู การตรวจสอบความถูกต้องของเซสชัน CLI ของเอเจนต์ และ llm-task สอดคล้องกับพฤติกรรมการส่งข้อมูล
    • การอ้างอิง OpenRouter Hunter Alpha ที่กำหนดค่าไว้และล้าสมัยจะข้ามการแทรกการให้เหตุผลผ่านพร็อกซี เนื่องจากเส้นทางที่เลิกใช้แล้วนั้นอาจส่งคืนข้อความคำตอบสุดท้ายผ่านฟิลด์การให้เหตุผล
    • Google Gemini แมป /think adaptive เป็นการคิดแบบไดนามิกที่ผู้ให้บริการเป็นเจ้าของ คำขอ Gemini 3 จะละเว้น thinkingLevel แบบคงที่ ส่วนคำขอ Gemini 2.5 จะส่ง thinkingBudget: -1 ระดับคงที่ยังคงแมปไปยัง thinkingLevel หรืองบประมาณของ Gemini ที่ใกล้เคียงที่สุดสำหรับตระกูลโมเดลนั้น
    • MiniMax M2.x (minimax/MiniMax-M2*) บนเส้นทางสตรีมมิงที่เข้ากันได้กับ Anthropic ใช้ thinking: { type: "disabled" } เป็นค่าเริ่มต้น เว้นแต่คุณจะกำหนดการคิดอย่างชัดเจนในพารามิเตอร์โมเดลหรือพารามิเตอร์คำขอ วิธีนี้ป้องกันเดลตา reasoning_content รั่วไหลจากรูปแบบสตรีม Anthropic ที่ไม่ใช่แบบดั้งเดิมของ M2.x โดย MiniMax-M3 (และ M3.x) ได้รับการยกเว้น เนื่องจาก M3 ส่งบล็อกการคิดของ Anthropic อย่างถูกต้องและส่งคืนเนื้อหาว่างเมื่อปิดการคิด ดังนั้น OpenClaw จึงคงให้ M3 ใช้เส้นทางการคิดแบบละเว้น/ปรับตัวของผู้ให้บริการ
    • Z.AI (zai/*) ใช้ค่าแบบไบนารี (on/off) สำหรับโมเดล GLM ส่วนใหญ่ ยกเว้น GLM-5.2 ซึ่งรองรับ /think off|low|high|max แมป low และ high เป็น reasoning_effort: "high" ของ Z.AI และแมป max เป็น reasoning_effort: "max"
    • Moonshot Kimi K2.7 Code (moonshot/kimi-k2.7-code) จะคิดเสมอ โปรไฟล์ของโมเดลนี้รองรับเฉพาะ on และ OpenClaw จะละเว้นฟิลด์ thinking ขาออกตามข้อกำหนดของ Moonshot โมเดล moonshot/* อื่น ๆ จะแมป /think off เป็น thinking: { type: "disabled" } และระดับใด ๆ ที่ไม่ใช่ off เป็น thinking: { type: "enabled" } เมื่อเปิดใช้การคิด Moonshot จะยอมรับเฉพาะ tool_choice ค่า auto|none เท่านั้น OpenClaw จะปรับค่าที่เข้ากันไม่ได้ให้เป็น auto

ลำดับการตัดสินค่า

  1. คำสั่งแบบอินไลน์ในข้อความ (มีผลเฉพาะข้อความนั้น)
  2. ค่าลบล้างของเซสชัน (กำหนดโดยส่งข้อความที่มีเพียงคำสั่ง)
  3. ค่าเริ่มต้นรายเอเจนต์ (agents.list[].thinkingDefault ในการกำหนดค่า)
  4. ค่าเริ่มต้นส่วนกลาง (agents.defaults.thinkingDefault ในการกำหนดค่า)
  5. ค่าสำรอง: ค่าเริ่มต้นที่ผู้ให้บริการประกาศเมื่อมี มิฉะนั้นโมเดลที่รองรับการให้เหตุผลจะใช้ medium หรือระดับที่รองรับและไม่ใช่ off ซึ่งใกล้เคียงที่สุดสำหรับโมเดลนั้น ส่วนโมเดลที่ไม่รองรับการให้เหตุผลจะคงเป็น off

การกำหนดค่าเริ่มต้นของเซสชัน

  • ส่งข้อความที่มี เฉพาะ คำสั่งเท่านั้น (อนุญาตให้มีช่องว่าง) เช่น /think:medium หรือ /t high
  • ค่านี้จะคงอยู่สำหรับเซสชันปัจจุบัน (ค่าเริ่มต้นจะแยกตามผู้ส่ง) ใช้ /think default เพื่อล้างค่าลบล้างของเซสชันและสืบทอดค่าเริ่มต้นจากการกำหนดค่า/ผู้ให้บริการ โดยมีนามแฝง ได้แก่ inherit, clear, reset และ unpin
  • /think off จะจัดเก็บค่าลบล้างเป็นปิดอย่างชัดเจน ซึ่งจะปิดการคิดจนกว่าคุณจะเปลี่ยนหรือล้างค่าลบล้างของเซสชัน
  • ระบบจะส่งข้อความตอบกลับเพื่อยืนยัน (Thinking level set to high. / Thinking disabled.) หากระดับไม่ถูกต้อง (เช่น /thinking big) คำสั่งจะถูกปฏิเสธพร้อมคำแนะนำ และสถานะเซสชันจะไม่เปลี่ยนแปลง
  • ส่ง /think (หรือ /think:) โดยไม่มีอาร์กิวเมนต์เพื่อดูระดับการคิดปัจจุบัน

การนำไปใช้โดยเอเจนต์

  • OpenClaw แบบฝังตัว: ระดับที่ตัดสินได้จะถูกส่งไปยังรันไทม์เอเจนต์ OpenClaw ภายในกระบวนการ
  • แบ็กเอนด์ Claude CLI: เมื่อใช้ claude-cli ระดับที่ระบุแน่นอนและไม่ใช่ปิดจะถูกส่งไปยัง Claude Code เป็น --effort ส่วน adaptive จะนำแฟล็กระดับความพยายามที่กำหนดค่าไว้ออก และมอบหมายให้สภาพแวดล้อม การตั้งค่า และค่าเริ่มต้นของโมเดลใน Claude Code เป็นผู้กำหนดระดับความพยายามที่มีผล ดู แบ็กเอนด์ CLI

โหมดเร็ว (/fast)

  • ระดับ: auto|on|off|default
  • ข้อความที่มีเฉพาะคำสั่งจะสลับค่าลบล้างโหมดเร็วของเซสชัน และตอบกลับ Fast mode set to auto., Fast mode enabled. หรือ Fast mode disabled. ใช้ /fast default เพื่อล้างค่าลบล้างของเซสชันและสืบทอดค่าเริ่มต้นที่กำหนดไว้ โดยมีนามแฝง ได้แก่ inherit, clear, reset และ unpin
  • ส่ง /fast (หรือ /fast status) โดยไม่ระบุโหมดเพื่อดูสถานะโหมดเร็วที่มีผลในปัจจุบัน
  • OpenClaw ตัดสินโหมดเร็วตามลำดับดังนี้:
    1. ค่าลบล้าง /fast auto|on|off แบบอินไลน์/ข้อความที่มีเฉพาะคำสั่ง (/fast default จะล้างชั้นนี้)
    2. ค่าลบล้างของเซสชัน
    3. ค่าเริ่มต้นรายเอเจนต์ (agents.list[].fastModeDefault)
    4. การกำหนดค่ารายโมเดล: agents.defaults.models["<provider>/<model>"].params.fastMode
    5. ค่าสำรอง: off
  • auto จะคงโหมดของเซสชัน/การกำหนดค่าเป็นอัตโนมัติ แต่ตัดสินแต่ละการเรียกโมเดลใหม่แยกจากกัน การเรียกที่เริ่มก่อนจุดตัดอัตโนมัติจะเปิดใช้โหมดเร็ว ส่วนการเรียกเพื่อลองใหม่ ใช้ค่าสำรอง ส่งผลลัพธ์เครื่องมือ หรือดำเนินการต่อที่เกิดภายหลังจะเริ่มโดยปิดโหมดเร็ว จุดตัดมีค่าเริ่มต้นเป็น 60 วินาที หากต้องการเปลี่ยน ให้กำหนด agents.defaults.models["<provider>/<model>"].params.fastAutoOnSeconds บนโมเดลที่ใช้งานอยู่
  • สำหรับ openai/* โหมดเร็วจะแมปเป็นการประมวลผลแบบมีลำดับความสำคัญของ OpenAI โดยส่ง service_tier=priority ในคำขอ Responses ที่รองรับ
  • สำหรับโมเดล openai/* / openai-codex/* ที่ใช้ Codex เป็นแบ็กเอนด์ โหมดเร็วจะส่งแฟล็ก service_tier=priority เดียวกันใน Codex Responses เทิร์นของแอปเซิร์ฟเวอร์ Codex แบบดั้งเดิมจะได้รับระดับนี้เฉพาะตอน turn/start หรือเมื่อเริ่ม/ดำเนินเธรดต่อ ดังนั้น auto จึงไม่สามารถเปลี่ยนระดับของเทิร์นแอปเซิร์ฟเวอร์ที่กำลังทำงานอยู่ได้ แต่จะมีผลกับเทิร์นโมเดลถัดไปที่ OpenClaw เริ่ม
  • สำหรับคำขอสาธารณะ anthropic/* แบบเชื่อมต่อโดยตรง รวมถึงการรับส่งข้อมูลที่ยืนยันตัวตนด้วย OAuth และส่งไปยัง api.anthropic.com โหมดเร็วจะแมปเป็นระดับบริการของ Anthropic โดย /fast on กำหนด service_tier=auto และ /fast off กำหนด service_tier=standard_only
  • สำหรับ minimax/* บนเส้นทางที่เข้ากันได้กับ Anthropic /fast on (หรือ params.fastMode: true) จะเขียน MiniMax-M2.7 ใหม่เป็น MiniMax-M2.7-highspeed
  • พารามิเตอร์โมเดล serviceTier / service_tier ของ Anthropic ที่กำหนดอย่างชัดเจนจะมีลำดับความสำคัญเหนือค่าเริ่มต้นของโหมดเร็วเมื่อกำหนดทั้งสองค่า OpenClaw ยังคงข้ามการแทรกระดับบริการของ Anthropic สำหรับ URL ฐานพร็อกซีที่ไม่ใช่ Anthropic
  • /status แสดง Fast เมื่อเปิดใช้โหมดเร็ว และแสดง Fast:auto เมื่อโหมดที่กำหนดไว้เป็นอัตโนมัติ

คำสั่งแสดงรายละเอียด (/verbose หรือ /v)

  • ระดับ: on (ขั้นต่ำ) | full | off (ค่าเริ่มต้น)
  • ข้อความที่มีเฉพาะคำสั่งจะสลับการแสดงรายละเอียดของเซสชัน และตอบกลับ Verbose logging enabled. / Verbose logging disabled. ส่วนระดับที่ไม่ถูกต้องจะส่งคำแนะนำกลับโดยไม่เปลี่ยนสถานะ
  • /verbose off จะจัดเก็บค่าลบล้างของเซสชันอย่างชัดเจน ให้ล้างผ่าน UI ของเซสชันโดยเลือก inherit
  • ผู้ส่งจากช่องทางภายนอกที่ได้รับอนุญาตสามารถบันทึกค่าลบล้างการแสดงรายละเอียดของเซสชันได้ ไคลเอนต์ Gateway/เว็บแชตภายในต้องมี operator.admin จึงจะบันทึกได้
  • คำสั่งแบบอินไลน์มีผลเฉพาะข้อความนั้น มิฉะนั้นจะใช้ค่าเริ่มต้นของเซสชัน/ส่วนกลาง
  • ส่ง /verbose (หรือ /verbose:) โดยไม่มีอาร์กิวเมนต์เพื่อดูระดับการแสดงรายละเอียดปัจจุบัน
  • เมื่อเปิดการแสดงรายละเอียด เอเจนต์ที่ส่งผลลัพธ์เครื่องมือแบบมีโครงสร้างจะส่งการเรียกเครื่องมือแต่ละครั้งกลับเป็นข้อความที่มีเฉพาะเมทาดาทาแยกกัน โดยขึ้นต้นด้วย <emoji> <tool-name>: <arg> เมื่อมีข้อมูล สรุปเครื่องมือเหล่านี้จะถูกส่งทันทีที่เครื่องมือแต่ละรายการเริ่มทำงาน (เป็นกล่องข้อความแยกกัน) ไม่ใช่เดลตาแบบสตรีมมิง
  • สรุปความล้มเหลวของเครื่องมือจะยังคงมองเห็นได้ในโหมดปกติ แต่ส่วนต่อท้ายรายละเอียดข้อผิดพลาดดิบจะถูกซ่อน เว้นแต่การแสดงรายละเอียดจะเป็น full
  • เมื่อการแสดงรายละเอียดเป็น full เอาต์พุตของเครื่องมือจะถูกส่งต่อหลังทำงานเสร็จด้วย (เป็นกล่องข้อความแยกและตัดให้มีความยาวที่ปลอดภัย) หากคุณสลับ /verbose on|full|off ขณะที่การรันกำลังดำเนินอยู่ กล่องข้อความเครื่องมือหลังจากนั้นจะใช้การตั้งค่าใหม่
  • agents.defaults.toolProgressDetail ควบคุมรูปแบบของสรุปเครื่องมือจาก /verbose และบรรทัดเครื่องมือในฉบับร่างความคืบหน้า ใช้ "explain" (ค่าเริ่มต้น) สำหรับป้ายกำกับที่กระชับและอ่านง่าย เช่น 🛠️ Exec: checking JS syntax และใช้ "raw" เมื่อต้องการให้ต่อท้ายคำสั่ง/รายละเอียดดิบเพื่อแก้ไขข้อบกพร่องด้วย ค่า agents.list[].toolProgressDetail รายเอเจนต์จะมีลำดับความสำคัญเหนือค่าเริ่มต้น
    • explain: 🛠️ Exec: check JS syntax for /tmp/app.js
    • raw: 🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js

คำสั่งติดตามการทำงานของ Plugin (/trace)

  • ระดับ: on | off (ค่าเริ่มต้น)
  • ข้อความที่มีเฉพาะคำสั่งจะสลับเอาต์พุตการติดตาม Plugin ของเซสชัน และตอบกลับ Plugin trace enabled. / Plugin trace disabled.
  • คำสั่งแบบอินไลน์มีผลเฉพาะข้อความนั้น มิฉะนั้นจะใช้ค่าเริ่มต้นของเซสชัน/ส่วนกลาง
  • ส่ง /trace (หรือ /trace:) โดยไม่มีอาร์กิวเมนต์เพื่อดูระดับการติดตามปัจจุบัน
  • /trace มีขอบเขตแคบกว่า /verbose โดยจะแสดงเฉพาะบรรทัดการติดตาม/แก้ไขข้อบกพร่องที่ Plugin เป็นเจ้าของ เช่น สรุปการแก้ไขข้อบกพร่องของ Active Memory
  • บรรทัดการติดตามอาจปรากฏใน /status และในข้อความวินิจฉัยที่ส่งตามหลังข้อความตอบกลับปกติของผู้ช่วย

การมองเห็นกระบวนการให้เหตุผล (/reasoning)

  • ระดับ: on|off|stream
  • ข้อความที่มีเฉพาะคำสั่งจะสลับว่าจะแสดงบล็อกการคิดในคำตอบหรือไม่
  • เมื่อเปิดใช้งาน ระบบจะส่งกระบวนการให้เหตุผลเป็น ข้อความแยกต่างหาก โดยขึ้นต้นด้วย Thinking
  • stream: สตรีมกระบวนการให้เหตุผลระหว่างที่กำลังสร้างคำตอบ เมื่อช่องทางที่ใช้งานอยู่รองรับการแสดงตัวอย่างกระบวนการให้เหตุผล จากนั้นส่งคำตอบสุดท้ายโดยไม่มีกระบวนการให้เหตุผล
  • นามแฝง: /reason
  • ส่ง /reasoning (หรือ /reasoning:) โดยไม่มีอาร์กิวเมนต์เพื่อดูระดับกระบวนการให้เหตุผลปัจจุบัน
  • ลำดับการกำหนดค่า: คำสั่งแบบอินไลน์ จากนั้นค่าที่เขียนทับสำหรับเซสชัน จากนั้นค่าเริ่มต้นรายเอเจนต์ (agents.list[].reasoningDefault) จากนั้นค่าเริ่มต้นส่วนกลาง (agents.defaults.reasoningDefault) และสุดท้ายค่าทดแทน (off)

แท็กกระบวนการให้เหตุผลของโมเดลภายในเครื่องที่มีรูปแบบไม่ถูกต้องจะได้รับการจัดการอย่างระมัดระวัง บล็อก <think>...</think> ที่ปิดครบจะยังคงถูกซ่อนในคำตอบปกติ และกระบวนการให้เหตุผลที่ไม่ได้ปิดหลังข้อความที่มองเห็นแล้วก็จะถูกซ่อนเช่นกัน หากคำตอบทั้งหมดครอบด้วยแท็กเปิดที่ไม่ได้ปิดเพียงแท็กเดียว และมิฉะนั้นจะถูกส่งเป็นข้อความว่าง OpenClaw จะลบแท็กเปิดที่มีรูปแบบไม่ถูกต้องและส่งข้อความส่วนที่เหลือ

ที่เกี่ยวข้อง

Heartbeat

  • เนื้อหาการตรวจสอบ Heartbeat คือพรอมต์ Heartbeat ที่กำหนดค่าไว้ (ค่าเริ่มต้น: Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.) คำสั่งแบบอินไลน์ในข้อความ Heartbeat จะมีผลตามปกติ (แต่ควรหลีกเลี่ยงการเปลี่ยนค่าเริ่มต้นของเซสชันจาก Heartbeat)
  • โดยค่าเริ่มต้น การส่ง Heartbeat จะส่งเฉพาะเพย์โหลดสุดท้าย หากต้องการส่งข้อความ Thinking แยกต่างหากด้วย (เมื่อพร้อมใช้งาน) ให้ตั้งค่า agents.defaults.heartbeat.includeReasoning: true หรือ agents.list[].heartbeat.includeReasoning: true รายเอเจนต์

UI แชตบนเว็บ

  • เมื่อตอนโหลดหน้า ตัวเลือกระดับการคิดของแชตบนเว็บจะแสดงระดับที่บันทึกไว้ของเซสชันจากที่เก็บเซสชันขาเข้า/การกำหนดค่า
  • การเลือกระดับอื่นจะเขียนค่าที่เขียนทับสำหรับเซสชันทันทีผ่าน sessions.patch โดยไม่รอการส่งครั้งถัดไป และไม่ใช่ค่าที่เขียนทับแบบใช้ครั้งเดียว thinkingOnce
  • การส่งขณะที่การเปลี่ยนแปลงตัวเลือกโมเดล กระบวนการให้เหตุผล หรือความเร็วยังอยู่ระหว่างการนำไปใช้ จะรอแพตช์ตัวเลือกที่ค้างอยู่ทั้งหมด หากการเปลี่ยนแปลงล้มเหลว ข้อความจะยังไม่ถูกส่งเพื่อให้ตรวจสอบ
  • ตัวเลือกแรกเป็นตัวเลือกล้างค่าที่เขียนทับเสมอ โดยจะแสดง Inherited: <resolved level> รวมถึง Inherited: Off เมื่อการคิดที่สืบทอดมาถูกปิดใช้งาน
  • ตัวเลือกที่ระบุอย่างชัดเจนจะใช้ป้ายกำกับระดับโดยตรง พร้อมคงป้ายกำกับของผู้ให้บริการไว้เมื่อมี (ตัวอย่างเช่น Maximum สำหรับตัวเลือก max ที่มีป้ายกำกับจากผู้ให้บริการ)
  • ตัวเลือกใช้ thinkingLevels ที่ส่งคืนโดยแถวเซสชัน/ค่าเริ่มต้นของ Gateway โดยคง thinkingOptions ไว้เป็นรายการป้ายกำกับแบบเดิม UI ของเบราว์เซอร์จะไม่เก็บรายการนิพจน์ทั่วไปของผู้ให้บริการเอง Plugin เป็นผู้กำหนดชุดระดับเฉพาะของโมเดล
  • /think:<level> ยังคงใช้งานได้และอัปเดตระดับเซสชันที่บันทึกไว้เดียวกัน ดังนั้นคำสั่งในแชตและตัวเลือกจึงซิงค์กันอยู่เสมอ

โปรไฟล์ผู้ให้บริการ

  • Plugin ของผู้ให้บริการสามารถเปิดเผย resolveThinkingProfile(ctx) เพื่อกำหนดระดับที่โมเดลรองรับและค่าเริ่มต้น
  • Plugin ของผู้ให้บริการที่ทำหน้าที่เป็นพร็อกซีให้โมเดล Claude ควรใช้ resolveClaudeThinkingProfile(modelId) จาก openclaw/plugin-sdk/provider-model-shared ซ้ำ เพื่อให้แค็ตตาล็อก Anthropic โดยตรงและแค็ตตาล็อกพร็อกซีสอดคล้องกัน
  • แต่ละระดับโปรไฟล์มี id มาตรฐานที่บันทึกไว้ (off, minimal, low, medium, high, xhigh, adaptive, max หรือ ultra) และอาจมี label สำหรับแสดงผล ผู้ให้บริการแบบไบนารีใช้ { id: "low", label: "on" }
  • ฮุกโปรไฟล์จะได้รับข้อเท็จจริงจากแค็ตตาล็อกที่ผสานแล้วเมื่อพร้อมใช้งาน ซึ่งรวมถึง reasoning, compat.thinkingFormat และ compat.supportedReasoningEfforts ใช้ข้อเท็จจริงเหล่านี้เพื่อเปิดเผยโปรไฟล์แบบไบนารีหรือแบบกำหนดเองเฉพาะเมื่อสัญญาคำขอที่กำหนดค่ารองรับเพย์โหลดที่ตรงกัน
  • Plugin เครื่องมือที่ต้องตรวจสอบค่าการคิดที่เขียนทับอย่างชัดเจนควรใช้ api.runtime.agent.resolveThinkingPolicy({ provider, model, agentRuntime }) ร่วมกับ api.runtime.agent.normalizeThinkingLevel(...) และไม่ควรเก็บรายการระดับของผู้ให้บริการ/โมเดลไว้เอง ส่ง agentRuntime เมื่อเครื่องมือเป็นเจ้าของเส้นทางการดำเนินการ เช่น การเรียกใช้แบบฝังตัวเสมอ
  • Plugin เครื่องมือที่เข้าถึงข้อมูลเมตาของโมเดลแบบกำหนดเองที่กำหนดค่าไว้ สามารถส่ง catalog ไปยัง resolveThinkingPolicy เพื่อให้การเลือกใช้ compat.supportedReasoningEfforts สะท้อนในการตรวจสอบฝั่ง Plugin
  • ฮุกแบบเดิมที่เผยแพร่แล้ว (supportsXHighThinking, isBinaryThinking และ resolveDefaultThinkingLevel) ยังคงทำหน้าที่เป็นอะแดปเตอร์เพื่อความเข้ากันได้ แต่ชุดระดับแบบกำหนดเองใหม่ควรใช้ resolveThinkingProfile
  • แถว/ค่าเริ่มต้นของ Gateway เปิดเผย thinkingLevels, thinkingOptions และ thinkingDefault เพื่อให้ไคลเอนต์ ACP/แชตแสดงรหัสโปรไฟล์และป้ายกำกับเดียวกับที่การตรวจสอบขณะรันไทม์ใช้
Was this useful?
On this page

On this page