Get started
बॉट लूप सुरक्षा
OpenClaw उन चैनलों पर अन्य बॉट द्वारा लिखे गए संदेश स्वीकार कर सकता है जो allowBots का समर्थन करते हैं। जब यह पथ सक्षम होता है, तो युग्म लूप सुरक्षा दो बॉट पहचानों को अनिश्चित काल तक एक-दूसरे को उत्तर देते रहने से रोकती है।
यह सुरक्षा कोर इनबाउंड उत्तर रनर द्वारा लागू की जाती है। प्रत्येक समर्थित चैनल अपने इनबाउंड इवेंट को सामान्य तथ्यों में मैप करता है: खाता या दायरा, वार्तालाप आईडी, प्रेषक बॉट आईडी और प्राप्तकर्ता बॉट आईडी। कोर प्रतिभागी युग्म को दोनों दिशाओं में ट्रैक करता है (A से B और B से A को समान युग्म माना जाता है), स्लाइडिंग-विंडो बजट लागू करता है और बजट पार हो जाने के बाद कूलडाउन के दौरान उस युग्म को दबा देता है।
डिफ़ॉल्ट
जब भी कोई चैनल बॉट द्वारा लिखे गए संदेशों को डिस्पैच तक पहुँचने देता है, युग्म लूप सुरक्षा सक्रिय रहती है। अंतर्निहित डिफ़ॉल्ट:
| कुंजी | डिफ़ॉल्ट | अर्थ |
|---|---|---|
enabled |
true |
इसका समर्थन करने वाले चैनलों के लिए सुरक्षा सक्रिय है। |
maxEventsPerWindow |
20 |
विंडो के भीतर बॉट युग्म द्वारा आदान-प्रदान किए जा सकने वाले इवेंट। |
windowSeconds |
60 |
स्लाइडिंग विंडो की अवधि। |
cooldownSeconds |
60 |
युग्म द्वारा बजट पार करने के बाद दमन की अवधि। |
यह सुरक्षा मानव द्वारा लिखे गए संदेशों, एकल-बॉट परिनियोजनों, स्वयं-संदेश फ़िल्टरिंग या बजट के भीतर रहने वाले बॉट उत्तरों को प्रभावित नहीं करती।
साझा डिफ़ॉल्ट कॉन्फ़िगर करें
प्रत्येक समर्थित चैनल को समान आधाररेखा देने के लिए channels.defaults.botLoopProtection को एक बार सेट करें। चैनल अधिक सीमित ओवरराइड भी उपलब्ध करा सकते हैं; Feishu जानबूझकर केवल इस साझा आधाररेखा का उपयोग करता है।
{ channels: { defaults: { botLoopProtection: { maxEventsPerWindow: 20, windowSeconds: 60, cooldownSeconds: 60, }, }, },}enabled: false को केवल तब सेट करें, जब आपकी चैनल नीति स्वचालित दमन के बिना बॉट-से-बॉट वार्तालापों की जानबूझकर अनुमति देती हो।
प्रति चैनल, खाते या रूम के अनुसार ओवरराइड करें
समर्थित चैनल कुंजी-दर-कुंजी अपना कॉन्फ़िगरेशन साझा डिफ़ॉल्ट के ऊपर लागू करते हैं। प्राथमिकता, सबसे सीमित पहले:
channels.<channel>.<room-or-space>.botLoopProtection, जब चैनल प्रति-वार्तालाप ओवरराइड का समर्थन करता हैchannels.<channel>.accounts.<account>.botLoopProtection, जब चैनल खातों का समर्थन करता हैchannels.<channel>.botLoopProtection, जब चैनल शीर्ष-स्तरीय डिफ़ॉल्ट का समर्थन करता हैchannels.defaults.botLoopProtection- अंतर्निहित डिफ़ॉल्ट
{ channels: { defaults: { botLoopProtection: { maxEventsPerWindow: 20, }, }, discord: { botLoopProtection: { maxEventsPerWindow: 8, }, accounts: { secondary: { allowBots: true, botLoopProtection: { maxEventsPerWindow: 5, cooldownSeconds: 90, }, }, }, }, googlechat: { allowBots: true, groups: { "spaces/AAAA": { botLoopProtection: { maxEventsPerWindow: 5, }, }, }, }, matrix: { allowBots: "mentions", groups: { "!roomid:example.org": { botLoopProtection: { maxEventsPerWindow: 5, }, }, }, }, slack: { allowBots: "mentions", botLoopProtection: { maxEventsPerWindow: 8, }, }, },}चैनल समर्थन
- Discord: नेटिव
author.botतथ्य, जिन्हें Discord खाते, चैनल और बॉट युग्म के आधार पर कुंजीबद्ध किया जाता है। - Feishu: स्वीकार किए गए बॉट द्वारा लिखित समूह संदेशों के लिए नेटिव
sender_type=botतथ्य, जिन्हें Feishu खाते, चैट और बॉट युग्म के आधार पर कुंजीबद्ध किया जाता है। Feishu केवलchannels.defaults.botLoopProtectionका उपयोग करता है। - Google Chat: स्वीकार किए गए बॉट द्वारा लिखित संदेशों के लिए नेटिव
sender.type=BOTतथ्य, जिन्हें खाते, स्पेस और बॉट युग्म के आधार पर कुंजीबद्ध किया जाता है। - Matrix: कॉन्फ़िगर किए गए Matrix बॉट खाते, जिन्हें Matrix खाते, रूम और कॉन्फ़िगर किए गए बॉट युग्म के आधार पर कुंजीबद्ध किया जाता है।
- Slack: स्वीकार किए गए बॉट द्वारा लिखित संदेशों के लिए नेटिव
bot_idतथ्य, जिन्हें Slack खाते, चैनल और बॉट युग्म के आधार पर कुंजीबद्ध किया जाता है।
जो चैनल विश्वसनीय इनबाउंड बॉट पहचान उपलब्ध नहीं कराते, वे अपने सामान्य स्वयं-संदेश और पहुँच-नीति फ़िल्टर का उपयोग जारी रखते हैं। उन्हें इस सुरक्षा को तब तक नहीं अपनाना चाहिए, जब तक वे बॉट युग्म के दोनों प्रतिभागियों की पहचान न कर सकें।
Plugin कार्यान्वयन के विवरण के लिए SDK रनटाइम देखें।