Tools
उन्नत मोड
जब कोई एजेंट सैंडबॉक्स के भीतर चलता है, तो उसके exec कमांड सैंडबॉक्स परिवेश तक सीमित रहते हैं। उन्नत मोड एजेंट को इससे बाहर निकलकर सैंडबॉक्स के बाहर कमांड चलाने देता है, जिसमें स्वीकृति गेट कॉन्फ़िगर किए जा सकते हैं।
निर्देश
स्लैश कमांड से प्रत्येक सत्र के लिए उन्नत मोड नियंत्रित करें:
| निर्देश | इसका कार्य |
|---|---|
/elevated on |
कॉन्फ़िगर किए गए होस्ट पथ पर सैंडबॉक्स के बाहर चलाएँ, स्वीकृतियाँ बनाए रखें |
/elevated ask |
on के समान (उपनाम) |
/elevated full |
कॉन्फ़िगर किए गए होस्ट पथ पर सैंडबॉक्स के बाहर चलाएँ और मोड/होस्ट स्वीकृति नीति पहले से अनुमतिपूर्ण होने पर स्वीकृतियाँ छोड़ दें |
/elevated off |
सैंडबॉक्स तक सीमित निष्पादन पर वापस जाएँ |
यह /elev on|off|ask|full के रूप में भी उपलब्ध है।
वर्तमान स्तर देखने के लिए बिना किसी तर्क के /elevated भेजें।
यह कैसे काम करता है
उपलब्धता जाँचें
उन्नत मोड को कॉन्फ़िगरेशन में सक्षम होना चाहिए और प्रेषक अनुमति-सूची में होना चाहिए:
{ tools: { elevated: { enabled: true, allowFrom: { discord: ["user-id-123"], whatsapp: ["+15555550123"], }, }, },}स्तर निर्धारित करें
सत्र का डिफ़ॉल्ट निर्धारित करने के लिए केवल निर्देश वाला संदेश भेजें:
/elevated fullया इसे इनलाइन उपयोग करें (केवल उस संदेश पर लागू होता है):
/elevated on परिनियोजन स्क्रिप्ट चलाएँकमांड सैंडबॉक्स के बाहर चलते हैं
उन्नत मोड सक्रिय होने पर, exec कॉल सैंडबॉक्स से बाहर निकलते हैं। प्रभावी होस्ट डिफ़ॉल्ट रूप से
gateway होता है, या कॉन्फ़िगर किया गया/सत्र का exec लक्ष्य
node होने पर node होता है। full मोड में, समाधान की गई exec
मोड/होस्ट स्वीकृति नीति पहले से पूरी तरह अनुमतिपूर्ण होने पर exec स्वीकृतियाँ छोड़ दी जाती हैं (सुरक्षा full,
पूछें off); अन्यथा सामान्य स्वीकृति नीति अब भी लागू होती है।
on/ask मोड में, कॉन्फ़िगर किए गए स्वीकृति नियम हमेशा लागू होते हैं।
समाधान क्रम
- संदेश पर इनलाइन निर्देश (केवल उस संदेश पर लागू होता है)
- सत्र ओवरराइड (केवल निर्देश वाला संदेश भेजकर निर्धारित किया जाता है)
- वैश्विक डिफ़ॉल्ट (कॉन्फ़िगरेशन में
agents.defaults.elevatedDefault)
उपलब्धता और अनुमति-सूचियाँ
- वैश्विक गेट:
tools.elevated.enabled(trueहोना आवश्यक है) - प्रेषक अनुमति-सूची: प्रत्येक चैनल की सूचियों के साथ
tools.elevated.allowFrom - प्रत्येक एजेंट का गेट:
agents.entries.*.tools.elevated.enabled(केवल और प्रतिबंधित कर सकता है; वैश्विक और प्रत्येक एजेंट का गेट, दोनोंtrueहोने चाहिए) - प्रत्येक एजेंट की अनुमति-सूची:
agents.entries.*.tools.elevated.allowFrom(प्रेषक को वैश्विक और प्रत्येक एजेंट की अनुमति-सूची, दोनों से मेल खाना चाहिए) - चैनल द्वारा प्रदान की गई फ़ॉलबैक अनुमति-सूची:
tools.elevated.allowFrom.<provider>कॉन्फ़िगर न होने पर उपयोग के लिए चैनल Plugin वैकल्पिक रूप से SDK अडैप्टर हुक के माध्यम से फ़ॉलबैक अनुमति-सूची प्रदान कर सकते हैं। वर्तमान में कोई बंडल किया गया चैनल इस हुक को लागू नहीं करता, इसलिए व्यवहार में आज प्रत्येक प्रदाता के लिए स्पष्टtools.elevated.allowFrom.<provider>प्रविष्टि आवश्यक है। - सभी गेट पास होने चाहिए; अन्यथा उन्नत मोड को अनुपलब्ध माना जाता है
अनुमति-सूची प्रविष्टि प्रारूप:
| उपसर्ग | इससे मेल खाता है |
|---|---|
| (कोई नहीं) | प्रेषक ID, E.164 या From फ़ील्ड |
name: |
प्रेषक का प्रदर्शन नाम |
username: |
प्रेषक का उपयोगकर्ता नाम |
tag: |
प्रेषक टैग |
id:, from:, e164: |
स्पष्ट पहचान लक्ष्यीकरण |
उन्नत मोड क्या नियंत्रित नहीं करता
- टूल नीति: यदि टूल नीति द्वारा
execअस्वीकृत है, तो उन्नत मोड इसे ओवरराइड नहीं कर सकता। - होस्ट चयन नीति: उन्नत मोड
autoको स्वतंत्र क्रॉस-होस्ट ओवरराइड में नहीं बदलता। यह कॉन्फ़िगर किए गए/सत्र के exec लक्ष्य नियमों का उपयोग करता है और लक्ष्य पहले सेnodeहोने पर हीnodeचुनता है। /execसे अलग:/execनिर्देश अधिकृत प्रेषकों के लिए प्रत्येक सत्र के exec डिफ़ॉल्ट (होस्ट, सुरक्षा, पूछना, Node) समायोजित करता है और इसके लिए उन्नत मोड आवश्यक नहीं है।