A JetBrains Research acaba de abrir o código do KotlinLLM, um plugin experimental para IntelliJ IDEA que introduz um conceito novo no ecossistema Kotlin/JVM: as Smart macros — funções cujo corpo é gerado por LLM em tempo de execução e, uma vez estabilizado, vira código Kotlin comum, sem dependência do modelo.
Como funcionam as Smart macros
A API pública é mínima. São apenas duas funções:
asLlm<F, T>(from, hint)— converte uma entrada de tipoFem um valor tipadoT(data class, enum, lista ou primitivo).mockLlm<T>()— gera uma implementação com estado de uma interfaceT, cujo comportamento depende de quais métodos são chamados sobre ela.
Quando o projeto é executado pela configuração de run do KotlinLLM, o plugin escaneia as chamadas asLlm e mockLlm, atualiza arquivos de bootstrap/provider/parser/mock gerados, e registra breakpoints em hooks de regeneração. Se a lógica gerada não corresponde ao cenário de execução, o código atinge um hook. O plugin então captura valores de runtime e informações de tipo do frame suspenso, o agente LLM envia uma atualização de código, e o plugin compila e redefine a classe carregada via JDI antes de tentar novamente.
O alvo é exclusivamente Kotlin/JVM porque o loop de evolução depende de redefinição de classes via Java Debug Interface (JDI).
Resultados reportados
Em uma adaptação do projeto Spring Petclinic em Kotlin com 18 pontos de chamada asLlm, 24 dos 24 cenários de aplicação foram completados após a evolução das Smart macros, com 100% de sucesso no hot-reload e sobrecarga de compilação/redefinição adicionando cerca de 1% do tempo total de execução. Um experimento sintético chamado “GitHub Beginner Issue Radar” analisou dados reais de issues em 20 repositórios e mais de 30 mil issues, atingindo aproximadamente 0,89 de recall nos rótulos de issues para iniciantes.
É production-ready?
Não como runtime de produção — pelo menos por enquanto. A JetBrains classifica o KotlinLLM como protótipo de pesquisa. Mas há uma distinção importante: o plugin é experimental, mas seu output é deployável. Uma vez que o comportamento foi gerado, o projeto compila e executa esse comportamento sem nenhuma chamada adicional ao LLM para o mesmo cenário. Você entrega Kotlin puro, não uma dependência de modelo.
Os melhores casos de uso hoje estão em times de P&D, plataformas Kotlin/JVM de médio a grande porte, e startups com tolerância a ferramentas em estágio de protótipo. Indústrias como fintech e banking (grandes bases Kotlin/JVM), e-commerce, logística e qualquer time que lida com APIs de terceiros com payloads semiestruturados encontram aplicação imediata.
Requisitos e licença
O plugin exige IntelliJ IDEA 2025.2.x, JDK 21 e uma chave de API da OpenAI armazenada no arquivo .kotlinllm do projeto. Está sob Apache License 2.0, com exemplos executáveis, a tese acadêmica e a gravação da palestra na KotlinConf 2026 disponíveis no repositório.
Por que isso importa
O KotlinLLM não é mais um gerador de código estático. Ele propõe um modelo em que o LLM atua como compilador de intenção durante o desenvolvimento: você expressa o que quer em tipos e hints, e o modelo preenche a implementação. Depois de revisado e commitado, o código roda como qualquer outro fonte Kotlin — sem latência de API, sem custo de inferência e sem dependência externa. É uma ponte entre “gerar código com IA” e “código que vai para produção”, com o controle humano no meio do caminho.
Descubra mais sobre noticiAI
Assine para receber nossas notícias mais recentes por e-mail.



