Підтримка JavaScript у Maguyva: AI-пошук для репозиторіїв зі змішаним середовищем виконання
Корисно, коли репозиторій поєднує CommonJS, ESM, скрипти задач, тести та старіший код застосунку.
Розширення
.cjs, .js, .mjs, .spec.js, +2 ще
Maguyva підтримує TypeScript з розбором AST та вилученням символів, щоб AI-агенти могли простежувати інтерфейси, реалізації, спільні пакети та насичений JSX код застосунків у монорепозиторіях.
TypeScript — мова, де багато команд очікують, що рефакторинг за допомогою AI нарешті відчуватиметься безпечним. Система типів допомагає, але не усуває реальну проблему: спільні пакети, DTO, згенеровані клієнти, компоненти React, тести та код застосунку — усе це тягне за одні й ті самі назви у великому репозиторії.
Для TypeScript стандарт вищий за просте «розуміє синтаксис». Агент має простежити контракт від визначення через реалізацію до радіуса впливу, перш ніж редагувати спільний тип, хук чи клієнт.
Maguyva вилучає класи, методи, інтерфейси та псевдоніми типів у межах .ts, .mts, .cts та поширених варіантів файлів TypeScript навколо тестів і story-файлів. Префікси членів нормалізуються, але кваліфіковані класом ідентифікатори зберігаються, що допомагає, коли в репозиторії є і гола назва хелпера, і метод у межах класу з тим самим кінцевим сегментом.
JSX трактується як справжній структурний сигнал, а не випадкова розмітка, а очікування щодо символів явно пропускають чимало шляхів тестів, story-файлів та конфігурації. Це важливо в монорепозиторіях, бо інакше агент витрачає забагато часу на повторне відкриття допоміжної структури замість реальної поверхні реалізації.
Зазвичай достатньо трьох початкових патернів:
find_symbol, коли ви вже знаєте назву інтерфейсу, псевдоніма типу, хука чи сервісу.dependency_search перед зміною спільних типів чи клієнтів, які можуть розгалужуватися по пакетах.structural_search, коли вам потрібна форма коду, а не збіг ключових слів, наприклад повторювані патерни компонентів чи методів.Для концептуальних запитань на кшталт «простеж шлях відправлення оформлення замовлення» get_task_context часто є кращим першим кроком, ніж звичайний пошук.
Ця сторінка найкорисніша для веб- та платформних монорепозиторіїв, де TypeScript — координаційний шар для кількох пакетів. Якщо ваш репозиторій усе ще включає багато старішого JS, прочитайте посібник з JavaScript. Якщо ваше питання насправді таке: «чи може агент утримувати разом код застосунку та інфраструктурний контекст?» — поєднайте це з Terraform.
Найкраще підходить
Робочі процеси агента
Деталі рушія
Корисні точки входу MCP
find_symbol
Почніть тут, якщо знаєте спільний інтерфейс, псевдонім типу, хук чи сервіс, який хочете дослідити.
dependency_search
Використовуйте перед зміною спільного DTO чи клієнта, щоб отримати реалістичний радіус впливу між пакетами.
structural_search
Використовуйте пошук на рівні AST, коли потрібен патерн, а не збіг рядка — наприклад, повторювані форми компонентів чи методів.
Пов'язані гайди
Корисно, коли репозиторій поєднує CommonJS, ESM, скрипти задач, тести та старіший код застосунку.
Розширення
.cjs, .js, .mjs, .spec.js, +2 ще
Корисно, коли інфраструктурний код є частиною контексту репозиторію, а не тим, що агент має легковажно оминати.
Розширення
.tf, .tfvars