मुख्य कंटेंट तक स्किप करें

अनुमतियाँ और अनुमति मोड

मध्यम
What you'll learn
  • तीन अनुमति निर्णयों (allow / ask / deny) का क्या अर्थ है
  • अनुमति नियम कैसे एक टूल और एक पैटर्न से मेल खाते हैं
  • छह अनुमति मोड और प्रत्येक का उपयोग कब करें
  • auto मोड कैसे प्रॉम्प्ट्स की जगह एक सुरक्षा क्लासिफ़ायर का उपयोग करता है
  • ऐसी समझदार शुरुआती allowlist कैसे बनाएँ जो सुरक्षा खोए बिना प्रॉम्प्ट कम करे
  • प्रोजेक्ट बनाम व्यक्तिगत अनुमति नियमों को कहाँ संग्रहीत करें

अनुमतियाँ यह तय करती हैं कि Claude Code आपसे पूछने के लिए रुके बिना क्या कर सकता है। इन्हें अच्छी तरह ट्यून करें तो आपको नियंत्रण खोए बिना प्रवाह मिलता है; इन्हें बुरी तरह ट्यून करें तो या तो आप हर चीज़ पर रबर-स्टैम्प लगाते हैं या प्रॉम्प्ट्स में डूब जाते हैं।

तीन निर्णय

हर संभावित क्रिया इनमें से किसी एक पर परिणत होती है:

कार्ड पलटने के लिए Enter या Space दबाएँ। कार्ड बदलने के लिए बाएँ और दाएँ तीर कुंजियों का उपयोग करें।शब्द दिखाया गया।
1 / 3

नियम आमतौर पर एक टूल और एक पैटर्न से मेल खाते हैं, जैसे Bash(npm run test:*) को allow करना या Read(./.env) को deny करना।

एक टूल + पैटर्न को allow करें

Bash(npm run test:*)

एक टूल + पैटर्न को deny करें

Read(./.env)

अनुमति मोड

एक मोड एक सत्र के लिए समग्र स्थिति निर्धारित करता है। छह मोड हैं। सामान्य मोड्स के बीच Shift+Tab से चक्र करें, या सेटिंग्स में permissions.defaultMode सेट करें।

मोडबिना पूछे क्या चलता हैकब उपयोग करें
default (Manual के रूप में दिखाया गया)केवल पठनरोज़मर्रा का काम, संवेदनशील बदलाव
acceptEditsपठन, फ़ाइल संपादन, सामान्य फ़ाइल-सिस्टम कमांडएक विश्वसनीय, अच्छी तरह सीमित संपादन सत्र
planकेवल पठन; प्रस्ताव देता है, कभी संपादन नहीं करताबड़े/जोखिम भरे कार्य — देखें Plan Mode
autoसब कुछ, एक सुरक्षा क्लासिफ़ायर द्वारा जाँचा गयालंबे कार्य जहाँ असली जोखिम प्रॉम्प्ट-थकान है
dontAskकेवल पूर्व-अनुमोदित टूल; बाकी सब कुछ denyलॉक्ड-डाउन CI और स्क्रिप्ट्स
bypassPermissionsसब कुछ, कोई जाँच नहींकेवल सैंडबॉक्स/कंटेनर — सीक्रेट्स वाली मशीन पर कभी नहीं

Auto मोड

auto हर चीज़ के लिए प्रॉम्प्ट करने और सुरक्षा बंद कर देने के बीच का मध्य मार्ग है। आपसे पूछने के बजाय, एक अलग क्लासिफ़ायर मॉडल हर क्रिया को चलने से पहले परखता है और ऐसी किसी भी चीज़ को ब्लॉक कर देता है जो आपके कहे से आगे बढ़ जाती है, ऐसे इंफ़्रास्ट्रक्चर को छूती है जिसे वह पहचानता नहीं, या ऐसी लगती है मानो Claude द्वारा अभी पढ़ी गई शत्रुतापूर्ण सामग्री से प्रेरित हो। स्पष्ट ask नियम फिर भी रुककर आपसे पूछते हैं।

यह curl | bash, force push, प्रोडक्शन डिप्लॉय और माइग्रेशन, तथा बाहरी एंडपॉइंट्स को सीक्रेट्स भेजने जैसी चीज़ों को ब्लॉक करता है — जबकि रोज़मर्रा के काम (स्थानीय संपादन, घोषित डिपेंडेंसी इंस्टॉल करना, केवल-पठन HTTP, अपनी ब्रांच पर पुश करना) को सीधे चलने देता है। यदि यह एक ही क्रिया को बार-बार ब्लॉक करता है, तो auto मोड रुक जाता है और प्रॉम्प्ट करने की ज़िम्मेदारी वापस आपको सौंप देता है।

Auto मोड कोई सुरक्षा गारंटी नहीं है — यह प्रॉम्प्ट्स कम करता है, यह संवेदनशील ऑपरेशनों की समीक्षा की आवश्यकता को समाप्त नहीं करता। उपलब्धता आपके प्लान, मॉडल और (Team/Enterprise पर) एक एडमिन टॉगल पर निर्भर करती है।

Watch out
  • bypassPermissions का स्थान एक सैंडबॉक्स में है। अपनी वास्तविक मशीन पर सभी प्रॉम्प्ट बंद करके चलाना ही वह तरीका है जिससे एक एजेंट किसी ऐसी चीज़ को छू बैठता है जिसे नहीं छूना चाहिए। इसे डिस्पोज़ेबल वातावरण के लिए सुरक्षित रखें — यदि आप वास्तव में कम प्रॉम्प्ट चाहते हैं, तो इसके बजाय auto मोड का उपयोग करें। /docs/security/hardening-autonomous-runs पर स्वायत्त रन को मज़बूत बनाना देखें।

एक समझदार शुरुआती allowlist

लक्ष्य: सुरक्षित, दोहराव वाली चीज़ों को पूर्व-अनुमति दें; विनाशकारी चीज़ों को ask या deny पर रखें।

Guided walkthrough1 of 3
  1. फ़ाइलें पढ़ें, अपने test/lint/build कमांड चलाएँ, git status/diff।

प्रोजेक्ट नियमों को settings.json (साझा) में और व्यक्तिगत ओवरराइड्स को settings.local.json में संग्रहीत करें।

Pro tip
  • इसे अपने प्रॉम्प्ट्स से सीखने दें: उसी सुरक्षित कमांड को कुछ बार अनुमोदित करें और आपको ठीक-ठीक पता चल जाएगा कि अपनी allowlist में क्या जोड़ना है — बार-बार आने वाले प्रॉम्प्ट्स को एक बार के नियम में बदलना।
Key takeaways
  • तीन निर्णय: allow (कोई प्रॉम्प्ट नहीं), ask (डिफ़ॉल्ट — रुको और पुष्टि करो), deny (कभी नहीं)।
  • नियम एक टूल और एक पैटर्न से मेल खाते हैं, जैसे Bash(npm run test:*) या Read(./.env)।
  • छह मोड सत्र की स्थिति निर्धारित करते हैं: default (Manual), acceptEdits, plan, auto, dontAsk, bypassPermissions।
  • auto मोड आपसे प्रॉम्प्ट करने के बजाय हर क्रिया को एक सुरक्षा क्लासिफ़ायर से जाँचता है — प्रॉम्प्ट-थकान का समाधान वही है, bypassPermissions नहीं।
  • एक allowlist बनाएँ: सुरक्षित + दोहराव वाली चीज़ों को allow करें, मध्यम-जोखिम के लिए ask करें, विनाशकारी को deny करें।
  • साझा नियम settings.json में जाते हैं; व्यक्तिगत ओवरराइड्स settings.local.json में।

स्वयं जाँचें

0/5
  1. किसी ऐसी क्रिया के लिए जो स्पष्ट रूप से allow या deny नहीं की गई है, डिफ़ॉल्ट 'ask' निर्णय क्या करता है?
  2. कौन सा अनुमति मोड केवल सैंडबॉक्स या कंटेनर में सुरक्षित है, सीक्रेट्स वाली मशीन पर कभी नहीं?
  3. आप एक लंबे कार्य पर कहीं कम अनुमति प्रॉम्प्ट चाहते हैं, लेकिन फिर भी एक सुरक्षा जाल चाहते हैं। कौन सा मोड?
  4. साझा प्रोजेक्ट अनुमति नियमों बनाम व्यक्तिगत ओवरराइड्स को आपको कहाँ संग्रहीत करना चाहिए?
  5. इनमें से कौन सी चीज़ एक समझदार शुरुआती allowlist में 'deny' सूची में होनी चाहिए?

आगे