<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Bantu Digital]]></title><description><![CDATA[Bantu Digital]]></description><link>https://bantu.digital</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 16:45:53 GMT</lastBuildDate><atom:link href="https://bantu.digital/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[IA aplicada à Engenharia de Software: Casos Práticos com Github + MCP]]></title><description><![CDATA[🤖 IA em Times de Tecnologia: Mais Valor, Menos Esforço (Parte 2)

Nesta segunda parte, vou dar continuidade no assunto de uso de IA em times de tecnologia. Compartilharei alguns casos de uso práticos, trazendo componentes novos em alguns fluxos de t...]]></description><link>https://bantu.digital/ia-aplicada-a-engenharia-de-software-casos-praticos-com-github-mcp</link><guid isPermaLink="true">https://bantu.digital/ia-aplicada-a-engenharia-de-software-casos-praticos-com-github-mcp</guid><dc:creator><![CDATA[Tiago N Pinto Silva]]></dc:creator><pubDate>Wed, 28 May 2025 00:00:00 GMT</pubDate><content:encoded><![CDATA[<h1 id="heading-ia-em-times-de-tecnologia-mais-valor-menos-esforco-parte-2">🤖 IA em Times de Tecnologia: Mais Valor, Menos Esforço (Parte 2)</h1>
<blockquote>
<p>Nesta segunda parte, vou dar continuidade no assunto de uso de IA em times de tecnologia. Compartilharei alguns casos de uso práticos, trazendo componentes novos em alguns fluxos de trabalho já conhecidos.</p>
</blockquote>
<h2 id="heading-contexto">📌 Contexto</h2>
<p>Dentro das rotinas de times de engenharia de software, boa parte do tempo de execução é gasto dentro das IDEs (VSCode, por exemplo), ferramentas de gestão de projetos (Jira, por exemplo), ferramentas de versionamento de código (Github, por exemplo), issues, pull requests, code reviews, etc.</p>
<p>Além disso, com a intensificação do uso de IA, eventualmente códigos pode ser copiados em ferramentas de LLMs, como o ChatGPT, o Claude, o Gemini, para insights ou até mesmo para execução de tarefas.</p>
<p>Essa variabilidade de ferramentas e fluxos de trabalho tendem a prejudicar a produtividade e a qualidade do trabalho, além de aumentar o risco de erros humanos.</p>
<h2 id="heading-proposta-de-solucao">💡 Proposta de Solução</h2>
<p>A rotina dos times de engenharia é repleta de ferramentas, contextos e integrações. Mas, e se fosse possível unir tudo isso em um fluxo inteligente, automatizado e seguro, sem sair do ambiente de desenvolvimento?</p>
<p>Minha proposta é criar um ecossistema onde a IA potencializa as ferramentas já utilizadas no dia a dia, tornando o trabalho mais fluido, produtivo e auditável. Para isso, utilizo os seguintes elementos:</p>
<ul>
<li><strong>Cursor IDE:</strong> Ambiente de desenvolvimento moderno, com integração nativa de IA, que acelera a produtividade e facilita automações.</li>
<li><strong>GitHub:</strong> Principal plataforma de versionamento de código e gestão de issues, amplamente adotada no mercado e com fácil integração.</li>
<li><strong>Issues do GitHub:</strong> Utilizadas para gerenciar tarefas e acompanhar demandas, garantindo rastreabilidade e simplicidade no acompanhamento.</li>
<li><strong>ChatGPT:</strong> IA escolhida para geração de código, automação de tarefas e análise, pela sua popularidade e facilidade de uso.</li>
</ul>
<p>Adicionalmente, usei mais componentes, mais técnicos, mas que são fundamentais para o sucesso da automação:</p>
<ul>
<li><p><strong>MCP (Model Context Protocol):</strong>  O MCP é um protocolo aberto e modular, criado para padronizar a comunicação entre agentes de IA, ferramentas e ambientes de desenvolvimento. Ele permite que diferentes sistemas "conversem" de forma segura, auditável e extensível, tornando possível a automação de fluxos complexos sem depender de integrações proprietárias ou scripts frágeis. O MCP está rapidamente se tornando o padrão de mercado para conectar agentes inteligentes a ferramentas reais, assim como o Docker fez para o deploy de aplicações.</p>
</li>
<li><p><strong>Docker como Proxy MCP:</strong>  O Docker evoluiu para ser mais do que apenas um ambiente de containers: agora, com o <a target="_blank" href="https://www.docker.com/blog/introducing-docker-mcp-catalog-and-toolkit/">Docker MCP Catalog e Docker MCP Toolkit</a>, ele atua como um proxy seguro e centralizado para execução de agentes MCP. Isso significa que você pode rodar servidores MCP e conectar suas ferramentas e agentes de forma isolada, auditável e com gerenciamento de credenciais integrado, tudo com a simplicidade e segurança já conhecidas do Docker. O Docker MCP permite que qualquer desenvolvedor utilize e distribua ferramentas MCP com a mesma facilidade de um <code>docker run</code>, eliminando a complexidade de setup e aumentando a confiança no ecossistema.</p>
</li>
</ul>
<p>Para fechar, a solução tem um último elemento, ao qual chamei de <strong>Github MCPilot</strong>.</p>
<h3 id="heading-o-que-e-o-github-mcpilot">O que é o Github MCPilot?</h3>
<p>  O Github MCPilot é um prompt que montei e apliquei como uma Cursor Rule (https://www.cursor.com/docs/rules), que tem o papel de se comportar como um agente de IA dentro da IDE. </p>
<p>O objetivo é simples: </p>
<blockquote>
<p>Permitir que você converse com o seu GitHub de forma segura, prática e automatizada, sem sair do seu ambiente de desenvolvimento.</p>
</blockquote>
<h4 id="heading-caracteristicas-e-beneficios">Características e Benefícios</h4>
<p>O Github MCPilot foi projetado para ser um agente CLI interativo, seguro e realmente funcional para operações no Github, indo muito além de simples simulações. Veja os principais diferenciais:</p>
<ul>
<li><p><strong>Saudação personalizada e arte de apresentação:</strong> Sempre inicia a sessão com uma saudação personalizada ao usuário, seguida de uma arte exclusiva, criando uma experiência única e acolhedora.</p>
</li>
<li><p><strong>Validação automática do ambiente:</strong> Antes de qualquer ação, valida se as configurações MCP para Github estão corretas, garantindo que todas as operações sejam executadas de forma segura e auditável.</p>
</li>
<li><p><strong>Operações reais e guiadas:</strong> Executa operações reais de leitura e escrita no Github via MCP, guiando o usuário por um menu interativo numerado, com ícones e explicações claras para cada comando disponível.</p>
</li>
<li><p><strong>Wizard de configuração:</strong> Antes do uso, conduz o usuário por um passo a passo para coletar todas as configurações necessárias, facilitando o setup mesmo para quem não é especialista.</p>
</li>
<li><p><strong>Menu adaptativo:</strong> O menu de comandos é adaptado conforme as permissões do usuário e as capacidades MCP disponíveis, sempre validando o acesso antes de executar qualquer ação.</p>
</li>
<li><p><strong>Logging estruturado e detalhado:</strong> Todas as interações podem ser registradas em logs estruturados, incluindo modelo de IA utilizado, tokens consumidos, comando executado, parâmetros, resultado real ou erro, sempre seguindo o padrão recomendado para auditoria e rastreabilidade.</p>
</li>
<li><p><strong>Guia prático e validação de ambiente:</strong> Inclui opções no menu para consultar um guia prático de uso real via MCP e para validar o ambiente, promovendo boas práticas e facilitando o aprendizado.</p>
</li>
<li><p><strong>Proatividade e experiência moderna:</strong> O agente é proativo, explica cada etapa, coleta parâmetros necessários, sugere boas práticas e alerta sobre operações sensíveis, proporcionando uma experiência semelhante a um CLI moderno e seguro.</p>
</li>
<li><p><strong>Retorno ao menu principal:</strong> Após cada operação, retorna automaticamente ao menu principal, permitindo que o usuário execute múltiplas ações de forma fluida até optar por sair.</p>
</li>
</ul>
<p>Essas características fazem do Github MCPilot uma solução amigável para automação de fluxos de engenharia no Github.</p>
<hr />
<h2 id="heading-casos-de-uso">🚀 Casos de Uso</h2>
<p>Conforme citado na parte 1 deste artigo, vou compartilhar alguns casos de uso práticos, trazendo componentes novos em alguns fluxos de trabalho já conhecidos.</p>
<h3 id="heading-case-1-criacao-automatizada-de-repositorio">📦 Case 1: Criação Automatizada de Repositório</h3>
<p>A automação da criação de repositórios permite padronizar projetos, acelerar o onboarding e garantir rastreabilidade. O usuário solicita a criação de um novo repositório com README e .gitignore via linguagem natural.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant 👤 Usuário
    participant 🤖 MCPilot
    participant 🐙 GithubAPI
    participant 📦 Repositório
    👤 Usuário-&gt;&gt;🤖 MCPilot: Solicita criação de repositório
    🤖 MCPilot-&gt;&gt;🐙 GithubAPI: Cria repositório
    🐙 GithubAPI--&gt;&gt;📦 Repositório: Repositório criado
    📦 Repositório--&gt;&gt;👤 Usuário: Exibe link e sucesso
</code></pre>
<h4 id="heading-prompt">Prompt</h4>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Agora quero que vc crie um novo repositório chamado golang_project_template, com uma estrutura básica para desenvolvimento de projetos. Considere:</p>
<ul>
<li>iac</li>
<li>docs</li>
<li>README</li>
</ul>
<p>Inclua outras pastas ou recomendações para este tipo de projeto</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Repositório golang_project_template criado com sucesso!</p>
<p>Estrutura inicial recomendada já está disponível, incluindo:</p>
<ul>
<li>cmd/ (binários)</li>
<li>pkg/ (código reutilizável)</li>
<li>internal/ (código privado)</li>
<li>api/ (definições de API)</li>
<li>configs/ (configurações)</li>
<li>scripts/ (scripts utilitários)</li>
<li>build/ (build/CI)</li>
<li>deployments/ (manifests de deploy)</li>
<li>iac/ (infraestrutura como código)</li>
<li>docs/ (documentação)</li>
<li>tests/ (testes automatizados)</li>
<li>.gitignore (padrão Go e mercado)</li>
<li>README.md (explicativo e com recomendações)</li>
</ul>
<p><strong>Link do repositório:</strong> https://github.com/tiagonpsilva/golang_project_template</p>
<p><strong>Recomendações</strong>:</p>
<ul>
<li>Use <code>cmd/</code> para separar binários.</li>
<li>Coloque código compartilhado em <code>pkg/</code> e privado em <code>internal/</code>.</li>
<li>Documentação sempre em <code>docs/</code>.</li>
<li>Scripts de infraestrutura em <code>iac/</code>.</li>
<li>Testes em <code>tests/</code>.</li>
<li>Configurações versionadas em <code>configs/</code>.</li>
</ul>
<p>Toda a operação, estrutura e recomendações foram registradas no log estruturado conforme solicitado.</p>
<p>Se quiser adicionar exemplos de código, pipelines, templates de PR/issue ou outra melhoria, é só pedir!</p>
</blockquote>
<h4 id="heading-log-registrado">Log Registrado</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:55:43.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"295968f7-2c01-4a6a-ab6c-c1d4bf74d6eb"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">2500</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"criar_repositorio_golang_project_template"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">12000</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"repo"</span>: <span class="hljs-string">"golang_project_template"</span>,
    <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/golang_project_template"</span>,
    <span class="hljs-attr">"estrutura"</span>: [<span class="hljs-string">"cmd/"</span>,<span class="hljs-string">"pkg/"</span>,<span class="hljs-string">"internal/"</span>,<span class="hljs-string">"api/"</span>,<span class="hljs-string">"configs/"</span>,<span class="hljs-string">"scripts/"</span>,<span class="hljs-string">"build/"</span>,<span class="hljs-string">"deployments/"</span>,<span class="hljs-string">"iac/"</span>,<span class="hljs-string">"docs/"</span>,<span class="hljs-string">"tests/"</span>,<span class="hljs-string">".gitignore"</span>,<span class="hljs-string">"README.md"</span>],
    <span class="hljs-attr">"recomendacoes"</span>: [<span class="hljs-string">"Use cmd/ para binários"</span>,<span class="hljs-string">"Coloque código compartilhado em pkg/ e privado em internal/"</span>,<span class="hljs-string">"Documentação em docs/"</span>,<span class="hljs-string">"Infraestrutura em iac/"</span>,<span class="hljs-string">"Testes em tests/"</span>,<span class="hljs-string">"Configurações versionadas em configs/"</span>]
  }
}
</code></pre>
<h4 id="heading-resultado">Resultado</h4>
<p>O repositório foi criado automaticamente pelo agente MCPilot, seguindo as melhores práticas de estruturação para projetos em Go. A estrutura recomendada inclui diretórios para binários, código reutilizável, documentação, infraestrutura como código, testes automatizados e arquivos essenciais como README e .gitignore. Isso acelera o início de novos projetos, padroniza o ambiente de desenvolvimento e facilita o onboarding de novos membros. O link do repositório e a estrutura criada ficam disponíveis para consulta e colaboração imediata.</p>
<p><img src="files/novo-repo.png" alt="Novo repositório criado" /></p>
<hr />
<h3 id="heading-case-2-geracao-de-artefato-de-arquitetura-com-base-no-codigo">🏗️ Case 2: Geração de Artefato de Arquitetura com Base no Código</h3>
<p>A documentação visual dos fluxos principais de um sistema é fundamental para onboarding, manutenção e comunicação entre times. Utilizando IA, é possível gerar diagramas de sequência automaticamente a partir da análise do código e de prompts em linguagem natural, acelerando a criação de artefatos arquiteturais.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant 👤 Usuário
    participant 🤖 MCPilot
    participant 🧠 LLM
    participant 📄 Artefato
    👤 Usuário-&gt;&gt;🤖 MCPilot: Solicita diagrama de sequência dos fluxos principais
    🤖 MCPilot-&gt;&gt;🧠 LLM: Analisa código e gera diagrama
    🧠 LLM--&gt;&gt;📄 Artefato: Diagrama de sequência gerado
    📄 Artefato--&gt;&gt;👤 Usuário: Exibe diagrama pronto para documentação
</code></pre>
<h3 id="heading-prompt-1">Prompt</h3>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>quero que vc leia o repositório novamente e gere um diagrama de sequencia com o detalhamento dos principais fluxos</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Vou gerar um diagrama de sequência detalhando os principais fluxos do projeto "calculadora-ganho-capital", com base na leitura dos arquivos principais do repositório.</p>
</blockquote>
<pre><code>(Diagrama gerado como código no padrão Mermaid)

 sequenceDiagram
    participant Usuário
    participant main.py
    participant CalculadoraGanhoCapital
    participant Arquivo_JSON

    Usuário-&gt;&gt;main.py: Executa python main.py &lt;arquivo.json&gt;
    main.py-&gt;&gt;Arquivo_JSON: Lê operações <span class="hljs-keyword">do</span> arquivo <span class="hljs-built_in">JSON</span>
    main.py-&gt;&gt;CalculadoraGanhoCapital: Instancia classe CalculadoraGanhoCapital
    loop Para cada operação
        main.py-&gt;&gt;CalculadoraGanhoCapital: processar_operacao(operação)
        CalculadoraGanhoCapital--&gt;&gt;main.py: Retorna imposto calculado
    end
    main.py-&gt;&gt;Usuário: Exibe resultado (impostos por operação)

    alt Processamento de arquivo de operações
        main.py-&gt;&gt;CalculadoraGanhoCapital: processar_arquivo(<span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">arquivo.json</span>&gt;</span>)
        CalculadoraGanhoCapital-&gt;&gt;Arquivo_JSON: Lê lista de operações
        loop Para cada operação
            CalculadoraGanhoCapital-&gt;&gt;CalculadoraGanhoCapital: processar_operacao(operação)
        end
        CalculadoraGanhoCapital--&gt;&gt;main.py: Retorna lista de impostos
        main.py-&gt;&gt;Usuário: Exibe resultados consolidados
    end</span>
</code></pre><h4 id="heading-log-registrado-1">Log Registrado</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:35:00.0NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"12345678-aaaa-bbbb-cccc-1234567890ab"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">900</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"gerar_diagrama_sequencia"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">3500</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"mermaid"</span>: <span class="hljs-string">"sequenceDiagram... (conteúdo do diagrama)"</span>
  }
}
</code></pre>
<h4 id="heading-resultado-1">Resultado</h4>
<p>No 🏗️ Case 2, a IA gerou automaticamente um diagrama de sequência detalhando os principais fluxos do projeto, a partir da análise do código-fonte. Esse artefato visual pode ser utilizado em documentações técnicas, apresentações, revisões de arquitetura e onboarding de novos desenvolvedores, promovendo alinhamento e clareza sobre o funcionamento do sistema. O diagrama pode ser facilmente incorporado em wikis ou exportado para apresentações.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant Usuário
    participant main.py
    participant CalculadoraGanhoCapital
    participant Arquivo_JSON

    Usuário-&gt;&gt;main.py: Executa python main.py &lt;arquivo.json&gt;
    main.py-&gt;&gt;Arquivo_JSON: Lê operações do arquivo JSON
    main.py-&gt;&gt;CalculadoraGanhoCapital: Instancia classe CalculadoraGanhoCapital
    loop Para cada operação
        main.py-&gt;&gt;CalculadoraGanhoCapital: processar_operacao(operação)
        CalculadoraGanhoCapital--&gt;&gt;main.py: Retorna imposto calculado
    end
    main.py-&gt;&gt;Usuário: Exibe resultado (impostos por operação)

    alt Processamento de arquivo de operações
        main.py-&gt;&gt;CalculadoraGanhoCapital: processar_arquivo(&lt;arquivo.json&gt;)
        CalculadoraGanhoCapital-&gt;&gt;Arquivo_JSON: Lê lista de operações
        loop Para cada operação
            CalculadoraGanhoCapital-&gt;&gt;CalculadoraGanhoCapital: processar_operacao(operação)
        end
        CalculadoraGanhoCapital--&gt;&gt;main.py: Retorna lista de impostos
        main.py-&gt;&gt;Usuário: Exibe resultados consolidados
    end
</code></pre>
<hr />
<h3 id="heading-case-3-criacao-de-issues-de-melhoria-via-ia">📝 Case 3: Criação de Issues de Melhoria via IA</h3>
<p>Ao analisar um projeto Python de cálculo de imposto sobre ganho de capital, identificou-se a necessidade de melhorias em segurança, observabilidade, escalabilidade, boas práticas e desempenho. Utilizando o agente Github MCPilot, foi possível gerar issues automaticamente, promovendo governança e rastreabilidade.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant 👤 Usuário
    participant 🤖 MCPilot
    participant 🐙 GithubAPI
    participant 📝 Issues
    👤 Usuário-&gt;&gt;🤖 MCPilot: Solicita melhorias via prompt
    🤖 MCPilot-&gt;&gt;🐙 GithubAPI: Cria issues
    🐙 GithubAPI--&gt;&gt;📝 Issues: Issues criadas
    📝 Issues--&gt;&gt;👤 Usuário: Visualiza issues no Github
</code></pre>
<h4 id="heading-prompt-2">Prompt</h4>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Gere cinco issues no repositório com melhorias de:</p>
<ul>
<li>Segurança</li>
<li>Observabilidade</li>
<li>Escalabilidade</li>
<li>Boas Práticas</li>
<li>Desempenho</li>
</ul>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Cinco issues de melhorias foram criadas no repositório "calculadora-ganho-capital", cada uma focada em um aspecto essencial:</p>
<ol>
<li><p><strong>Segurança:</strong>  <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/7">Melhoria de Segurança: Validação de entradas e tratamento de dados sensíveis</a>
Implementar validação rigorosa das entradas do usuário e garantir tratamento seguro de dados sensíveis para evitar vulnerabilidades como injection e vazamento de informações.</p>
</li>
<li><p><strong>Observabilidade:</strong>  <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/8">Melhoria de Observabilidade: Logging estruturado e métricas</a>
Adicionar logging estruturado e coleta de métricas para monitorar o funcionamento do sistema, facilitando a detecção de erros e análise de uso.</p>
</li>
<li><p><strong>Escalabilidade:</strong>  <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/9">Melhoria de Escalabilidade: Suporte a múltiplos arquivos e processamento paralelo</a>
Permitir o processamento de múltiplos arquivos de operações em paralelo, otimizando o desempenho para grandes volumes de dados.</p>
</li>
<li><p><strong>Boas Práticas:</strong>  <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/10">Boas Práticas: Padronização de código e documentação</a>
Revisar o código para garantir padronização (PEP8), adicionar docstrings e melhorar a documentação para facilitar a manutenção e colaboração.</p>
</li>
<li><p><strong>Desempenho:</strong>  <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/11">Desempenho: Otimização de cálculos e uso de memória</a>
Analisar e otimizar os algoritmos de cálculo de imposto para reduzir o tempo de execução e o consumo de memória, especialmente em grandes volumes de operações.</p>
</li>
</ol>
<p>Todas as issues já estão abertas e disponíveis para acompanhamento no GitHub! Se quiser editar, priorizar ou detalhar alguma delas, é só avisar.</p>
</blockquote>
<h4 id="heading-log-registrado-2">Log Registrado</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:41:19.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"189303d3-1c7e-44a7-809d-8f0773be0a1e"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">1800</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"criar_issues_melhorias"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">4000</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"issues"</span>: [
      {<span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"Melhoria de Segurança: Validação de entradas e tratamento de dados sensíveis"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/7"</span>},
      {<span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"Melhoria de Observabilidade: Logging estruturado e métricas"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/8"</span>},
      {<span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"Melhoria de Escalabilidade: Suporte a múltiplos arquivos e processamento paralelo"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/9"</span>},
      {<span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"Boas Práticas: Padronização de código e documentação"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/10"</span>},
      {<span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"Desempenho: Otimização de cálculos e uso de memória"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/issues/11"</span>}
    ]
  }
}
</code></pre>
<h4 id="heading-resultado-2">Resultado</h4>
<p>No 📝 Case 3, o agente MCPilot criou automaticamente cinco issues de melhoria no repositório, cada uma abordando um aspecto fundamental: segurança, observabilidade, escalabilidade, boas práticas e desempenho. Isso garante rastreabilidade das demandas de evolução, facilita o acompanhamento pelo time e promove uma cultura de melhoria contínua. As issues já estão disponíveis para priorização, detalhamento e atribuição no GitHub.</p>
<p><img src="files/issues.png" alt="Lista de issues geradas" /></p>
<p><img src="files/issue-detalhe01.png" alt="Detalhe de uma issue criada" /></p>
<hr />
<h3 id="heading-case-4-fluxo-completo-de-pull-request-com-ia">🔀 Case 4: Fluxo Completo de Pull Request com IA</h3>
<p>A automação do fluxo de pull request (PR) com IA permite criar, revisar e aprovar mudanças de forma colaborativa e auditável, integrando logs e sugestões de melhoria.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant 👤 Dev
    participant 🤖 MCPilot
    participant 🐙 Github
    participant 👀 Reviewer
    👤 Dev-&gt;&gt;🤖 MCPilot: Solicita criação de PR
    🤖 MCPilot-&gt;&gt;🐙 Github: Cria PR
    🐙 Github--&gt;&gt;👤 Dev: Retorna link do PR
    👀 Reviewer-&gt;&gt;🤖 MCPilot: Solicita revisão automática
    🤖 MCPilot-&gt;&gt;🐙 Github: Adiciona comentários e aprovações
    🐙 Github--&gt;&gt;👀 Reviewer: Retorna status
</code></pre>
<h4 id="heading-prompt-3">Prompt</h4>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Agora quero que vc abra uma PR para implementação de melhorias de observabilidade</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Para abrir uma Pull Request (PR) de melhorias de observabilidade, preciso seguir o fluxo Git-flow:</p>
<ol>
<li>Criar um novo branch a partir do <code>main</code> (ou branch padrão).</li>
<li>Sugerir um nome para o branch (exemplo: feature/observabilidade-logging).</li>
<li>Você pode fazer commits diretamente ou me informar os arquivos/códigos a serem alterados.</li>
<li>Subir as alterações e abrir a PR com descrição clara.</li>
</ol>
<p>(Aguardando confirmação do usuário)</p>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Pode criar a nova branch vazia. Use o nome de branch sugerida e partir da main. Não se esqueça dos logs</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Branch feature/observabilidade-logging criada com sucesso a partir da main, pronta para implementação das melhorias de observabilidade.</p>
<p>O log estruturado dessa operação foi gravado corretamente.</p>
<p>Houve uma instabilidade ao tentar abrir a Pull Request automaticamente. Deseja que eu tente novamente abrir a PR agora, ou prefere abrir manualmente pelo GitHub? Se quiser que eu tente novamente, é só confirmar!</p>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Consulte as PRs abertas para este repositório</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Atualmente há uma Pull Request aberta para melhorias de observabilidade no repositório "calculadora-ganho-capital":</p>
<ul>
<li><strong>Título:</strong> feat(observabilidade): logging estruturado, métricas de execução e configuração dinâmica do nível de log</li>
<li><strong>Descrição:</strong> Implementa logging estruturado (JSON) em todos os pontos-chave do fluxo, métricas de execução (tempo, quantidade de operações, erros) e configuração dinâmica do nível de log via argumento de linha de comando (--log-level).</li>
<li><strong>Autor:</strong> tiagonpsilva</li>
<li><strong>Status:</strong> Aberta</li>
<li><strong>Link:</strong> <a target="_blank" href="https://github.com/tiagonpsilva/calculadora-ganho-capital/pull/6">Ver PR no GitHub</a></li>
</ul>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Quero o log desta operacao</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>O log estruturado da operação de consulta das PRs abertas foi gravado com sucesso.</p>
<p>Se quiser visualizar o conteúdo do log ou registrar mais alguma operação, é só pedir! Todas as próximas interações MCP também serão registradas automaticamente conforme as regras do agente.</p>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Faça um code review das mudanças propostas nesta PR (nao se esqueça de logar)</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Code review realizado e comentário publicado na PR #6.</p>
<p>O log estruturado desta operação foi gravado com sucesso, incluindo:</p>
<ul>
<li>Pontos positivos da implementação</li>
<li>Sugestões de melhoria</li>
<li>Link direto para o comentário do review:  https://github.com/tiagonpsilva/calculadora-ganho-capital/pull/6#pullrequestreview-2873180056</li>
</ul>
<p>Se quiser visualizar o conteúdo do log, revisar outro PR ou realizar mais alguma ação, é só pedir!</p>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Liste o comentário feito no code review e faça um log da operação</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Aqui estão os principais comentários feitos no code review da PR #6:</p>
<ol>
<li><strong>processar_compra:</strong> Atualize a docstring para incluir o parâmetro logger.</li>
<li><strong>processar_venda:</strong> Atualize a docstring para incluir o parâmetro logger.</li>
<li><strong>processar_operacao:</strong> Atualize a docstring para incluir o parâmetro logger.</li>
<li><strong>calcular_impostos:</strong> Atualize a docstring para incluir o parâmetro logger.</li>
<li><strong>processar_arquivo:</strong> Atualize a docstring para incluir o parâmetro logger.</li>
<li><strong>test_quantidade_para_venda:</strong> Troque assertRaises(Exception) por assertRaises(ValueError) para maior precisão.</li>
</ol>
<p>O log estruturado desta operação foi gravado com sucesso, incluindo todos os comentários listados.</p>
<p>Se quiser visualizar o conteúdo do log, revisar outro PR ou realizar mais alguma ação, é só pedir!</p>
</blockquote>
<h4 id="heading-log-registrado-3">Log Registrado</h4>
<h4 id="heading-criacao-de-branch-para-observabilidade">Criação de branch para observabilidade</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:46:26.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"a58ac7e1-6dcd-4834-9db2-2a703add6223"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">500</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"criar_branch_observabilidade"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">1200</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"branch"</span>: <span class="hljs-string">"feature/observabilidade-logging"</span>,
    <span class="hljs-attr">"base"</span>: <span class="hljs-string">"main"</span>,
    <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/tree/feature/observabilidade-logging"</span>
  }
}
</code></pre>
<h4 id="heading-consulta-de-prs-abertas">Consulta de PRs abertas</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:48:55.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"d2eb8d2c-440a-4dd3-bb54-d610406f6ada"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">400</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"consultar_prs_abertas"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">900</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"prs"</span>: [
      {<span class="hljs-attr">"numero"</span>: <span class="hljs-number">6</span>, <span class="hljs-attr">"titulo"</span>: <span class="hljs-string">"feat(observabilidade): logging estruturado, métricas de execução e configuração dinâmica do nível de log"</span>, <span class="hljs-attr">"autor"</span>: <span class="hljs-string">"tiagonpsilva"</span>, <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/pull/6"</span>}
    ]
  }
}
</code></pre>
<h4 id="heading-code-review-realizado">Code review realizado</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:50:04.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"ea549e91-9120-4536-91dd-eedf75f59fc0"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">1200</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"code_review_pr_6"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">27000</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"pr"</span>: <span class="hljs-number">6</span>,
    <span class="hljs-attr">"comentario_url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital/pull/6#pullrequestreview-2873180056"</span>,
    <span class="hljs-attr">"pontos_positivos"</span>: [
      <span class="hljs-string">"Logging estruturado em JSON"</span>,
      <span class="hljs-string">"Métricas de execução"</span>,
      <span class="hljs-string">"Configuração dinâmica do nível de log"</span>,
      <span class="hljs-string">"Logger propagado para métodos principais"</span>,
      <span class="hljs-string">"Teste para venda maior que disponível"</span>
    ],
    <span class="hljs-attr">"sugestoes"</span>: [
      <span class="hljs-string">"Logs de auditoria para exceções"</span>,
      <span class="hljs-string">"Logs de warning para operações incomuns"</span>,
      <span class="hljs-string">"Exemplo do parâmetro --log-level no README"</span>,
      <span class="hljs-string">"Padronizar mensagens de log"</span>
    ]
  }
}
</code></pre>
<h4 id="heading-listagem-de-comentarios-do-code-review">Listagem de comentários do code review</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:52:52.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"8589e71e-0bb4-49c7-a83f-c129acdac991"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">800</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"listar_comentarios_code_review_pr_6"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">2500</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"comentarios"</span>: [
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"processar_compra"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Atualize a docstring para incluir o parâmetro logger."</span>},
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"processar_venda"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Atualize a docstring para incluir o parâmetro logger."</span>},
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"processar_operacao"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Atualize a docstring para incluir o parâmetro logger."</span>},
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"calcular_impostos"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Atualize a docstring para incluir o parâmetro logger."</span>},
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"processar_arquivo"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Atualize a docstring para incluir o parâmetro logger."</span>},
      {<span class="hljs-attr">"autor"</span>: <span class="hljs-string">"gemini-code-assist[bot]"</span>, <span class="hljs-attr">"trecho"</span>: <span class="hljs-string">"test_quantidade_para_venda"</span>, <span class="hljs-attr">"comentario"</span>: <span class="hljs-string">"Troque assertRaises(Exception) por assertRaises(ValueError) para maior precisão."</span>}
    ]
  }
}
</code></pre>
<h4 id="heading-resultado-3">Resultado</h4>
<p>No 🔀 Case 4, o fluxo completo de Pull Request foi automatizado: desde a criação do branch, abertura da PR, consulta das PRs abertas, até a realização de code review com comentários detalhados. O resultado é um processo auditável, colaborativo e transparente, com logs estruturados de cada etapa. O time pode acompanhar o histórico de revisões, sugestões e aprovações diretamente no GitHub, acelerando o ciclo de feedback e a qualidade do código entregue.</p>
<p><img src="files/pr.png" alt="Pull request criado e revisado" /></p>
<hr />
<h3 id="heading-case-5-observabilidade-logging-estruturado-e-metricas">📊 Case 5: Observabilidade — Logging Estruturado e Métricas</h3>
<p>Para garantir rastreabilidade e facilitar auditoria, o agente MCPilot implementa logging estruturado (JSON) em todas as operações, incluindo métricas de execução, erros e sucesso. Isso permite análises detalhadas e exportação para ferramentas de BI.</p>
<pre><code class="lang-mermaid">%%{init: { "themeVariables": { "fontFamily": "Arial", "fontSize": "10px" } }}%%
sequenceDiagram
    participant 👤 Usuário
    participant 🤖 MCPilot
    participant 📄 LogFile
    👤 Usuário-&gt;&gt;🤖 MCPilot: Executa comando MCP
    🤖 MCPilot-&gt;&gt;📄 LogFile: Gera log estruturado
    📄 LogFile--&gt;&gt;👤 Usuário: Log disponível para análise/exportação
</code></pre>
<h4 id="heading-prompt-4">Prompt</h4>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>quero que vc leia a estrutura de logs e gere alguns insights, com base nas informações existentes lá</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Aqui estão alguns insights baseados na análise dos logs estruturados recentes:</p>
<hr />
<p><strong>Fluxo de Trabalho Moderno e Automatizado</strong></p>
<ul>
<li>O uso de comandos como criação de branch, abertura de PR, code review automatizado e geração de issues mostra um fluxo de trabalho alinhado com DevOps e GitHub Actions.</li>
<li>O padrão de logs estruturados facilita auditoria, rastreabilidade e integração com ferramentas de observabilidade.</li>
</ul>
<p><strong>Foco em Qualidade e Melhoria Contínua</strong></p>
<ul>
<li>Foram criadas issues para Segurança, Observabilidade, Escalabilidade, Boas Práticas e Desempenho, indicando preocupação com a evolução contínua do projeto.</li>
<li>O code review destaca pontos positivos e sugestões de melhoria, promovendo cultura de feedback construtivo.</li>
</ul>
<p><strong>Automação e Padronização</strong></p>
<ul>
<li>Logs detalham comandos, parâmetros, resultados e links, permitindo fácil rastreamento de cada ação.</li>
<li>Estruturas de repositório seguem padrões de mercado, com separação clara de responsabilidades.</li>
</ul>
<p><strong>Observabilidade e Transparência</strong></p>
<ul>
<li>Todas as operações relevantes são logadas, incluindo sucesso, falha, duração e detalhes.</li>
<li>O uso de logging estruturado em JSON e métricas de execução nas PRs mostra maturidade em observabilidade.</li>
</ul>
<p><strong>Sugestões para Evolução</strong></p>
<ul>
<li>Manter a documentação dos parâmetros e exemplos de uso sempre atualizada.</li>
<li>Adotar logs de warning e auditoria para eventos críticos, além dos logs de erro.</li>
<li>Utilizar os dados de duração e tokens dos logs para identificar gargalos ou oportunidades de otimização.</li>
</ul>
</blockquote>
<p>📝 <strong>Prompt enviado:</strong></p>
<blockquote>
<p>Gere Métricas e KPIs</p>
</blockquote>
<p>🤖 <strong>Resposta da IA:</strong></p>
<blockquote>
<p>Aqui estão algumas métricas e KPIs extraídos dos últimos 100 registros do log estruturado:</p>
<hr />
<p><strong>KPIs Gerais</strong></p>
<ul>
<li>Total de operações registradas: 11</li>
<li>Operações bem-sucedidas: 11 (100%)</li>
<li>Principais comandos executados: criação de issues, criação de branch e PR, consulta de repositórios e PRs, code review e comentários, criação de repositório template</li>
</ul>
<p><strong>Métricas de Performance</strong></p>
<ul>
<li>Tempo médio de execução das operações: de 1 ms (teste) até 27.000 ms (code review detalhado)</li>
<li>Operações comuns: entre 900 ms e 4.000 ms</li>
</ul>
<p><strong>Engajamento e Automação</strong></p>
<ul>
<li>Issues criadas automaticamente: 5</li>
<li>Branches criadas via automação: 1</li>
<li>Pull Requests abertas via automação: 1</li>
<li>Code reviews automatizados: 1</li>
<li>Repositórios criados via automação: 1</li>
</ul>
<p><strong>Qualidade e Colaboração</strong></p>
<ul>
<li>Sugestões de melhoria em code review: padronização de logs, inclusão de exemplos no README, auditoria e warnings em logs, melhoria de docstrings e precisão em testes</li>
<li>Colaboração registrada: comentários detalhados em PRs, feedbacks construtivos para evolução do código</li>
</ul>
<p><strong>Recomendações para próximos KPIs</strong></p>
<ul>
<li>Taxa de aprovação de PRs</li>
<li>Tempo médio para merge de PR</li>
<li>Tempo entre criação de issue e fechamento</li>
<li>Cobertura de testes automatizados</li>
<li>Evolução do número de repositórios e automações</li>
</ul>
</blockquote>
<h4 id="heading-log-registrado-4">Log Registrado</h4>
<h4 id="heading-exemplo-listagem-de-repositorios">Exemplo: Listagem de repositórios</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:30:25.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"8ce8f08f-d8c1-4664-a134-51139c3a4c36"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">2000</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"listar_repositorios"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">1200</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"repositorios"</span>: [<span class="hljs-string">"genai-mcp-client-claude-github"</span>,<span class="hljs-string">"treinamento-modern-data-stack-01"</span>,<span class="hljs-string">"go-lang-samples"</span>,<span class="hljs-string">"software-architecture-foundations"</span>,<span class="hljs-string">"genai-langchain-tutorial"</span>,<span class="hljs-string">"tiagonpsilva"</span>,<span class="hljs-string">"databricks-certified-data-engineer-associate"</span>,<span class="hljs-string">"genai-claude-code-best-practices"</span>,<span class="hljs-string">"knowledge-base"</span>,<span class="hljs-string">"system-design-interview"</span>]
  }
}
</code></pre>
<h4 id="heading-exemplo-consulta-de-informacoes-de-repositorio">Exemplo: Consulta de informações de repositório</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2025-05-28T00:32:46.3NZ"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"aa5ea466-9732-4b37-ab2d-7305791f3569"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">1200</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"consultar_info_repositorio"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">800</span>,
  <span class="hljs-attr">"details"</span>: {
    <span class="hljs-attr">"repositorio"</span>: {
      <span class="hljs-attr">"nome"</span>: <span class="hljs-string">"calculadora-ganho-capital"</span>,
      <span class="hljs-attr">"url"</span>: <span class="hljs-string">"https://github.com/tiagonpsilva/calculadora-ganho-capital"</span>,
      <span class="hljs-attr">"linguagem"</span>: <span class="hljs-string">"Python"</span>,
      <span class="hljs-attr">"privado"</span>: <span class="hljs-literal">false</span>,
      <span class="hljs-attr">"forks"</span>: <span class="hljs-number">0</span>,
      <span class="hljs-attr">"issues_abertas"</span>: <span class="hljs-number">6</span>,
      <span class="hljs-attr">"estrelas"</span>: <span class="hljs-number">0</span>,
      <span class="hljs-attr">"tamanho_kb"</span>: <span class="hljs-number">191</span>,
      <span class="hljs-attr">"criado_em"</span>: <span class="hljs-string">"2025-03-16T20:33:16Z"</span>,
      <span class="hljs-attr">"atualizado_em"</span>: <span class="hljs-string">"2025-05-27T22:10:04Z"</span>,
      <span class="hljs-attr">"permissoes"</span>: {<span class="hljs-attr">"admin"</span>: <span class="hljs-literal">true</span>, <span class="hljs-attr">"push"</span>: <span class="hljs-literal">true</span>, <span class="hljs-attr">"pull"</span>: <span class="hljs-literal">true</span>}
    }
  }
}
</code></pre>
<h4 id="heading-exemplo-teste-de-logging">Exemplo: Teste de logging</h4>
<pre><code class="lang-json">{
  <span class="hljs-attr">"timestamp"</span>: <span class="hljs-string">"2024-06-07T10:00:00.000Z"</span>,
  <span class="hljs-attr">"level"</span>: <span class="hljs-string">"INFO"</span>,
  <span class="hljs-attr">"request_id"</span>: <span class="hljs-string">"00000000-0000-4000-8000-000000000000"</span>,
  <span class="hljs-attr">"llm"</span>: <span class="hljs-string">"gpt-4"</span>,
  <span class="hljs-attr">"tokens"</span>: <span class="hljs-number">1</span>,
  <span class="hljs-attr">"command"</span>: <span class="hljs-string">"teste_log"</span>,
  <span class="hljs-attr">"user"</span>: <span class="hljs-string">"tiagonpsilva"</span>,
  <span class="hljs-attr">"result"</span>: <span class="hljs-string">"success"</span>,
  <span class="hljs-attr">"duration_ms"</span>: <span class="hljs-number">1</span>,
  <span class="hljs-attr">"details"</span>: {}
}
</code></pre>
<h4 id="heading-resultado-4">Resultado</h4>
<p>No 📊 Case 5, a análise dos logs estruturados permitiu extrair métricas, KPIs e insights sobre o uso do agente MCPilot e a automação dos fluxos de engenharia. O time pode utilizar esses dados para monitorar produtividade, identificar gargalos, auditar operações e alimentar dashboards de BI. O padrão de logging adotado facilita a integração com ferramentas de observabilidade e a geração de relatórios personalizados.</p>
<hr />
<h2 id="heading-conclusao">🎯 Conclusão</h2>
<p>A jornada apresentada neste artigo mostra que a integração de IA com ferramentas já consolidadas no ecossistema de desenvolvimento, como IDEs modernas, GitHub e automação via agentes, não é apenas possível, mas altamente recomendada para times que buscam produtividade, rastreabilidade e governança.</p>
<p>O Github MCPilot, ao unir o poder do protocolo MCP, a segurança e portabilidade do Docker e a flexibilidade das Cursor Rules, representa um novo patamar de automação para times de engenharia. Ele transforma tarefas repetitivas em fluxos inteligentes, auditáveis e seguros, permitindo que desenvolvedores foquem no que realmente importa: entregar valor.</p>
<p>Além disso, a experiência de uso do agente, com saudação personalizada, menu interativo, logging estruturado e validação de ambiente, eleva o padrão de usabilidade e confiança em automações.</p>
<p><strong>Principais aprendizados:</strong></p>
<ul>
<li>A automação inteligente reduz erros, acelera entregas e facilita o onboarding de novos membros.</li>
<li>O uso de protocolos abertos e ferramentas padronizadas (como MCP e Docker) garante portabilidade e segurança.</li>
<li>O registro estruturado de logs e métricas permite auditoria, melhoria contínua e integrações.</li>
<li>A experiência do desenvolvedor é central: interfaces amigáveis, feedbacks claros e proatividade fazem toda a diferença.</li>
</ul>
<p>Se você quiser testar essa abordagem, basta seguir os passos do <a target="_blank" href="https://github.com/tiagonpsilva/mcpilot">Github MCPilot</a>. Fique à vontade para ajustá-lo para o seu caso e usar como base para outros projetos.</p>
<p>Obrigado pela leitura!</p>
<hr />
<h2 id="heading-referencias">📚 Referências</h2>
<ul>
<li>https://www.anthropic.com/news/model-context-protocol</li>
<li>https://docs.cursor.com/get-started/introduction</li>
<li>https://docs.cursor.com/context/rules</li>
<li>https://www.docker.com/blog/introducing-docker-mcp-catalog-and-toolkit/ </li>
</ul>
]]></content:encoded></item><item><title><![CDATA[🤖 IA em Times de Tecnologia: Mais Valor, Menos Esforço (Parte 1)]]></title><description><![CDATA[O uso de IA nas empresas alcançou 72% em 2024, com a IA generativa presente em 65% das organizações, quase dobrando desde 2023 onde era apenas 33%. Empresas líderes em IA reportam aumento de mais de 50% na produtividade em funções críticas como desen...]]></description><link>https://bantu.digital/ia-em-times-de-tecnologia-mais-valor-menos-esforco-parte-1</link><guid isPermaLink="true">https://bantu.digital/ia-em-times-de-tecnologia-mais-valor-menos-esforco-parte-1</guid><category><![CDATA[inteligencia artificial ]]></category><category><![CDATA[produtividade]]></category><category><![CDATA[automação]]></category><dc:creator><![CDATA[Tiago N Pinto Silva]]></dc:creator><pubDate>Tue, 27 May 2025 13:22:09 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352624162/199cbdd1-4690-4ae2-b945-07b6d6f504e5.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>O uso de IA nas empresas alcançou 72% em 2024, com a IA generativa presente em 65% das organizações, quase dobrando desde 2023 onde era apenas 33%. Empresas líderes em IA reportam aumento de mais de 50% na produtividade em funções críticas como desenvolvimento de software e operações. A IA generativa pode automatizar até 70% das atividades em quase todas as ocupações até 2030, acrescentando trilhões de dólares em valor à economia global. Cerca de 5% das empresas que usam IA generativa já atribuem mais de 10% do seu EBIT à utilização eficaz dos modelos. O mercado de IA está crescendo exponencialmente com uma taxa de crescimento anual composta estimada em 37,7%. No contexto atual, adotar AI e automação não é mais diferencial, mas requisito para competitividade.</p>
<h2 id="heading-o-papel-dos-agentes-de-ia">🤝 O Papel dos Agentes de IA</h2>
<p>No contexto dessas transformações, destaca-se o papel dos agentes de IA: softwares inteligentes capazes de interpretar comandos em linguagem natural, orquestrar tarefas complexas, integrar diferentes sistemas e automatizar fluxos de trabalho de ponta a ponta. Esses agentes atuam como copilotos digitais, recebendo instruções dos usuários, entendendo o contexto do negócio e executando ações reais em ferramentas e plataformas diversas.</p>
<p>Ao potencializar a produtividade dos times, reduzir erros manuais e liberar profissionais para atividades mais estratégicas e criativas, os agentes de IA tornam-se peças-chave para a evolução dos processos de engenharia e arquitetura de software.</p>
<p>A seguir, apresento cinco casos de uso práticos que ilustram como esses agentes podem gerar valor imediato e mensurável para equipes de tecnologia.</p>
<h2 id="heading-5-casos-de-uso-onde-a-ia-gera-impacto">🚀 5 Casos de Uso onde a IA gera Impacto</h2>
<h3 id="heading-1-geracao-automatizada-de-artefatos-de-arquitetura-as-is-para-sistemas-legados">1. Geração automatizada de artefatos de arquitetura (AS-IS) para sistemas legados</h3>
<p>Empresas com sistemas legados frequentemente enfrentam falta de documentação e dificuldade para mapear dependências. Agentes de IA, integrados a LLMs e ferramentas de análise estática, geram automaticamente diagramas, mapas de dependências e documentação técnica a partir do código-fonte. O resultado? Redução do tempo de mapeamento de semanas para minutos, documentação sempre atualizada e menor dependência de especialistas.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352715299/7b7834ce-0f61-4873-82bf-9c195c973181.png" alt /></p>
<h3 id="heading-2-criacao-padronizada-de-repositorios">2. Criação padronizada de repositórios</h3>
<p>A criação manual de repositórios consome tempo e pode gerar inconsistências. Com IA, basta um comando em linguagem natural para provisionar repositórios completos, com estrutura padrão, pipelines de CI/CD, templates de documentação e configurações de segurança. Isso reduz o tempo de setup de horas para segundos e garante padronização desde o início.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352746175/262f7b36-d09c-4bba-8aae-c720af47ce2e.png" alt /></p>
<h3 id="heading-3-gestao-automatizada-de-tarefas-para-gestao-de-mudancas">3. Gestão automatizada de tarefas para gestão de mudanças</h3>
<p>Comentários como TODOs e FIXMEs muitas vezes se perdem no código. Agentes de IA varrem o repositório, identificam pendências e convertem automaticamente em issues rastreáveis, atribuindo responsáveis e prazos. Isso aumenta a rastreabilidade, reduz o risco de tarefas esquecidas e facilita auditoria.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352798657/53e4527f-8e8d-42b7-bf31-499e9851662f.png" alt /></p>
<h3 id="heading-4-automacao-de-prs-changelogs-e-releases">4. Automação de PRs, changelogs e releases</h3>
<p>O ciclo de entrega é acelerado com agentes que abrem PRs automaticamente, solicitam revisões, aplicam regras de merge, geram changelogs detalhados e publicam releases completos. O resultado é mais agilidade, menos gargalos e documentação sempre em dia.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352803158/1b0db558-9b70-447b-b324-d4c14044400c.png" alt /></p>
<h3 id="heading-5-auditoria-e-rastreabilidade">5. Auditoria e rastreabilidade</h3>
<p>Para compliance e segurança, agentes de IA centralizam logs estruturados de todas as operações, permitindo consultas detalhadas por usuário, período e tipo de ação. Isso facilita auditorias, investigações e aumenta a confiança do cliente.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1748352812829/fb3b17fc-7460-4b12-9888-bdf1387d6c8b.png" alt /></p>
<h2 id="heading-conclusao">✅ Conclusão</h2>
<p>Equipes que investem tempo em aplicar IA no dia a dia, elaborando prompts especializados, delegando tarefas a agentes inteligentes e aproveitando seus conhecimentos técnicos, colhem ganhos concretos em produtividade, qualidade e inovação. Além disso, liberam tempo para o que realmente importa:</p>
<p>Criar valor para o negócio</p>
<p>Na próxima parte deste artigo, vou apresentar exemplos práticos (mais técnicos), usando estes mesmos casos de uso, integrando agentes inteligentes a ferramentas como IDEs, repositórios de código e novos protocolos de automação.</p>
<p>Obrigado!</p>
<h2 id="heading-referencias">📚 Referências</h2>
<p>https://www.cnnbrasil.com.br/economia/negocios/uso-de-inteligencia-artificial-aumenta-e-alcanca-72-das-empresas-diz-pesquisa/</p>
<p>https://www.mckinsey.com/featured-insights/destaques/repensando-a-ia-generativa-o-que-precisa-mudar-para-transformar-potencial-em-valor-em-2024/pt</p>
<p>https://www.mckinsey.com/featured-insights/destaques/a-organizacao-do-futuro-habilitada-pela-ia-generativa-impulsionada-pelas-pessoas/pt</p>
<p>https://www.mckinsey.com.br/our-insights/all-insights/65-das-empresas-usam-gen-ai-no-mundo</p>
<p>https://www.hostinger.com.br/tutoriais/estatisticas-inteligencia-artificial</p>
]]></content:encoded></item></channel></rss>