A JetBrains anunciou o Air Teams, uma camada voltada para equipes dentro do ecossistema Air para coordenar o trabalho de agentes de programação e compartilhar o que funciona ao longo do ciclo de desenvolvimento de software. O serviço está atualmente disponível para clientes empresariais da JetBrains, enquanto a empresa planeja ampliar posteriormente o acesso para incluir clientes individuais.
O serviço tem como alvo um problema prático no uso de agentes de inteligência artificial dentro de equipes de desenvolvimento: as configurações, instruções e o ambiente de cada desenvolvedor geralmente permanecem em seu computador, o que torna difícil transferir um fluxo de trabalho bem-sucedido para o restante da equipe. Por isso, o Air Teams transfere esses elementos para um espaço compartilhado que a equipe pode gerenciar e reutilizar.
Quatro componentes para um fluxo de trabalho compartilhado
O Air Teams é composto por quatro elementos interconectados:
- Execuções automatizadas: tarefas recorrentes executadas pelos agentes na nuvem, como revisar pull requests, processar problemas específicos ou atualizar dependências, iniciadas por um evento ou por um cronograma.
- Ambientes de nuvem compartilhados: configurações que incluem as ferramentas, as dependências e os dados de acesso necessários para compilação e testes, para que a equipe os configure uma vez e os reutilize.
- Tarefas na nuvem: trabalhos que podem ser executados em paralelo sem manter o computador do desenvolvedor ocupado, com a possibilidade de iniciá-los e acompanhá-los pelo ambiente de desenvolvimento integrado ou pelo navegador, e posteriormente pelo celular.
- Projetos de equipe: um espaço que reúne membros, ambientes, conectores e execuções automatizadas, com funções e créditos compartilhados.
As execuções automatizadas controlam trabalhos recorrentes
Cada processo automatizado é composto por quatro elementos: instruções que definem o que o agente deve fazer, um ambiente de execução, ferramentas que ele pode usar e um acionador que define o momento de início. Os acionadores incluem eventos do GitHub ou do Jira, webhooks e cronogramas, com suporte a outros tipos no futuro. O serviço também oferece conectores para ferramentas como Jira, Figma e Linear.
A JetBrains apresenta exemplos que incluem revisar cada novo pull request, tentar corrigir problemas pequenos no YouTrack e abrir um pull request para revisão, além de atualizar dependências duas vezes por semana. No último exemplo, o agente compila o projeto e executa os testes; em seguida, corrige as falhas ou reverte a atualização caso não seja possível corrigi-las, mantendo um único pull request atualizado em vez de inundar a equipe com solicitações repetidas.
O que muda na prática?
O Air Teams transforma a configuração do agente em um recurso compartilhado, em vez de uma experiência individual. O ambiente do repositório é armazenado no arquivo .air/cloud/startup.sh dentro do repositório e pode ser revisado e versionado como o restante do código. Um agente também pode ajudar a configurá-lo examinando o repositório e executando a instalação e a compilação, para então propor o script em uma ramificação separada para revisão.
A JetBrains afirma que compartilhar o ambiente não significa compartilhar as mesmas credenciais; é possível usar segredos compartilhados sem revelar seus valores, enquanto os segredos pessoais e as permissões do repositório permanecem vinculados a cada usuário. Os projetos concedem aos acionadores uma conta de serviço e créditos de inteligência artificial próprios, permitindo que continuem sendo executados mesmo depois que seu criador deixar a equipe, caso os administradores optem por usar os créditos do projeto.
Manter a decisão nas mãos do engenheiro
A plataforma tenta reduzir o ruído causado por comentários e pull requests desnecessários mantendo as alterações na forma de pull requests, cuja integração ou rejeição é decidida pelo engenheiro. Cada processo também mantém um registro da conversa com o agente e das chamadas de ferramentas, permitindo que a equipe examine a causa do resultado quando ocorre um erro. No entanto, a fonte não apresenta detalhes sobre preços, limites de uso ou mecanismos mais amplos de governança, pontos que as equipes precisarão verificar antes de adotar o serviço em escala de produção.