- सिस्टम प्रॉम्प्ट (OpenClaw-निर्मित): नियम, टूल, Skills सूची, समय/रनटाइम, और इंजेक्ट की गई कार्यस्थान फ़ाइलें।
- बातचीत का इतिहास: इस सत्र के लिए आपके संदेश + असिस्टेंट के संदेश।
- टूल कॉल/परिणाम + अटैचमेंट: कमांड आउटपुट, फ़ाइल रीड, इमेज/ऑडियो, आदि।
त्वरित शुरुआत (संदर्भ जांचें)
/status→ तेज़ “मेरी विंडो कितनी भरी है?” दृश्य + सत्र सेटिंग।/context list→ क्या इंजेक्ट किया गया है + अनुमानित आकार (प्रति फ़ाइल + कुल)।/context detail→ गहरा विभाजन: प्रति-फ़ाइल, प्रति-टूल स्कीमा आकार, प्रति-Skills एंट्री आकार, सिस्टम प्रॉम्प्ट आकार, और कॉम्पैक्ट किए जा सकने वाले ट्रांसक्रिप्ट संदेशों की गिनती।/context map→ वर्तमान सत्र के ट्रैक किए गए संदर्भ योगदानकर्ताओं की WinDirStat-शैली की ट्रीमैप इमेज।/usage tokens→ सामान्य उत्तरों में प्रति-उत्तर उपयोग फ़ुटर जोड़ें।/compact→ विंडो स्थान खाली करने के लिए पुराने इतिहास को एक कॉम्पैक्ट एंट्री में सारांशित करें।
उदाहरण आउटपुट
मान मॉडल, प्रदाता, टूल नीति, और आपके कार्यस्थान में मौजूद चीज़ों के अनुसार बदलते हैं।/context list
/context detail
/context map
नवीनतम कैश किए गए रन रिपोर्ट से उत्पन्न इमेज भेजता है। सत्र में किसी सामान्य संदेश द्वारा रन रिपोर्ट बनाए जाने से पहले, /context map अनुमान रेंडर करने के बजाय अनुपलब्धता संदेश लौटाता है। आयत का क्षेत्रफल ट्रैक किए गए प्रॉम्प्ट वर्णों के अनुपात में होता है:
- इंजेक्ट की गई कार्यस्थान फ़ाइलें
- बेस सिस्टम प्रॉम्प्ट टेक्स्ट
- Skills प्रॉम्प्ट एंट्री
- टूल JSON स्कीमा
/context list, /context detail, और /context json ऑन-डिमांड अनुमान की जांच कर सकते हैं।
संदर्भ विंडो में क्या गिना जाता है
मॉडल को मिलने वाली हर चीज़ गिनी जाती है, जिसमें शामिल हैं:- सिस्टम प्रॉम्प्ट (सभी सेक्शन)।
- बातचीत का इतिहास।
- टूल कॉल + टूल परिणाम।
- अटैचमेंट/ट्रांसक्रिप्ट (इमेज/ऑडियो/फ़ाइलें)।
- Compaction सारांश और pruning आर्टिफैक्ट।
- प्रदाता “रैपर” या छिपे हुए हेडर (दिखते नहीं, फिर भी गिने जाते हैं)।
OpenClaw सिस्टम प्रॉम्प्ट कैसे बनाता है
सिस्टम प्रॉम्प्ट OpenClaw-स्वामित्व वाला है और हर रन में फिर से बनाया जाता है। इसमें शामिल हैं:- टूल सूची + छोटे विवरण।
- Skills सूची (सिर्फ़ मेटाडेटा; नीचे देखें)।
- कार्यस्थान स्थान।
- समय (UTC + कॉन्फ़िगर होने पर परिवर्तित उपयोगकर्ता समय)।
- रनटाइम मेटाडेटा (होस्ट/OS/मॉडल/thinking)।
- Project Context के अंतर्गत इंजेक्ट की गई कार्यस्थान बूटस्ट्रैप फ़ाइलें।
इंजेक्ट की गई कार्यस्थान फ़ाइलें (Project Context)
डिफ़ॉल्ट रूप से, OpenClaw कार्यस्थान फ़ाइलों का एक निश्चित सेट इंजेक्ट करता है (यदि मौजूद हों):AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(सिर्फ़ पहले रन में)
agents.defaults.bootstrapMaxChars (डिफ़ॉल्ट 20000 वर्ण) का उपयोग करके काटी जाती हैं। OpenClaw agents.defaults.bootstrapTotalMaxChars (डिफ़ॉल्ट 60000 वर्ण) के साथ फ़ाइलों में कुल बूटस्ट्रैप इंजेक्शन सीमा भी लागू करता है। /context कच्चे बनाम इंजेक्ट किए गए आकार और truncation हुआ या नहीं, दिखाता है।
जब truncation होता है, रनटाइम Project Context के अंतर्गत इन-प्रॉम्प्ट चेतावनी ब्लॉक इंजेक्ट कर सकता है। इसे agents.defaults.bootstrapPromptTruncationWarning (off, once, always; डिफ़ॉल्ट always) से कॉन्फ़िगर करें।
Skills: इंजेक्टेड बनाम ऑन-डिमांड लोडेड
सिस्टम प्रॉम्प्ट में एक कॉम्पैक्ट Skills सूची (नाम + विवरण + स्थान) शामिल होती है। इस सूची का वास्तविक ओवरहेड होता है। Skill निर्देश डिफ़ॉल्ट रूप से शामिल नहीं होते। मॉडल से अपेक्षा की जाती है कि वह Skill कीSKILL.md को केवल ज़रूरत पड़ने पर read करे।
टूल: दो लागतें हैं
टूल संदर्भ को दो तरीकों से प्रभावित करते हैं:- सिस्टम प्रॉम्प्ट में टूल सूची टेक्स्ट (जिसे आप “Tooling” के रूप में देखते हैं)।
- टूल स्कीमा (JSON)। इन्हें मॉडल को भेजा जाता है ताकि वह टूल कॉल कर सके। ये संदर्भ में गिने जाते हैं, भले ही आप उन्हें साधारण टेक्स्ट के रूप में नहीं देखते।
/context detail सबसे बड़े टूल स्कीमा का विभाजन देता है ताकि आप देख सकें कि कौन-सा हिस्सा प्रमुख है।
कमांड, निर्देश, और “इनलाइन शॉर्टकट”
स्लैश कमांड Gateway द्वारा संभाले जाते हैं। कुछ अलग-अलग व्यवहार हैं:- स्टैंडअलोन कमांड: ऐसा संदेश जो केवल
/...है, कमांड के रूप में चलता है। - निर्देश:
/think,/verbose,/trace,/reasoning,/elevated,/model,/queueमॉडल द्वारा संदेश देखने से पहले हटा दिए जाते हैं।- सिर्फ़-निर्देश संदेश सत्र सेटिंग बनाए रखते हैं।
- सामान्य संदेश में इनलाइन निर्देश प्रति-संदेश संकेतों की तरह काम करते हैं।
- इनलाइन शॉर्टकट (सिर्फ़ allowlist किए गए प्रेषक): सामान्य संदेश के भीतर कुछ
/...टोकन तुरंत चल सकते हैं (उदाहरण: “hey /status”), और मॉडल द्वारा बचा हुआ टेक्स्ट देखने से पहले हटा दिए जाते हैं।
सत्र, Compaction, और pruning (क्या बना रहता है)
संदेशों के बीच क्या बना रहता है, यह तंत्र पर निर्भर करता है:- सामान्य इतिहास सत्र ट्रांसक्रिप्ट में तब तक बना रहता है जब तक नीति द्वारा compact/prune नहीं किया जाता।
- Compaction ट्रांसक्रिप्ट में एक सारांश बनाए रखता है और हाल के संदेशों को जस का तस रखता है।
- Pruning संदर्भ-विंडो स्थान खाली करने के लिए इन-मेमोरी प्रॉम्प्ट से पुराने टूल परिणाम हटाता है, लेकिन सत्र ट्रांसक्रिप्ट को फिर से नहीं लिखता - पूरा इतिहास अभी भी डिस्क पर जांचा जा सकता है।
legacy संदर्भ इंजन का उपयोग करता है। यदि आप ऐसा Plugin इंस्टॉल करते हैं जो kind: "context-engine" प्रदान करता है और
उसे plugins.slots.contextEngine से चुनते हैं, तो OpenClaw संदर्भ
assembly, /compact, और संबंधित subagent संदर्भ lifecycle hooks उस
इंजन को सौंप देता है। ownsCompaction: false legacy
इंजन पर auto-fallback नहीं करता; active engine को फिर भी compact() सही ढंग से लागू करना होगा। पूर्ण
pluggable interface, lifecycle hooks, और configuration के लिए
Context Engine देखें।
/context वास्तव में क्या रिपोर्ट करता है
/context उपलब्ध होने पर नवीनतम रन-निर्मित सिस्टम प्रॉम्प्ट रिपोर्ट को प्राथमिकता देता है:
System prompt (run)= पिछले embedded (tool-capable) रन से कैप्चर किया गया और सत्र store में persist किया गया।System prompt (estimate)= जब कोई रन रिपोर्ट मौजूद नहीं होती (या जब ऐसे CLI backend के माध्यम से चलाया जा रहा हो जो रिपोर्ट generate नहीं करता), तब तुरंत compute किया गया।
संबंधित
Context engine
plugins के माध्यम से कस्टम संदर्भ इंजेक्शन।
Compaction
लंबी बातचीत को सारांशित करना ताकि वे मॉडल विंडो के अंदर रहें।
सिस्टम प्रॉम्प्ट
सिस्टम प्रॉम्प्ट कैसे बनाया जाता है और हर turn में क्या इंजेक्ट करता है।
एजेंट लूप
inbound message से final reply तक पूरा agent execution cycle।