सामग्री पर जाएँ
cd /languages
मोनोरेपो डिफ़ॉल्टप्रोग्रामिंगपूर्ण ग्राफ़ सपोर्ट

Maguyva में TypeScript सपोर्ट: मोनोरेपो के लिए बेहतर कॉन्टेक्स्ट

Maguyva, AST पार्सिंग और सिंबल एक्सट्रैक्शन के साथ TypeScript को सपोर्ट करता है, ताकि AI एजेंट मोनोरेपो में इंटरफ़ेस, इम्प्लीमेंटेशन, साझा पैकेज, और JSX-भारी एप्लिकेशन कोड को ट्रेस कर सकें।

TypeScript पेज क्यों मायने रखते हैं

TypeScript वह भाषा है जहां बहुत सी टीमें उम्मीद करती हैं कि AI-सहायता प्राप्त रीफ़ैक्टरिंग आख़िरकार सुरक्षित महसूस होगी। टाइप सिस्टम मदद करता है, लेकिन यह असली समस्या को दूर नहीं करता: साझा पैकेज, DTO, जनरेट किए गए क्लाइंट, React कंपोनेंट, टेस्ट, और ऐप कोड — ये सब एक बड़ी रिपॉज़िटरी में एक ही नामों को खींचते रहते हैं।

TypeScript के लिए, मानदंड “यह सिंटैक्स समझता है” से कहीं ऊंचा है। एजेंट को किसी साझा टाइप, hook, या क्लाइंट को एडिट करने से पहले कॉन्ट्रैक्ट को परिभाषा से इम्प्लीमेंटेशन से इम्पैक्ट रेडियस तक फ़ॉलो करना ज़रूरी है।

Maguyva वास्तव में TypeScript में क्या एक्सट्रैक्ट करता है

Maguyva, .ts, .mts, .cts, और टेस्ट व स्टोरी से जुड़े आम TypeScript फ़ाइल वेरिएंट में क्लासेज़, मेथड, इंटरफ़ेस, और टाइप एलियास एक्सट्रैक्ट करता है। मेंबर प्रीफ़िक्स नॉर्मलाइज़ किए जाते हैं, लेकिन क्लास-क्वालिफ़ाइड आइडेंटिफ़ायर सुरक्षित रखे जाते हैं, जो तब मदद करता है जब किसी रिपॉज़िटरी में एक बेयर हेल्पर नाम और एक क्लास-स्कोप्ड मेथड दोनों का अंतिम सेगमेंट एक जैसा हो।

JSX को इधर-उधर पड़े मार्कअप के बजाय एक असली संरचनात्मक सिग्नल माना जाता है, और सिंबल अपेक्षाएं स्पष्ट रूप से बहुत सारे टेस्ट, स्टोरी, और कॉन्फ़िग पथों को छोड़ देती हैं। यह मोनोरेपो में मायने रखता है क्योंकि अन्यथा एजेंट असली इम्प्लीमेंटेशन सरफ़ेस के बजाय स्कैफ़ोल्डिंग को दोबारा खोजने में बहुत ज़्यादा समय बिताता है।

TypeScript रिपॉज़िटरी के लिए उपयोगी MCP वर्कफ़्लो

तीन शुरुआती पैटर्न आमतौर पर काफ़ी होते हैं:

  • जब आप पहले से इंटरफ़ेस, टाइप एलियास, hook, या सर्विस का नाम जानते हों, तो find_symbol का उपयोग करें।
  • साझा टाइप या क्लाइंट को बदलने से पहले, जो कई पैकेज में फैल सकते हैं, dependency_search का उपयोग करें।
  • जब आपको कीवर्ड मैच नहीं, बल्कि कोड आकार चाहिए हो, उदाहरण के लिए दोहराए गए कंपोनेंट या मेथड पैटर्न, तो structural_search का उपयोग करें।

“चेकआउट सबमिशन path को फ़ॉलो करें” जैसे वैचारिक सवालों के लिए, get_task_context अक्सर कच्चे सर्च से बेहतर पहला कदम होता है।

यह पेज सबसे ज़्यादा प्रासंगिक कहां है

यह पेज उन वेब और प्लेटफ़ॉर्म मोनोरेपो के लिए सबसे मज़बूत है जहां TypeScript कई पैकेज के लिए समन्वय लेयर है। अगर आपकी रिपॉज़िटरी में अब भी बहुत सारा पुराना JS शामिल है, तो JavaScript मार्गदर्शिका पढ़ें। अगर आपका सवाल वास्तव में यह है कि “क्या एजेंट ऐप कोड और इन्फ़्रा कॉन्टेक्स्ट को साथ रख सकता है?” तो इसे Terraform के साथ जोड़ें।

सबसे उपयुक्त

  • >प्रोडक्ट और प्लेटफ़ॉर्म टीमें जो एक ही TypeScript रिपॉज़िटरी के भीतर Next.js, Node सर्विसेज़, साझा पैकेज, और टूलिंग चलाती हैं।
  • >ऐसे रिपॉज़िटरी जहां इंटरफ़ेस, DTO, स्कीमा, और React कंपोनेंट साथ-साथ बदलते हैं, लेकिन अलग-अलग डायरेक्टरी में रहते हैं।
  • >वे टीमें जो साझा टाइप या पैकेज सीमाओं को छूने से पहले AI एजेंट को सुरक्षित कॉन्टेक्स्ट देने की कोशिश करती हैं।

एजेंट वर्कफ़्लो

  • >किसी टाइप, इंटरफ़ेस, या कंपोनेंट को उसकी परिभाषा से लेकर उन कोड पथों तक फ़ॉलो करें जो वास्तव में उसका उपयोग करते हैं।
  • >किसी साझा हेल्पर या API कॉन्ट्रैक्ट को बदलने से पहले पैकेज में इम्प्लीमेंटेशन की तुलना करें।
  • >किसी साझा टाइप, यूटिलिटी, या सर्विस मॉड्यूल को एडिट करने के संभावित ब्लास्ट रेडियस का मानचित्रण करें।

इंजन विवरण

  • >TypeScript हर चीज़ को सामान्य सिंबल में समतल करने के बजाय क्लास, मेथड, इंटरफ़ेस, और टाइप एलियास एक्सट्रैक्ट करता है।
  • >मेंबर प्रीफ़िक्स हटा दिए जाते हैं, लेकिन क्लास-क्वालिफ़ाइड आइडेंटिफ़ायर सुरक्षित रहते हैं, जिससे `CheckoutService.create` को एक अकेले `create` से अलग पहचानने में मदद मिलती है।
  • >JSX एलिमेंट को इंस्टैंशिएशन के रूप में गिना जाता है, और नॉइज़ कम करने के लिए test/story/config पाथ को सिंबल एक्सपेक्टेशन में स्पष्ट रूप से छोड़ दिया जाता है।

उपयोगी MCP एंट्री पॉइंट

  • find_symbol

    जब आपको पता हो कि आप किस साझा इंटरफ़ेस, टाइप एलियास, हुक, या सर्विस को देखना चाहते हैं, तब यहीं से शुरू करें।

  • dependency_search

    पैकेजों में एक यथार्थवादी इम्पैक्ट रेडियस पाने के लिए किसी साझा DTO या क्लाइंट को बदलने से पहले इसका इस्तेमाल करें।

  • structural_search

    जब आपको स्ट्रिंग मैच नहीं बल्कि एक पैटर्न चाहिए हो, जैसे दोहराए गए कंपोनेंट या मेथड शेप, तब AST-लेवल सर्च का इस्तेमाल करें।

संबंधित गाइड

सटे हुए रिपॉज़िटरी क्षेत्र

सभी गाइड ब्राउज़ करें