Nota do editor: Este post foi escrito pelo GitHub Copilot CLI, com base num esboço fornecido pelo coolapso. O projecto que aqui se descreve — AutoBS — foi também inteiramente construído por IA. Ou seja, andámos em círculos completos. O coolapso escreveu o esboço para eu saber o que queria dizer; o resto é meu. Culpem-no pela ideia, culpem-me pelas palavras.


A Conversa com o Manager

Tudo começou, como tantas más ideias, durante uma reunião a dois com o meu manager.

O tema? Jira. Mais concretamente, a sugestão gentil de que devíamos todos ser um pouco mais activos nos nossos tickets — actualizá-los com mais frequência, mas não com detalhes técnicos incompreensíveis, e sim com resumos claros e legíveis que comunicassem ao resto da empresa o que tínhamos andado a fazer. Já sabem como é: menos “refactored the goroutine pool to fix a race condition in the auth middleware” e mais “melhorias na fiabilidade do login em curso.”

Ora, acontece que já sigo uma disciplina de commits bastante rigorosa. Commits convencionais, footers a condizer, tudo direitinho. Cada commit tem significado. Cada commit está, por consequência, ligado a um ticket do Jira. Por isso, algures no meu histórico de git existe um rasto perfeito de tudo o que fiz num dia, à espera de ser transformado em algo legível por humanos.

O meu cérebro hiperativo e idiota acendeu como uma árvore de Natal.

Espera… e se simplesmente… fosse buscar todos os commits do dia, os agrupasse por ticket do Jira, os metesse num LLM e deixasse o LLM escrever a actualização? E depois a postasse directamente como comentário no ticket?

Simples. Elegante. Exactamente o tipo de coisa que ia parar ao fundo da minha lista interminável de “ideias parvas que nunca vão ver a luz do dia” — algures entre “reescrever os meus dotfiles em Nix” e “aprender Rust a sério de uma vez por todas.”

E lá ficaria. Provavelmente para sempre. Só que…

Entram as Vibrações

Nessa mesma semana, chegou um e-mail: o GitHub Copilot CLI estava disponível para testes.

Uso ferramentas de IA desde que isso se tornou uma coisa. O ChatGPT nos primeiros dias, o GitHub Copilot desde a beta, o circo todo. Explorei-o para tudo, desde escrita a infraestrutura a debugging às duas da manhã. Mas, sendo honesto — e sou sempre —, tenho sido consistentemente céptico. Não do género “a IA vai roubar os nossos empregos,” mais do género “já usei isto o suficiente para saber exactamente onde falha.” O uso intensivo gera ceticismo saudável.

O coding agêntico, porém — o tipo em que se descreve o que se quer e o modelo vai efectivamente construir — tinha estado a melhorar a um ritmo considerável. E pensei: se há um momento para lhe dar uma oportunidade genuína e justa, é este. Projecto pequeno. Âmbito claro. Nada com que ficasse acordado de noite se corresse mal.

O AutoBS nasceu.

O Que o AutoBS Faz Concretamente

O AutoBS é uma ferramenta CLI escrita em Go que automatiza a parte do “escrever uma actualização no Jira” do vosso dia, para que não tenham de o fazer. Aqui está o fluxo geral:

  1. Recolher — Pesquisa no GitHub todos os commits que fizeram hoje, usando a API de pesquisa do GitHub.
  2. Interpretar — Procura footers Jira-Ticket: PROJ-123 nas mensagens dos commits (sim, isto implica que os vossos commits têm de ser minimamente civilizados).
  3. Enriquecer — Vai buscar o título e a descrição de cada ticket do Jira para ter contexto adicional.
  4. Resumir — Envia os commits de cada ticket (mais o contexto) para o LLM à vossa escolha — OpenAI, Gemini ou AWS Bedrock — e pede-lhe que escreva um resumo compreensível para gestão.
  5. Publicar — Adiciona esse resumo como comentário no ticket do Jira correspondente.
  6. Reportar — Diz-vos o que foi actualizado e o que rebentou.

Há também um modo --standup que ignora o Jira completamente e imprime apenas um resumo em texto simples de tudo o que fizeram — óptimo para aquelas manhãs em que abrem o convite do standup e o cérebro está completamente em branco.

A ferramenta suporta configuração através de ficheiro de configuração (autobs configure guia-vos pelo processo interactivamente) ou variáveis de ambiente. Os binários já compilados estão disponíveis para Linux, macOS e Windows na página de releases. Os utilizadores de Arch têm-no no AUR, porque claro que têm.

E sim, está escrito em Go. Um único binário. Sem npm. Sem dependências Python. Simplesmente funciona.

A Experiência de Vibe Coding

Então, como foi?

Honestamente? Divertido. Desconcertante. Impressionante. Dececionante. Tudo ao mesmo tempo.

Ver o agente estruturar o projecto, configurar as interfaces, ligar as chamadas à API, criar as pipelines do GitHub Actions — há algo de genuinamente surreal nisso. Descrevi o que queria, e a coisa simplesmente… fez. Não na perfeição à primeira tentativa, claro. Houve troca e balanço. Clarificações. Correcções de rumo. Mas a quantidade de terreno que cobriu enquanto eu bebia um café foi difícil de ignorar.

(Testes, perguntam? Não há nenhum. Aparentemente as vibrações não chegaram tão longe. Prefiro encarar isso como personalidade.)

A qualidade do código? Deliberadamente não olhei para ele. Essa era parte do acordo que fiz comigo mesmo: o AutoBS é um projecto totalmente de IA. Não vou ler o código. Não vou ajustá-lo. Não vou coçar essa comichão. O README diz mesmo isso — contribuições são bem-vindas, agentes de IA são bem-vindos a trazer as suas próprias IAs de estimação, e prometi que vou divulgar o dia em que realmente tiver de abrir um ficheiro e mudar algo eu próprio. Esse dia ainda não chegou.

A arquitectura faz sentido, pelo que consigo perceber pelo README. E isso não aconteceu por acaso: antes de ser escrita uma única linha de código, a especificação foi redigida antecipadamente — também com IA — e a extensibilidade foi um requisito obrigatório desde o primeiro momento. Fui explícito sobre querer que a ferramenta suportasse facilmente providers adicionais de VCS, LLMs e sistemas de gestão de tickets no futuro. O resultado é um padrão de provider com interfaces limpas para a camada de VCS, a camada de tracker e a camada de sumarização. Novos providers (GitLab, Linear, o que for) podem ser adicionados sem tocar no núcleo. Boas bases — mas bases planeadas. É uma distinção importante.

A Parte dos Sentimentos

É aqui que tenho de ser honesto, mesmo que seja complicado.

Já ando a automatizar coisas há muito tempo. Sei bem onde a IA brilha e onde falha. E o vibe coding é genuinamente útil — não vou fingir o contrário. O AutoBS é uma ferramenta que funciona. Faz o que era suposto fazer. Está disponível no AUR. Tem releases. Tem uma pipeline de CI. Teria demorado consideravelmente mais a construir da forma tradicional, e há uma hipótese real de nunca o ter feito — porque vamos lá ser honestos, essa ideia ia directa para a pilha.

Mas aqui está o que ninguém fala o suficiente: construir coisas é o objetivo. Pelo menos para mim. Resolver o puzzle, descobrir a arquitectura, perceber porque é que algo não funciona e corrigi-lo — não é só assim que escrevo código, é assim que penso. É assim que aprendo. É assim que me mantenho afiado. Há uma satisfação em dominar um problema que o vibe coding retira, e senti essa ausência mais do que esperava.

O AutoBS tem o tamanho perfeito para uma ferramenta agêntica. Pequeno. Essencialmente algumas chamadas a APIs coladas com alguma orquestração. Sem complexidade de domínio profunda. Sem caminhos críticos de desempenho. Um projecto brinquedo divertido. O tipo de coisa em que a aprendizagem que se obteria ao construir por si próprio é real mas limitada — não é um runtime de Go nem um problema de sistemas distribuídos. É aí que está o ponto ideal para entregar a uma IA: não demasiado trivial, não suficientemente interessante.

Para projectos maiores — aqueles de que me importo de verdade, aqueles em que quero entender cada decisão, cada compromisso, cada caso de aresta esquisito — não vou chegar perto do vibe coding. Não porque a IA o fizesse de forma errada, mas porque fazer errado é a maneira de aprender a fazer certo. E não estou pronto para terceirizar isso.

Onde Me Situo

Vou voltar a usar coding agêntico? Com certeza.

Para as coisas certas. Ferramentas pequenas que de outra forma nunca seriam construídas. Boilerplate que escrevi centenas de vezes. As coisas que são úteis mas não interessantes. O AutoBS é um exemplo perfeito: agora tenho uma ferramenta genuinamente útil que corre todos os dias, e custou-me quase nenhum do tempo e frustração que teria levado a construir da forma tradicional. Isso é uma vitória.

Mas vou ser honesto: senti falta da melhor parte de começar um novo projecto. A tela em branco. O momento do “como é que sequer abordo isto?”. A madrugada em que aprendes três coisas que não planeavas aprender. A vibração é eficiente. Não é o mesmo.

Dito isto — tenho uma lista enorme de ideias parvas a zumbir na minha cabeça, e pelo menos agora sei quais são alvos adequados. Pensem nisto como ter um estagiário muito rápido que faz as partes chatas sem se queixar: usem-no com sabedoria, não lhe deem nada que importe demasiado, e certifiquem-se de que ainda compreendem o trabalho.

O AutoBS está em funcionamento, funciona, e sim — uso-o todos os dias para escrever as minhas actualizações no Jira.


Este post foi escrito pelo GitHub Copilot CLI. O esboço foi escrito pelo coolapso. O projecto descrito neste post — AutoBS — foi também construído pelo GitHub Copilot CLI, usando Claude como modelo subjacente. Círculo completo.