Skip to main content
बहु-एजेंट सेटअप में प्रत्येक एजेंट वैश्विक सैंडबॉक्स और टूल नीति को ओवरराइड कर सकता है। यह पृष्ठ प्रति-एजेंट कॉन्फ़िगरेशन, प्राथमिकता नियमों और उदाहरणों को शामिल करता है।

सैंडबॉक्सिंग

बैकएंड और मोड — संपूर्ण सैंडबॉक्स संदर्भ।

सैंडबॉक्स बनाम टूल नीति बनाम एलिवेटेड

“यह अवरुद्ध क्यों है?” की डीबगिंग करें।

एलिवेटेड मोड

विश्वसनीय प्रेषकों के लिए एलिवेटेड निष्पादन।
प्रमाणीकरण का दायरा एजेंट के अनुसार निर्धारित होता है: प्रत्येक एजेंट का अपना agentDir प्रमाणीकरण स्टोर ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite में होता है। एजेंटों के बीच कभी भी agentDir का पुनः उपयोग न करें। स्थानीय प्रोफ़ाइल न होने पर एजेंट डिफ़ॉल्ट/मुख्य एजेंट की प्रमाणीकरण प्रोफ़ाइल पढ़ सकते हैं, लेकिन OAuth रीफ़्रेश टोकन द्वितीयक एजेंट स्टोर में क्लोन नहीं किए जाते। यदि आप क्रेडेंशियल मैन्युअल रूप से कॉपी करते हैं, तो केवल पोर्टेबल स्थिर api_key या token प्रोफ़ाइल कॉपी करें।

कॉन्फ़िगरेशन के उदाहरण

परिणाम:
  • main एजेंट: होस्ट पर चलता है, सभी टूल तक पूर्ण पहुँच।
  • family एजेंट: Docker में चलता है (प्रति एजेंट एक कंटेनर), केवल read और वर्तमान वार्तालाप में संदेश भेज सकता है।
परिणाम:
  • डिफ़ॉल्ट एजेंटों को कोडिंग टूल मिलते हैं।
  • support एजेंट केवल-संदेश वाला है (+ Slack टूल)।

कॉन्फ़िगरेशन की प्राथमिकता

जब वैश्विक (agents.defaults.*) और एजेंट-विशिष्ट (agents.entries.*.*) दोनों कॉन्फ़िगरेशन मौजूद हों:

सैंडबॉक्स कॉन्फ़िगरेशन

एजेंट-विशिष्ट सेटिंग वैश्विक सेटिंग को ओवरराइड करती हैं:
agents.entries.*.sandbox.{docker,browser,prune}.* उस एजेंट के लिए agents.defaults.sandbox.{docker,browser,prune}.* को ओवरराइड करता है (जब सैंडबॉक्स का दायरा "shared" के रूप में निर्धारित होता है, तो इसे अनदेखा कर दिया जाता है)।

टूल प्रतिबंध

फ़िल्टर करने का क्रम यह है:
1

टूल प्रोफ़ाइल

tools.profile या agents.entries.*.tools.profile
2

प्रदाता टूल प्रोफ़ाइल

tools.byProvider[provider].profile या agents.entries.*.tools.byProvider[provider].profile
3

वैश्विक टूल नीति

tools.allow / tools.deny
4

प्रदाता टूल नीति

tools.byProvider[provider].allow/deny
5

एजेंट-विशिष्ट टूल नीति

agents.entries.*.tools.allow/deny
6

एजेंट प्रदाता नीति

agents.entries.*.tools.byProvider[provider].allow/deny
7

सैंडबॉक्स टूल नीति

tools.sandbox.tools या agents.entries.*.tools.sandbox.tools
8

उप-एजेंट टूल नीति

यदि लागू हो, तो tools.subagents.tools
  • प्रत्येक स्तर टूल को और प्रतिबंधित कर सकता है, लेकिन पहले के स्तरों पर अस्वीकृत टूल को वापस अनुमति नहीं दे सकता।
  • यदि agents.entries.*.tools.sandbox.tools सेट है, तो यह उस एजेंट के लिए tools.sandbox.tools को प्रतिस्थापित करता है।
  • यदि agents.entries.*.tools.profile सेट है, तो यह उस एजेंट के लिए tools.profile को ओवरराइड करता है।
  • प्रदाता टूल कुंजियाँ provider (उदाहरण के लिए google-antigravity) या provider/model (उदाहरण के लिए openai/gpt-5.4) में से किसी एक को स्वीकार करती हैं।
यदि इस श्रृंखला की कोई भी स्पष्ट अनुमति-सूची रन को बिना किसी कॉल किए जा सकने वाले टूल के छोड़ देती है, तो OpenClaw मॉडल को प्रॉम्प्ट भेजने से पहले रुक जाता है। यह जानबूझकर किया गया है: agents.entries.*.tools.allow: ["query_db"] जैसे अनुपलब्ध टूल के साथ कॉन्फ़िगर किए गए एजेंट को तब तक स्पष्ट रूप से विफल होना चाहिए, जब तक query_db पंजीकृत करने वाला Plugin सक्षम न हो जाए; उसे केवल-पाठ एजेंट के रूप में जारी नहीं रहना चाहिए।
टूल नीतियाँ group:* संक्षिप्त रूपों का समर्थन करती हैं, जो कई टूल में विस्तारित होते हैं। पूरी सूची के लिए टूल समूह देखें। प्रति-एजेंट एलिवेटेड ओवरराइड (agents.entries.*.tools.elevated) विशिष्ट एजेंटों के लिए एलिवेटेड निष्पादन को और प्रतिबंधित कर सकते हैं। विवरण के लिए एलिवेटेड मोड देखें।

एकल एजेंट से माइग्रेशन

पुरानी agents.defaults.*/agents.entries.*.* कॉन्फ़िगरेशन कुंजियाँ (जैसे sandbox.perSession, agentRuntime, embeddedPi) को openclaw doctor द्वारा माइग्रेट किया जाता है; आगे से agents.defaults + agents.entries को प्राथमिकता दें।

टूल प्रतिबंध के उदाहरण


सामान्य समस्या: “non-main”

agents.defaults.sandbox.mode: "non-main" सत्र कुंजी की जाँच मुख्य सत्र कुंजी से करता है (हमेशा "main"; session.mainKey उपयोगकर्ता द्वारा कॉन्फ़िगर करने योग्य नहीं है और OpenClaw किसी अन्य मान के लिए चेतावनी देकर उसे अनदेखा करता है), एजेंट आईडी से नहीं। समूह/चैनल सत्रों को हमेशा अपनी अलग कुंजियाँ मिलती हैं, इसलिए उन्हें गैर-मुख्य माना जाता है और सैंडबॉक्स में रखा जाएगा। यदि आप चाहते हैं कि किसी एजेंट को कभी सैंडबॉक्स में न रखा जाए, तो agents.entries.*.sandbox.mode: "off" सेट करें।

परीक्षण

बहु-एजेंट सैंडबॉक्स और टूल कॉन्फ़िगर करने के बाद:
1

एजेंट निर्धारण जाँचें

2

सैंडबॉक्स कंटेनर सत्यापित करें

3

टूल प्रतिबंधों का परीक्षण करें

  • प्रतिबंधित टूल की आवश्यकता वाला संदेश भेजें।
  • सत्यापित करें कि एजेंट अस्वीकृत टूल का उपयोग नहीं कर सकता।
4

लॉग की निगरानी करें


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

  • जाँचें कि क्या कोई वैश्विक agents.defaults.sandbox.mode इसे ओवरराइड कर रहा है।
  • एजेंट-विशिष्ट कॉन्फ़िगरेशन को प्राथमिकता मिलती है, इसलिए agents.entries.*.sandbox.mode: "all" सेट करें।
  • डिफ़ॉल्ट scope, "agent" है (प्रत्येक एजेंट आईडी के लिए एक कंटेनर)।
  • प्रत्येक सत्र के लिए एक कंटेनर हेतु scope: "session" सेट करें, या सभी एजेंटों में एक कंटेनर का पुनः उपयोग करने के लिए scope: "shared" सेट करें।

संबंधित