એક ડેવલપરે શોધી કાઢ્યું કે એક છુપાયેલ npx લુકઅપ દરેક Claude Code ટર્નમાં અંદાજે 10 સેકન્ડ ઉમેરી રહ્યું હતું, અને લુકઅપને બદલે ગ્લોબલ ઇન્સ્ટોલેશનનો ઉપયોગ કરવાથી દરેક ઇન્ટરેક્શનમાં છ સેકન્ડનો ઘટાડો થયો.

લેટન્સી (Latency) શા માટે મહત્વની હતી

Claude Code ડઝનબંધ ઘટકો ધરાવતા monorepo માં નેવિગેટ કરે છે, symbols ઇન્ડેક્સ કરે છે, Postgres માં ટ્રાન્સક્રિપ્ટ્સ સાચવે છે અને એરર રિપોર્ટ્સ મોકલે છે. જ્યાં સુધી મોડેલના જવાબો મોડા પડવા ન લાગે ત્યાં સુધી વર્કફ્લો સ્મૂધ લાગે છે. ત્યારબાદ એક હેલ્થ ચેકે કેટલીક અક્ષમતાઓ અને એક ખર્ચાળ નેટવર્ક કોલને ખુલ્લો પાડ્યો.

હેલ્થ ચેકમાં શું બહાર આવ્યું

  • ડુપ્લીકેટ ઇન્સ્ટોલેશન – એક નેટિવ લોન્ચર અને એક જૂનું npm-global વર્ઝન સાથે અસ્તિત્વમાં હતા. જૂની કોપી દૂર કરવાથી બિનજરૂરી પાથ લુકઅપ દૂર થયું.
  • બ્રોકન એજન્ટ ફાઇલ – વર્ણન વગરની એક ફાઇલે માન્ય ફાઇલનું નામ ડુપ્લીકેટ કર્યું હતું, જેના કારણે Claude Code તેને અવગણી રહ્યું હતું. બ્રોકન એન્ટ્રી ડિલીટ કરવાથી મૂંઝવણ દૂર થઈ ગઈ.
  • બિનઉપયોગી એક્સ્ટેન્શન – એક પ્લગઇન અને એક MCP સર્વર જે ક્યારેય ચાલતા નહોતા તેને ડિસેબલ કરવામાં આવ્યા, જેનાથી રનટાઇમ ફૂટપ્રિન્ટ ઘટી.
  • ભારે “CLAUDE.md” ફાઇલો – આ ફાઇલોમાં કોડમાં પહેલેથી જ હાજર માહિતી (દા.ત., બિલ્ડ કમાન્ડ્સ) ફરીથી લખેલી હતી, જેનાથી મોડેલને મોકલવામાં આવતા પેલોડનું કદ વધી જતું હતું. તેને ઘટાડવાથી માત્ર આવશ્યક સંદર્ભ (context) જ રહ્યો.

આ ક્લીન-અપથી મદદ મળી, પરંતુ સૌથી મોટો ફાયદો Stop hook માંથી થયો જે દરેક મોડેલ પ્રતિસાદ પછી ચાલે છે.

છુપાયેલ npx ટેક્સ

Stop hook છ અલગ-અલગ કમાન્ડ્સ એક્ઝિક્યુટ કરે છે, જેમાં દરેકની આગળ npx -y લાગેલું હોય છે. -y ફ્લેગ npx ને કમાન્ડ ચલાવતા પહેલા npm registry માં નવા વર્ઝન માટે તપાસ કરવા મજબૂર કરે છે, જેનાથી નેટવર્ક રિક્વેસ્ટ ટ્રિગર થાય છે. દરેક લુકઅપ સરેરાશ 1.6 સેકન્ડ લેતું હતું, તેથી છ કોલ્સ દરેક ટર્નમાં અંદાજે 10 સેકન્ડ ઉમેરતા હતા. વ્યવહારમાં, હૂકની એકંદર લેટન્સી 12 સેકન્ડ હતી, અને નેટવર્કમાં ખલેલ પડતી વખતે ક્યારેક તે 113 સેકન્ડ સુધી વધી જતી હતી.

સરળ ઉકેલ

npx કોલ્સને ગ્લોબલી ઇન્સ્ટોલ કરેલા બાઈનરી (binary) સાથે બદલવાથી રજિસ્ટ્રી લુકઅપ દૂર થઈ ગયું:

  • પહેલા: npx -y @invariance/gps → પ્રતિ કોલ 1.6 સેકન્ડ
  • પછી: gps (ગ્લોબલી ઇન્સ્ટોલ કરેલું) → પ્રતિ કોલ 0.7 સેકન્ડ

આ ફેરફારથી Stop hook ના રનટાઇમમાં પ્રતિ ટર્ન અંદાજે 6 સેકન્ડનો ઘટાડો થયો અને રિમોટ ચેકને કારણે આવતા મોટા સ્પાઇક્સ (spikes) દૂર થયા.

આગળ શું ધ્યાન રાખવું

  • Hook timing – યુઝર્સને નુકસાન થાય તે પહેલાં લેટન્સી જાણવા માટે કોઈપણ કસ્ટમ હૂક્સનું ઇન્સ્ટ્રુમેન્ટ (instrument) કરો.
  • Dependency hygiene – ડુપ્લીકેટ ઇન્સ્ટોલેશન અને બિનઉપયોગી એક્સ્ટેન્શનને નિયમિતપણે દૂર કરો.
  • Configuration files – “CLAUDE.md” ને લિન (lean) રાખો; માત્ર એવી જ માહિતી આપો જે મોડેલ જાતે અનુમાનિત (infer) ન કરી શકે.

બોધપાઠ સરળ છે: ઓટોમેશન ખર્ચાળ પ્લમ્બિંગ (plumbing) ને છુપાવી શકે છે. એક ઝડપી હેલ્થ ચેક એવા છુપાયેલા નેટવર્ક કોલ્સને ખુલ્લો પાડી શકે છે જે એક સ્મૂધ AI આસિસ્ટન્ટને ધીમો બનાવી દે છે.

મુખ્ય વાત (Takeaway): જ્યારે Claude Code ધીમું લાગે, ત્યારે હૂક્સનો સમય માપો અને કોઈપણ npx લુકઅપ દૂર કરો; ગ્લોબલ ઇન્સ્ટોલેશન દરેક ટર્નમાં સેકન્ડો બચાવી શકે છે અને તમારા ડેવલપમેન્ટ ફ્લોને સતત ચાલુ રાખી શકે છે.