Executando verificação de segurança...
1

[PITCH] criando uma CLI para analisar e controlar padrões/convenções de código

Porque e de onde eu tire essa ideia de projeto?

Bom o nome do projeto é Duck, uma cli que analisa um diretório com arquivos de código ts/js e analisa seus padrões e convenções, por exemplo: Classes, Interfaces, Functions, FileNaming pattern para identificar se o projeto possui mais orientação a objetos, ou se é mais funcional, se ele apresenta muitas abstrações ou contratos com interfaces, convenções de nome de arquivos como camelCase etc e cria contratos para agentes de IA ou devs seguirem o padrão que o próprio código já está seguindo, forçando assim a IA escrever um código mais padronizado com o estilo de codificação que o projeto já está seguindo.

Fluxo que o duck segue

Recebe diretório -> Scann dos arquivos -> Load dos arquivos -> analise do AST do diretório -> Build de um modelo IR (Representação Intermediária) -> Analise do IR por uma LLM -> geração de contratos.

Basicamente quando o scann do arquivos faz uma varredura nos tipos de arquivos pegando somente arquivos ts/js, faz um file load lendo o conteudo dos arquivos e tamanho para não carregar arquivos maliciosos e muito pessados, logo em seguida carrega a ast do diretório e extrai informações importantes como quantidade de classes, funções, se funções são async-heavy, se classes usam contratos com interfaces ou herdam outra abstração, etc..., depois desse passo fazemos um build de um modelo intermediário com essas informações em formato JSON para uma llm analisar e gerar dois arquivos um .md em linguagem natural para humanos entenderam a padronização do projeto e outro em formato json para agentes interpretarem como contrato e seguirem o mesmo estilo de codificação, todo esse processo deixa mais eficiente a analise e mais barato do que subir um repo em um agente de ia e gastar muitos tokens.

Features

A principio essa vai ser a primeira e principal função do duck, porem a cada modificação do código eu gostaria de ter IR (Representação intermediária) persistente em memória e assim que o novo for gerado com as atualizações do código fazer um diff e ver o quanto teve de desvio do padrão de codigo determinado e assim fazer uma governança/controle dos padrões que o código está seguindo e facilitar a manter o código seguindo um mesmo padrão.

INFOS

o repositório do projeto é esse: https://github.com/duck-cli/duck-core deixe uma star lá =) comecei o projeto não tem nem dois dias kkkkkk, porém penso em fazer o que descrevi ai no post, até esse momento ja extrai informações da ast e o build do IR até esse momento. GOSTARIA MUITO que você deixasse o seu feedback se a ideia é válida, já que tive muitos problemas vibecodando projetos que já tinham sido começados e os agentes não seguirem o mesmo estilo/padrões/convenções de código que o projeto estava usando, principalmente quanto você usa sub-agentes ou vários agentes

Carregando publicação patrocinada...