ഒരു വെബ് ഫോമിലെ എല്ലാ ടെക്സ്റ്റ് ഫീൽഡുകളും പൂരിപ്പിക്കാൻ കഴിയുന്ന ഒരു Claude AI ഏജന്റ്, മൂന്ന് ചിത്രങ്ങൾ അറ്റാച്ച് ചെയ്യാൻ ശ്രമിച്ച അവസാന ഘട്ടത്തിൽ പരാജയപ്പെട്ടു. ഇത് Desktop App-ന്റെ ഫയൽ അപ്ലോഡ് കൈകാര്യം ചെയ്യുന്നതിൽ രേഖപ്പെടുത്താത്ത ഒരു പരിമിതി വെളിപ്പെടുത്തുന്നു. ഈ പരാജയം പ്രധാനമാണ്, കാരണം ഇത് പൂർണ്ണമെന്ന് തോന്നിക്കുന്ന ഒരു എൻഡ്-ടു-എൻഡ് ഓട്ടോമേഷനെ ഒരു മാനുവൽ പ്രക്രിയയാക്കി മാറ്റുന്നു, ഇത് ഡെവലപ്പർമാരെ AI അധിഷ്ഠിത വർക്ക്ഫ്ലോകൾ എങ്ങനെ നിർമ്മിക്കണം എന്ന് വീണ്ടും ചിന്തിക്കാൻ പ്രേരിപ്പിക്കുന്നു.
എന്തുകൊണ്ടാണ് ഈ പ്രശ്നം ഇപ്പോൾ പ്രത്യക്ഷപ്പെടുന്നത്
Claude ഏജന്റുകൾ മൂന്ന് സാഹചര്യങ്ങളിലാണ് (environments) പ്രവർത്തിക്കുന്നത്: ഒരു command-line interface (CLI), ഒരു Visual Studio Code extension, അല്ലെങ്കിൽ സ്റ്റാൻഡ്ലോൺ Desktop App. CLI-യിൽ, സെഷനിൽ ചേർത്തിട്ടുള്ള ഒരു ഡയറക്ടറിയിൽ നിന്ന് ഏജന്റ് ഒരു ഫയൽ വായിക്കുകയും യാതൊരു പ്രശ്നവുമില്ലാതെ അത് അപ്ലോഡ് ചെയ്യുകയും ചെയ്യുന്നു. എന്നാൽ Desktop App-ൽ ഈ രീതി പ്രവർത്തിക്കുന്നില്ല. ഏജന്റ് സ്വന്തം താൽക്കാലിക ഫോൾഡറിലേക്ക് ഒരു ഫയൽ എഴുതിയാൽ പോലും, പബ്ലിക് ഡോക്യുമെന്റുകളിൽ കാണാത്ത "shared" ഫയലുകളുടെ ഒരു ആന്തരിക നിർവചനം ചൂണ്ടിക്കാട്ടി ആപ്പ് അപ്ലോഡ് നിരസിക്കുന്നു.
ഒരു ഉപയോക്താവ് ഒരു ഫോം പൂരിപ്പിക്കുകയും, “save draft” ക്ലിക്ക് ചെയ്യുകയും, തുടർന്ന് മൂന്ന് ചിത്രങ്ങൾ അറ്റാച്ച് ചെയ്യാൻ ശ്രമിക്കുകയും ചെയ്ത ഒരു ഓട്ടോമേഷൻ നിർമ്മിച്ചപ്പോഴാണ് ഈ വ്യത്യാസം ശ്രദ്ധയിൽപ്പെട്ടത്. ടെക്സ്റ്റ് ഫീൽഡുകൾ കൃത്യമായി പൂരിപ്പിക്കപ്പെട്ടുവെങ്കിലും, അപ്ലോഡ് ഘട്ടത്തിൽ ഓരോ തവണയും എറർ (error) കാണിച്ചു.
ഡെവലപ്പർമാർ പരീക്ഷിച്ച കാര്യങ്ങൾ
- ആപ്പ് നിർമ്മിക്കുന്ന സെഷൻ ഫോൾഡറിലേക്ക് ഫയലുകൾ ചേർത്തു.
- ഏജന്റിന് ഒരു ഹോസ്റ്റ് ഫോൾഡർ കാണാൻ അനുവദിക്കുന്ന directory-connect ടൂൾ ഉപയോഗിച്ചു.
- ചാറ്റ് വിൻഡോയിൽ നേരിട്ട് ചിത്രങ്ങൾ അറ്റാച്ച് ചെയ്തു.
- ഒരു മാനുവൽ അപ്ലോഡ് ഫോൾഡർ നിർമ്മിക്കുകയും ഫോമിനെ അതിലേക്ക് തിരിച്ചുവിടുകയും ചെയ്തു.
ഈ സമീപനങ്ങളെല്ലാം ഒരേ റിജക്ഷൻ എറർ (rejection error) ആണ് നൽകിയത്. ഫയൽ-പിക്കർ ഡയലോഗ് കാണിക്കുന്ന ബ്രൗസർ വിൻഡോ ഡെസ്ക്ടോപ്പ് ഓട്ടോമേഷനായി റീഡ്-ഒൺലി (read-only) മോഡിലാണ് പ്രവർത്തിക്കുന്നത്. ഏജന്റിന് ഡയലോഗ് കാണാൻ കഴിയുമെങ്കിലും അതിനുള്ളിൽ ക്ലിക്ക് ചെയ്യാനോ ഒരു പാത്ത് (path) ടൈപ്പ് ചെയ്യാനോ കഴിയില്ല, അതിനാൽ UI-ഓട്ടോമേഷൻ തന്ത്രങ്ങൾ പരാജയപ്പെടുന്നു.
ഒരു ദുർബലമായ “ബാക്ക്ഡോർ”
വിജയിച്ച ഏക രീതി Windows ക്ലിപ്പ്ബോർഡ് ഉപയോഗിച്ചുള്ളതായിരുന്നു:
- ഒരു PowerShell സ്ക്രിപ്റ്റ് ടാർഗെറ്റ് ഫയൽ ക്ലിപ്പ്ബോർഡിലേക്ക് കോപ്പി ചെയ്യുന്നു.
- ഏജന്റ് Ctrl + V കീസ്ട്രോക്ക് അയക്കുന്നു.
- ബ്രൗസർ പേസ്റ്റ് ഇവന്റ് സ്വീകരിക്കുകയും ഫയൽ അപ്ലോഡ് ചെയ്യുകയും ചെയ്യുന്നു.
ഈ ഹാക്ക് (hack) പ്രവർത്തിക്കുമെങ്കിലും, ഇത് ഉപയോക്താവിന്റെ ക്ലിപ്പ്ബോർഡ് മായ്ച്ചുകളയുന്നു, Windows-ൽ മാത്രമായി പരിമിതപ്പെടുത്തിയിരിക്കുന്നു, കൂടാതെ Desktop App-ന്റെ ഏതൊരു അപ്ഡേറ്റിലും ഇത് തകരാറിലാകാൻ സാധ്യതയുണ്ട്. പ്രൊഡക്ഷൻ പൈപ്പ്ലൈനുകൾക്ക് ഇത് ഒരു സുസ്ഥിരമായ പരിഹാരമല്ല.
ഈ പരിമിതിയുടെ യഥാർത്ഥ അർത്ഥം എന്താണ്
പ്രധാന പ്രശ്നം ഒരു സോഫ്റ്റ്വെയർ ബഗ് അല്ല; ഫയൽ പെർമിഷനുകളെ ഒരു ലളിതമായ ഫയൽ-സിസ്റ്റം ഫ്ലാഗായി കാണുന്നതിന് പകരം ഹോസ്റ്റ് ആപ്ലിക്കേഷന്റെ ഒരു ഗുണമായി പരിഗണിക്കുന്ന രേഖപ്പെടുത്താത്ത ഒരു സംവിധാനമാണിത്. CLI-യിൽ, ഏജന്റ് പ്രോസസ്സിന്റെ റീഡ് ആക്സസ് (read access) സ്വീകരിക്കുന്നു, അതിനാൽ സെഷന് കാണാൻ കഴിയുന്ന ഏത് ഫയലും അപ്ലോഡ് ചെയ്യാം. എന്നാൽ Desktop App-ൽ, റൺടൈം ഏജന്റിന്റെ ഫയൽ-സിസ്റ്റം കാഴ്ചയെ ഒറ്റപ്പെടുത്തുന്നു (isolates), അങ്ങനെ മറഞ്ഞിരിക്കുന്ന “shared” മാനദണ്ഡങ്ങൾ പാലിക്കുന്ന ഫയലുകൾ മാത്രമേ അനുവദിക്കുന്നുള്ളൂ.
ഈ നിയന്ത്രണം Desktop App-ന്റെ ആർക്കിടെക്ചറിൽ തന്നെ ഉൾച്ചേർത്തിരിക്കുന്നതിനാൽ, UI മാനിപുലേഷനോ താൽക്കാലിക ഫോൾഡറുകളോ ഉപയോഗിച്ചുള്ള പരിഹാരങ്ങൾ വിജയിച്ചിട്ടില്ല.
വിശ്വസനീയമായ മുന്നോട്ടുള്ള വഴികൾ
ഒരു വർക്ക്ഫ്ലോയ്ക്ക് ഫയൽ അപ്ലോഡുകൾ ആവശ്യമാണെങ്കിൽ, ഡെവലപ്പർമാർക്ക് മൂന്ന് വിശ്വസനീയമായ ഓപ്ഷനുകളുണ്ട്:
- ഏജന്റ് CLI-ൽ നിന്ന് പ്രവർത്തിപ്പിക്കുക. ഈ എൻവയോൺമെന്റ് സെഷന്റെ ഫയൽ-സിസ്റ്റം പെർമിഷനുകൾ മാനിക്കുന്നു കൂടാതെ അധിക നടപടികളില്ലാതെ അപ്ലോഡ് ചെയ്യുന്നു.
- VS Code extension ഉപയോഗിക്കുക. ഈ എക്സ്റ്റൻഷൻ CLI-യുടെ പെർമിഷൻ മോഡലിനെ അനുകരിക്കുന്നു, ഇത് എഡിറ്റർ കാണാൻ കഴിയുന്ന ഫയലുകൾ വായിക്കാനും അപ്ലോഡ് ചെയ്യാനും ഏജന്റുകളെ അനുവദിക്കുന്നു.
- അപ്ലോഡ് ഘട്ടം ഒരു മനുഷ്യന് വിട്ടുകൊടുക്കുക. ഒരു ദുർബലമായ പരിഹാരം നിർമ്മിക്കാൻ മണിക്കൂറുകൾ ചെലവഴിക്കുന്നതിനേക്കാൾ നല്ലത് രണ്ട് മിനിറ്റ് കൊണ്ട് ചെയ്യാവുന്ന ഒരു മാനുവൽ പ്രക്രിയയാണ്.
ആദ്യത്തെ രണ്ട് ഓപ്ഷനുകൾ തിരഞ്ഞെടുക്കുന്നത് ഓട്ടോമേഷൻ Desktop App-ന് പുറത്ത് പ്രവർത്തിപ്പിക്കുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്.
ചുരുക്കത്തിൽ
Claude AI ഏജന്റുകളിലെ ഫയൽ അപ്ലോഡ് ശേഷി എല്ലാ റൺടൈമുകളിലും ഒരുപോലെയല്ല; അത് ഏജന്റ് എങ്ങനെ ലോഞ്ച് ചെയ്യുന്നു എന്നതിനെ ആശ്രയിച്ചിരിക്കുന്നു. വിശ്വസനീയമായ ഓട്ടോമേഷനായി, ഫയൽ-സിസ്റ്റം പെർമിഷനുകൾ കൃത്യമായി പാലിക്കുന്ന ഏക എൻവയോൺമെന്റുകളായി CLI-യെയും VS Code extension-നെയും പരിഗണിക്കുക. Desktop App ഉപയോഗിക്കുമ്പോൾ, ഒരു മാനുവൽ കൈമാറ്റത്തിനായി (manual hand-off) തയ്യാറെടുക്കുകയോ അല്ലെങ്കിൽ ഒരു ദുർബലമായ ക്ലിപ്പ്ബോർഡ് ഹാക്ക് സ്വീകരിക്കുകയോ ചെയ്യുക. ഈ വ്യത്യാസം അവഗണിക്കുന്നത് ഒരു സുഗമമായ എൻഡ്-ടു-എൻഡ് സ്ക്രിപ്റ്റിനെ വലിയ ചിലവുള്ള ഒരു ഡീബഗ്ഗിംഗ് പ്രക്രിയയാക്കി മാറ്റിയേക്കാം.
