Suporte a Java no Maguyva: Inteligência de Código para Repositórios Corporativos
Útil quando o repositório está repleto de serviços Spring, frameworks internos e código que sobreviveu a várias eras organizacionais.
Extensões
.java
O Maguyva oferece suporte a Scala com AST, símbolos e grafo, para que agentes de IA sigam traits, objects, case classes e chamadas tipadas em código JVM e Spark.
Em Scala, um nome carrega muita coisa. Um trait, seu companion object e uma case class podem compartilhar um mesmo conceito. O pattern matching vincula novos nomes dentro de cláusulas case, e um método chamado sem receiver dentro de uma classe é uma chamada em this. Um agente que lê um arquivo por vez vê os nomes, mas não o que eles resolvem.
O Maguyva resolve mais disso na indexação, para que um agente possa perguntar quem chama um método e receber uma resposta com a qual consiga agir.
O Maguyva cobre arquivos .scala e .sc. Classes, objects e traits são extraídos como tipos, e o preset functions do structural_search cobre declarações e definições def, além de lambdas. As assinaturas registram parâmetros repetidos (*), e os imports perdem o prefixo _root_.
As relações de chamada mantêm nomes qualificados pela classe, e uma chamada sem receiver dentro de uma classe é resolvida para o próprio método dessa classe. A tipagem de receivers segue parâmetros, parâmetros de classe, definições val e var, patterns tipados e de case class dentro de cláusulas case, os tipos de retorno de métodos de classes, objects e traits, aliases de tipo e cláusulas extends. new em um tipo com inicial maiúscula conta como instanciação.
Nenhum tipo de relação está marcado como não aplicável para Scala, então o grafo também registra herança, overrides, referências de tipo, leituras e escritas, fluxo de controle e arestas de exceção.
PaymentService.capture, e de quais rotas?” (find_symbol, depois dependency_search incoming)EventHandler?” (dependency_search)get_task_context)map, flatMap e foldLeft, mais helpers de Option, Either, Try, Future e Predef. Uma chamada em this, ou em um valor cujo tipo resolve para uma das suas classes, é mantida mesmo quando o nome está nessa lista. Use text_pattern_search se ainda parecer faltar um chamador.A, F e CC, e tipos raiz como Any, Unit e Nothing, são filtrados das referências de tipo.Conecte um repositório pelo início rápido e depois confira a matriz de suporte na página de compatibilidade. Para bases de código JVM mistas, leia também o guia de Java e o guia de Kotlin.
Uso ideal
Fluxos de trabalho de agente
Detalhes do motor
Pontos de entrada MCP úteis
Use para um trait, um object ou um método de serviço quando precisar da definição e das referências.
Use a travessia incoming em um trait ou método para ver implementações e chamadores antes de mudar uma assinatura.
Use para prompts como "rastreie como um evento de pedido chega ao gravador do razão contábil".
Guias relacionados
Útil quando o repositório está repleto de serviços Spring, frameworks internos e código que sobreviveu a várias eras organizacionais.
Extensões
.java
Kotlin esconde muita fiação em receivers e lambdas. O grafo traz tudo de volta.
Extensões
.kt, .kts