Eu estava no escritório com a equipe quando soubemos que o Google havia lançado o Artemis, um projeto para automação de dispositivos móveis. Abrimos o repositório e começamos a examiná-lo. Minha reação foi imediata: "Que porra é essa? Nós escrevemos isso."

Nós construímos o mobile-use como um experimento de pesquisa de código aberto para ver se conseguiríamos fazer agentes de IA interagirem de forma confiável com telefones. Trabalhamos nisso até fevereiro e, em seguida, focamos em uma versão mais recente, fechada e poderosa que hoje alimenta o controle de qualidade (QA) para web e dispositivos móveis na Minitap.

Encontrar código familiar em outro projeto é algo que você espera quando publica seu trabalho para as pessoas usarem. Encontrá-lo sob o nome do Google, sem qualquer reconhecimento de sua origem, é mais difícil de aceitar. Depois, olhamos o histórico e encontramos nossos nomes em uma versão mais antiga. Eles haviam sido removidos. Estou desapontado com o Google.

Acho que isso importa além do nosso próprio repositório, porque o código aberto depende de pessoas dispostas a continuar compartilhando seu trabalho. A forma como esse trabalho é tratado importa. As partes do código para conexão com dispositivos Android coincidiam exatamente com a nossa implementação.

As instruções do agente Hopper eram idênticas, palavra por palavra. Essas correspondências ainda estavam presentes na versão do Artemis que verificamos em 11 de setembro. Um fato curioso sobre o Hopper: nós não sabíamos como chamar esse agente.

Jean-Pierre, um dos nossos engenheiros, gosta de Minecraft e achou o nome legal, então decidimos usá-lo. Ver o mesmo nome associado às mesmas instruções no repositório do Google pareceu muito familiar. Um exemplo para manter um agente dentro do WhatsApp tinha a tarefa idêntica de enviar mensagens de Feliz Ano Novo para Alice, Bob e Charlie, com os mesmos comentários e etapas de limpeza.

Versões anteriores até compartilhavam um bug: um auxiliar escrevia um arquivo de resultados e falhava ao tentar ler sua própria saída na execução seguinte. Reproduzimos a mesma falha em ambas as implementações, embora o Artemis tenha corrigido isso desde então.

O histórico de autoria foi mais difícil de entender. Um arquivo de pacote anterior listava Pierre-Louis Favreau, Jean-Pierre Lo e Nicolas Dehandschoewercker. A versão que o substituiu removeu todos os três nomes e inseriu outro autor.

A única alteração nos arquivos foi a lista de autores. O registro de atividades do GitHub mostra que a substituição ocorreu por meio de um force push em agosto, antes da nossa investigação em setembro. O Artemis contém seu próprio trabalho de engenharia, podendo reconhecer esse trabalho e o código do mobile-use no mesmo lugar.

No entanto, o README que verificamos não creditava o mobile-use. Colocamos as comparações detalhadas, os arquivos arquivados e a cronologia em um registro factual público.

Escolhemos o código aberto porque queremos que outras pessoas construam sobre o mobile-use. Alguém deve poder levá-lo em uma direção que nunca teríamos considerado, melhorá-lo, transformá-lo em um produto ou criar um projeto concorrente, dentro dos termos da licença.

Existem maneiras comuns de fazer isso mantendo as origens claras. Um fork aponta para o projeto original. Uma cópia importada pode documentar sua fonte.

Avisos de direitos autorais e atribuição podem permanecer com o código. Um README pode explicar quais partes vieram de outro lugar e o que a nova equipe adicionou. Parte disso é prática estabelecida de engenharia, e outra parte é exigida pela licença.

O código-fonte do mobile-use usado para as comparações atuais possui a licença Apache 2.0, cujas condições de redistribuição incluem a preservação dos avisos aplicáveis de direitos autorais e atribuição e a identificação de alterações. Ela também prevê a retenção de atribuição relevante de um arquivo NOTICE original quando incluído na distribuição.

Essas informações são úteis para todos que chegam depois. Ajudam a encontrar os mantenedores originais, entender uma decisão de design, relatar um bug ou compartilhar uma correção. Dão aos contribuidores um registro do que construíram e permitem que um novo projeto explique sua própria contribuição honestamente.

Eu não deveria precisar recuperar uma versão antiga de um repositório para descobrir essa relação. Os mantenedores já gastam tempo respondendo perguntas, revisando contribuições e mantendo seus projetos funcionando. Perseguir atribuições ausentes após uma empresa maior republicar seu trabalho é mais um custo de compartilhamento.

Já tínhamos passado meses pedindo para que nossos resultados mais recentes fossem refletidos no placar de líderes (leaderboard) da AndroidWorld. O mantenedor aplicou nossas submissões anteriores, até 91,4%, com a última confirmação em dezembro de 2025. Em seguida, enviamos 94.8% e, depois, 100% em nossa avaliação de janeiro.

Enviamos dois lembretes, mas esses quatro e-mails não receberam resposta. Em 11 de setembro, a planilha ainda mostrava o mobile-use com 91,4%, enquanto o Artemis aparecia com 99,1%. Esses são resultados autorrelatados; a tabela declara explicitamente que não os verifica de forma independente.

O gráfico de comparação do próprio Artemis nos omitiu. Ele incluiu o DroidRun com a mesma pontuação listada do mobile-use, e um projeto MadeAgents não relacionado chamado MobileUse com uma pontuação inferior. Não temos evidências conectando os e-mails sem resposta ou a omissão no gráfico à remoção de nossos nomes.

Já entramos em contato com a equipe do Google e há um problema público aberto no repositório do Artemis. Pedimos que reconheçam que o Artemis é parcialmente derivado do mobile-use, creditem as pessoas por trás dele e corrijam a atribuição.

Estou desapontado com o Google. Esta é a empresa que nos deu o Kubernetes e o TensorFlow. Quando lançou o Chrome, creditou explicitamente o WebKit e o Firefox. O Google tem um histórico de fazer isso bem e publicou diretrizes para lidar com o código de outras pessoas, o que explica exatamente por que eu esperava mais.

Estou desapontado pela minha equipe, que fez um trabalho insano no mobile-use ao longo de dezembro, janeiro e fevereiro. Quero que eles vejam esse trabalho usado e sintam orgulho dele. Ter que vasculhar o repositório de outra pessoa para provar que foram eles que escreveram é um resultado lamentável.

Estou desapontado com a comunidade de código aberto, que merece um tratamento melhor do que este. Se até um lançamento do Google significa que os mantenedores precisam correr atrás de sua própria atribuição, estamos dificultando que as pessoas se sintam bem ao compartilhar. Pelo lado positivo, a versão que alimenta a Minitap hoje é de código fechado e completamente diferente agora.

Google, vocês estão atrasados em sete meses. Na próxima vez, apenas peçam uma demonstração.