
OpenShell v0.1.5
स्वायत्त AI एजेंट्स के लिए सैंडबॉक्स्ड रनटाइम, जिसमें फाइलसिस्टम, नेटवर्क और प्रोसेस बाधाओं को लागू करने वाली डिक्लेरेटिव YAML नीतियाँ, साथ ही एंडपॉइंट-बाउंड क्रेडेंशियल इंजेक्शन शामिल है।
[!IMPORTANT] OpenShell 0.1.x में नया: एक स्थिर रिलीज़ कैडेंस, नए आइसोलेशन प्रिमिटिव, एक विस्तारित एक्सटेंशन सरफेस, और नए API। 0.1.0 अपग्रेड गाइड पढ़ें।
OpenShell स्वायत्त AI एजेंटों के फ्लीट के लिए सुरक्षित, निजी रनटाइम है। एजेंट तब सबसे उपयोगी होते हैं जब वे फ़ाइलें पढ़ सकते हैं, पैकेज इंस्टॉल कर सकते हैं, API कॉल कर सकते हैं, और क्रेडेंशियल्स का उपयोग कर सकते हैं। OpenShell उन्हें यह क्षमता देता है, बिना आपके डेटा, सीक्रेट्स, या नेटवर्क तक अप्रतिबंधित पहुँच दिए। आप एक पॉलिसी में घोषित करते हैं कि प्रत्येक एजेंट क्या छू सकता है, और OpenShell इसे लागू करता है।
यह कैसे काम करता है
OpenShell दो तरीकों से नियंत्रित करता है कि एजेंट क्या कर सकते हैं: यह रनटाइम पर प्रत्येक फ़ाइल एक्सेस, सिस्टम कॉल, और नेटवर्क कनेक्शन पर पॉलिसी लागू करने के लिए कर्नेल को इंस्ट्रुमेंट करता है, और यह औपचारिक सत्यापन का उपयोग करके जाँचता है कि पॉलिसी परिवर्तन लागू होने से पहले क्या अनुमति देगा।
- कर्नेल-स्तरीय प्रवर्तन। प्रत्येक एजेंट एक पृथक सैंडबॉक्स में चलता है। कर्नेल नियंत्रण सीमित करते हैं कि यह किन फ़ाइलों तक पहुँच सकता है और कौन से सिस्टम कॉल कर सकता है, और प्रत्येक नेटवर्क कनेक्शन सैंडबॉक्स छोड़ने से पहले एक पॉलिसी जाँच से गुज़रता है। एजेंट कभी वास्तविक क्रेडेंशियल्स नहीं देखते; OpenShell उन्हें केवल अनुमोदित एंडपॉइंट्स के लिए बाध्य अनुरोधों में जोड़ता है।
- औपचारिक रूप से सत्यापित पॉलिसी परिवर्तन। पॉलिसी परिवर्तन को मंज़ूरी देने से पहले, OpenShell औपचारिक सत्यापन का उपयोग करके जोखिम भरे नए एक्सेस को चिह्नित करता है जो यह प्रदान करेगा, जैसे क्रेडेंशियल्स के साथ एक नए होस्ट तक पहुँचना या एक नई API विधि को कॉल करना, ताकि वे परिवर्तन मानवीय समीक्षा की प्रतीक्षा करें।
यह देखने के लिए कि गेटवे, सुपरवाइज़र, और सैंडबॉक्स एक साथ कैसे फिट होते हैं, आर्किटेक्चर देखें।
क्विकस्टार्ट
आपको Linux, Apple Silicon पर macOS, या WSL 2 (प्रायोगिक) के साथ Windows, साथ ही Docker, Podman, या होस्ट वर्चुअलाइज़ेशन की आवश्यकता है। विवरण के लिए सपोर्ट मैट्रिक्स देखें।
curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh
openshell sandbox create --name demo
इंस्टॉलर CLI और एक स्थानीय गेटवे सेट करता है। डिफ़ॉल्ट सैंडबॉक्स इमेज न्यूनतम Ubuntu है जिसमें कोई एजेंट इंस्टॉल नहीं है। एक वास्तविक एजेंट चलाने के लिए, अपना पहला एजेंट चलाएँ का पालन करें: यह एक मुफ़्त OpenRouter मॉडल के विरुद्ध OpenCode चलाता है और दिखाता है कि एजेंट को आवश्यकता पड़ने पर नए एक्सेस को कैसे अनुमोदित किया जाए।
आगे और जानें
- सैंडबॉक्स: इमेज, रनटाइम, GPU, और लाइफसाइकल।
- पॉलिसी: फ़ाइलसिस्टम, नेटवर्क, और प्रोसेस नियम, परिवर्तनों की समीक्षा के लिए advisor और prover के साथ।
- प्रोवाइडर: क्रेडेंशियल्स जो केवल अनुमोदित एंडपॉइंट्स पर काम करते हैं, जिसमें inference शामिल है।
- गेटवे: सैंडबॉक्स, पॉलिसी, और एक्सेस के लिए कंट्रोल प्लेन।
- Kubernetes: Helm के साथ गेटवे डिप्लॉय करें। आपके CNI को
NetworkPolicyलागू करना चाहिए। - एक्सटेंसिबिलिटी: मिडलवेयर, इंटरसेप्टर, और कंप्यूट ड्राइवर।
- ट्यूटोरियल: चरण-दर-चरण पॉलिसी और एजेंट वॉकथ्रू।
- प्रीरिलीज़ और डेवलपमेंट बिल्ड: आने वाली रिलीज़ या
mainपर नवीनतम कमिट आज़माएँ।
एजेंट स्किल्स
अपने कोडिंग एजेंट के लिए सार्वजनिक OpenShell स्किल्स इंस्टॉल करें:
npx skills add NVIDIA/OpenShell
स्किल्स आपके एजेंट को OpenShell CLI चलाना, सैंडबॉक्स पॉलिसी लिखना, और गेटवे और inference रूटिंग को डीबग करना सिखाती हैं। वे skills/ में रहती हैं और OpenShell सोर्स चेकआउट के बिना काम करती हैं।
SDKs
SDKs एप्लिकेशन को एक OpenShell गेटवे से जोड़ते हैं। वे CLI इंस्टॉल नहीं करते। जब संभव हो, SDK और गेटवे के लिए समान OpenShell रिलीज़ का उपयोग करें।
| भाषा | इंस्टॉल | डॉक्स |
|---|---|---|
| Python | uv add openshell | README |
| TypeScript | npm install @nvidia/openshell-sdk (GitHub Packages) | README |
| Go | go get github.com/NVIDIA/OpenShell/sdk/go@latest | README |
| Rust | cargo add openshell-sdk --git https://github.com/NVIDIA/OpenShell --tag <release-tag> | इंस्टॉलेशन और उपयोग |
समुदाय
- प्रश्न और चर्चा: GitHub Discussions
- बग रिपोर्ट और फ़ीचर अनुरोध: GitHub Issues, issue टेम्पलेट्स का उपयोग करते हुए
- सुरक्षा कमज़ोरियाँ: SECURITY.md का पालन करें। GitHub issue न खोलें।
- रोडमैप: OpenShell Roadmap और RFC बोर्ड
- क्लाउड में आज़माएँ: Brev Launchable
OpenShell एजेंट-फर्स्ट बनाया गया है: यह उन्हीं एजेंट-संचालित वर्कफ़्लो के साथ विकसित किया जाता है जिन्हें यह सक्षम बनाता है। डेवलपमेंट सेटअप और योगदान वर्कफ़्लो के लिए CONTRIBUTING.md देखें, और रिपॉज़िटरी कोडिंग कन्वेंशन के लिए AGENTS.md देखें।
टेलीमेट्री
OpenShell परियोजना को बेहतर बनाने में मदद के लिए अनाम टेलीमेट्री एकत्र करता है, जो परिचालन श्रेणियों और गणनाओं तक सीमित है। यह सैंडबॉक्स नाम, होस्टनाम, फ़ाइल पथ, प्रॉम्प्ट, क्रेडेंशियल्स, प्रोवाइडर या मॉडल नाम, या उपयोगकर्ता सामग्री एकत्र नहीं करता। इसे अक्षम करने के लिए, गेटवे पर OPENSHELL_TELEMETRY_ENABLED=false सेट करें, या Helm इंस्टॉल के लिए server.telemetryEnabled=false सेट करें। आप टेलीमेट्री को पूरी तरह से कंपाइल आउट भी कर सकते हैं। विवरण के लिए टेलीमेट्री देखें और प्रकाशित उपयोग रुझानों के लिए समुदाय टेलीमेट्री रिपोर्ट देखें।