Tools
بالمناسبة، أسئلة جانبية
يتيح لك /btw طرح سؤال جانبي سريع عن الجلسة الحالية دون
تحويل ذلك السؤال إلى سجل المحادثة العادي. يُعد /side اسمًا بديلًا له.
وهو مستوحى من سلوك /btw في Claude Code، لكنه مكيّف مع بنية
Gateway وتعدد القنوات في OpenClaw.
ما يفعله
عندما ترسل:
/btw what changed?يقوم OpenClaw بما يلي:
- يأخذ لقطة لسياق الجلسة الحالية،
- يشغّل استعلامًا جانبيًا مؤقتًا ومنفصلًا،
- يجيب عن السؤال الجانبي فقط،
- يترك التشغيل الرئيسي كما هو،
- لا يكتب سؤال BTW أو إجابته في سجل الجلسة،
- يصدر الإجابة بوصفها نتيجة جانبية مباشرة بدلًا من رسالة مساعد عادية.
النموذج الذهني المهم هو:
- سياق الجلسة نفسه
- استعلام جانبي منفصل لمرة واحدة
- نقل الحزمة الأصلية نفسه عندما تستخدم الجلسة حزمة أصلية
- بلا تلويث للسياق المستقبلي
- بلا حفظ في النص الكامل للمحادثة
في جلسات حزمة Codex، يبقى BTW داخل Codex عبر تفريع سلسلة
خادم التطبيق النشطة كسلسلة جانبية مؤقتة. يحافظ ذلك على OAuth الخاص بـ Codex
وسلوك السلسلة الأصلي كما هما، مع عزل الإجابة الجانبية عن النص الكامل
للمحادثة الأصلية. وكما في /side الخاص بـ Codex، تحتفظ السلسلة الجانبية
بأذونات Codex الحالية وسطح الأدوات الأصلي، مع ضوابط تخبر النموذج بألا
يعامل عمل السلسلة الأصلية الموروث كتعليمات نشطة.
بالنسبة إلى الأسماء البديلة لوقت تشغيل CLI، يستخدم BTW الواجهة الخلفية المالكة لـ CLI في وضع السؤال الجانبي بدلًا من الرجوع إلى استدعاء مباشر لمزوّد. يزرع OpenClaw سياق محادثة منقحًا في استدعاء CLI جديد لمرة واحدة، ويعطّل تجميع أدوات OpenClaw MCP وحالة جلسة CLI القابلة لإعادة الاستخدام لذلك الاستدعاء، ويترك للواجهة الخلفية إضافة أي أعلام أصلية في CLI لعدم الاستئناف أو عدم استخدام الأدوات تدعمها. تحتفظ أوقات التشغيل المباشرة غير المعتمدة على CLI بالمسار المباشر لمرة واحدة.
ما لا يفعله
لا يقوم /btw بما يلي:
- إنشاء جلسة دائمة جديدة،
- متابعة المهمة الرئيسية غير المكتملة،
- كتابة بيانات سؤال/إجابة BTW في سجل النص الكامل للمحادثة،
- الظهور في
chat.history, - النجاة بعد إعادة التحميل.
إنه مؤقت عمدًا.
كيف يعمل السياق
يستخدم BTW الجلسة الحالية بوصفها سياقًا خلفيًا فقط.
إذا كان التشغيل الرئيسي نشطًا حاليًا، يأخذ OpenClaw لقطة لحالة الرسائل الحالية ويتضمن الموجّه الرئيسي الجاري كسياق خلفي، مع إخبار النموذج صراحةً بما يلي:
- أجب عن السؤال الجانبي فقط،
- لا تستأنف المهمة الرئيسية غير المكتملة ولا تكملها،
- لا توجّه المحادثة الأصلية.
يحافظ ذلك على عزل BTW عن التشغيل الرئيسي، مع إبقائه مدركًا لما تدور حوله الجلسة.
نموذج التسليم
لا يُسلَّم BTW كرسالة عادية في النص الكامل لمحادثة المساعد.
على مستوى بروتوكول Gateway:
- تستخدم محادثة المساعد العادية حدث
chat - يستخدم BTW حدث
chat.side_result
هذا الفصل مقصود. إذا أعاد BTW استخدام مسار حدث chat العادي،
فستعامله العملاء كسجل محادثة عادي.
لأن BTW يستخدم حدثًا مباشرًا منفصلًا ولا يُعاد تشغيله من
chat.history، فإنه يختفي بعد إعادة التحميل.
سلوك السطح
TUI
في TUI، يُعرض BTW ضمنيًا في عرض الجلسة الحالية، لكنه يبقى مؤقتًا:
- مميزًا بصريًا عن رد المساعد العادي
- قابلًا للإغلاق باستخدام
EnterأوEsc - لا يُعاد عرضه عند إعادة التحميل
القنوات الخارجية
على قنوات مثل Telegram وWhatsApp وDiscord، يُسلَّم BTW كرد لمرة واحدة موسوم بوضوح لأن هذه الأسطح لا تملك مفهوم تراكب مؤقت محلي.
لا تزال الإجابة تُعامل كنتيجة جانبية، لا كسجل جلسة عادي.
Control UI / الويب
يصدر Gateway أحداث BTW بشكل صحيح كـ chat.side_result، ولا يُضمَّن BTW
في chat.history، لذا فإن عقد الاستمرارية صحيح بالفعل للويب.
ما زالت Control UI الحالية تحتاج إلى مستهلك مخصص لـ chat.side_result
لعرض BTW مباشرة في المتصفح. إلى أن يصل هذا الدعم من جانب العميل، يبقى BTW
ميزة على مستوى Gateway مع سلوك كامل في TUI والقنوات الخارجية، لكنه ليس بعد
تجربة متصفح مكتملة.
متى تستخدم BTW
استخدم /btw عندما تريد:
- توضيحًا سريعًا بشأن العمل الحالي،
- إجابة جانبية واقعية بينما لا يزال تشغيل طويل قيد التقدم،
- إجابة مؤقتة لا ينبغي أن تصبح جزءًا من سياق الجلسة المستقبلي.
أمثلة:
/btw what file are we editing?/side what changed while the main run continued?/btw what does this error mean?/btw summarize the current task in one sentence/btw what is 17 * 19?متى لا تستخدم BTW
لا تستخدم /btw عندما تريد أن تصبح الإجابة جزءًا من
سياق العمل المستقبلي للجلسة.
في هذه الحالة، اسأل بشكل عادي في الجلسة الرئيسية بدلًا من استخدام BTW.