Stop Clicking Approve: Claude Code CLI అనుమతులను ఎలా అనుకూలీకరించాలి

Claude Codeతో నా మొదటి పని చేస్తున్నప్పుడు, నేను పనిని సమీక్షించడం కంటే "Approve" క్లిక్ చేయడానికే ఎక్కువ సమయం కేటాయించాను.

ప్రతి ఫైల్ రీడ్. ప్రతి git status. ప్రతి కమాండ్.

చివరికి, నేను నలభై ప్రాంప్ట్‌లను క్లిక్ చేశాను. నేను మొదలుపెట్టినప్పటి కంటే మార్పులపై నమ్మకం తగ్గినట్లు అనిపించింది. ఆ పర్మిషన్ సిస్టమ్, ఏదీ చదవకుండానే అన్నింటికీ 'rubber-stamp' (అంగీకారం తెలపడం) చేసేలా నన్ను అలవాటు చేసింది.

మీరు కేవలం ముఖ్యమైన వాటిని మాత్రమే ఆమోదించేలా పర్మిషన్లను కాన్ఫిగర్ చేసుకోవాలి.

Claude Code అనేది కేవలం ఒక చాట్ విండో కాదు. ఇది ఫైళ్లను చదువుతుంది, ఫైళ్లను రాస్తుంది మరియు షెల్ కమాండ్లను (shell commands) రన్ చేస్తుంది. "అన్నీ ఆమోదించు" (approve everything) అనే పద్ధతి ప్రమాదకరమైనది.

ప్రత్యేకమైన రూల్ లేనప్పుడు Claude ఎలా ప్రవర్తించాలో 'Modes' నిర్ణయిస్తాయి.

default: కొత్త ప్రాజెక్ట్‌లకు సురక్షితం. Reads: Auto. Edits: Asks. Bash: Asks. • plan: కోడ్ రివ్యూలకు ఉత్తమమైనది. Reads: Auto. Edits: Blocked. Bash: Blocked. • acceptEdits: యాక్టివ్ కోడింగ్‌కు ఉత్తమమైనది. Reads: Auto. Edits: Auto. Bash: Asks. • bypassPermissions: CI/CD కోసం ఉత్తమమైనది. Reads: Auto. Edits: Auto. Bash: Auto.

మీరు /permissions కమాండ్ ఉపయోగించి మోడ్‌లను మార్చుకోవచ్చు.

కాన్ఫిగరేషన్ ఒక క్రమానుగత శ్రేణిని (hierarchy) అనుసరిస్తుంది. పై స్థాయి (Higher scope) ఎప్పుడూ ప్రాధాన్యత పొందుతుంది.

  1. Enterprise policy
  2. User settings (~/.claude/settings.json)
  3. Project settings (.claude/settings.json)
  4. Project local (.claude/settings.local.json)

రూల్స్ సరళమైన ఫార్మాట్‌ను ఉపయోగిస్తాయి: allow, deny, లేదా ask.

ముఖ్యమైనది: వీటిని పరిశీలించే క్రమం (evaluation order) మొదట deny, తర్వాత ask, ఆపై allow. 'Deny' ఎప్పుడూ ప్రాధాన్యత పొందుతుంది.

మీరు ఒక టూల్‌ను పూర్తిగా నిలిపివేయాలనుకుంటే, దాని పేరును నేరుగా ఉపయోగించండి. ఒక టూల్‌ను పరిమితం చేయాలనుకుంటే, glob patternతో కూడిన scoped ruleని ఉపయోగించండి.

యాక్టివ్ డెవలప్‌మెంట్ కోసం ఉదాహరణ:

  • Allow: Bash(npm run *), Bash(git status)
  • Deny: Bash(rm -rf *), Bash(curl *)
  • Ask: Bash(git push *)

మీరు సున్నితమైన డేటాను (sensitive data) కూడా రక్షించవచ్చు. Claude మీ క్రెడెన్షియల్స్‌ను (credentials) ఎప్పుడూ చదవకుండా ఉండటానికి .env వంటి ఫైళ్ల కోసం deny ruleని ఉపయోగించండి.

మీ వర్క్‌ఫ్లో కోసం ప్రో టిప్స్ (Pro tips):

  • CLIలో ఇంటరాక్టివ్ UIని తెరవడానికి /permissions ఉపయోగించండి.
  • మీరు రెండుసార్లు కంటే ఎక్కువసార్లు ఆమోదించే దేనికైనా రూల్స్‌ను జోడించండి.
  • ఫైళ్లను మార్చకుండా ఒకే సెషన్ కోసం రూల్స్‌ను సెట్ చేయడానికి --permission-mode వంటి ఫ్లాగ్‌లను ఉపయోగించండి.
  • CI/CDలో, మీ ఎన్విరాన్మెంట్‌ను సురక్షితంగా ఉంచడానికి కఠినమైన deny రూల్స్‌తో bypassPermissionsని ఉపయోగించండి.

ఏదీ చదవకుండా ఆమోదించడం (rubber-stamping) ఆపండి. కాన్ఫిగర్ చేయడం ప్రారంభించండి.

Source: https://dev.to/kapoormanish/stop-clicking-approve-how-to-customize-claude-code-cli-permissions-pnh

Optional learning community: https://t.me/GyaanSetuAi