Anthropic ഈ മാസം Claude Code പതിപ്പ് 2.1.207 പുറത്തിറക്കി. ഇതിന്റെ റിലീസ് നോട്ടുകളിൽ AI അസിസ്റ്റഡ് ഡെവലപ്മെന്റിന്റെ നിയമങ്ങൾ തന്നെ മാറ്റിമറിക്കുന്ന ഒരു മാറ്റമുണ്ട്. ഈ ഏജന്റിനെ ഹോസ്റ്റ് ചെയ്യുന്ന മൂന്ന് പ്രധാന ക്ലൗഡ് പ്ലാറ്റ്ഫോമുകളായ Amazon Bedrock, Google Vertex AI, Microsoft Azure Foundry എന്നിവയിൽ ഇപ്പോൾ 'Auto mode' ആണ് ഡിഫോൾട്ട് ആയി വരുന്നത്. മെഷീൻ എഴുതിയ കോഡ് നിങ്ങളുടെ റെപ്പോസിറ്ററിയിൽ എത്തുമ്പോൾ അംഗീകാരത്തിനുള്ള (approval chain) ഉത്തരവാദിത്തം ആർക്കാണെന്ന കാര്യത്തിൽ ഈ ഒരു മാറ്റം വലിയ സ്വാധീനം ചെലുത്തുന്നു.
പഴയ രീതി പരാജയമായിരുന്നു
ഈ റിലീസ് വരെ, Claude Code ഡിഫോൾട്ട് ആയി പ്രവർത്തിച്ചിരുന്നത് 'manual mode'-ലായിരുന്നു. ഏജന്റ് ഒരു ഫയൽ എഡിറ്റ് സ്റ്റേജ് ചെയ്യുകയോ, ഒരു ഷെൽ കമാൻഡ് തയ്യാറാക്കുകയോ, അല്ലെങ്കിൽ ഒരു git commit ക്യൂ ചെയ്യുകയോ ചെയ്ത ശേഷം പ്രവർത്തനം നിർത്തിനിൽക്കും. ഡാറ്റാ വ്യത്യാസങ്ങൾ (diff) വായിക്കാനും കമാൻഡ് പരിശോധിക്കാനും അംഗീകാരം നൽകാനും ഒരു മനുഷ്യൻ വരുന്നത് വരെ അത് കാത്തിരിക്കും. ഒരു വ്യക്തിയുടെ അനുമതിയില്ലാതെ AI ഒരിക്കലും പ്രൊഡക്ഷൻ കോഡിൽ തൊടാൻ പാടില്ല എന്നതായിരുന്നു ഇതിന്റെ പിന്നിലെ തത്വം.
എന്നാൽ യാഥാർത്ഥ്യം മറ്റൊന്നായിരുന്നു. മാനുവൽ മോഡിൽ ഉപയോഗിക്കുന്നവരിൽ 93% പേരും പ്രോംപ്റ്റുകൾ വായിക്കാതെ തന്നെ അവ അംഗീകരിക്കുന്നുണ്ടെന്ന് Anthropic കണ്ടെത്തി. ഡെവലപ്പർമാർ ഈ അപ്രൂവൽ സ്ക്രീനിനെ ഒരു പരിശോധനാ കേന്ദ്രമായല്ല, മറിച്ച് ഒരു തടസ്സമായിട്ടാണ് കണ്ടത്. ജോലി തടസ്സപ്പെടാതിരിക്കാൻ അവർ വേഗത്തിൽ "yes" ക്ലിക്ക് ചെയ്തു, ഇത് മാനുവൽ പരിശോധനയെ അപ്രസക്തമാക്കി. എല്ലാവരും മറികടക്കുന്ന ഒരു സുരക്ഷാ നിയന്ത്രണം യഥാർത്ഥത്തിൽ ഒരു നിയന്ത്രണമല്ല; അത് സുരക്ഷയുടെ പേരിൽ വരുത്തുന്ന തടസ്സങ്ങൾ മാത്രമാണ്.
എങ്ങനെയാണ് Auto Mode മനുഷ്യന്റെ ക്ലിക്കിന് പകരമാകുന്നത്
Auto mode, മനുഷ്യന്റെ ആ യന്ത്രസമാനമായ അംഗീകാരത്തിന് പകരം രണ്ടാമതൊരു AI മോഡലിനെ ഉപയോഗിക്കുന്നു. ഈ ക്ലാസിഫയർ (classifier), ഏജന്റ് നടത്തുന്ന ഓരോ പ്രവൃത്തിയും നടപ്പിലാക്കുന്നതിന് മുമ്പ് പരിശോധിക്കുന്നു. ആ ഘട്ടം യഥാർത്ഥ ടാസ്ക്കുമായി യോജിക്കുന്നുണ്ടോ എന്നും ഏജന്റ് വഴിതെറ്റിപ്പോകുന്നുണ്ടോ എന്നും ഇത് പരിശോധിക്കുന്നു. ക്ലാസിഫയർ ആ പ്രവൃത്തി അംഗീകരിച്ചാൽ, ഏജന്റ് ഉടൻ തന്നെ മുന്നോട്ട് പോകും. ഇതിനായി നിങ്ങൾ കാത്തുനിൽക്കേണ്ടതില്ല, പോപ്പ്അപ്പുകൾ നോക്കേണ്ടതില്ല.
ഇതൊരു വ്യത്യസ്തമായ സുരക്ഷാ സംവിധാനമാണ്. രാത്രി 2 മണിക്ക് ക്ലാസിഫയർക്ക് തളർച്ച അനുഭവപ്പെടില്ല. ഡെഡ്ലൈനുകൾ കാരണം അത് വായന ഒഴിവാക്കില്ല. ആദ്യത്തെ പ്രവൃത്തിക്ക് നൽകുന്ന അതേ സൂക്ഷ്മത നൂറാമത്തെ പ്രവൃത്തിക്കും അത് നൽകുന്നു. തളർന്ന ഒരു എഞ്ചിനീയർക്ക് ഇത് സാധ്യമാകില്ല.
ഭരണപരമായ ഒരു മാറ്റം (A Governance Reversal)
ഇവിടെ സംഭവിക്കുന്ന വലിയ മാറ്റം ഡിഫോൾട്ട് സെറ്റിംഗുകളെയും ഉത്തരവാദിത്തങ്ങളെയും കുറിച്ചുള്ളതാണ്. 2.1.207-ന് മുമ്പ്, ടീമുകൾക്ക് സ്വയം 'auto mode' തിരഞ്ഞെടുക്കേണ്ടതായിരുന്നു. എന്നാൽ ഇപ്പോൾ അത് തിരിച്ചാണ്: ഇത് ഓഫ് ചെയ്യാൻ നിങ്ങൾ പ്രത്യേകം നടപടി എടുക്കണം. ഫിനാൻസ് അല്ലെങ്കിൽ ഹെൽത്ത് കെയർ പോലുള്ള നിയന്ത്രിത മേഖലകളിൽ (regulated data) പ്രവർത്തിക്കുന്ന സ്ഥാപനങ്ങളെ സംബന്ധിച്ചിടത്തോളം ഇതൊരു ചെറിയ മാറ്റമല്ല, മറിച്ച് ഒരു പോളിസി മാറ്റമാണ്. ആരെങ്കിലും പ്രത്യേകം ഈ ഫീച്ചർ ഓഫ് ചെയ്തിട്ടില്ലെങ്കിൽ, ഓട്ടോണമസ് കമ്മറ്റുകൾ (autonomous commits) നിങ്ങളുടെ റെപ്പോസിറ്ററികളിൽ എത്തിയേക്കാം എന്ന് നിങ്ങളുടെ കംപ്ലയൻസ് ടീം അറിഞ്ഞിരിക്കണം.
നിങ്ങൾ ഇപ്പോൾ ചെയ്യേണ്ടത്
ആദ്യമായി, നിങ്ങളുടെ നിലവിലെ അവസ്ഥ പരിശോധിക്കുക (audit). നിങ്ങളുടെ സമീപകാല ലോഗുകളും git ഹിസ്റ്ററിയും പരിശോധിക്കുക. Claude Code വഴി കമ്മറ്റികൾ നടന്നിട്ടുണ്ടെന്നും എന്നാൽ സെഷൻ റെക്കോർഡുകളിൽ അതിന് പകരമായി മനുഷ്യന്റെ അപ്രൂവൽ പ്രോംപ്റ്റുകൾ ഇല്ലെന്നും കണ്ടാൽ, auto mode നിലവിൽ പ്രവർത്തിക്കുന്നു എന്നാണ് അർത്ഥം. നിങ്ങളുടെ പഴയ കോൺഫിഗറേഷൻ തന്നെയായിരിക്കും ഇപ്പോഴും നിലവിലുള്ളതെന്ന് കരുതരുത്.
നിങ്ങൾക്ക് മാനുവൽ കൺട്രോൾ തിരികെ വേണമെങ്കിൽ, പഴയ രീതികൾ ഇനി പ്രവർത്തിക്കില്ല എന്ന് മനസ്സിലാക്കുക. ഈ രീതി മാറ്റാൻ ഉപയോഗിച്ചിരുന്ന പഴയ എൻവയോൺമെന്റ് വേരിയബിളുകൾക്ക് (environment variables) Anthropic പിന്തുണ നിർത്തലാക്കി. ഇനി മുതൽ നിങ്ങളുടെ മാനേജ്ഡ് സെറ്റിംഗ്സ് ഫയലിൽ disableAutoMode എന്ന് സെറ്റ് ചെയ്യണം. നിങ്ങളുടെ ഷെൽ കോൺഫിഗറേഷനുകളിലോ കണ്ടെയ്നർ ഇമേജുകളിലോ ഉള്ള പഴയ പരിഹാരങ്ങൾ (workarounds) ഇനി ഫലിക്കില്ല, അതിനാൽ അപ്ഗ്രേഡ് ചെയ്ത ശേഷം നിങ്ങളുടെ ഡിപ്ലോയ്മെന്റ് പൈപ്പ്ലൈനുകൾ പരിശോധിക്കുക.
നിങ്ങൾക്ക് ക്ലാസിഫയറിലെ ക്രമീകരണങ്ങൾ മാറ്റാൻ കഴിയില്ല. അതിന്റെ തീവ്രതയോ റിസ്ക് പരിധിയോ നിയന്ത്രിക്കാൻ മറ്റ് വഴികളില്ല. നിങ്ങൾക്ക് ചെയ്യാവുന്ന ഏക പ്രായോഗിക നിയന്ത്രണം ആക്സസ് കൺട്രോളുകൾ (access controls) ആണ്. നാശനഷ്ടത്തിന്റെ വ്യാപ്തി (blast radius) കുറയ്ക്കുക. ഏജന്റിനെ പ്രത്യേക ഡയറക്ടറികളിലേക്ക് മാത്രം പരിമിതപ്പെടുത്തുക. ആവശ്യമായ കുറഞ്ഞ അനുമതികൾ (minimum permissions) മാത്രം നൽകുന്ന ഷോർട്ട്-ലിവിഡ് ക്രെഡൻഷ്യലുകൾ നൽകുക. ക്ലാസിഫയർ ഒരു തെറ്റായ പ്രവൃത്തി ശ്രദ്ധിക്കാതെ പോയാൽ പോലും, അഡ്മിൻ കീകളുള്ള ഒരു ഏജന്റിനേക്കാൾ കുറഞ്ഞ നാശനഷ്ടങ്ങൾ മാത്രമേ പരിമിതമായ അനുമതികളുള്ള ഒരു ഏജന്റിന് ഉണ്ടാക്കാൻ കഴിയൂ.
Auto Mode എവിടെയാണ് പ്രയോജനപ്പെടുന്നത്
മനുഷ്യന്റെ ശ്രദ്ധ ആവശ്യമില്ലാത്ത ജോലികൾ വേഗത്തിൽ തീർക്കാൻ ഇത് സഹായിക്കുന്നു. റിസ്ക് കുറഞ്ഞതും ആവർത്തന സ്വഭാവമുള്ളതുമായ ജോലികളിൽ auto mode മികച്ചതാണ്. ഉദാഹരണത്തിന്, ലിന്റർ റൂളുകൾ (linter rules) അപ്ഡേറ്റ് ചെയ്ത ശേഷം നൂറിലധികം ഫയലുകൾ ഫോർമാറ്റ് ചെയ്യുക, അല്ലെങ്കിൽ ഒരു സെക്യൂരിറ്റി അഡ്വൈസറി വന്നാൽ പാച്ച്-ലെവൽ ഡിപെൻഡൻസി (patch-level dependency) അപ്ഡേറ്റ് ചെയ്യുക എന്നിവ പരിഗണിക്കുക. ഒരു എഞ്ചിനീയറുടെ ശ്രദ്ധ തിരിക്കാതെ തന്നെ ഏജന്റിന് ഇത് ചെയ്യാൻ സാധിക്കും.
എഞ്ചിനീയറിംഗ് സമയം പരിമിതമായതുകൊണ്ട് ഇത് വളരെ പ്രധാനമാണ്. വെറുമൊരു വൈറ്റ്സ്പേസ് ഫിക്സിനായി (whitespace fix) "approve" ക്ലിക്ക് ചെയ്യാൻ ചിലവാക്കുന്ന ഓരോ മിനിറ്റും ആർക്കിടെക്ചർ പ്ലാനിംഗിനോ അല്ലെങ്കിൽ മനുഷ്യന്റെ വിവേചനാധികാരം ആവശ്യമായ സങ്കീർണ്ണമായ ജോലികൾക്കോ വേണ്ടി ഉപയോഗിക്കേണ്ട സമയമാണ്. Auto mode ആ സമയം തിരികെ നൽകുന്നു.
എന്നാൽ അച്ചടക്കമില്ലാത്ത വേഗത സാങ്കേതിക കടബാധ്യത (technical debt) വർദ്ധിപ്പിക്കുകയേ ഉള്ളൂ. ഒരു പ്രവൃത്തി പ്രോംപ്റ്റുമായി യോജിക്കുന്നുണ്ടോ എന്ന് മാത്രമേ ക്ലാസിഫയർ പരിശോധിക്കൂ. resulting code നിങ്ങളുടെ ഇന്റഗ്രേഷൻ സ്യൂട്ടിൽ പാസ്സാവുന്നുണ്ടോ എന്നോ, നിങ്ങളുടെ സ്റ്റൈൽ ഗൈഡ് പിന്തുടരുന്നുണ്ടോ എന്നോ അത് പരിശോധിക്കില്ല. അതിനാൽ, എന്തും പ്രൊഡക്ഷനിൽ എത്തുന്നതിന് മുമ്പ് CI ഗേറ്റുകൾ, കോഡ് റിവ്യൂ, ഓട്ടോമേറ്റഡ് ടെസ്റ്റുകൾ എന്നിവ ഇപ്പോഴും ആവശ്യമാണ്.
മൾട്ടി-ക്ലൗഡ് സങ്കീർണ്ണതകൾ
Bedrock, Vertex AI, Azure Foundry എന്നിവയിൽ ഒരേസമയം ഈ ഡിഫോൾട്ട് നടപ്പിലാക്കിയതിനാൽ, മൾട്ടി-ക്ലൗഡ് സംവിധാനങ്ങൾ ഉപയോഗിക്കുന്ന സ്ഥാപനങ്ങൾ സ്ഥിരതയെക്കുറിച്ച് (consistency) ചിന്തിക്കേണ്ടതുണ്ട്. ഓരോ പ്ലാറ്റ്ഫോമും കൃത്യമായി കോൺഫിഗർ ചെയ്യാതെ, GCP-യിൽ നിയന്ത്രണങ്ങൾ ഏർപ്പെടുത്തിയിരിക്കുമ്പോൾ AWS-ൽ അയഞ്ഞ പെർമിഷനുകളോടെ ഓട്ടോ മോഡ് (auto mode) പ്രവർത്തിക്കാൻ അനുവദിക്കരുത്. ഈ മൂന്ന് ക്ലൗഡുകളെയും ഒരു ഒറ്റ ഓപ്പറേഷണൽ മെഷ് (operational mesh) ആയി പരിഗണിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങളുടെ disableAutoMode പോളിസിയും ഐഡന്റിറ്റി ബൗണ്ടറികളും (identity boundaries) ഇപ്പോൾ തന്നെ സ്റ്റാൻഡേർഡൈസ് ചെയ്യുക. പ്ലാറ്റ്ഫോമുകൾ തമ്മിലുള്ള വ്യത്യാസങ്ങൾ (drift) ഒരു ബിൽഡ് തകരാറിലാക്കുന്നത് വരെ അല്ലെങ്കിൽ അതിലും മോശമായ സാഹചര്യം ഉണ്ടാകുന്നത് വരെ തിരിച്ചറിയാൻ കഴിയില്ല.
ക്ലാസിഫയറിന് (classifier) കാണാൻ കഴിയാത്ത കാര്യങ്ങളും ഓർമ്മിക്കേണ്ടതുണ്ട്. ഏജന്റ് അതിന്റെ ജോലി കൃത്യമായി ചെയ്യുന്നുണ്ടോ എന്നാണ് അത് വിലയിരുത്തുന്നത്, അല്ലാതെ ഒരു റീഫാക്റ്റർ (refactor) നിങ്ങളുടെ കോഡ്ബേസിലുടനീളം മാറ്റങ്ങൾ ഉണ്ടാക്കുന്നുണ്ടോ എന്നല്ല. ഒരു ഷെയർഡ് യൂട്ടിലിറ്റി (shared utility) എക്സ്ട്രാക്റ്റ് ചെയ്യുന്ന ഏജന്റ് അതിന്റെ പ്രോംപ്റ്റുമായി കൃത്യമായി പൊരുത്തപ്പെടുന്നതായി തോന്നിയേക്കാം, എന്നാൽ പത്ത് ഡൗൺസ്ട്രീം സർവീസുകൾ ആശ്രയിക്കുന്ന ഒരു ഇന്റർഫേസിൽ അത് സൂക്ഷ്മമായ മാറ്റങ്ങൾ വരുത്തിയേക്കാം. ക്ലാസിഫയർ ഒരു സീനിയർ ആർക്കിടെക്റ്റ് അല്ല. അതൊരു ടാസ്ക് ചെക്കർ (task checker) മാത്രമാണ്.
അടുത്ത സ്പ്രിന്റിനായുള്ള ഒരു ചെക്ക്ലിസ്റ്റ്
നിങ്ങൾ ഈ മാറ്റം നിയന്ത്രിക്കുകയാണെങ്കിൽ, ഈ ആഴ്ച സ്വീകരിക്കേണ്ട പ്രായോഗികമായ നടപടികൾ താഴെ പറയുന്നവയാണ്:
- രണ്ടാഴ്ചത്തെ ലോഗുകൾ ഓഡിറ്റ് ചെയ്യുക. ഓരോ Claude Code കമ്മിറ്റും പരിശോധിക്കുക. മനുഷ്യന്റെ അംഗീകാരമില്ലാതെ (human approval prompt) നടന്നവയെ അടയാളപ്പെടുത്തുക.
- ക്രെഡൻഷ്യലുകൾ പരിമിതപ്പെടുത്തുക (Scope the credentials). ഏജന്റിനായി ഒരു പ്രത്യേക സർവീസ് അക്കൗണ്ട് നിർമ്മിക്കുക. അതിന് ആവശ്യമുള്ള ഡയറക്ടറികൾക്ക് മാത്രം റൈറ്റ് ആക്സസ് (write access) നൽകുക. പ്രൊഡക്ഷൻ ഡാറ്റാബേസുകൾക്കോ, ഡിപ്ലോയ്മെന്റ് കീകുകൾക്കോ, കസ്റ്റമർ ഡാറ്റാ സ്റ്റോറുകൾക്കോ ഒരിക്കലും ആക്സസ് നൽകരുത്.
- ഡോക്യുമെന്റേഷൻ പുതുക്കുക. പഴയ എൻവയോൺമെന്റ് വേരിയബിൾ ടോഗിളുകളെക്കുറിച്ചുള്ള പരാമർശങ്ങൾ ഒഴിവാക്കുക. ഓൺ-കോൾ എഞ്ചിനീയർമാരെ പുതിയ
disableAutoModeമാനേജ്ഡ് സെറ്റിംഗിലേക്ക് നയിക്കുക. - റിസ്ക് അനുസരിച്ച് തരംതിരിക്കുക. ഫോർമാറ്റിംഗ്, ചെറിയ ഡിപെൻഡൻസി ബംപ്സ് (dependency bumps) തുടങ്ങിയ ഡെവലപ്മെന്റ് ആവശ്യങ്ങൾക്കായി മാത്രം ഓട്ടോ മോഡ് അനുവദിക്കുക. ബിസിനസ് ലോജിക്, ഓതന്റിക്കേഷൻ, അല്ലെങ്കിൽ ഡാറ്റാ ഹാൻഡ്ലിംഗ് കോഡ് എന്നിവയുമായി ബന്ധപ്പെട്ട കാര്യങ്ങൾക്ക് മാനുവൽ മോഡോ അല്ലെങ്കിൽ പൂർണ്ണമായ മനുഷ്യ പരിശോധനയോ ആവശ്യമാണ്.
- കംപ്ലയൻസ് ടീമിനെ അറിയിക്കുക. ക്ലാസിഫയർ എന്നത് ഒരു ഓട്ടോമേറ്റഡ് ചെക്ക് മാത്രമാണെന്നും മനുഷ്യന്റെ അംഗീകാരമല്ലെന്നും അവരെ ബോധ്യപ്പെടുത്തുക. പുതിയ ഓപ്റ്റ്-ഔട്ട് (opt-out) ഡിഫോൾട്ട് നിങ്ങളുടെ നിലവിലുള്ള ചേഞ്ച്-കൺട്രോൾ പോളിസികളുമായി എങ്ങനെ സംവദിക്കുന്നു എന്ന് അവർക്ക് കാണിച്ചുകൊടുക്കുക.
ഗാർഡ്റെയിലുകൾ നിലനിർത്തുക, വെറും പ്രകടനങ്ങൾ ഒഴിവാക്കുക
മാനുവൽ മോഡിൽ ഉണ്ടായിരുന്ന അംഗീകാര നടപടികൾ ഒഴിവാക്കുന്നതിലൂടെ ഓട്ടോ മോഡ് AI അസിസ്റ്റഡ് കോഡിംഗ് വേഗത്തിലാക്കുന്നു. പാതിരാത്രിയിൽ തളർന്നുപോയ ഒരു ഡെവലപ്പർ വെറുതെ "yes" എന്ന് അമർത്തുന്നതിനേക്കാൾ മികച്ച സുരക്ഷാ സംവിധാനമാണ് ഏജന്റിനെ പരിശോധിക്കുന്ന രണ്ടാമതൊരു മോഡൽ. എന്നാൽ ഒരു ഡിഫോൾട്ട് എന്നത് മുൻകൂട്ടി എടുത്ത തീരുമാനമാണ്, നിങ്ങൾ otherwise എന്ന് പറയുന്നതുവരെ നിങ്ങൾക്ക് സ്വയംഭരണം (autonomy) വേണമെന്നാണ് ഇത് അനുമാനിക്കുന്നത്.
2.1.207-നെ ഒരു സൗകര്യപ്രദമായ അപ്ഗ്രേഡ് ആയിട്ടല്ല, മറിച്ച് ഒരു ഇൻഫ്രാസ്ട്രക്ചർ മാറ്റമായി കാണുക. നിങ്ങളുടെ പെർമിഷനുകൾ പരിശോധിക്കുക, റൺബുക്കുകൾ (runbooks) പുനഃക്രമീകരിക്കുക, ഏത് വർക്ക്ഫ്ലോകൾ ഓട്ടോമാറ്റിക് ആയിരിക്കണമെന്നും ഏവയ്ക്ക് മനുഷ്യന്റെ ഇടപെടൽ വേണമെന്നും ബോധപൂർവ്വം തീരുമാനിക്കുക. കഠിനമായ ജോലികൾ ഏജന്റിനെ ഏൽപ്പിക്കുക. ആ ജോലികൾക്ക് ചുറ്റുമുള്ള സുരക്ഷാ മതിലുകൾ ശക്തമാണെന്ന് ഉറപ്പാക്കുക എന്നതാണ് നിങ്ങളുടെ ജോലി.
GyaanSetu AI Community on Telegram-ൽ ചർച്ചയിൽ പങ്കുചേരുക.
