Plugin guides

लॉगबुक Plugin

Logbook Plugin स्क्रीन गतिविधि को एक स्वचालित कार्य जर्नल में बदल देता है। यह युग्मित Node से समय-समय पर स्क्रीन स्नैपशॉट कैप्चर करता है, उन्हें टाइमस्टैम्प वाली टिप्पणियों में सारांशित करता है, और Control UI में टाइमलाइन कार्ड बनाता है। यह दैनिक स्टैंडअप नोट्स भी बना सकता है और ट्रैक किए गए दिन के बारे में प्रश्नों के उत्तर दे सकता है।

OpenClaw के स्वामित्व वाली स्थिति Gateway पर <state-dir>/logbook/ के अंतर्गत रहती है, लेकिन मॉडल प्रोसेसिंग आवश्यक रूप से स्थानीय नहीं होती। नमूने के रूप में लिए गए स्क्रीनशॉट कॉन्फ़िगर किए गए विज़न रूट पर जाते हैं; टिप्पणियाँ और टाइमलाइन टेक्स्ट डिफ़ॉल्ट एजेंट मॉडल पर जाते हैं। यदि स्क्रीन सामग्री और उससे प्राप्त गतिविधि टेक्स्ट मशीन पर ही रहना आवश्यक हो, तो दोनों चरणों के लिए स्थानीय मॉडल रूट का उपयोग करें।

Logbook बंडल किया हुआ है और डिफ़ॉल्ट रूप से अक्षम है। Plugin को सक्षम करने पर Gateway स्क्रीन कैप्चर के लिए सहमति देता है क्योंकि captureEnabled का डिफ़ॉल्ट मान true है।

शुरू करने से पहले

आपको चाहिए:

  • एक कनेक्टेड Node जो screen.snapshot या logbook.snapshot उपलब्ध कराता हो। macOS ऐप Node को Screen Recording अनुमति चाहिए। हेडलेस macOS Node होस्ट (openclaw node host run) को सिस्टम के screencapture टूल द्वारा समर्थित, Plugin से मिलने वाली logbook.snapshot कमांड प्राप्त होती है।
  • बंडल किया हुआ Codex Plugin सक्षम और प्रमाणीकृत होना चाहिए। वर्तमान में Codex वह संरचित छवि-निष्कर्षण अनुबंध उपलब्ध कराता है जिसकी Logbook को आवश्यकता है। इससे साइन इन करें: openclaw models auth login --provider openai; अन्य प्रमाणीकरण मार्गों के लिए Codex हार्नेस देखें।
  • एक कार्यशील डिफ़ॉल्ट एजेंट मॉडल। विज़न पास के बाद Logbook इसका उपयोग कार्ड, स्टैंडअप नोट्स और दिन के प्रश्नोत्तर संश्लेषित करने के लिए करता है।

त्वरित शुरुआत

Codex और Logbook Plugin सक्षम करें:

bash
openclaw plugins enable codexopenclaw plugins enable logbook

नियतात्मक स्टार्टअप के लिए स्पष्ट विज़न मॉडल कॉन्फ़िगर करें:

json5
{  plugins: {    entries: {      codex: {        enabled: true,      },      logbook: {        enabled: true,        config: {          visionModel: "codex/gpt-5.6-sol",        },      },    },  },}

यदि आप plugins.allow का उपयोग करते हैं, तो codex और logbook दोनों शामिल करें। Plugin कॉन्फ़िगरेशन बदलने के बाद Gateway पुनः आरंभ करें, फिर पंजीकरण जाँचें और डैशबोर्ड खोलें:

bash
openclaw gateway restartopenclaw plugins inspect logbook --runtime --jsonopenclaw nodes status --connectedopenclaw nodes describe --node <idOrNameOrIp>openclaw dashboard

Node विवरण में screen.snapshot या logbook.snapshot शामिल होना चाहिए। हेडलेस Node केवल Plugin सक्रिय होने के बाद logbook.snapshot घोषित करते हैं। यदि कमांड अनुपस्थित है, तो Node समस्या निवारण देखें।

Logbook टैब केवल सक्षम Plugin और operator.write Control UI सत्र के लिए दिखाई देता है। स्थिति पंक्ति में बिना किसी त्रुटि के कैप्चर हो रहा है दिखना चाहिए। विश्लेषण विंडो बंद होने पर टाइमलाइन कार्ड दिखाई देता है, या गतिविधि कैप्चर होने के बाद आप अभी विश्लेषण करें चुन सकते हैं।

यह कैसे काम करता है

  1. कैप्चर: प्रत्येक captureIntervalSeconds (डिफ़ॉल्ट 30s) पर Logbook चयनित Node की कैप्चर कमांड चलाता है और स्केल किया हुआ JPEG फ़्रेम संग्रहीत करता है। लगातार एक जैसे फ़्रेम निष्क्रिय चिह्नित किए जाते हैं और विश्लेषण से बाहर रखे जाते हैं।
  2. निरीक्षण: विश्लेषण विंडो (डिफ़ॉल्ट 15 मिनट) बीतने पर Plugin अधिकतम 16 सक्रिय फ़्रेमों का नमूना लेकर उन्हें विज़न मॉडल को भेजता है, जो टाइमस्टैम्प वाली गतिविधि टिप्पणियाँ लौटाता है ("VS Code: store.ts संपादित करना, टाइप त्रुटि ठीक करना")। दो मिनट से अधिक का कैप्चर अंतराल या स्थानीय मध्यरात्रि भी वर्तमान विंडो बंद कर देती है।
  3. संश्लेषण: टिप्पणियों और मौजूदा कार्डों के पिछले 45 मिनट को शीर्षक, सारांश, श्रेणी, मुख्य ऐप और किसी भी संक्षिप्त ध्यान-भटकाव सहित टाइमलाइन कार्डों (प्रत्येक 10-60 मिनट) में संशोधित किया जाता है।
  4. छँटाई: retentionDays (डिफ़ॉल्ट 14) से पुराने फ़्रेम हटा दिए जाते हैं। कार्ड, टिप्पणियाँ और कैश किए गए स्टैंडअप रखे जाते हैं।

दिन की सीमाएँ और टाइमलाइन घड़ियाँ ब्राउज़र के समय क्षेत्र के बजाय Gateway के स्थानीय समय क्षेत्र का उपयोग करती हैं। फ़्रेम और SQLite टाइमलाइन डेटाबेस <state-dir>/logbook/ के अंतर्गत रहते हैं।

मॉडल और डेटा प्रवाह

Logbook दो अलग-अलग मॉडल रूट का उपयोग करता है:

चरण भेजा गया डेटा मॉडल रूट
निरीक्षण अधिकतम 16 नमूना JPEG फ़्रेम और उनके कैप्चर समय visionModel, या संगत उधार ली गई tools.media Codex प्रविष्टि
कार्ड संश्लेषित करना टाइमस्टैम्प वाली टिप्पणियाँ और हाल के टाइमलाइन कार्ड Plugin LLM रनटाइम के माध्यम से डिफ़ॉल्ट एजेंट मॉडल
स्टैंडअप बनाना चयनित दिन और पिछले दिन के कार्ड Plugin LLM रनटाइम के माध्यम से डिफ़ॉल्ट एजेंट मॉडल
अपने दिन के बारे में पूछें प्रश्न, चयनित दिन के कार्ड और हाल की टिप्पणियाँ Plugin LLM रनटाइम के माध्यम से डिफ़ॉल्ट एजेंट मॉडल

पूरा SQLite डेटाबेस किसी भी मॉडल को नहीं भेजा जाता। कच्चे स्क्रीनशॉट केवल निरीक्षण चरण में जाते हैं; कार्ड संश्लेषण, स्टैंडअप और प्रश्नोत्तर को व्युत्पन्न टेक्स्ट मिलता है।

कॉन्फ़िगरेशन

json5
{  plugins: {    entries: {      codex: {        enabled: true,      },      logbook: {        enabled: true,        config: {          captureEnabled: true,          captureIntervalSeconds: 30,          analysisIntervalMinutes: 15,          nodeId: "my-mac",          screenIndex: 0,          maxWidth: 1440,          visionModel: "codex/gpt-5.6-sol",          retentionDays: 14,        },      },    },  },}

Logbook की सभी कॉन्फ़िगरेशन कुंजियाँ वैकल्पिक हैं। संख्यात्मक मानों को पूर्णांकों में राउंड किया जाता है और समर्थित सीमा में सीमित किया जाता है।

कुंजी डिफ़ॉल्ट सीमा या मान व्यवहार
captureEnabled true बूलियन नए स्नैपशॉट के लिए स्थायी मास्टर स्विच; false होने पर टाइमलाइन उपलब्ध रहती है
captureIntervalSeconds 30 5-600 कैप्चर प्रयासों के बीच विलंब
analysisIntervalMinutes 15 3-120 लक्षित निरीक्षण विंडो; अंतराल और मध्यरात्रि इसे पहले बंद कर सकते हैं
nodeId सेट नहीं Node आईडी या प्रदर्शन नाम कैप्चर को एक कनेक्टेड Node पर स्थिर करता है; मिलान में अक्षरों के आकार का भेद नहीं होता
screenIndex 0 0-16 शून्य-आधारित डिस्प्ले इंडेक्स
maxWidth 1440 480-3840 अनुरोधित कैप्चर आकार सीमा; हेडलेस macOS इसे सबसे बड़े आयाम पर लागू करता है
visionModel सेट नहीं provider/model स्पष्ट संरचित रूट; विकृत संदर्भ विश्लेषण रोकते हैं, असमर्थित प्रदाता बैच विफल करते हैं
retentionDays 14 1-365 पुराने फ़्रेम हटाता है; कार्ड, टिप्पणियाँ और स्टैंडअप बने रहते हैं

nodeId के बिना, Logbook पहले screen.snapshot उपलब्ध कराने वाले कनेक्टेड ऐप Node को प्राथमिकता देता है, फिर logbook.snapshot उपलब्ध कराने वाले हेडलेस Node का उपयोग करता है। बिना स्थिर किए गए सेटअप में, विफल Node अन्य योग्य Node के पीछे चला जाता है। डैशबोर्ड का रोकने वाला टॉगल केवल सत्र के लिए है और Gateway पुनः आरंभ होने पर रीसेट हो जाता है; स्थायी रूप से रोकने के लिए captureEnabled: false का उपयोग करें।

विज़न मॉडल चयन

Logbook निरीक्षण मॉडल का समाधान इस क्रम में करता है:

  1. plugins.entries.logbook.config.visionModel
  2. tools.media.image.models के अंतर्गत पहली छवि-सक्षम Codex प्रविष्टि
  3. tools.media.models के अंतर्गत पहली छवि-सक्षम Codex प्रविष्टि

अन्य मीडिया प्रदाताओं को छोड़ दिया जाता है क्योंकि वे वर्तमान में वह संरचित निष्कर्षण अनुबंध उपलब्ध नहीं कराते जिसकी Logbook को आवश्यकता है। tools.media.image.enabled: false सेट करने से उधार लिए गए मीडिया डिफ़ॉल्ट अक्षम हो जाते हैं, लेकिन स्पष्ट Logbook visionModel फिर भी लागू होता है।

डैशबोर्ड टैब

  • टाइमलाइन: श्रेणी के रंगों, मुख्य ऐप, ध्यान-भटकाव चिप्स और स्नैपशॉट कीफ़्रेम सहित प्रत्येक गतिविधि के विस्तार योग्य कार्ड।
  • एक नज़र में दिन: फ़ोकस अनुपात, श्रेणी विभाजन, प्रमुख ऐप।
  • दैनिक स्टैंडअप: कल और आज को पेस्ट करने के लिए तैयार अपडेट में बदलता है।
  • अपने दिन के बारे में पूछें: ट्रैक की गई टाइमलाइन से प्राकृतिक-भाषा के प्रश्नों के उत्तर ("मैंने Gateway PR की समीक्षा कब की थी?")।
  • अभी विश्लेषण करें: विश्लेषण अंतराल की प्रतीक्षा करने के बजाय वर्तमान कैप्चर विंडो तुरंत बंद करता है।

Gateway विधियाँ

Logbook ये Gateway RPC विधियाँ पंजीकृत करता है:

विधि पैरामीटर दायरा परिणाम
logbook.status कोई नहीं operator.read कैप्चर, विश्लेषण, मॉडल, Node, Gateway दिन और Gateway समय क्षेत्र की स्थिति
logbook.days कोई नहीं operator.read टाइमलाइन-कार्ड गणना और कार्ड समय सीमाओं वाले दिन
logbook.timeline { day?: "YYYY-MM-DD" } operator.read व्युत्पन्न कार्ड और दिन के आँकड़े; डिफ़ॉल्ट रूप से Gateway का वर्तमान दिन
logbook.frames { startMs, endMs } operator.write अनुरोधित युग-मिलीसेकंड सीमा में फ़्रेम मेटाडेटा
logbook.frame { frameId } operator.write base64 के रूप में एक कच्चा JPEG फ़्रेम
logbook.standup { day?, refresh? } operator.write किसी दिन के लिए कैश किया गया या पुनः बनाया गया स्टैंडअप टेक्स्ट
logbook.ask { day?, question } operator.write किसी दिन के लिए टाइमलाइन पर आधारित उत्तर
logbook.capture.set { paused } operator.write केवल-सत्र विराम स्थिति और अपडेट की गई स्थिति
logbook.analyze.now कोई नहीं operator.write लंबित विश्लेषण शुरू करता है या उसके शुरू न हो पाने का कारण लौटाता है

रीड विधियाँ परिचालन स्थिति या व्युत्पन्न टेक्स्ट लौटाती हैं। कच्चे स्क्रीनशॉट पिक्सेल, मॉडल-व्यय वाली कार्रवाइयों और रनटाइम बदलावों के लिए operator.write आवश्यक है। Control UI टैब को भी operator.write की आवश्यकता होती है क्योंकि यह उन कार्रवाइयों और कच्चे फ़्रेम पूर्वावलोकनों को उजागर करता है; केवल-पढ़ने वाला क्लाइंट फिर भी व्युत्पन्न-टेक्स्ट विधियों को सीधे कॉल कर सकता है।

गोपनीयता संबंधी नोट्स

  • स्नैपशॉट में स्क्रीन पर मौजूद कुछ भी शामिल हो सकता है, जिसमें सीक्रेट भी शामिल हैं। फ़्रेम कभी भी मशीन से बाहर नहीं जाते, सिवाय कॉन्फ़िगर किए गए अवलोकन मॉडल के लिए नमूना इनपुट के रूप में।
  • कार्ड संश्लेषण, स्टैंडअप जनरेशन या प्रश्नोत्तर के दौरान अवलोकन, हाल के कार्ड और प्रश्न डिफ़ॉल्ट एजेंट मॉडल के माध्यम से मशीन से बाहर जा सकते हैं। दोनों मॉडल रूट पर प्रदाता की डेटा-प्रबंधन नीति लागू करें।
  • जब आपको पूरी तरह स्थानीय पाइपलाइन की आवश्यकता हो, तो संरचित अवलोकन मॉडल और डिफ़ॉल्ट एजेंट मॉडल—दोनों के लिए स्थानीय रूट का उपयोग करें।
  • फ़्रेम, टाइमलाइन डेटाबेस और अस्थायी कैप्चर केवल स्वामी की फ़ाइल अनुमतियों के साथ लिखे जाते हैं।
  • screen.snapshot को gateway.nodes.denyCommands में जोड़ना स्क्रीन-कैप्चर किल स्विच है: यह ऐप-नोड कैप्चर और Logbook के अपने logbook.snapshot कमांड—दोनों को अवरुद्ध करता है।
  • tools.media.image.enabled: false सेट करने से Logbook विश्लेषण के लिए मीडिया इमेज मॉडल का उपयोग करना भी बंद कर देता है; तब केवल Plugin कॉन्फ़िग में स्पष्ट रूप से दिया गया visionModel उपयोग होता है।

समस्या निवारण

Logbook टैब दिखाई नहीं दे रहा है

तीनों गेट जाँचें:

  1. openclaw plugins list --enabled में logbook शामिल है।
  2. Plugin या अनुमति-सूची में बदलाव के बाद Gateway पुनः आरंभ हुआ।
  3. Control UI कनेक्शन में operator.write है; केवल-पढ़ने वाले सत्रों को इंटरैक्टिव टैब डिस्क्रिप्टर नहीं मिलता।

यदि plugins.allow सेट है, तो अनुशंसित कॉन्फ़िगरेशन के लिए उसमें logbook और codex दोनों शामिल होने चाहिए।

कैप्चर त्रुटि की रिपोर्ट करता है

bash
openclaw nodes status --connectedopenclaw nodes describe --node <idOrNameOrIp>openclaw logs --follow
  • पुष्टि करें कि नोड screen.snapshot या logbook.snapshot उपलब्ध कराता है।
  • कैप्चर Mac पर Screen Recording अनुमति प्रदान करें।
  • यदि nodeId कॉन्फ़िगर किया गया है, तो पुष्टि करें कि वह नोड आईडी या डिस्प्ले नाम से मेल खाता है।
  • जाँचें कि gateway.nodes.denyCommands में screen.snapshot शामिल नहीं है।

लगातार तीन विफलताओं के बाद, Logbook दस कैप्चर टिक तक बैक ऑफ़ करता है और फिर दोबारा प्रयास करता है। अनपिन किया गया सेटअप किसी अन्य पात्र नोड पर स्विच कर सकता है।

कैप्चर सफल होते हैं, लेकिन कोई कार्ड दिखाई नहीं देता

  • Model missing स्थिति का अर्थ है कि कोई संगत संरचित विज़न रूट नहीं मिला। Codex Plugin को सक्षम और प्रमाणित करें, या एक मान्य स्पष्ट visionModel सेट करें। मॉडल अनुपलब्ध रहने के दौरान कैप्चर किए गए फ़्रेम लंबित रहते हैं और कॉन्फ़िगरेशन ठीक होने के बाद उनका विश्लेषण किया जा सकता है।
  • analysisIntervalMinutes की प्रतीक्षा करें, या गतिविधि कैप्चर होने के बाद Analyze now चुनें।
  • लगातार एक जैसे फ़्रेम निष्क्रियता के प्रमाण होते हैं और विश्लेषण बैच में शामिल नहीं होते। परीक्षण से पहले दृश्यमान स्क्रीन बदलें।
  • यदि नवीनतम बैच में कोई त्रुटि दिखाई देती है, तो मॉडल या प्रमाणीकरण की समस्या ठीक करें और Analyze now चुनें। बार-बार मॉडल पर खर्च से बचने के लिए विफल बैच का पुनः प्रयास केवल इस स्पष्ट कार्रवाई पर किया जाता है।

संबंधित

Was this useful?
On this page

On this page