# Podpora Terraformu v nástroji Maguyva: infrastrukturní kontext pro AI agenty

Canonical source: https://maguyva.ai/cs/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 podporuje Terraform díky AST parsování a extrakci symbolů, takže AI agenti dokážou vysledovat moduly, lokální hodnoty, vstupní proměnné, odkazy na zdroje a dynamické infrastrukturní vzory ještě před návrhem změny.

## Přehled podpory

- Úroveň: Podpora AST a symbolů
- Infrastruktura
- Přípony: .tf, .tfvars
- Skutečné parsování AST pro vyhledávání citlivé na syntaxi a strukturální kontext.
- Pojmenované symboly napájejí sémantické vyhledávání a křížové odkazy. Navigace v grafu je k dispozici, když je povolena extrakce vztahů.
- Tento jazyk je indexován pro vyhledávání, ale v současnosti se neukládá do grafu kódu.
- K dispozici je parsování AST i extrakce symbolů.

## Nejlépe se hodí pro

- Platformní týmy spravující znovupoužitelné moduly Terraformu, prostředí ve složkách a sdílené infrastrukturní vzory.
- Repozitáře, kde úpravy aplikačního kódu často vyžadují odpovídající infrastrukturní úpravy nebo review dopadu.
- Workflow agentů, které potřebují pochopit odkazy a rozsah dopadu ještě před úpravou definic infrastruktury.

## Workflow agentů

- Vysledovat, jak jsou propojené vstupní proměnné, lokální hodnoty, moduly a zdroje, ještě před úpravou plánu.
- Porovnat varianty prostředí a použití modulů, aby změny zůstaly konzistentní.
- Prozkoumat pravděpodobný dopad na navazující části dřív, než agent navrhne infrastrukturní úpravu.

## Proč Terraform potřebuje kontext na úrovni repozitáře

Infrastrukturní kód je místo, kde spousta AI nástrojů potichu sklouzne k povrchnímu zpracování textu. To nestačí. Změny v Terraformu bývají citlivé, plné odkazů a rozprostřené přes moduly, lokální hodnoty, vstupní proměnné, datové zdroje a složky specifické pro prostředí. Tím těžkým je pochopit, jak konfigurace drží pohromadě, ještě předtím, než ji změníte.

Proto na podpoře Terraformu záleží, i když váš hlavní aplikační kód žije jinde. Pokud repozitář obsahuje infrastrukturní kód, agent ho musí vidět jako součást stejného systému, ne jako přílohu, o které má jen hádat.

## Čemu Maguyva pomáhá agentům porozumět v Terraformu

Maguyva podporuje Terraform strukturálně, což je užitečný základ pro sledování odkazů na moduly, toků proměnných a vztahů mezi zdroji. Na tom záleží ještě víc ve chvíli, kdy kód používá `count`, `for_each`, dynamické bloky a sdílené moduly, které ztěžují rychlé odhadnutí skutečného tvaru plánu.

Praktickým přínosem je, že agent dokáže zodpovědět otázky na úrovni repozitáře, jako „kde se tento modul znovu používá?“, „co závisí na této proměnné?“ nebo „které složky prostředí se odchylují od vzoru?“, ještě před tím, než navrhne změnu.

## Co to vypovídá o jazykovém pokrytí Maguyvy

Terraform je dobrý test toho, jestli je jazykové pokrytí opravdu k něčemu užitečné. Ukazuje, jestli Maguyva dokáže zacházet s aplikačním kódem, provozním kódem a infrastrukturou jako s jedním problémem na úrovni repozitáře místo oddělených ostrovů.

Pokud vaše infrastruktura sedí vedle servisního kódu, nejbližším souvisejícím textem o backendu je [průvodce Go](/cs/languages/go). Pokud stejný repozitář obsahuje webové nebo platformní balíčky, správnou sousední stránkou je [průvodce jazykem TypeScript](/cs/languages/typescript).

## Kdy je tato stránka užitečná

Použijte tuto stránku, pokud je otázka „dokáže agent udržet i infrastrukturní kontext?“. To je realističtější otázka než ptát se jen na aplikační jazyky. Úplnou matici najdete na stránce [kompatibility](/cs/docs/compatibility).

## Podrobnosti enginu

- Normalizace importů odstraňuje `module` a `source`, což usnadňuje porovnávání referencí na úrovni modulu.
- Pravidla jazyka Terraform rozpoznávají odkazy na `var`, `local`, `module`, `data` a prostředky pro extrakci vztahů, ale současná politika grafu je neukládá do kódového grafu Maguyva.
- Řízení toku specifické pro Terraform, jako `count`, `for_each` a dynamické bloky, se považuje za strukturu prvotřídní kategorie, ne za obyčejný text.

## Užitečné vstupní body MCP

- `get_task_context`: Použijte ho pro dotazy jako „sleduj, jak výstup modulu VPC vstupuje do služby ECS“, když potřebujete rychle odpověď propojující více souvislostí.
- `text_pattern_search`: Použijte přesný text pro adresy resource, názvy modulů nebo klíče proměnných, než analýzu rozšíříte.
