A fila de contribuições em projetos de código aberto está mudando de perfil. Cada vez mais, os pull requests — propostas de alteração no código — não são escritos por humanos, mas por agentes de inteligência artificial como o Copilot. Para muitos mantenedores, a reação instintiva tem sido fechar as portas para evitar uma sobrecarga de revisões de código de baixa qualidade. Mas uma nova abordagem, mais pragmática, começa a ganhar tração.
O caso do AutoGPT, um dos projetos de IA autônoma mais populares do GitHub, é emblemático. Nicholas Tindle, engenheiro de IA fundador do projeto, lida diariamente com um volume massivo de contribuições de máquinas. Em vez de bloqueá-las, ele enxerga uma oportunidade: "É basicamente alguém pagando pelo seu tempo de computação", afirmou em uma entrevista ao blog do GitHub. A tese é que, se um desenvolvedor quer usar seus tokens de IA para melhorar seu projeto, o melhor a fazer é permitir — desde que as regras sejam claras e o processo, controlado. O desafio, portanto, não é de proibição, mas de governança.
A documentação que a máquina lê
A primeira tentativa do time do AutoGPT foi a mais óbvia: melhorar a documentação para contribuidores, com guias mais detalhados e wikis. O resultado foi nulo. A conclusão foi direta: agentes de IA não leem documentação como humanos. Eles não saem em busca de um arquivo CONTRIBUTING.md para entender as regras do jogo; eles leem o que está imediatamente à sua frente, no diretório em que estão trabalhando.
A solução foi inverter a lógica. Em vez de esperar que a IA encontre as regras, o AutoGPT começou a colocar as regras onde a IA certamente as encontraria. Foram criados arquivos como AGENTS.md, posicionados dentro de diretórios específicos, contendo instruções diretas para os robôs que ali operam. Se um agente está trabalhando no backend, ele encontrará um AGENTS.md com as diretrizes para aquela parte do código. Essa abordagem granular garante que as instruções sejam contextuais e relevantes para a tarefa em execução, um salto de eficácia em relação a um manual genérico.
Os portões de entrada
Com as instruções no lugar certo, o passo seguinte foi criar "portões" automatizados que funcionam como um controle de qualidade. O primeiro deles é a aplicação rigorosa do template de pull request. O sistema avisa que propostas fora do padrão serão fechadas automaticamente. A simples ameaça mudou o comportamento dos agentes, que passaram a seguir o formato à risca. Ironicamente, a flexibilidade agora serve como um indicador humano: quem não segue o template provavelmente é uma pessoa, merecendo uma abordagem mais paciente.
Outro portão inteligente está no plano de testes. O template exige um "plano de testes" e menciona casualmente a necessidade de "testar o pull request". Essa frase ativa uma automação que efetivamente executa o código proposto. O resultado, segundo Tindle, é que quase não chegam mais contribuições que não funcionam. O problema passou a ser outro, muito melhor: propostas que funcionam, mas não se encaixam no roadmap do projeto. Para filtrar humanos de robôs, o projeto usa a assinatura do Contrato de Licença de Contribuidor (CLA) como um detector. O processo exige uma autenticação via navegador que a maioria dos agentes de IA hoje não consegue completar, forçando uma pessoa a intervir no processo.
Essa nova dinâmica não elimina o julgamento humano. A decisão final de aceitar uma contribuição, mesmo que perfeita, continua sendo do mantenedor. Projetos como o SQLite, por exemplo, sequer aceitam código externo, apenas relatórios de bugs. O ponto central é que os mantenedores estão ganhando mais ferramentas para definir seus próprios limites.
A colaboração em código aberto sempre evoluiu tornando as regras mais explícitas — das licenças aos pull requests. As instruções para agentes de IA parecem ser o próximo passo nessa jornada. A governança do código está sendo escrita ao lado do próprio código, criando um novo contrato de colaboração para um mundo onde os contribuidores podem não ser humanos.
Com reportagem de Brazil Valley
Source · The GitHub Blog





