# Maguyva में Terraform सपोर्ट: AI एजेंट के लिए इन्फ़्रास्ट्रक्चर कॉन्टेक्स्ट

Canonical source: https://maguyva.ai/hi/languages/terraform

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Maguyva, AST पार्सिंग और सिंबल एक्सट्रैक्शन के साथ Terraform को सपोर्ट करता है, ताकि AI एजेंट बदलाव सुझाने से पहले मॉड्यूल, locals, वेरिएबल, रिसोर्स रेफ़रेंस, और डायनैमिक इन्फ़्रास्ट्रक्चर पैटर्न को ट्रेस कर सकें।

## सपोर्ट स्नैपशॉट

- टियर: AST और सिंबल सपोर्ट
- इंफ्रास्ट्रक्चर
- एक्सटेंशन: .tf, .tfvars
- सिंटैक्स-अवेयर सर्च और स्ट्रक्चरल कॉन्टेक्स्ट के लिए असली AST पार्सिंग।
- नामित सिंबल सिमेंटिक लुकअप और क्रॉस-रेफ़रेंस को फ़ीड करते हैं। रिलेशनशिप एक्सट्रैक्शन सक्षम होने पर ग्राफ़ नेविगेशन उपलब्ध होता है।
- यह भाषा सर्च के लिए इंडेक्स की जाती है, लेकिन अभी कोड ग्राफ़ में पर्सिस्ट नहीं की जाती।
- AST पार्सिंग और सिंबल एक्सट्रैक्शन, दोनों उपलब्ध हैं।

## सबसे उपयुक्त

- प्लेटफ़ॉर्म टीमें जो पुनः उपयोग योग्य Terraform मॉड्यूल, एनवायरनमेंट फ़ोल्डर, और साझा इन्फ़्रास्ट्रक्चर पैटर्न प्रबंधित करती हैं।
- ऐसे रिपॉज़िटरी जहां ऐप कोड में बदलाव अक्सर संबंधित इन्फ़्रास्ट्रक्चर एडिट या इम्पैक्ट समीक्षा की मांग करते हैं।
- एजेंट वर्कफ़्लो जिन्हें इन्फ़्रास्ट्रक्चर परिभाषाओं को छूने से पहले रेफ़रेंस और ब्लास्ट रेडियस को समझना ज़रूरी है।

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

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

## Terraform को रिपॉज़िटरी-स्तरीय कॉन्टेक्स्ट की ज़रूरत क्यों है

इन्फ़्रास्ट्रक्चर कोड वह जगह है जहां बहुत सारी AI टूलिंग चुपचाप सतही टेक्स्ट हैंडलिंग पर वापस लौट जाती है। यह पर्याप्त नहीं है। Terraform बदलाव आमतौर पर संवेदनशील, रेफ़रेंस-भारी होते हैं, और मॉड्यूल, locals, वेरिएबल, डेटा सोर्स, और एनवायरनमेंट-विशिष्ट फ़ोल्डर में फैले होते हैं। मुश्किल हिस्सा यह समझना है कि बदलाव करने से पहले कॉन्फ़िगरेशन आपस में कैसे जुड़ा है।

यही वजह है कि Terraform सपोर्ट मायने रखता है, भले ही आपका मुख्य एप्लिकेशन कोड कहीं और रहता हो। अगर रिपॉज़िटरी में इन्फ़्रास्ट्रक्चर कोड है, तो एजेंट को उसे उसी सिस्टम के हिस्से के रूप में देखने की ज़रूरत है, न कि किसी अटैचमेंट के रूप में जिसके बारे में उसे अंदाज़ा लगाना पड़े।

## Maguyva Terraform में एजेंट को क्या समझने में मदद करता है

Maguyva, Terraform को संरचनात्मक रूप से सपोर्ट करता है, जो मॉड्यूल रेफ़रेंस, वेरिएबल फ़्लो, और रिसोर्स रिलेशनशिप का अनुसरण करने के लिए उपयोगी आधार है। यह और भी ज़्यादा मायने रखता है जब कोड `count`, `for_each`, डायनैमिक ब्लॉक, और साझा मॉड्यूल का उपयोग करता है, जो वास्तविक प्लान की संरचना को एक त्वरित नज़र से समझना मुश्किल बना देते हैं।

व्यावहारिक फ़ायदा यह है कि एजेंट रिपॉज़िटरी-स्तरीय सवालों का जवाब दे सकता है जैसे "यह मॉड्यूल कहां-कहां पुनः उपयोग होता है?", "इस वेरिएबल पर क्या निर्भर करता है?", या "कौन-से एनवायरनमेंट फ़ोल्डर पैटर्न से हटकर हैं?" — इससे पहले कि वह कोई बदलाव प्रस्तावित करे।

## यह Maguyva के लैंग्वेज कवरेज के बारे में क्या साबित करता है

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

अगर आपका इन्फ़्रास्ट्रक्चर सर्विस कोड के साथ मौजूद है, तो [Go मार्गदर्शिका](/hi/languages/go) सबसे नज़दीकी बैकएंड जोड़ी है। अगर उसी रिपॉज़िटरी में वेब या प्लेटफ़ॉर्म पैकेज भी शामिल हैं, तो [TypeScript मार्गदर्शिका](/hi/languages/typescript) प्रासंगिक साथी पेज है।

## यह पेज कब उपयोगी है

इस पेज का उपयोग करें अगर सवाल यह है कि "क्या एजेंट इन्फ़्रास्ट्रक्चर कॉन्टेक्स्ट भी बनाए रख सकता है?" यह अकेले एप्लिकेशन भाषाओं के बारे में पूछने से ज़्यादा यथार्थवादी सवाल है। सिर्फ़ सपोर्ट मैट्रिक्स के लिए, [अनुकूलता](/hi/docs/compatibility) का उपयोग करें।

## इंजन विवरण

- इम्पोर्ट नॉर्मलाइज़ेशन `module` और `source` हटा देता है, जिससे मॉड्यूल-स्तर के रेफ़रेंस की तुलना करना आसान हो जाता है।
- Terraform के भाषा नियम रिलेशनशिप एक्सट्रैक्शन के लिए `var`, `local`, `module`, `data`, और रिसोर्स रेफ़रेंस को पहचानते हैं, लेकिन मौजूदा ग्राफ़ पॉलिसी उन्हें Maguyva के कोड ग्राफ़ में पर्सिस्ट नहीं करती।
- `count`, `for_each`, और डायनामिक ब्लॉक जैसे Terraform-विशिष्ट कंट्रोल फ़्लो को सादे टेक्स्ट के बजाय फ़र्स्ट-क्लास संरचना माना जाता है।

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

- `get_task_context`: जब आपको तेज़ी से एक जोड़ा हुआ जवाब चाहिए हो, तो 'VPC मॉड्यूल का आउटपुट ECS सेवा तक कैसे पहुँचता है, इसे ट्रेस करें' जैसे प्रॉम्प्ट के लिए इसका इस्तेमाल करें।
- `text_pattern_search`: विश्लेषण को व्यापक बनाने से पहले रिसोर्स एड्रेस, मॉड्यूल नाम, या वेरिएबल कुंजियों के लिए सटीक टेक्स्ट का इस्तेमाल करें।
