C v Maguyva: grafy volání pro systémový a vestavěný kód
V C je graf volání architekturou. Agent by si ho měl přečíst dřív, než začne upravovat.
Přípony
.c, .h
Maguyva podporuje Lua s AST, symboly a grafem, takže AI agenti sledují moduly, metody s dvojtečkou, třídy z metatabulek a řetězce require v kódu Lua.
Lua nemá klíčové slovo pro třídy. Objekty jsou tabulky, metody jsou funkce v nich uložené a dědičnost je volání setmetatable. Modul je cokoli, co vrátí require. Struktura je skutečná, ale žije v konvencích, kterým textové vyhledávání nerozumí.
Maguyva tyto konvence čte jako strukturu, takže se agent může zeptat, kdo volá metodu nebo které tabulky rozšiřují základ, a dostane přímou odpověď.
Maguyva pokrývá soubory .lua. Extrahují se deklarace funkcí, definice local function a funkční výrazy a metody s dvojtečkou jako function Account:deposit() se přiřazují tabulce, které patří, tedy Account. Řetězce metod se sledují volání po volání a volání na self zůstávají vázaná na obklopující objekt.
Konvence Lua se převádějí na relace takto:
require, dofile a loadfile zaznamenávají importy.setmetatable na úrovni modulu zaznamenává dědičnost.ClassName:new(), ClassName.new() a setmetatable({...}, ClassName) se počítají jako vytvoření instance.error() zaznamenává vyhození chyby a pcall a xpcall její zachycení.Graf zaznamenává také čtení a zápisy a tok řízení.
Inventory:addItem a z kterých skriptů?“ (find_symbol, pak dependency_search incoming)util.http přes require?“ (dependency_search)get_task_context)string, table, math, io, os, coroutine, debug a utf8) a k tomu API Neovimu vim.* a API OpenResty ngx.*. Volání těchto API nejsou hranami grafu, proto je hledejte pomocí text_pattern_search.classes a imports v structural_search pro Lua nic nevyberou. Použijte místo nich find_symbol nebo text_pattern_search.Připojte repozitář podle rychlého startu a pak si prohlédněte matici podpory na stránce kompatibility. U enginů, které vkládají Lua do nativního kódu, si přečtěte i průvodce jazykem C.
Nejlépe se hodí pro
Workflow agentů
Podrobnosti enginu
Užitečné vstupní body MCP
Použijte ho pro funkci modulu nebo metodu s dvojtečkou, když potřebujete definici a volající.
Použijte incoming procházení na sdíleném modulu, abyste před přesunem viděli, které soubory ho načítají přes require.
Použijte ho pro volání `vim.*`, `ngx.*` nebo standardní knihovny, která se z grafu odfiltrují.
Související průvodci
V C je graf volání architekturou. Agent by si ho měl přečíst dřív, než začne upravovat.
Přípony
.c, .h
Užitečné, když se codebase v jazyce Python rozlévá napříč službami, skripty, type stuby a kódem, který propojuje provozní části systému.
Přípony
.py, .pyi, .pyw