अपडेट पर वापस जाएँ
New releaseJul 25, 2026

sandbox-runtime v0.0.68

एक हल्का सैंडबॉक्सिंग टूल जो कंटेनर की आवश्यकता के बिना, OS स्तर पर मनमानी प्रक्रियाओं पर फ़ाइलसिस्टम और नेटवर्क प्रतिबंध लागू करता है।

साझा करें

Anthropic Sandbox Runtime (srt)

मनमाने प्रक्रियाओं पर OS स्तर पर फ़ाइलसिस्टम और नेटवर्क प्रतिबंध लागू करने के लिए एक हल्का सैंडबॉक्सिंग टूल, जिसके लिए कंटेनर की आवश्यकता नहीं होती।

srt मूल OS सैंडबॉक्सिंग प्रिमिटिव्स (macOS पर sandbox-exec, Linux पर bubblewrap) और प्रॉक्सी-आधारित नेटवर्क फ़िल्टरिंग का उपयोग करता है। इसका उपयोग एजेंट्स, स्थानीय MCP सर्वर, bash कमांड और मनमानी प्रक्रियाओं के व्यवहार को सैंडबॉक्स करने के लिए किया जा सकता है।

बीटा रिसर्च प्रीव्यू

Sandbox Runtime एक रिसर्च प्रीव्यू है जिसे अधिक सुरक्षित AI एजेंट्स को सक्षम बनाने के लिए Claude Code के लिए विकसित किया गया है। इसे एक प्रारंभिक ओपन सोर्स प्रीव्यू के रूप में उपलब्ध कराया जा रहा है ताकि व्यापक इकोसिस्टम अधिक सुरक्षित एजेंटिक सिस्टम बना सके। चूँकि यह एक प्रारंभिक रिसर्च प्रीव्यू है, API और कॉन्फ़िगरेशन फ़ॉर्मेट विकसित हो सकते हैं। हम AI एजेंट्स को डिफ़ॉल्ट रूप से अधिक सुरक्षित बनाने के लिए फ़ीडबैक और योगदान का स्वागत करते हैं!

इंस्टॉलेशन

npm install -g @anthropic-ai/sandbox-runtime

मूल उपयोग

# Network restrictions
$ srt "curl anthropic.com"
Running: curl anthropic.com
<html>...</html>  # Request succeeds

$ srt "curl example.com"
Running: curl example.com
Connection blocked by network allowlist  # Request blocked

# Filesystem restrictions
$ srt "cat README.md"
Running: cat README.md
# Anthropic Sandb...  # Current directory access allowed

$ srt "cat ~/.ssh/id_rsa"
Running: cat ~/.ssh/id_rsa
cat: /Users/ollie/.ssh/id_rsa: Operation not permitted  # Specific file blocked

अवलोकन

यह पैकेज एक स्टैंडअलोन सैंडबॉक्स कार्यान्वयन प्रदान करता है जिसका उपयोग CLI टूल और लाइब्रेरी दोनों के रूप में किया जा सकता है। इसे secure-by-default दर्शन के साथ डिज़ाइन किया गया है जो सामान्य डेवलपर उपयोग मामलों के लिए अनुकूलित है: प्रक्रियाएँ न्यूनतम पहुँच के साथ शुरू होती हैं, और आप स्पष्ट रूप से केवल वही छेद करते हैं जिनकी आपको आवश्यकता होती है।

मुख्य क्षमताएँ:

  • नेटवर्क प्रतिबंध: नियंत्रित करें कि किन होस्ट/डोमेन तक HTTP/HTTPS और अन्य प्रोटोकॉल के माध्यम से पहुँचा जा सकता है
  • फ़ाइलसिस्टम प्रतिबंध: नियंत्रित करें कि किन फ़ाइलों/निर्देशिकाओं को पढ़ा/लिखा जा सकता है
  • Unix सॉकेट प्रतिबंध: स्थानीय IPC सॉकेट तक पहुँच नियंत्रित करें
  • उल्लंघन निगरानी: macOS पर, रीयल-टाइम अलर्ट के लिए सिस्टम के सैंडबॉक्स उल्लंघन लॉग स्टोर का उपयोग करें

उदाहरण उपयोग मामला: MCP सर्वरों को सैंडबॉक्स करना

एक प्रमुख उपयोग मामला Model Context Protocol (MCP) सर्वरों को सैंडबॉक्स करके उनकी क्षमताओं को प्रतिबंधित करना है। उदाहरण के लिए, फ़ाइलसिस्टम MCP सर्वर को सैंडबॉक्स करने के लिए:

सैंडबॉक्स के बिना (.mcp.json):

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem"]
    }
  }
}

सैंडबॉक्सिंग के साथ (.mcp.json):

{
  "mcpServers": {
    "filesystem": {
      "command": "srt",
      "args": ["npx", "-y", "@modelcontextprotocol/server-filesystem"]
    }
  }
}

फिर ~/.srt-settings.json में प्रतिबंध कॉन्फ़िगर करें:

{
  "filesystem": {
    "denyRead": [],
    "allowWrite": ["."],
    "denyWrite": ["~/sensitive-folder"]
  },
  "network": {
    "allowedDomains": [],
    "deniedDomains": []
  }
}

अब MCP सर्वर को अस्वीकृत पथ पर लिखने से रोक दिया जाएगा:

> Write a file to ~/sensitive-folder
✗ Error: EPERM: operation not permitted, open '/Users/ollie/sensitive-folder/test.txt'

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

सैंडबॉक्स OS-स्तरीय प्रिमिटिव्स का उपयोग करके ऐसे प्रतिबंध लागू करता है जो पूरे प्रोसेस ट्री पर लागू होते हैं:

  • macOS: गतिशील रूप से जनरेट किए गए Seatbelt प्रोफ़ाइल्स के साथ sandbox-exec का उपयोग करता है
  • Linux: नेटवर्क नेमस्पेस आइसोलेशन के साथ कंटेनरीकरण के लिए bubblewrap का उपयोग करता है
  • Windows: सैंडबॉक्स्ड प्रोसेस को एक समर्पित srt-sandbox स्थानीय उपयोगकर्ता खाते के अंतर्गत चलाता है, जिसमें उस खाते के SID पर कुंजीबद्ध Windows Filtering Platform एग्रेस फ़ेंस, एक राइट-प्रतिबंधित टोकन, और कार्यशील ट्री पर स्पष्ट ACEs शामिल हैं

0d1c612947c798aef48e6ab4beb7e8544da9d41a-4096x2305

दोहरा आइसोलेशन मॉडल

प्रभावी सैंडबॉक्सिंग के लिए फ़ाइलसिस्टम और नेटवर्क दोनों आइसोलेशन आवश्यक हैं। फ़ाइल आइसोलेशन के बिना, एक समझौता किया गया प्रोसेस SSH कुंजियाँ या अन्य संवेदनशील फ़ाइलें चुरा सकता है। नेटवर्क आइसोलेशन के बिना, एक प्रोसेस सैंडबॉक्स से बच निकल सकता है और अप्रतिबंधित नेटवर्क पहुँच प्राप्त कर सकता है।

फ़ाइलसिस्टम आइसोलेशन पढ़ने और लिखने के प्रतिबंध लागू करता है:

  • पढ़ना (deny-then-allow पैटर्न): डिफ़ॉल्ट रूप से, पढ़ने की पहुँच हर जगह अनुमत है। आप व्यापक क्षेत्रों (जैसे, /Users) को अस्वीकार कर सकते हैं और फिर उनके भीतर विशिष्ट पथों (जैसे, .) को पुनः अनुमत कर सकते हैं। allowRead denyRead पर प्राथमिकता लेता है — लिखने के विपरीत, जहाँ denyWrite allowWrite पर प्राथमिकता लेता है। एक denyRead प्रविष्टि जो उस allowRead क्षेत्र से अधिक विशिष्ट है जिसके भीतर वह आती है (जैसे denyRead: ["**/.env"] या allowRead: ["."] के साथ ["./secrets"]) फिर भी अस्वीकृत रहती है।
  • लिखना (allow-only पैटर्न): डिफ़ॉल्ट रूप से, लिखने की पहुँच हर जगह अस्वीकृत है। आपको स्पष्ट रूप से पथों (जैसे, ., /tmp) को अनुमत करना होगा। एक खाली अनुमति सूची का अर्थ है कोई लिखने की पहुँच नहीं।

नेटवर्क आइसोलेशन (allow-only पैटर्न): डिफ़ॉल्ट रूप से, सभी नेटवर्क पहुँच अस्वीकृत है। आपको स्पष्ट रूप से डोमेन को अनुमत करना होगा। एक खाली allowedDomains सूची का अर्थ है कोई नेटवर्क पहुँच नहीं। नेटवर्क ट्रैफ़िक होस्ट पर चल रहे प्रॉक्सी सर्वरों के माध्यम से रूट किया जाता है:

  • Linux: अनुरोधों को Unix डोमेन सॉकेट के माध्यम से फ़ाइलसिस्टम के ज़रिए रूट किया जाता है। सैंडबॉक्स्ड प्रोसेस का नेटवर्क नेमस्पेस पूरी तरह से हटा दिया जाता है, इसलिए सभी नेटवर्क ट्रैफ़िक को होस्ट पर चल रहे प्रॉक्सी के माध्यम से जाना चाहिए (Unix सॉकेट्स पर सुनना जो सैंडबॉक्स में बाइंड-माउंट किए गए हैं)

  • macOS: Seatbelt प्रोफ़ाइल केवल एक विशिष्ट localhost पोर्ट से संचार की अनुमति देती है। प्रॉक्सी इस पोर्ट पर सुनते हैं, जिससे सभी नेटवर्क पहुँच के लिए एक नियंत्रित चैनल बनता है

  • Windows: एक मशीन-व्यापी WFP फ़िल्टर सेट srt-sandbox खाते के रूप में चल रहे प्रोसेस द्वारा किए गए आउटबाउंड कनेक्शन को ब्लॉक करता है, सिवाय प्रॉक्सी पोर्ट रेंज के लिए लूपबैक के। प्रॉक्सी उस रेंज के भीतर सुनते हैं, जिससे सभी नेटवर्क पहुँच के लिए एक नियंत्रित चैनल बनता है। फ़िल्टर ऐसे सैंडबॉक्स्ड प्रोसेस का अनुसरण नहीं करते जो सॉकेट बनाने से पहले किसी थ्रेड पर एक अलग टोकन लगाता है, और न ही उस ट्रैफ़िक का जिसे कोई सिस्टम सेवा उसकी ओर से ले जाती है; Windows ज्ञात सीमाएँ देखें

HTTP/HTTPS (HTTP प्रॉक्सी के माध्यम से) और अन्य TCP ट्रैफ़िक (SOCKS5 प्रॉक्सी के माध्यम से) दोनों इन प्रॉक्सी द्वारा मध्यस्थ किए जाते हैं, जो आपकी डोमेन allowlists और denylists को लागू करते हैं।

Claude Code में सैंडबॉक्सिंग के बारे में अधिक जानकारी के लिए, देखें:

आर्किटेक्चर

श्रेणियाँ