Claude Code --dangerously-skip-permissions: उपयोग और सीमाएँ
claude --dangerously-skip-permissions Claude Code को bypassPermissions मोड में शुरू करता है। यह फ़ाइल बदलाव, शेल कमांड और टूल कॉल के लिए बार-बार आने वाले अप्रूवल प्रॉम्प्ट हटा देता है। इसे किसी ऐसे डिस्पोजेबल एनवायरनमेंट में, सीमित दायरे वाले टास्क के लिए इस्तेमाल करें, जिसकी फ़ाइलें, क्रेडेंशियल और नेटवर्क एक्सेस आप पहले ही सीमित कर चुके हों। यह फ़्लैग अपने आप कोई सैंडबॉक्स नहीं बनाता।
claude --dangerously-skip-permissionsकमांड बस यही है। इसे किसी अनअटेंडेड जॉब में जोड़ने से पहले जांचें कि प्रोसेस किन चीज़ों तक पहुँच सकता है। थ्रोअवे चेकआउट पर छूटे अप्रूवल का नुकसान उस लैपटॉप पर छूटे अप्रूवल से अलग होता है जिसमें प्रोडक्शन क्रेडेंशियल रखे हैं।
इस गाइड में कमांड, उसके विकल्प और रन करके रिव्यू करने का एक ठोस वर्कफ़्लो है। हमने 6 अक्टूबर 2026 को Anthropic का डॉक्यूमेंटेशन जांचा। उदाहरण एक सेटअप का वर्णन करते हैं; ये किसी लाइव Claude Code सिक्योरिटी टेस्ट के नतीजे नहीं हैं।
dangerously-skip-permissions क्या करता है?
यह फ़्लैग वही परमिशन मोड चुनता है जो claude --permission-mode bypassPermissions चुनता है। Claude आम अप्रूवल स्टॉप के बिना काम जारी रख सकता है। आपने जो प्रोसेस लॉन्च किया है, उसकी ऑपरेटिंग-सिस्टम पहचान और एक्सेस वही रहते हैं: यह फ़्लैग रूट प्रिविलेज नहीं देता, क्रेडेंशियल नहीं गढ़ता और जिस नेटवर्क को आपका एनवायरनमेंट ब्लॉक करता है, उस तक एक्सेस नहीं बनाता। Claude Code परमिशन मोड।
फिर भी कुछ अपवाद हैं। मौजूदा रिलीज़ में स्पष्ट रूप से तय deny और ask रूल्स, कुछ क्रिटिकल पाथ हटाने से जुड़ी जांचें और यूज़र इंटरैक्शन मांगने वाले एक्शन अब भी बने रहते हैं। इन अपवादों को किसी भी फ़ाइल या क्लाउड रिसोर्स की सुरक्षा न समझें। कोई कमांड फ़ाइलसिस्टम रूट डिलीट किए बिना भी प्रोजेक्ट को नुकसान पहुँचा सकता है।
खास तौर पर, bypass मोड प्रोटेक्टेड-पाथ प्रॉम्प्ट के बिना .git और .claude में लिख सकता है। कुछ सर्च समरी बताती हैं कि ये फ़ोल्डर हमेशा सुरक्षित रहते हैं। मौजूदा डॉक्यूमेंटेशन ऐसा नहीं कहता। परमिशन रेफ़रेंस।
एक आम रिक्वेस्ट लें: “फ़ेल हो रहे टेस्ट ठीक करें।” Claude कोई टेस्ट एडिट कर सकता है, कोई पैकेज इंस्टॉल कर सकता है या कॉन्फ़िगरेशन बदल सकता है। अगर वही प्रोसेस किसी क्लाउड की को भी पढ़ सकता है और उसका API कॉल कर सकता है, तो सिर्फ़ डिस्पोजेबल लोकल फ़ोल्डर उन रिमोट एक्शन को सीमित नहीं करता। रन शुरू होने से पहले आपके सेटअप को यह एक्सेस सीमित करना होगा।
इंटरएक्टिव और अनअटेंडेड उपयोग के लिए कमांड
इंटरएक्टिव सेशन शुरू करें
अपने तैयार किए गए एनवायरनमेंट में टर्मिनल खोलें और यह चलाएँ:
claude --dangerously-skip-permissionsटास्क देने से पहले स्क्रीन पर दिखाया गया परमिशन मोड जांचें। पहली बार इंटरएक्टिव लॉन्च करने पर Claude Code एक चेतावनी दिखा सकता है, जिसे आपको स्वीकार करना होगा। रूट या sudo से जुड़ी एरर आए, तो होस्ट की सुरक्षा सेटिंग्स बदलने के बजाय एनवायरनमेंट के अंदर नॉन-रूट अकाउंट इस्तेमाल करें। मोड सेटअप और रूट से जुड़ी पाबंदियां।
एक टास्क चलाएँ और उसका नतीजा कैप्चर करें
API की से ऑथेंटिकेशन वाले मौजूदा Claude Code रिलीज़ के लिए:
claude --bare -p \
"Fix the failing unit test in this checkout. Run the relevant tests. Report changed files and failures. Do not commit or push." \
--dangerously-skip-permissions \
--max-turns 12 \
--output-format json > /tmp/claude-result.jsonयहाँ -p नॉन-इंटरएक्टिव टास्क चलाता है, और --output-format json उसके रिस्पॉन्स को रनर के लिए इकट्ठा करना आसान बनाता है। --max-turns एजेंट लूप को सीमित करता है; यह पूरे जॉब पर वॉल-क्लॉक डेडलाइन नहीं लगाता। यह डेडलाइन अपने रनर में भी कॉन्फ़िगर करें। CLI फ़्लैग रेफ़रेंस।
--bare आम तौर पर अपने-आप लोड होने वाले हुक, प्लगइन, मेमोरी और रिपॉज़िटरी निर्देश लोड नहीं करता। Anthropic के API के लिए इसे ANTHROPIC_API_KEY चाहिए; यह आपके सब्सक्रिप्शन का OAuth लॉगिन इस्तेमाल नहीं करता। यह की रनर की सीक्रेट सेटिंग्स के ज़रिए दें। पुराने रिलीज़ में इस उदाहरण को कॉपी करने से पहले जांच लें कि यह सपोर्टेड है या नहीं। प्रोग्रामेटिक रन और bare मोड।
प्रॉम्प्ट में लिखा “कमिट या पुश न करें” टास्क का विवरण भर है। इस पाबंदी को लागू करने के लिए रिमोट रिपॉज़िटरी का राइट एक्सेस न दें। प्रॉम्प्ट का एक वाक्य क्रेडेंशियल स्कोप या नेटवर्क पॉलिसी की जगह नहीं ले सकता।
नतीजे इकट्ठा करने और फ़ेल हुए जॉब संभालने के बारे में ज़्यादा जानकारी के लिए हमारा Claude Code हेडलेस गाइड देखें।
सेशन में बाद के लिए bypass का विकल्प चालू करें
मिलते-जुलते नाम वाले इस फ़्लैग का असर अलग है:
claude --permission-mode default --allow-dangerously-skip-permissions--allow-dangerously-skip-permissions bypass को बाद में चुनने लायक बनाता है; सेशन bypass में शुरू नहीं होता। स्विच करने के लिए टर्मिनल की Shift+Tab मोड साइकिल इस्तेमाल करें। अगर सेशन में लॉन्च के समय bypass चालू नहीं किया गया था, तो इसे चालू करने वाले फ़्लैग के साथ रीस्टार्ट करें। CLI रेफ़रेंस।
auto मोड बनाम dangerously-skip-permissions
ऐसा सबसे कम छूट देने वाला मोड चुनें जिसमें टास्क पूरा हो सके:
| मोड | अप्रूवल का तरीका | व्यावहारिक उपयोग |
|---|---|---|
default | जिन एक्शन को परमिशन चाहिए, उनके लिए मैन्युअल अप्रूवल | संवेदनशील फ़ाइलों या शेयर्ड सिस्टम से जुड़ा काम |
acceptEdits | फ़ाइल एडिट और आम फ़ाइलसिस्टम ऑपरेशन अप्रूव करता है | लोकल कोडिंग, जिसमें बाकी एक्शन आप रिव्यू करते हैं |
auto | रूटीन अप्रूवल से आगे के एक्शन एक क्लासिफ़ायर रिव्यू करता है | कम रुकावट वाले लंबे कोडिंग टास्क |
dontAsk | जिन एक्शन के लिए प्रॉम्प्ट चाहिए होता, उन्हें मना कर देता है | गिने-चुने अनुमत टूल वाला जॉब |
bypassPermissions | डॉक्यूमेंटेड अपवादों को छोड़कर रूटीन जांचें स्किप करता है | आइसोलेटेड एनवायरनमेंट में सीमित दायरे वाला जॉब |
मोड के नाम और व्यवहार परमिशन रेफ़रेंस से लिए गए हैं।
auto मोड शेल कमांड और बाहरी टूल कॉल जैसे एक्शन रिव्यू करने के लिए एक अलग क्लासिफ़ायर इस्तेमाल करता है। यह किसी एक्शन को ब्लॉक करके Claude को दूसरा तरीका आज़माने दे सकता है। इससे गलतियां भी हो सकती हैं। Anthropic इसे अप्रूवल का बोझ कम करने का तरीका बताता है, जिसके अपने ट्रेडऑफ़ हैं जो मैन्युअल रिव्यू और bypass में नहीं हैं। Anthropic ने auto मोड कैसे बनाया।
अगर बार-बार आने वाले प्रॉम्प्ट आपकी मुख्य समस्या हैं, तो जहां आपका अकाउंट इसे सपोर्ट करता हो, वहां पहले auto मोड आज़माएँ:
claude --permission-mode autoअगर आपके जॉब को सिर्फ़ पहले से तय टूल चाहिए, तो सीमित allow रूल्स के साथ dontAsk पर विचार करें। ऑटोमेशन के लिए इसकी एक काम की खूबी है: परमिशन न होने पर एक्शन फ़ेल हो जाता है, जॉब किसी इंसान के इंतज़ार में अटका नहीं रहता। रूल्स का दायरा बढ़ाने से पहले मना किए गए एक्शन जांचें।
क्या Claude Code का सैंडबॉक्स bypass को सुरक्षित बनाता है?
Claude Code का बिल्ट-इन Bash सैंडबॉक्स शेल कमांड के फ़ाइल और नेटवर्क एक्सेस को सीमित करता है। इसका auto-allow विकल्प सैंडबॉक्स में चलने वाले कमांड को बिना प्रॉम्प्ट के अप्रूव कर सकता है। यह विकल्प auto मोड के क्लासिफ़ायर से अलग है। Bash सैंडबॉक्स कॉन्फ़िगरेशन।
बिल्ट-इन Bash सैंडबॉक्स पूरे एप्लिकेशन को अपने दायरे में नहीं लेता। फ़ाइल टूल, MCP सर्वर और हुक को अपनी अलग बाउंड्री चाहिए, या ऐसा बाहरी एनवायरनमेंट जिसके अंदर पूरा Claude Code प्रोसेस चले। VM और कंटेनर का आइसोलेशन भी अलग-अलग स्तर का होता है। आप कौन-सा कोड चलाना चाहते हैं और किस तरह की गड़बड़ी झेल सकते हैं, इसके आधार पर चुनें। सैंडबॉक्स एनवायरनमेंट की तुलना।
रीट्राई का व्यवहार भी जांचें। bypass चालू होने पर सैंडबॉक्स के बाहर किया गया रीट्राई बिना पूछे चल सकता है। सपोर्टेड सेटअप में नीचे दी गई सैंडबॉक्स सेटिंग्स यह रीट्राई रोकती हैं और सैंडबॉक्स का चालू होना अनिवार्य करती हैं:
{
"sandbox": {
"enabled": true,
"failIfUnavailable": true,
"allowUnsandboxedCommands": false
}
}excludedCommands की सभी एंट्री भी रिव्यू करें; वे कमांड अब भी Bash सैंडबॉक्स के बाहर चल सकते हैं। सेटिंग्स को केंद्रीय रूप से लागू करने के लिए मैनेज्ड पॉलिसी इस्तेमाल करें, जिसे एजेंट एडिट न कर सके। सख़्त सैंडबॉक्स सेटिंग्स।
अनअटेंडेड रन के लिए एक व्यावहारिक वर्कफ़्लो
उदाहरण के तौर पर, फ़ेल हो रहे टेस्ट को ठीक करने का एक छोटा टास्क लें। आपको आउटपुट में एक पैच और एक टेस्ट रिपोर्ट चाहिए। इस जॉब के पास डिप्लॉयमेंट एक्सेस होने की कोई वजह नहीं है।
1. अलग चेकआउट तैयार करें
नया कंटेनर या VM बनाएँ और उसमें किसी तय कमिट पर रिपॉज़िटरी कॉपी करें। अपनी मुख्य वर्किंग डायरेक्टरी को राइटेबल माउंट करने के बजाय कॉपी को प्राथमिकता दें। वर्कट्री बदलावों को अलग रखने में मदद करता है, लेकिन ऑपरेटिंग सिस्टम या क्रेडेंशियल को आइसोलेट नहीं करता।
सेटअप के दौरान ज़रूरी रनटाइम और पैकेज इंस्टॉल करें। शुरुआती कमिट और टूल वर्ज़न नोट करें। एजेंट के लिए नॉन-रूट अकाउंट इस्तेमाल करें। अगर आप dev container से शुरू करते हैं, तो उसके माउंट जांचें: राइटेबल होस्ट डायरेक्टरी माउंट हो, तो कंटेनर के अंदर से उन होस्ट फ़ाइलों को एडिट किया जा सकता है। Anthropic का dev container गाइड सेटअप और उसकी सीमाएँ बताता है।
2. जॉब को सिर्फ़ उतना एक्सेस दें जितना उसे चाहिए
मॉडल क्रेडेंशियल अलग से पास करें। अगर रिपॉज़िटरी प्राइवेट है, तो चेकआउट के लिए read-only रिपॉज़िटरी एक्सेस इस्तेमाल करें। डिप्लॉयमेंट कीज़, अपना SSH एजेंट, Docker सॉकेट और होम डायरेक्टरी की असंबंधित फ़ाइलें एनवायरनमेंट से बाहर रखें।
मॉडल एंडपॉइंट और उन पैकेज या सोर्स होस्ट को अनुमति दें जिनकी टास्क को ज़रूरत है। बाकी आउटबाउंड एक्सेस को एनवायरनमेंट के नेटवर्क कंट्रोल से सीमित करें। अगर किसी डिपेंडेंसी का डाउनलोड फ़ेल हो, तो और डेस्टिनेशन खोलने से पहले पता करें कि कौन-सा होस्ट ज़रूरी है।
यहीं आप यह भी तय करते हैं कि टास्क को कौन-से MCP सर्वर चाहिए, अगर चाहिए भी। डेटाबेस या क्लाउड MCP कनेक्शन रिमोट क्षमताएँ जोड़ देता है, भले ही लोकल फ़ाइलसिस्टम डिस्पोजेबल हो।
3. साफ़ एंड कंडीशन वाला टास्क चलाएँ
ऑथेंटिकेशन और डिपेंडेंसी तैयार होने के बाद ऊपर दिया गया हेडलेस कमांड इस्तेमाल करें। जॉब को रनर टाइमआउट के तहत चलाएँ और उसका एग्ज़िट स्टेटस, stdout और stderr कैप्चर करें। टेस्ट कमांड अपने कंट्रोल में रखें, ताकि नतीजा सिर्फ़ एजेंट की समरी पर निर्भर न रहे।
छोटे बदलाव से शुरू करें: एक फ़ेल हो रहा टेस्ट या एक डॉक्यूमेंटेड बग। “पूरी रिपॉज़िटरी साफ़ करें” जैसा टास्क ऐसे एडिट्स की बहुत गुंजाइश छोड़ देता है जिन्हें रिव्यू करने का आपका इरादा नहीं था।
4. असली फ़ाइलें रिव्यू करें
जॉब खत्म होने के बाद चेकआउट जांचें:
git status --short
git diff --stat
git diff --check
git diff
git ls-files --others --exclude-standardआख़िरी कमांड अनट्रैक्ड फ़ाइलों की लिस्ट देता है, जिन्हें सादा diff नहीं दिखाता। उन्हें भी जांचें। फ़ाइनल कमिट की तुलना शुरुआती कमिट से करें, ताकि कोई अनचाहा कमिट वर्किंग-ट्री diff से बदलाव छिपा न सके। अपने भरोसेमंद रनर से संबंधित टेस्ट दोबारा चलाएँ, फिर मर्ज करने से पहले पैच रिव्यू करें।
एनवायरनमेंट बंद करने से पहले ज़रूरी फ़ाइलें एक्सपोर्ट कर लें। क्रेडेंशियल को लॉग और आर्टिफ़ैक्ट से बाहर रखें। रिव्यू की सामग्री सुरक्षित हो जाने के बाद टास्क के क्रेडेंशियल एक्सपायर करें और डिस्पोजेबल वर्कस्पेस डिलीट कर दें।
Lizard Sandboxes कहाँ काम आते हैं
Lizard Sandboxes इस पैटर्न के लिए रिमोट वर्कस्पेस दे सकते हैं: एनवायरनमेंट बनाएँ, टास्क चलाएँ, उसकी फ़ाइलें इकट्ठा करें और उसे बंद करें। साफ़ लाइफ़टाइम सेट करें, ताकि फ़ेल हुआ रनर एनवायरनमेंट को अनिश्चित समय तक चलता न छोड़ दे। Sandboxes क्विकस्टार्ट से शुरू करें।
Sandboxes Firecracker microVM के रूप में चलते हैं और हर एक का अपना कर्नेल होता है। फिर भी क्रेडेंशियल का स्कोप सीमित रखें। रनटाइम डॉक्यूमेंटेशन देखें।
जब आपको हर जॉब के लिए नया वर्कस्पेस चाहिए या एक साथ कई जॉब चलाने हों, तब रिमोट एक्ज़िक्यूशन काम आता है। फिर भी नेटवर्क पॉलिसी और रिव्यू स्टेप की ज़रूरत रहती है। जिस सैंडबॉक्स में प्रोडक्शन डेटाबेस टोकन है, वह उस डेटाबेस तक पहुँच सकता है, चाहे सैंडबॉक्स कहीं भी चल रहा हो।
अक्सर पूछे जाने वाले सवाल
क्या मैं dangerously-skip-permissions को डिफ़ॉल्ट रूप से इस्तेमाल कर सकता हूँ?
हाँ। किसी डेडिकेटेड कंटेनर या VM वर्कर के लिए, इसे उस वर्कर यूज़र की ~/.claude/settings.json फ़ाइल में मर्ज करें:
{
"permissions": {
"defaultMode": "bypassPermissions"
}
}इसके बाद नए टर्मिनल सेशन bypass मोड में शुरू होते हैं। यह डिफ़ॉल्ट सिर्फ़ डिस्पोजेबल वर्कर तक सीमित रखें; अलग-अलग जॉब के लिए लॉन्च फ़्लैग स्पष्ट रूप से दें। मौजूदा रिलीज़ में यह वैल्यू किसी रिपॉज़िटरी की .claude/settings.json या .claude/settings.local.json से bypass चालू नहीं करती। मैनेज्ड पॉलिसी भी इस मोड को बंद कर सकती है। सेटिंग्स का स्कोप और प्राथमिकता।
क्या सबएजेंट bypass परमिशन इनहेरिट करते हैं?
हाँ। मौजूदा डॉक्यूमेंटेड व्यवहार के अनुसार, bypass मोड में चल रही मुख्य कन्वर्सेशन अपने सबएजेंट से भी यही मोड इस्तेमाल करवाती है और उनकी अपनी permission-mode सेटिंग ओवरराइड हो जाती है। सबएजेंट कोई अलग सिक्योरिटी बाउंड्री नहीं है। सबएजेंट परमिशन।
Claude फिर भी सवाल क्यों पूछता है?
अप्रूवल प्रॉम्प्ट और टास्क के बारे में पूछा गया सवाल अलग चीज़ें हैं। कुछ एक्शन के लिए bypass मोड में भी इंटरैक्शन ज़रूरी होता है, और कॉन्फ़िगर किए गए ask रूल्स अब भी लागू हो सकते हैं। यह मानने से पहले कि फ़्लैग काम नहीं कर रहा, असली प्रॉम्प्ट पढ़ें। अनअटेंडेड जॉब के लिए अपेक्षित आउटपुट और फ़ेल होने पर व्यवहार पहले से तय कर दें।
क्या यह फ़्लैग Claude Code को मुफ़्त बना देता है या रेट लिमिट हटा देता है?
नहीं। यह परमिशन हैंडलिंग बदलता है। ऑथेंटिकेशन, उपयोग के चार्ज और रेट लिमिट अब भी आपके मॉडल प्रोवाइडर के कंट्रोल में रहते हैं। बार-बार रीट्राई होने से ज़्यादा टोकन खर्च हो सकते हैं, भले ही कोई अप्रूवल प्रॉम्प्ट न दिखे।
रोज़ के काम के लिए पहले auto मोड या Bash सैंडबॉक्स का auto-allow विकल्प आज़माएँ। अनअटेंडेड bypass रन के लिए एनवायरनमेंट को डिस्पोजेबल रखें, वह जिन चीज़ों तक पहुँच सकता है उन्हें सीमित करें, और नतीजे में बनी फ़ाइलें आपके मुख्य प्रोजेक्ट पर असर डालने से पहले रिव्यू करें।
AI के साथ बिल्ड करें। Lizard के साथ शिप करें।
लाइव जाने के लिए आपको प्लेटफ़ॉर्म टीम की ज़रूरत नहीं है। आपका पूरा क्लाउड, बस एक CLI कमांड की दूरी पर।
- सर्विसेज़
- —
- ऐडऑन
- —
- डिप्लॉयमेंट्स
- —
- सैंडबॉक्स स्टार्ट्स
- —