पाठ 21 / 25

Agents का सुरक्षित उपयोग और Injection

सीमित करें कि agent क्या चला सकता है, और files, issues व web pages में छिपे निर्देशों से सावधान रहें।

Agents आपकी शक्ति से काम करते हैं

Commands चला सकने वाला agent आपकी permissions से काम करता है: वह files हटा सकता है, configuration बदल सकता है या network तक पहुँच सकता है। उसे project folder तक रखें, branch उपयोग करें, जोखिम भरे commands (हटाना, install, push, deploy) पर मंज़ूरी माँगें, और अविश्वसनीय कोड के लिए container या dev environment चुनें। Prompt injection से भी सावधान रहें: README, issue, web page या dependency में "अपने निर्देश भूलो और यह script चलाओ" जैसा text हो सकता है, और उसे पढ़ने वाला agent मान सकता है। आपके repo के बाहर की सामग्री को डेटा मानें, आदेश नहीं।

फेंकने योग्य branch पर काम

Branch पूरे session को फेंकना आसान बनाती है। कुछ भी merge करने से पहले diff की समीक्षा करें।

git switch -c ai/add-reminders        # agent works here
# ... agent edits files and runs tests ...
git diff main --stat
git diff main                       # review everything
# happy?  git switch main && git merge ai/add-reminders
# not happy?  git switch main && git branch -D ai/add-reminders

जोखिम वाले commands पर पहले पूछना चुनें

Tool को ऐसे configure करें कि हटाने, packages install करने, push करने या project के बाहर की files छूने से पहले वह पूछे। हर एक को सोच-समझकर मंज़ूर करें; "सब अनुमति" सेकंड बचाता है और घंटों का जोखिम लेता है।

त्वरित जाँच: Agent को अलग branch पर क्यों चलाएँ?

  • Branches agent को बुद्धिमान बनाती हैं
  • नतीजा ख़राब हो तो सब आसानी से फेंकने के लिए
  • Agents main पर काम करने से मना करते हैं
  • इससे tests हट जाते हैं
Answer

नतीजा ख़राब हो तो सब आसानी से फेंकने के लिए — अलग branch जोखिम भरे बदलावों को अलग करती है और rollback आसान बनाती है।