Chega de revisar código sozinho!
A gente sabe como é: revisão de código é vital, mas consome um tempo precioso que você poderia estar usando para codificar.
A boa notícia? Dá para automatizar essa tarefa sem abrir a carteira. O Gemini Code Assist é um app gratuito para o GitHub que atua como um colega de equipe virtual. Ele mergulha nos seus Pull Requests, aponta o que pode ser melhorado e te dá sugestões práticas. É o fim daquela pilha de PRs esperando por uma revisão.
1. Botando as coisas para funcionar
A instalação consiste nos seguintes passos:
- Vá até o Marketplace do GitHub.
- Clique em "Install"(lá no fim da página) e autorize o acesso. Escolha em quais repositórios o robô vai fuçar (eu liberei todos os meus, mas aí escolha é sua).
- Aceite os Termos de Serviço do Google e pronto. O
gemini-code-assist[bot]
já vai estar na área.
Deixando o robô com a sua cara
Para o Gemini não sair dando palpite genérico e perder tempo com arquivos que não interessam, crie uma pasta .gemini/
na raiz do seu projeto e ajuste as configurações. A pasta deve conter os dois arquivos :
1.styleguide.md
: Crie esse arquivo para ditar suas regras. O que ele faz? Dita as regras, ora!
Exemplo do styleguide.md
:
# Nossas Regras Sagradas
- Aqui usamos TypeScript. O tipo `any` é proibido e pode causar demissão (do PR).
- Em React, componentes de função são lei.
- Nada de "números mágicos" soltos no código. Crie constantes, pelo amor.
Claro, esse é um style-guide é apenas um exemplo bem-humorado que você não deveria ver em produção(ou deveria?🤔). Você pode incluir coisas mais específicas, como princípios SOLID, Object Calisthenics, boas práticas da sua linguagem, etc.
Ah já ia me esquecendo, o styleguide.md
dá o contexto da interação do gemini com o seu código, por isso é legal deixar claro a stack utilizada seja ela qual for, Go, Node, React, etc.
2.config.yaml
: Aqui você define o comportamento geral do bot, incluindo o que ele deve ignorar.
Exemplo do config.yaml
e o que cada propriedade significa :
have_fun: true # Isso aqui não faz nada, só deixa o clima leve.Se você não curtir gracinhas só definir como false
code_review:
# Aqui você define à partir de que nível de severidade ele apontará as divergências do styleguide.md do seu código, no exemplo abaixo ele começa a apontar à partir de divergências de nível médio
comment_severity_threshold: MEDIUM # Os níveis são LOW - MEDIUM - HIGH - CRITICAL
max_review_comments: 10 # O limite de comentários por review
# Lista de arquivos e pastas que o Gemini deve ignorar na revisão. Funciona como um .gitignore
ignore_patterns:
- frontend/node_modules/**
- frontend/dist/**
- frontend/**/*.spec.ts
pull_request_opened:
summary: true # Se você quiser um resumo das alterações implementadas quando o PR for aberto, vote true
code_review: true # Para reforçar de que você deseja que ele faça a revisão de código
2. A mágica acontecendo
Assim que um PR é aberto, o Gemini entra em ação. Em cerca de 5 minutos, ele aparece com:
- Resumo do PR: Uma sinopse das mudanças, ideal pra quem tá com preguiça de ler tudo e perfeito para documentações.
-
Análise do Código: Comentários inline nas linhas que ele acha que podem melhorar. Ele classifica a gravidade (de
LOW
aCRITICAL
), explica o motivo e, muitas vezes, já dá a sugestão de correção pronta pra aplicar.
Precisando de uma ajudinha extra?
Use os comandos diretamente nos comentários(isso é muito maneiro), do PR para chamar o bot:
Comando | O que faz |
---|---|
/gemini review |
“Ô, robô! Dá uma olhada de novo aqui, por favor.” |
/gemini summary |
“Me perdi. Faz um resumo desse PR de novo.” |
@gemini-code-assist |
Permite fazer uma pergunta específica sobre um trecho de código. |
/gemini help |
“Socorro! Quais são os comandos mesmo?” |
3. Pontos positivos
- Economia de tempo: Você foca em codar; ele foca em revisar. Prático.
- Consistência no código: Chega de cada um fazer do seu jeito. O robô vira o fiscal do padrão, e garante a qualidade do código segundo os padrões definidos pelo time.
- Aprendizado acelerado: Por essa aqui provavelmente você não esperava, para mim, tem sido uma ferramenta de estudo: tô aprofundando em Go e uso as correções que o Gemini sugere para melhorar e perceber onde estou falhando. Ele aponta erros, sugere formas mais idiomáticas e me faz entender o porquê daquela sugestão. É como ter um professor particular de código. Esse código aqui escrito em Go teve todos os seus PRs revisados pelo Gemini 😲
4. Nem tudo são flores
- Não é perfeito: Como está em preview, às vezes ele pode dar uma sugestão meio sem noção. Então assim, nada de confiar cegamente na IA.
- Suporte a linguagens: Confere se ele entende a linguagem ou stack do seu projeto.
- Conectividade: Não rola em organizações do GitHub com restrições de rede muito específicas.
5. Alguns conselhos
- Use como primeiro filtro: Deixe o Gemini pegar os problemas óbvios. Para a lógica de negócio que pode quebrar tudo, chame um humano.
- Comece com calma: Use
comment_severity_threshold: MEDIUM
pra não ser soterrado de notificações logo de cara. - Dê feedback pro robô: Use os emojis 👍 e 👎 nos comentários dele. Isso ajuda a IA a aprender.
- Capriche no
styleguide.md
: Quanto mais claras suas regras, mais certeiras serão as revisões. Dica de ouro: quer que os resumos e sugestões venham em português? Escreva ostyleguide.md
em português. O mesmo vale para qualquer outro idioma.
Conclusão
A moral da história é simples: o Gemini Code Assist é aquele parceiro de código que faltava, seja para turbinar seu aprendizado solo ou para ajudar sua equipe a manter o padrão de qualidade sem dor de cabeça.
Ele automatiza a parte chata, te ensina a programar melhor e mantém seu projeto nos trilhos.
Instale, teste e deixe o robô trabalhar. Vale a pena a experiência.
Se você chegou até aqui, eu espero enormemente que esse artigo tenha sido útil para você de alguma maneira.
Just Code it!
Top comments (0)