main, या जब session.scope, global हो तब global)।
पूरी चैट विंडो एक नेटिव स्प्लिट व्यू है:
- सत्र साइडबार: पिन किए गए, Gateway-समर्थित समूह और हाल के अनुभागों वाली खोजने योग्य सत्र सूची। बनाए गए चाइल्ड सत्र प्रत्येक अनुभाग में अपने पैरेंट के नीचे नेस्ट होते हैं; संक्षिप्त किए गए पैरेंट चल रहे, विफल और अपठित वंशजों का सार दिखाते हैं। संदर्भ मेनू सत्र जानकारी, नाम बदलने, पिन करने, फ़ोर्क करने, पठित/अपठित चिह्नित करने, संग्रहित करने/पुनर्स्थापित करने, सत्र कुंजी कॉपी करने और हटाने का समर्थन करते हैं। प्राथमिक नया-सत्र क्रिया (या Shift-Cmd-N)
sessions.createके माध्यम से तुरंत सत्र बनाती है; उसका निकटवर्ती विकल्प पॉपओवर एजेंट चुन सकता है और वैकल्पिक बेस रेफ़ के साथ प्रबंधित वर्कट्री का अनुरोध कर सकता है। - विंडो टूलबार: संदर्भ-उपयोग रिंग (टोकन और सत्र लागत, एक संक्षिप्त क्रिया के साथ), मॉडल नियंत्रण और सत्र क्रिया मेनू। मॉडल प्रदाता के अनुसार समूहित होते हैं और डिफ़ॉल्ट प्रदाता पहले होता है, जबकि पिन किए गए और हाल के मॉडल सबसे ऊपर रहते हैं। नियंत्रण मॉडल के चिंतन स्तर को इनहेरिट या ओवरराइड कर सकते हैं, टूल-कॉल की शब्दबहुलता चुन सकते हैं और तेज़ प्रतिक्रियाओं को टॉगल कर सकते हैं। मेनू वर्तमान सत्र का नाम बदल या उसे फ़ोर्क कर सकता है और उसकी पिन, पठित या संग्रह स्थिति अपडेट कर सकता है। सत्र… (Shift-Cmd-S) Gateway खोज, समूह प्रबंधन, सत्र निरीक्षण, नाम बदलने, पिन करने, संग्रहित करने और पुनर्स्थापित करने के लिए सक्रिय/संग्रहित प्रबंधक खोलता है। चयन मोड कई सक्रिय सत्रों पर पिन, अनपिन, संग्रह या हटाने की क्रिया लागू करता है और अलग-अलग विफलताओं को दृश्यमान रखता है। अलग-अलग मेनू चेकमार्क सहायक का तर्क और टूल गतिविधि दिखाते या छिपाते हैं; दोनों डिफ़ॉल्ट रूप से चालू रहते हैं और ऐप दोबारा खोलने पर याद रखे जाते हैं।
- प्रतिलेख और कंपोज़र: सहायक संदेश अवतार के साथ सामान्य टेक्स्ट के रूप में और उपयोगकर्ता संदेश एक्सेंट बबल के रूप में रेंडर होते हैं। लंबित एजेंट प्रश्न एकल या बहु-चयन विकल्पों, मुक्त-टेक्स्ट अन्य उत्तरों, समाप्ति उलटी गिनती और साझा टर्मिनल स्थिति वाले नेटिव कार्ड के रूप में रेंडर होते हैं। खाली चैट डेस्कटॉप आरंभिक प्रॉम्प्ट प्रस्तुत करती हैं।
/टाइप करने परcommands.listद्वारा समर्थित स्लैश-कमांड स्वतःपूर्णता खुलती है, जिसमें एरो/Tab/Return/Escape कीबोर्ड नेविगेशन उपलब्ध है। किसी संदेश के दृश्यमान Markdown को छिपे हुए तर्क के बिना कॉपी करने के लिए उस पर राइट-क्लिक करें। काटे गए सहायक संदेश पूरा संदेश खोलें विकल्प भी देते हैं, जो चयन योग्य Markdown रीडर लोड करता है। स्थानीय वाक् फ़ॉलबैक के साथ Gateway TTS के लिए सुनें का उपयोग करें। - वॉइस नियंत्रण: कंपोज़र मौजूदा macOS Talk Mode के मेनू-बार ओवरले को बदले बिना उसे शुरू या बंद कर सकता है। Talk Mode सक्रिय होने पर कंपोज़र उसकी सुनने/सोचने/बोलने की स्थिति, लाइव ऑडियो गतिविधि और विस्तृत किया जा सकने वाला चलता हुआ प्रतिलेख दिखाता है। सिस्टम डिफ़ॉल्ट या कनेक्ट किया हुआ माइक्रोफ़ोन चुनने के लिए Talk बटन पर राइट-क्लिक करें; यही माइक्रोफ़ोन चयन Voice Wake और पुश-टू-टॉक में उपयोग होता है। यदि चयनित माइक्रोफ़ोन डिस्कनेक्ट हो जाता है, तो सक्रिय Talk सत्र सिस्टम डिफ़ॉल्ट पर लौट जाता है और अगली बार Talk Mode शुरू होने पर चयन का दोबारा प्रयास करता है। जब Talk Mode ऑडियो कैप्चर को नियंत्रित नहीं कर रहा हो, तब अलग माइक्रोफ़ोन क्रिया वॉइस नोट रिकॉर्ड करती है।
एकाधिक Gateway विंडो
दोबारा उपयोग किए जा सकने वाले Gateway प्रोफ़ाइल जोड़ने या हटाने के लिए सेटिंग्स → Gateways खोलें। प्रत्येक प्रोफ़ाइल में निजी-नेटवर्कws:// या सुरक्षित wss:// एंडपॉइंट और उसका
वैकल्पिक टोकन या पासवर्ड होता है; क्रेडेंशियल macOS Keychain में संग्रहीत किए जाते हैं।
सुरक्षित प्रोफ़ाइल अपना सिस्टम-विश्वास-नियंत्रित प्रथम-उपयोग प्रमाणपत्र पिन बनाए रखते हैं
और प्राथमिक Gateway से gateway.remote.tlsFingerprint इनहेरिट नहीं करते।
किसी प्रोफ़ाइल को हटाने पर उसकी खुली विंडो भी बंद हो जाती हैं और उसका द्वितीयक
कनेक्शन समाप्त हो जाता है।
फ़ाइल → नई Gateway विंडो… चुनें या Cmd-N दबाएँ, फिर उन सहेजे गए
प्रोफ़ाइलों में से कोई एक चुनें। चयनकर्ता सबसे हाल में उपयोग किए गए प्रोफ़ाइल को याद रखता है। प्रत्येक
चयन एक नई स्वतंत्र विंडो बनाता है, इसलिए समान Gateway अलग-अलग
सक्रिय सत्रों और नेविगेशन स्थिति वाली कई विंडो में दिखाई दे सकता है।
प्रत्येक सहेजा गया प्रोफ़ाइल एक साझा Gateway कनेक्शन, डिवाइस-प्रमाणीकरण कार्यक्षेत्र,
प्रतिलेख कैश, ऑफ़लाइन आउटबॉक्स और रूट लीज़ का स्वामी होता है। उस प्रोफ़ाइल की विंडो
स्वतंत्र रूप से नेविगेट करने योग्य रहते हुए उन संसाधनों का दोबारा उपयोग करती हैं। अलग-अलग
प्रोफ़ाइलों की विंडो कनेक्ट रहती हैं और एक साथ चैट चलाती हैं।
मेनू-बार ऐप का कॉन्फ़िगर किया गया Gateway, Mac Node
क्षमताओं और Talk Mode का स्वामी बना रहता है। अतिरिक्त Gateway विंडो केवल ऑपरेटर के लिए हैं, इसलिए
दूसरा Gateway वैश्विक माइक्रोफ़ोन या डिवाइस नियंत्रणों का लक्ष्य चुपचाप नहीं बदल सकता।
सुनने/TTS और सामान्य चैट क्रियाएँ विंडो के अपने Gateway कनेक्शन का उपयोग करती हैं।
त्वरित चैट बार
मुख्य सत्र के लिए फ़्लोटिंग कंपोज़र खोलने हेतु Option-Space (⌥Space) दबाएँ या मेनू बार मेनू से त्वरित चैट चुनें। वैश्विक शॉर्टकट को सेटिंग्स → सामान्य → त्वरित चैट शॉर्टकट में रिकॉर्डर से बदलें। त्वरित चैट लक्षित एजेंट दिखाती है (अवतार या इमोजी, जिसमें एजेंट का नाम प्लेसहोल्डर होता है) और उस एजेंट के मुख्य सत्र में भेजती है। Return द्वारा भेजना स्वीकार किए जाने के बाद बार खुला रहता है और स्ट्रीम किए गए Markdown उत्तर तथा हाल के प्रतिलेख के साथ नीचे की ओर विस्तृत हो जाता है। बार इनपुट कंपोज़र बना रहता है। भेजने और उसी लक्ष्य को पूरी चैट विंडो में खोलने के लिए Command-Return, नई पंक्ति के लिए Shift-Return या पूरे बार और उत्तर क्षेत्र को बंद करने के लिए Escape दबाएँ। बाहर क्लिक करने पर भी यह बंद हो जाता है। प्रासंगिक macOS अनुमतियाँ अनुपलब्ध होने पर संलग्न पट्टी अनुमति दें और अभी नहीं क्रियाएँ प्रस्तुत करती है। कंपोज़र में बोलकर लिखने के लिए माइक्रोफ़ोन बटन का उपयोग करें। आंशिक वाक् परिणाम कंपोज़र में पहले से मौजूद टेक्स्ट को सुरक्षित रखते हुए बोले गए अंश को लाइव बदलते हैं। रोकने के लिए बटन दोबारा दबाएँ, Return दबाएँ या Escape दबाएँ; त्वरित चैट को भेजने, छिपाने या उससे फ़ोकस हटाने पर भी माइक्रोफ़ोन मुक्त हो जाता है। पहला उपयोग macOS Microphone और Speech Recognition की पहुँच माँगता है। त्वरित चैट Apple Speech का उपयोग करती है और उसकी नेटवर्क सेवाओं का उपयोग कर सकती है; केवल निष्क्रिय Voice Wake के लिए ऑन-डिवाइस पहचान आवश्यक है। संक्षिप्त मॉडल नियंत्रण लक्षित सत्र का वर्तमान मॉडल और तर्क स्तर दिखाता है। मॉडल का चयन उस सत्र को अपडेट करता है और इसलिए वहीं बना रहता है, जबकि तर्क का चयन केवल वर्तमान त्वरित चैट प्रस्तुति से भेजे गए प्रत्येक संदेश पर लागू होता है। बार छिपने पर स्थानीय चयन रीसेट हो जाते हैं। एजेंट बदलने या हाल का सत्र चुनने पर स्पष्ट चयन बने रहते हैं, लेकिन नए लक्षित सत्र की अंतर्निहित मॉडल स्थिति दोबारा लोड होती है। हाल में अपडेट किए गए पाँच सत्रों में से चुनने या <agent> को नया संदेश पर लौटने के लिए इतिहास बटन पर क्लिक करें। हाल का चयन ठीक उसी सत्र में भेजता है और प्लेसहोल्डर को <session> में उत्तर दें में बदल देता है। त्वरित चैट छिपाने पर यह अस्थायी लक्ष्य चयनित एजेंट के मुख्य सत्र पर रीसेट हो जाता है; अवतार मेनू से एजेंट बदलने पर भी यह साफ़ हो जाता है। Command-Return संदेश प्राप्त करने वाले एजेंट की बातचीत खोलता है, भले ही सत्र का कार्यक्षेत्र वैश्विक हो। कैमरा बटन विंडो कैप्चर करें… या क्षेत्र कैप्चर करें… के लिए मेनू खोलता है। विंडो कैप्चर प्रत्येक दृश्यमान विंडो को लेबल करता है; क्षेत्र कैप्चर में किसी क्षेत्र को खींचते समय प्रत्येक डिस्प्ले मंद हो जाता है और उसका लाइव आकार दिखाई देता है। चयनित स्क्रीनशॉट किसी भी टाइप किए गए टेक्स्ट को कैप्शन बनाकर चुने गए एजेंट को भेजा जाता है। पहला उपयोग macOS Screen Recording की पहुँच माँगता है। Escape दबाने, खाली स्थान पर क्लिक करने या सार्थक क्षेत्र खींचे बिना क्लिक करने पर प्रक्रिया रद्द हो जाती है। फ़ोकस किए गए ऐप की फ़ोकस की गई विंडो से टेक्स्ट संलग्न करने के लिए दस्तावेज़-टेक्स्ट बटन का उपयोग करें। त्वरित चैट परिणाम को कंपोज़र में कैप्चर किया गया टेक्स्ट रखने के बजाय हटाने योग्य संदर्भ चिप के रूप में दिखाती है; भेजने पर चिप का टेक्स्ट आउटगोइंग संदेश में जुड़ता है और फिर साफ़ हो जाता है। इसके लिए macOS Accessibility अनुमति आवश्यक है। त्वरित चैट बंद होने पर संलग्न टेक्स्ट भी साफ़ हो जाता है, ताकि एक प्रस्तुति का संदर्भ बाद में भेजे जाने वाले संदेश में लीक न हो सके। उत्तर पूरा होने के बाद, छिपे हुए तर्क को छोड़कर उसके दृश्यमान सहायक टेक्स्ट को सामान्य पेस्टबोर्ड पर कॉपी करने और पहले अग्रभूमि में रहे ऐप में पेस्ट करने के लिए <app> में पेस्ट करें चुनें। इसके लिए macOS Accessibility अनुमति आवश्यक है। यह क्रिया वर्तमान पेस्टबोर्ड सामग्री को बदलती है और फिर त्वरित चैट को छिपा देती है। सेटिंग्स → सामान्य → त्वरित चैट से यह सुविधा पूरी तरह अक्षम करें; उसी अनुभाग में शॉर्टकट रिकॉर्डर भी उपलब्ध है।- स्थानीय मोड: स्थानीय Gateway WebSocket से सीधे कनेक्ट होता है।
- रिमोट मोड: कॉन्फ़िगर किए गए प्रत्यक्ष
ws:///wss://रूट या ऐप द्वारा प्रबंधित SSH टनल को डेटा प्लेन के रूप में उपयोग करता है।
लॉन्च और डीबगिंग
- मैन्युअल: Lobster मेनू -> “चैट खोलें”।
-
परीक्षण के लिए स्वतः खोलना:
(
--webchatको विरासत उपनाम के रूप में स्वीकार किया जाता है।) -
लॉग:
./scripts/clawlog.sh(सबसिस्टमai.openclaw, श्रेणीWebChatSwiftUI)।
इसका संयोजन कैसे किया गया है
- डेटा प्लेन: Gateway WS विधियाँ
chat.history,chat.message.get,chat.send,chat.abort,chat.inject, साथ हीquestion.listऔरquestion.resolve, और ईवेंटchat,agent,presence,tick,health; प्रश्न कार्डquestion.requestedऔरquestion.resolvedईवेंट का अनुसरण करते हैं और दोबारा कनेक्ट होने के बादquestion.listसे रीफ़्रेश होते हैं। chat.historyप्रदर्शन के लिए सामान्यीकृत प्रतिलेख लौटाता है: इनलाइन डायरेक्टिव टैग दृश्यमान टेक्स्ट से हटा दिए जाते हैं, सामान्य-टेक्स्ट टूल-कॉल XML पेलोड (<tool_call>,<function_call>,<tool_calls>,<function_calls>, जिनमें काटे गए ब्लॉक भी शामिल हैं) और लीक हुए मॉडल नियंत्रण टोकन हटा दिए जाते हैं, केवल मूक टोकन वाली सहायक पंक्तियाँ, जैसे ठीकNO_REPLY/no_reply, छोड़ दी जाती हैं और अत्यधिक बड़ी पंक्तियों को काटे गए प्लेसहोल्डर से बदला जा सकता है।- सत्र: ऊपर बताए अनुसार प्राथमिक सत्र को डिफ़ॉल्ट बनाता है; UI सत्रों के बीच स्विच कर सकता है।
- सत्र समूह:
sessions.groups.list,sessions.groups.put,sessions.groups.renameऔरsessions.groups.deleteसमूह कैटलॉग के स्वामी हैं। सदस्यता सत्र काcategoryहै, जिसेsessions.patchके माध्यम से अपडेट किया जाता है। - अपठित स्थिति: सत्र सक्रिय होने और उसका लाइव इतिहास सफलतापूर्वक लोड होने के बाद ऐप उस सत्र का अपठित चिह्न साफ़ कर देता है। इतिहास लोड करने में विफलता होने पर यह साफ़ नहीं होता; अस्थायी पैच विफलता पर अगली सक्रियता में दोबारा प्रयास किया जाता है।
- ऑनबोर्डिंग प्रथम-रन सेटअप को अलग रखने के लिए समर्पित सत्र का उपयोग करती है।
- ऑफ़लाइन कैश: ऐप प्रति Gateway हाल के चैट सत्रों और प्रतिलेखों का एक छोटा रीड-ओनली कैश रखता है (
~/Library/Application Support/OpenClaw/chat-cache.sqlite): कोल्ड ओपन पर अंतिम ज्ञात प्रतिलेख तुरंत दिखाया जाता है और Gateway के उत्तर देने पर रीफ़्रेश किया जाता है, तथा डिस्कनेक्ट होने पर भी हाल की चैट ब्राउज़ की जा सकती हैं (कनेक्शन वापस आने तक भेजना अक्षम रहता है)।
सुरक्षा सतह
- रिमोट मोड SSH पर केवल Gateway WebSocket नियंत्रण पोर्ट फ़ॉरवर्ड करता है।
ज्ञात सीमाएँ
- UI को चैट सत्रों के लिए अनुकूलित किया गया है, पूर्ण ब्राउज़र सैंडबॉक्स के लिए नहीं।