<?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" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Guilherme Moreira on Medium]]></title>
        <description><![CDATA[Stories by Guilherme Moreira on Medium]]></description>
        <link>https://medium.com/@guilhermee.moreira?source=rss-9f02556def0f------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*0zIdDLnIN_IW3AaDwRhl2g.jpeg</url>
            <title>Stories by Guilherme Moreira on Medium</title>
            <link>https://medium.com/@guilhermee.moreira?source=rss-9f02556def0f------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Wed, 04 Nov 2026 22:12:55 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@guilhermee.moreira/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Agents lost their disguise and took over your infrastructure]]></title>
            <link>https://medium.com/google-cloud/agents-lost-their-disguise-and-took-over-your-infrastructure-64f3644c060f?source=rss-9f02556def0f------2</link>
            <guid isPermaLink="false">https://medium.com/p/64f3644c060f</guid>
            <category><![CDATA[vibe-coding]]></category>
            <category><![CDATA[google-antigravity]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[artificial-intelligence]]></category>
            <category><![CDATA[google-cloud-platform]]></category>
            <dc:creator><![CDATA[Guilherme Moreira]]></dc:creator>
            <pubDate>Thu, 10 Sep 2026 17:58:09 GMT</pubDate>
            <atom:updated>2026-09-19T15:12:47.655Z</atom:updated>
            <content:encoded><![CDATA[<p>It became easy to produce software, the hard thing is to produce reliable software. A guide to leaving “vibe coding” behind and orchestrating the new autonomous AI programs that are going to save your architecture.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_fhK0Xs6XiytKNX6_cwKow.jpeg" /><figcaption>Illustration generated by Gemini via Nano Banana 2</figcaption></figure><p>Hearing the word “agent” made me associate the term with explosive chases from Mission Impossible, 007 saving the world, or spies full of disguises. Today, when I hear “agents”, I think of autonomous and intelligent software programs, capable of reasoning, planning, and executing complex (or not) tasks without needing our intervention at every line of code.</p><p>On one hand, the Cloud came to make things easier; on the other, infrastructure gained new layers of complexity. After all, who doesn’t want to make the most of what the cloud offers in security, monitoring, data, governance and resources that eliminate the need for manual development?</p><p>The point is that, with every new feature or tool, the system easily turns into a patchwork quilt of fixes with all the duct-taped corrections. The pleasure of designing architectures, solving real problems, and the simple act of coding ended up suffocated by technical debt and toil, a term that SRE (Site Reliability Engineering) uses to name that manual and operational effort that drains engineering teams.</p><p>Artificial Intelligence came with the promise of breaking this cycle, and the turning point happened with the boom of models like Gemini and ChatGPT. In the beginning, the market was captivated by vibe coding, the practice of throwing informal prompts into a chat and copying/pasting blocks of code based on trial and error, without major concerns for testing, architecture, or security.</p><p>It seemed fun and fast, but the corporate day-to-day showed that using an assistant just as an ‘autocomplete’ didn’t solve infrastructure problems; on the contrary, it made systems accumulate bugs and technical debt at record speed.</p><p>With the advancing maturity in the cloud ecosystem, it becomes clear that the real transformation occurs not within a chat window, but when developers move beyond simple prompt engineering to orchestrate autonomous agents and skills to automate entire workflows within a secure environment. The machine isn’t just completing human reasoning in a reactive way, it is designing, orchestrating, and executing complete solutions.</p><h3>What Separates an Agent from a Chatbot?</h3><p>It’s very common to think that any chat window running an LLM (Large Language Model, the artificial intelligence models trained to generate text) is an agent, but it isn’t. While traditional models are reactive (responding only to direct queries), autonomous agents are proactive and goal-driven.</p><p>To understand how an agent “thinks”, imagine the query to a chatbot: “What’s the best way to get to work today? My knee is hurting.”</p><p>A pure language model will use its database to return a generic guess in natural language, full stop.</p><p>An Agent, on the other hand, operates on four pillars: a System Prompt (its persona and guidelines), Memory (accumulated history), State (the exact perception of the current context), and Tools (its connection to the real world). Upon receiving the same question, the agent doesn’t answer immediately because it will be guided by an invisible orchestrator that reasons and acts:</p><ol><li>Accesses the Weather tool and sees if it’s raining.</li><li>Consults the Transport API and confirms if the train line is operating normally.</li><li>Reads your Calendar and realizes you have plenty of time.</li><li>Cross-references all these external variables with the clinical information of your knee pain.</li></ol><p>Only then, it delivers the final decision: “Take the subway and use the east entrance elevator”. Rather than acting like a basic navigation tool, it dynamically evaluated external variables to make an informed recommendation.</p><h3>The Speed Trap, “Shift-Left”, and Antigravity</h3><p>When AI went mainstream, the industry believed that speeding up writing would save systems, but the machine sped up typing, not understanding.</p><p>The bugs got deeper and more expensive, and the irony reaches its peak when the token quota runs out in the middle of the afternoon and the developer is left stranded with their reasoning cut in half, staring at the screen not knowing how to continue what the AI started.</p><p>It was exactly this “operational hangover” that Ícaro, my Tech Lead colleague at a financial institution, experienced in practice. “In the beginning, we had a lot of fun with vibe coding”, he remembers. However, the illusion of speed quickly faded in the next steps of the process; all the time saved on typing ended up swallowed by exhausting sessions of review, investigation, and correction.</p><p>“I realized that the time saved writing code was entirely spent trying to audit the machine’s hallucinations and the new bugs. I stopped being a creator to become a Pull Request reviewer”, Ícaro concludes.</p><p>A 2026 report by Faros AI indicates that Pull Request review times increased by 441% with the adoption of AI. In teams without governance, the Change Failure Rate (CFR), an indicator from DORA metrics (DevOps Research and Assessment, Google’s parameter to evaluate delivery maturity) shot up to 11% due to code generated without supervision. AI granted the superpower of writing systems faster, but brought the burden of piling up vulnerabilities in the same proportion.</p><p>How do we escape this trap? The key lies not in slowing down innovation, but in providing AI with structured context. It is exactly there that Antigravity changes the dynamic of the game, embracing the Shift-Left Security philosophy.</p><p>“Pushing to the left” consists of anticipating security to the beginning of the project’s timeline; in practice, your system is already shielded the instant your finger touches the first key.</p><p>Antigravity 2.0 operates like a dedicated security engineer observing every code line of your project. It understands the entire repository, but avoids overloading the AI’s context window. Instead, it applies local governance directories (.agents/rules/ and .agents/skills/) to deliver security policies and corporate standards with surgical precision.</p><p>If a query contains a potential SQL Injection vulnerability, the system flags the issue. And this orchestration follows the environment you are in, if the mission is to design an API specification, it acts integrated with Apigee, if the goal is to fish for insights, it breathes inside BigQuery, and so on.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pwfoY1Sh6Z7qm7Y7p3_guQ.jpeg" /><figcaption><em>The guardian of Shift-Left: intercepting vulnerabilities before ‘Ctrl+S’. Illustration generated by Gemini via Nano Banana 2</em></figcaption></figure><p>Architecture and security cease to be a patch in the final stretch of the delivery, they are born together with the code.</p><h3>The Cure against Hallucinations and Leaks</h3><p>So that precision and security don’t get lost along the way, Google standardized two strategies:</p><ol><li><strong>Privacy by Design: </strong>When you connect Cloud Sensitive Data Protection (by API or using resources like Model Armor), it is possible to check and scrub sensitive data before it reaches the AI agent. Through masking or tokenization, the model works only with protected information, guaranteeing the security of your confidential data, thus facilitating compliance with norms like the GDPR.</li><li><strong>Grounding with RAG: </strong>To mitigate hallucinations, the model relies on verified internal databases (such as manuals and corporate repositories). Furthermore, the system can be configured to cite the exact origin of the information, guaranteeing much more precise, transparent, and invention-free answers.</li></ol><h3>GitOps and “Human-in-the-Loop”</h3><p>Now that the AI is shielded against leaks and hallucinations, the challenge ceases to be data precision and becomes the control of actions. If the code assistants of the past were just reactive co-pilots, Antigravity (led by the Antigravity 2.0 app, powered by its CLI and recently natively embedded in VS Code, JetBrains, and Zed) is your autonomous command center.</p><p>Throwing an agent into a blank repository and crossing your fingers is not an engineering strategy. The future of development demands that human work stops focusing on writing loose lines and starts defining the rules, the intent, the business limits so that the agent acts within them. But how to trust an autonomous robot writing infrastructure (like Terraform or Docker files) alone? The answer lies in GitOps and Plan Mode.</p><p>The doctrine says that “if it’s not in version control, it doesn’t exist”. Antigravity does not modify production environments directly. Prior to execution, it generates actionable Artifacts (like detailed Implementation Plans, interactive Walkthroughs, and Code Diffs), lists exactly what it intends to change, and locks the operation, meaning, the AI doesn’t touch anything unless you, the “technical director”, audit the proof that the code meets the specification and click “Approve”.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*D0yfYpOQkT7z92GZ13OkAQ.jpeg" /><figcaption>The end of the blind deploy: in GitOps with AI, the human is the final judge. Illustration generated by Gemini via Nano Banana 2.</figcaption></figure><h3>Orchestrating the Swarm: Workflow Agents, State, and MCP</h3><p>The Gemini Enterprise Agent Platform provides a framework for next-generation systems architecture. While business users map agents visually with Agent Studio (a low-code canvas), software engineering trusts the health of the production environment to the Agent Development Kit (ADK), the open-source framework that changes the developer’s mindset from “prompt engineering” to “distributed agent architecture”.</p><p>Imagine you need to analyze a complex server crash incident. The amateur dev throws an endless block of raw logs into the generic chat and hopes it works. The engineer fluent in ADK orchestrates Workflow Agents in logical and precise architectural patterns. A Sequential pattern builds a linear production pipeline step by step. A Parallel pattern throws multiple specialist robots to chew through different data sources at the same time.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SUIrMA5MEgCDbvnc8scbBQ.png" /></figure><p>To support production-grade operations, this AI architecture relies on three core pillars:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*5URLy1XumE4e0V5RCssP2g.png" /></figure><p>See how the ADK orchestrates an agent’s communication with corporate systems in practice, like in this example where an autonomous financial agent cross-references internal data with the outside world:</p><pre>from google.adk import tools<br>from google.adk.agents.llm_agent import Agent<br><br><br># Custom function to simulate enterprise metrics retrieval<br>@tools.function_tool<br>def fetch_enterprise_metrics(metric_id: str) -&gt; dict:<br>  &quot;&quot;&quot;Fetches enterprise metrics by the metric identifier.<br><br>  Args:<br>      metric_id: The identifier for the desired metric (e.g., &#39;Q3_REVENUE&#39;).<br><br>  Returns:<br>      A dictionary containing the status and value of the metric.<br>  &quot;&quot;&quot;<br>  # Simulating business data<br>  return {&quot;status&quot;: &quot;optimal&quot;, &quot;value&quot;: 15000000.00}<br><br><br># Instantiating the agent<br>agent = Agent(<br>    name=&quot;Enterprise_Finance_Agent&quot;,<br>    model=&quot;gemini-3.7-flash&quot;,<br>    instructions=(<br>        &quot;You act as an enterprise financial agent. Respond professionally and cross-reference metrics with current market data.&quot;<br>    ),<br>    tools=[fetch_enterprise_metrics, tools.google_search],<br>)<br><br># Execution entry point<br>if __name__ == &quot;__main__&quot;:<br>  result = agent.run(<br>      &quot;Fetch the &#39;Q3_REVENUE&#39; metric and cross-reference it with current market&quot;<br>      &quot; news.&quot;<br>  )<br>  print(result)</pre><p>While Tools connect AI agents to external systems, governance and context are established via Rules and Skills.</p><p>The Rules (usually saved in .agents/rules/) are the “house rules”, defining global and non-negotiable guidelines. They are always active and ensure the agent respects the project’s ecosystem as a whole.</p><p>The Skills, on the other hand, guarantee compliance on demand. Saved as Markdown in the .agents/skills/ directory, they operate by progressive disclosure, making the context only be injected if the developer’s task matches the Skill description.</p><p>This is an example of governance in source code using a Skill, where the AI is only instructed to do the security audit if the developer is specifically messing with databases or authentication:</p><pre>---<br>name: foocorp-security-audit<br>description: Review code changes for corporate security vulnerabilities. Use when implementing authentication or database queries.<br>---<br># Corporate Security Audit Guidelines<br><br>## Review Checklist<br>1. **SQL Injection Prevention**: All database queries must strictly use parameterized statements. Using string formatting or concatenation to build queries is strictly prohibited.<br>2. **Authentication**: Verify that the application correctly integrates with the corporate IAM (Identity and Access Management) for all authentication flows.<br>3. **Logging**: Ensure that no Personally Identifiable Information (PII) is ever printed or saved in the application logs.<br><br>## Execution Rules<br>- Always generate a walkthrough artifact summarizing the changes and the results of the security audit.<br>- **HALT EXECUTION**: If a security vulnerability is found during the review, you must halt the execution and request human approval before applying any fixes or proceeding with the task.</pre><p>(To visualize how this architecture works in practice, the diagram below illustrates the exact chronology of the shared state flow and the tool calling via MCP):</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/784/1*CsGcyKH7BndQy300cckg_Q.png" /><figcaption>Anatomy of the Swarm: How the Agent Development Kit (ADK) routes context without relying on luck.</figcaption></figure><h3>The Art of Directing, Not Just Typing</h3><p>The trinity Gemini Enterprise, Antigravity, and ADK ends the AI testing phase in development and initiates the Invisible Platform. The heavy infrastructure now runs on autopilot in the background, the toil disappears from your sprint, and engineering finally gains mental space to focus on true innovation.</p><p>Instead of wasting hours configuring environments or fighting against a code’s syntax, the role of engineering becomes much more managerial; professionals design the business vision and structure the agents’ rules, when the machine proposes a change, they assume the role of auditors in Plan Mode and, after validation, carry out the deploy of the robots.</p><p>Engineering went back to being about solving complex problems and creating architectures that work. And the best of all is that now you can drink your coffee while it’s still hot.</p><h4><strong>Five concepts for you to master this week and accelerate your transition to the AI SDLC:</strong></h4><ol><li><strong>Shift-Left at the Source: </strong>Antigravity becomes your private security guard with total context of the repository. You kill the vulnerability long before the idea of running a git commit crosses your mind.</li><li><strong>Workflow Agents against the “LLM Roulette”: </strong>Stop hoping the AI guesses the flow. The rule now is to use deterministic engines like the ADK. You tie sub-agents into logical pipelines and take luck out of the equation.</li><li><strong>Zero-Trust AI: </strong>Never hand over raw sensitive data to the AI, demand tokenization via Cloud DLP and put an end to hallucinations by forcing Grounding straight into the company’s official documentations.</li><li><strong>GitOps as Gatekeepers: </strong>You audit all the impact in Plan Mode before releasing any execution; the human in control is non-negotiable.</li><li><strong>The “USB-C” of AI (MCP): </strong>The manual labor of custom integrations is over. The Model Context Protocol (MCP) is the universal adapter that connects agents to external tools with absolute security.</li></ol><p>If this transition seems challenging at first, it’s worth remembering that no one needs to face this new scenario alone. Tools like Gemini itself are always available to support everyone from the developer with doubts in the terminal, to the infrastructure operations engineer and the leadership that orchestrates the strategy throughout this learning curve.</p><p>“Gemini, help me take the first step with the Model Context Protocol. How do I create an MCP Server on my machine so my agent can read a local file safely?”</p><p>But, far beyond technology, the greatest support network resides in the Googler community. There are professionals propelling the ecosystem, diving deep into studies, and working hard to ensure that all these AI practices are implemented in a responsible, secure, and humanized way. Technology orchestrates, but it’s people who give the direction.</p><p>P.S.: Although the theme celebrates automation and the power of Artificial Intelligence, this text was written with a lot of reflection, coffee breaks, and without the use of AI.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/716/1*pgg9wL2sxZu5zyvqfN-gAA.jpeg" /><figcaption>Meme via X, <a href="http://twitter.com/catalinmpit">@catalinmpit</a>: Vibe coding is easy. Vibe debugging is the hard part.</figcaption></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=64f3644c060f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/google-cloud/agents-lost-their-disguise-and-took-over-your-infrastructure-64f3644c060f">Agents lost their disguise and took over your infrastructure</a> was originally published in <a href="https://medium.com/google-cloud">Google Cloud - Community</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Os agentes perderam o disfarce e assumiram sua infraestrutura]]></title>
            <link>https://medium.com/@guilhermee.moreira/os-agentes-perderam-o-disfarce-e-assumiram-sua-infraestrutura-7d3a9b8d0931?source=rss-9f02556def0f------2</link>
            <guid isPermaLink="false">https://medium.com/p/7d3a9b8d0931</guid>
            <category><![CDATA[google-cloud-platform]]></category>
            <category><![CDATA[artificial-intelligence]]></category>
            <category><![CDATA[google-antigravity]]></category>
            <category><![CDATA[vibe-coding]]></category>
            <dc:creator><![CDATA[Guilherme Moreira]]></dc:creator>
            <pubDate>Thu, 10 Sep 2026 17:13:51 GMT</pubDate>
            <atom:updated>2026-09-11T16:02:28.554Z</atom:updated>
            <content:encoded><![CDATA[<p><em>Ficou fácil produzir software, difícil é produzir software confiável. Um guia para deixar o “vibe coding” e orquestrar os novos programas autônomos de IA que vão salvar sua arquitetura.</em></p><p><a href="https://medium.com/@guilhermee.moreira/agents-lost-their-disguise-and-took-over-your-infrastructure-64f3644c060f">Read in English</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_fhK0Xs6XiytKNX6_cwKow.jpeg" /><figcaption>Ilustração gerada pelo Gemini via Nano Banana 2</figcaption></figure><p>Ouvir a palavra “agente” me fazia associar o termo com perseguições explosivas de Missão Impossível, no 007 salvando o mundo ou em espiões cheios de disfarces. Hoje, quando escuto “agentes”, penso em programas de software autônomos e inteligentes, capazes de raciocinar, planejar e executar tarefas complexas (ou não) sem precisarem da nossa intervenção a cada linha de código.</p><p>Por um lado, a Cloud veio para facilitar, por outro, a infraestrutura ganhou novas camadas de complexidade. Afinal, quem não quer aproveitar ao máximo o que a nuvem oferece em segurança, monitoramento, dados, governança e recursos prontos que dispensam o desenvolvimento manual? O ponto é que, a cada nova <em>feature</em> ou ferramenta, o sistema facilmente vira uma colcha de retalhos de <em>fixes </em>com todos os puxadinhos de correções. O prazer de desenhar arquiteturas, resolver problemas reais e o simples ato de codar acabaram sufocados pelo débito técnico e pelo <em>toil</em>, termo que o SRE (Site Reliability Engineering) usa para batizar aquele esforço manual e operacional que drena os times de engenharia.</p><p>A Inteligência Artificial veio com a promessa de romper esse ciclo, e a virada de chave aconteceu com o boom de modelos como o Gemini e o ChatGPT. No início, o mercado foi cativado pelo <em>vibe coding</em>, a prática de jogar prompts informais em um chat e copiar/colar blocos de código na base da tentativa e erro, sem grandes preocupações com testes, arquitetura ou segurança. Parecia divertido e rápido, mas o dia a dia corporativo mostrou que usar um assistente só como um ‘autocompletar’ não resolveu os problemas de infraestrutura, pelo contrário, isso fez os sistemas acumularem bugs e débito técnico em velocidade recorde.</p><p>Com o avanço da maturidade no ecossistema de nuvem, fica claro que a verdadeira revolução não acontece na interface de um chat, ela ocorre quando os desenvolvedores deixam de ser apenas ‘usuários de prompts’ e passam a orquestrar agentes autônomos e <em>skills</em> para automatizar fluxos inteiros de trabalho dentro de um ambiente seguro. A máquina não está apenas completando o raciocínio humano de forma reativa, ela está projetando, orquestrando e executando soluções completas.</p><h3>O que separa um Agente de um Chatbot?</h3><p>É muito comum achar que qualquer janela de chat rodando um LLM (<em>Large Language Model</em>, os modelos de inteligência artificial treinados para gerar texto) é um agente, mas não é. Enquanto o modelo tradicional é reativo (você pergunta e ele responde), um agente autônomo é proativo e orientado a objetivos.</p><p>Para entender como um agente “pensa”, imagine a consulta a um chatbot: “Qual a melhor forma de ir para o trabalho hoje? Meu joelho está doendo.” Um modelo de linguagem puro vai usar sua base de dados para devolver um palpite genérico em linguagem natural, ponto final.</p><p>Um Agente, por outro lado, opera sobre quatro pilares: um System Prompt (sua persona e diretrizes), Memória (histórico acumulado), Estado (a percepção exata do contexto atual) e Ferramentas (sua conexão com o mundo real). Ao receber a mesma pergunta, o agente não responde de imediato porque ele será guiado por um orquestrador invisível que raciocina e age.</p><ol><li>Acessa a ferramenta de Clima e vê se está chovendo.</li><li>Consulta a API de Transporte e confirma se a linha do trem está operando normalmente.</li><li>Lê a sua Agenda e percebe que você tem tempo de sobra.</li><li>Cruza todas essas variáveis externas com a informação clínica da sua dor no joelho.</li></ol><p>Só então, entrega a decisão final: “Vá de metrô e use o elevador da entrada leste”. Ele não foi óbvio como “vá de carro”, ele manipulou ferramentas em tempo real para tomar uma decisão autônoma.</p><h3>A Armadilha da Velocidade, o “Shift-Left” e o Antigravity</h3><p>Quando a IA furou a bolha, a indústria acreditava que acelerar a escrita salvaria os sistemas, mas a máquina agilizou a digitação, não o entendimento. Os bugs ficaram mais profundos e caros, e a ironia atinge o auge quando a cota de tokens acaba no meio da tarde e o desenvolvedor fica largado com o raciocínio pela metade, olhando para a tela sem saber como continuar o que a IA começou.</p><p>Foi exatamente essa “ressaca operacional” que Ícaro, meu colega Tech Lead em uma instituição financeira, vivenciou na prática. “No início, a gente se divertia muito com o vibe coding”, ele lembra. Porém, a ilusão da velocidade logo se desfez nas etapas seguintes do processo, todo o tempo economizado na digitação acabava engolido por sessões cansativas de revisão, investigação e correção.</p><p>“Percebi que o tempo economizado escrevendo código era totalmente gasto tentando auditar as alucinações da máquina e os novos bugs. Eu deixei de ser um criador para me tornar um revisor de Pull Requests”, conclui Ícaro.</p><p>Um relatório de 2026 da Faros AI conta que o tempo de ciclo de revisão de Pull Requests saltou 441% com a adoção de IA. Em times sem governança, a Taxa de Falhas nas Mudanças (CFR), indicador das métricas DORA (DevOps Research and Assessment, parâmetro do Google para avaliar a maturidade das entregas) disparou para 11% por conta do código gerado sem supervisão. A IA concedeu o superpoder de escrever sistemas mais rapidamente, mas trouxe o ônus de empilhar vulnerabilidades na mesma proporção.</p><p>Como escapar dessa armadilha? A resposta não está em frear a inovação, mas dar um contexto de verdade para a IA com diretrizes bem definidas. É exatamente aí que o Antigravity muda a dinâmica do jogo, abraçando a filosofia do <em>Shift-Left Security</em>.</p><p>“Empurrar para a esquerda” consiste em antecipar a segurança para o início da linha do tempo do projeto, na prática o seu sistema já está blindado no instante em que o seu dedo encosta na primeira tecla.</p><p>O Antigravity 2.0 atua como um engenheiro de segurança sênior que acompanha cada linha do seu projeto. Ele compreende o repositório inteiro, mas evita sobrecarregar a janela de contexto da IA. Em vez disso, aplica diretórios locais de governança (.agents/rules/ e .agents/skills/) para entregar políticas de segurança e padrões corporativos com precisão cirúrgica.</p><p>Esboçou uma <em>query</em> com brecha para SQL Injection? A ferramenta sublinha o erro e sugere a correção segura antes mesmo de encostar no atalho para salvar o arquivo. E essa orquestração acompanha o ambiente em que você está, se a missão é desenhar uma especificação de API, ele atua integrado ao Apigee, se o objetivo é pescar insights, ele respira dentro do BigQuery, e assim por diante.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pwfoY1Sh6Z7qm7Y7p3_guQ.jpeg" /><figcaption>O guardião do Shift-Left: interceptando vulnerabilidades antes do ‘Ctrl+S’. Ilustração gerada pelo Gemini via Nano Banana 2</figcaption></figure><p>A arquitetura e a segurança deixam de ser um remendo na reta final da entrega, elas nascem junto com o código.</p><h3>A Cura contra Alucinações e Vazamentos</h3><p>Para que a precisão e a segurança não se percam pelo caminho, o Google padronizou duas estratégias:</p><ol><li><strong>Privacidade por Design:</strong> Quando você conecta o Cloud Sensitive Data Protection (por API ou usando recursos como o Model Armor), é possível checar e limpar dados sensíveis antes mesmo de eles chegarem ao agente de IA. Com o mascaramento ou tokenização, o modelo trabalha só com informações protegidas, garantindo a segurança dos seus dados confidenciais, facilitando assim o cumprimento de normas como a LGPD.</li><li><strong>Grounding (Ancoragem) com RAG:</strong> Para mitigar ‘alucinações’, o modelo não depende exclusivamente do seu conhecimento genérico pré-treinado, ele é direcionado a buscar informações em bases de dados oficiais (manuais, repositórios locais ou corporativos). Aliás, o sistema pode ser configurado para citar a origem exata das informações, garantindo respostas muito mais precisas, transparentes e livres de invenções.</li></ol><h3>GitOps e o “Human-in-the-Loop”</h3><p>Agora que a IA está blindada contra vazamentos e alucinações, o desafio deixa de ser a precisão dos dados e passa a ser o controle das ações. Se os assistentes de código do passado eram apenas co-pilotos reativos, o Antigravity (liderado pelo aplicativo Antigravity 2.0, potencializado pela sua CLI e recém-embarcado nativamente no VS Code, JetBrains e Zed) é o seu centro de comando autônomo.</p><p>Jogar um agente num repositório em branco e cruzar os dedos não é estratégia de engenharia. O futuro do desenvolvimento exige que o trabalho humano deixe de focar em escrever linhas soltas e passe a definir as regras, a intenção, os limites do negócio para que o agente atue dentro delas. Mas como confiar num robô autônomo escrevendo infraestrutura (como arquivos Terraform ou Docker) sozinho? A resposta está no GitOps e no Plan Mode.</p><p>A doutrina diz que “se não está no versionamento, não existe”. O Antigravity nunca sai alterando servidores ou arquivos de produção de forma cega. Antes de qualquer execução, ele gera <em>Artifacts</em> práticos (como <em>Implementation Plans</em> detalhados, <em>Walkthroughs</em> interativos e <em>Code Diffs</em>) e lista exatamente o que pretende mudar e trava a operação, ou seja, a IA não mexe em nada sem que você, o “diretor técnico”, audite a prova de que o código cumpre a especificação e clique em “Aprovar”.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*D0yfYpOQkT7z92GZ13OkAQ.jpeg" /><figcaption>O fim do deploy cego: no GitOps com IA, o humano é o juiz final. Ilustração gerada pelo Gemini via Nano Banana 2.</figcaption></figure><h3>Orquestrando o Enxame: Workflow Agents, Estado e MCP</h3><p>É no Gemini Enterprise Agent Platform que a nova arquitetura de sistemas nasce. Enquanto os usuários de negócios mapeiam agentes visualmente com o Agent Studio (uma tela low-code), a engenharia de software confia a saúde do ambiente de produção ao <em>Agent Development Kit </em>(ADK), o <em>framework</em> de código aberto que muda a mentalidade do desenvolvedor de “engenharia de prompt” para “arquitetura distribuída de agentes”.</p><p>Imagine que você precisa analisar um incidente complexo de queda de servidor. O dev amador joga um bloco infinito de logs brutos no chat genérico e torce para dar certo. O engenheiro fluente em ADK orquestra Workflow Agents em padrões arquiteturais lógicos e precisos. Um padrão <em>Sequential</em> constrói uma esteira de produção linear passo a passo. Um padrão <em>Parallel</em> joga múltiplos robôs especialistas para mastigarem fontes de dados diferentes ao mesmo tempo.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*R7yELLh_I_3ujxS0SHhqXA.png" /></figure><p>Para que essa engrenagem complexa funcione como um software robusto (e não como uma brincadeira de gerar texto), é importante entender os três pilares que sustentam essa arquitetura com IA.</p><h3>Os Três Pilares da Engenharia de Agentes</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dF70cW1_NEA-dpjeyLyEng.png" /></figure><p>Veja como o ADK orquestra a comunicação de um agente com sistemas corporativos na prática, como neste exemplo onde um agente financeiro autônomo cruza dados internos com o mundo externo:</p><pre>from google.adk.agents.llm_agent import Agent<br>from google.adk import tools<br><br># Função customizada para simular a busca de métricas corporativas<br>@tools.function_tool<br>def fetch_enterprise_metrics(metric_id: str) -&gt; dict:<br>    &quot;&quot;&quot;<br>    Busca métricas corporativas pelo identificador da métrica.<br>    <br>    Args:<br>        metric_id: O identificador da métrica desejada (ex: &#39;Q3_REVENUE&#39;).<br>    <br>    Returns:<br>        Um dicionário contendo o status e o valor da métrica.<br>    &quot;&quot;&quot;<br>    # Simulando dados de negócio<br>    return {<br>        &quot;status&quot;: &quot;optimal&quot;,<br>        &quot;value&quot;: 15000000.00<br>    }<br><br># Instanciando o agente<br>agent = Agent(<br>    name=&quot;Enterprise_Finance_Agent&quot;,<br>    model=&quot;gemini-3.7-flash&quot;,<br>    instructions=&quot;Você atua como um agente financeiro corporativo. Responda de forma profissional e cruze métricas com os dados do mercado.&quot;,<br>    tools=[fetch_enterprise_metrics, tools.google_search]<br>)<br><br># Comando final de execução<br>if __name__ == &quot;__main__&quot;:<br>    resultado = agent.run(&quot;Busque a métrica &#39;Q3_REVENUE&#39; e cruze com notícias de mercado atuais.&quot;)<br>    print(resultado)</pre><p>Enquanto as <em>Tools</em> agem para conectar a IA ao mundo externo, a governança e o contexto local são moldados pelas <em>Rules</em> e as <em>Skills</em>.</p><p>As <em>Rules</em> (geralmente salvas em .agents/rules/) são as “leis da casa”, definem diretrizes globais e inegociáveis. Elas estão sempre ativas e garantem que o agente respeite o ecossistema do projeto como um todo.</p><p>Já as <em>Skills</em> garantem a conformidade sob demanda. Salvas como Markdown no diretório .agents/skills/, elas operam por revelação progressiva (progressive disclosure), fazendo com que o contexto só seja injetado se a tarefa do desenvolvedor der match com a descrição da <em>Skill</em>.</p><p>Este é um exemplo de governança em código-fonte usando uma <em>Skill</em>, onde a IA só é instruída a fazer a auditoria de segurança se o desenvolvedor estiver especificamente mexendo em banco de dados ou autenticação:</p><pre>---<br>name: foocorp-security-audit<br>description: Revisão de mudanças de código buscando vulnerabilidades de segurança corporativa. Usar quando implementar autenticação ou queries de banco de dados.<br>---<br># Corporate Security Audit Guidelines<br><br>## Review Checklist<br>1. **SQL Injection Prevention**: All database queries must strictly use parameterized statements. Using string formatting or concatenation to build queries is strictly prohibited.<br>2. **Authentication**: Verify that the application correctly integrates with the corporate IAM (Identity and Access Management) for all authentication flows.<br>3. **Logging**: Ensure that no Personally Identifiable Information (PII) is ever printed or saved in the application logs.<br><br>## Execution Rules<br>- Always generate a walkthrough artifact summarizing the changes and the results of the security audit.<br>- **HALT EXECUTION**: If a security vulnerability is found during the review, you must halt the execution and request human approval before applying any fixes or proceeding with the task.</pre><p><em>(Para visualizar como essa arquitetura funciona na prática, o diagrama abaixo ilustra a cronologia exata do fluxo de estado compartilhado e a chamada de ferramentas via MCP):</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/784/1*CsGcyKH7BndQy300cckg_Q.png" /><figcaption>Anatomia do Enxame: Como o Agent Development Kit (ADK) roteia o contexto sem depender da sorte.</figcaption></figure><h3>A Arte de Dirigir, Não Apenas Digitar</h3><p>A trindade Gemini Enterprise, Antigravity e ADK encerra a fase de testes da IA no desenvolvimento e inicia a Plataforma Invisível. A infraestrutura pesada agora roda no piloto automático no background, o <em>toil</em> some da sua sprint e a engenharia finalmente ganha espaço mental para focar em inovação de verdade.</p><p>Ao invés de perder horas configurando ambientes ou lutando contra a sintaxe de um código, o papel da engenharia se torna muito mais gerencial, os profissionais desenham a visão de negócio e estruturam as regras dos agentes; quando a máquina propõe uma alteração, assumem o papel de auditores no <em>Plan Mode</em> e, após a validação, realizam o <em>deploy</em> dos robôs.</p><p>A engenharia voltou a ser sobre resolver problemas complexos e criar arquiteturas que funcionam. E o melhor de tudo é que agora dá para tomar o café enquanto ele ainda está quente.</p><p><strong>Cinco conceitos para você dominar nesta semana e acelerar sua transição para o SDLC com IA:</strong></p><ol><li><strong>Shift-Left na Origem:</strong> O Antigravity vira o seu segurança particular com contexto total do repositório. Você mata a vulnerabilidade muito antes da ideia de dar um git commit passar pela cabeça.</li><li><strong>Workflow Agents contra a “Roleta do LLM”:</strong> Pare de torcer para a IA adivinhar o fluxo. A regra agora é usar motores determinísticos como o ADK. Você amarra sub-agentes em esteiras lógicas e tira a sorte da equação.</li><li><strong>Zero-Trust AI:</strong> Nunca entregue dados sensíveis brutos para a IA, exija tokenização via Cloud DLP e acabe com as alucinações forçando o <em>Grounding</em> direto nas documentações oficiais da empresa.</li><li><strong>GitOps como Gatekeepers:</strong> Você audita todo o impacto no Plan Mode antes de liberar qualquer execução, o humano no controle é inegociável.</li><li><strong>O “USB-C” da IA (MCP):</strong> Acabou o trabalho braçal de integrações customizadas. O <em>Model Context Protocol</em> (MCP) é o adaptador universal que conecta agentes à ferramentas externas com segurança absoluta.</li></ol><p>Se essa transição parecer desafiadora no começo, vale lembrar que ninguém precisa encarar esse novo cenário sozinho. Ferramentas como o próprio Gemini estão sempre disponíveis para apoiar desde o desenvolvedor com dúvidas no terminal, até o engenheiro de operações da infraestrutura e a liderança que orquestra a estratégia ao longo dessa curva de aprendizado.</p><p>“Gemini, me ajude a dar o primeiro passo com o <em>Model Context Protocol</em>. Como eu crio um MCP Server na minha máquina para que meu agente consiga ler um arquivo local de forma segura?”</p><p>Mas, muito além da tecnologia, a maior rede de apoio reside na comunidade de Googlers. Há profissionais impulsionando o ecossistema, mergulhando nos estudos e trabalhando duro para garantir que todas essas práticas de IA sejam implementadas de forma responsável, segura e humanizada. A tecnologia orquestra, mas são as pessoas que dão a direção.</p><p>P.S.: Apesar de o tema celebrar a automação e o poder da Inteligência Artificial, este texto foi escrito com muita reflexão, pausas para o café e sem uso de IA.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/716/1*pgg9wL2sxZu5zyvqfN-gAA.jpeg" /><figcaption>Meme via X, <a href="http://twitter.com/catalinmpit">@catalinmpit</a>: Vibe coding is easy. Vibe debugging is the hard part.</figcaption></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7d3a9b8d0931" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>