Поддержка 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 вокруг тестов и историй (stories). Префиксы членов нормализуются, но идентификаторы, квалифицированные классом, сохраняются — это помогает, когда в репозитории есть и голое имя хелпера, и метод в области видимости класса с тем же конечным сегментом.
JSX трактуется как настоящий структурный сигнал, а не случайная разметка, а ожидания по символам явно пропускают многие пути тестов, историй и конфигурации. Это важно в монорепозиториях, потому что иначе агент тратит слишком много времени на повторное обнаружение вспомогательных конструкций вместо реальной поверхности реализации.
Обычно достаточно трёх стартовых паттернов:
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