[{"data":1,"prerenderedAt":1512},["ShallowReactive",2],{"search-navigation":3,"\u002Fpt\u002Farticle\u002Fcentralised-the-skills-for-agents":36,"\u002Fpt\u002Farticle\u002Fcentralised-the-skills-for-agents-surround":520},[4,8,12,16,20,24,28,32],{"title":5,"path":6,"stem":7},"Solving AI Agent Skills Fragmentation with npx skills","\u002Farticle\u002Fcentralised-the-skills-for-agents","en\u002Farticle\u002Fcentralised-the-skills-for-agents",{"title":9,"path":10,"stem":11},"Stop Exposing Your Vault: Secure NodeWarden with Cloudflare","\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare","en\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare",{"title":13,"path":14,"stem":15},"How to Self-Host a BitWarden Compatible Password Vault","\u002Farticle\u002Fself-hosting-nodewarden-at-cloudflare","en\u002Farticle\u002Fself-hosting-nodewarden-at-cloudflare",{"title":17,"path":18,"stem":19},"Google Antigravity 2 Hands-On: Setup & First Impressions","\u002Farticle\u002Fsetup-antigravity-2","en\u002Farticle\u002Fsetup-antigravity-2",{"title":21,"path":22,"stem":23},"NetSuite AI Connector Guide: MCP Setup & Use Cases","\u002Farticle\u002Fsetup-netsuite-mcp-on-chatgpt-claude","en\u002Farticle\u002Fsetup-netsuite-mcp-on-chatgpt-claude",{"title":25,"path":26,"stem":27},"Testing Claude Fable 5: A Financial Analysis Review","\u002Farticle\u002Ftesting-claude-fable-5-in-financial-analysis","en\u002Farticle\u002Ftesting-claude-fable-5-in-financial-analysis",{"title":29,"path":30,"stem":31},"Guide to Browser and Scheduler in Antigravity 2","\u002Farticle\u002Fuse-browser-and-scheduler-in-antigravity-2","en\u002Farticle\u002Fuse-browser-and-scheduler-in-antigravity-2",{"title":33,"path":34,"stem":35},"Antigravity 2 in Action: AI Agents, Skills, and MCP","\u002Farticle\u002Fwhat-can-we-do-with-antigravity-2","en\u002Farticle\u002Fwhat-can-we-do-with-antigravity-2",{"id":37,"title":38,"author":39,"body":40,"category":39,"date":502,"description":503,"extension":504,"image":505,"imageAlt":506,"isPublished":507,"meta":508,"minRead":385,"navigation":507,"path":516,"seo":517,"stem":518,"__hash__":519},"article\u002Fpt\u002Farticle\u002Fcentralised-the-skills-for-agents.md","Fim da fragmentação de habilidades de agentes usando npx skills",null,{"type":41,"value":42,"toc":492},"minimark",[43,57,60,85,106,111,121,138,148,155,158,192,199,210,229,238,249,253,260,281,284,292,302,308,311,331,340,344,350,436,442,446,482,488],[44,45,46,47,51,52,56],"p",{},"Se você executa múltiplos agentes de IA ou CLIs em seu computador — seja Hermes, Claude Code, Codex, Antigravity, Kimi ou outras ferramentas compatíveis —, provavelmente já enfrentou um problema frustrante: ",[48,49,50],"strong",{},"a fragmentação de habilidades"," (skills). Cada agente ou CLI mantém sua própria pasta ",[53,54,55],"code",{},"skills"," separada, o que leva a instalações duplicadas, divergência de versões e sobrecarga de gerenciamento.",[44,58,59],{},"Em nosso trabalho diário com agentes de IA, frequentemente nos deparávamos com os seguintes problemas:",[61,62,63,70,76],"ul",{},[64,65,66,69],"li",{},[48,67,68],{},"Múltiplas instalações",": Instalar uma nova habilidade para um agente e depois ter que instalá-la novamente para cada um dos outros.",[64,71,72,75],{},[48,73,74],{},"Divergência de versões"," (version drift): Personalizar ou corrigir uma habilidade para um agente, esquecer de atualizar o restante e acabar com agentes se comportando de forma diferente.",[64,77,78,81,82,84],{},[48,79,80],{},"Gerenciamento de habilidades",": Ter que vasculhar cada pasta ",[53,83,55],{}," de cada agente no sistema apenas para ver quais habilidades estavam realmente instaladas.",[44,86,87,88,91,92,94,95,105],{},"O ",[53,89,90],{},"npx skills"," CLI, uma ferramenta de linha de comando de código aberto desenvolvida pela Vercel, resolve esse problema permitindo que você gerencie uma única pasta ",[53,93,55],{}," centralizada e a compartilhe entre todos os seus agentes. Você pode conferir o ",[96,97,101,102,104],"a",{"href":98,"rel":99},"https:\u002F\u002Fgithub.com\u002Fvercel-labs\u002Fskills",[100],"nofollow","repositório do ",[53,103,90],{}," no GitHub",".",[107,108,110],"h2",{"id":109},"pasta-centralizada","Pasta Centralizada",[44,112,113,114,116,117,120],{},"O conceito é simples: se apontarmos a pasta ",[53,115,55],{}," de cada agente para a ",[48,118,119],{},"mesma pasta física",", o problema da fragmentação desaparece por completo.",[44,122,123,124,126,127,130,131,134,135,137],{},"Quando você instala uma habilidade usando o ",[53,125,90],{}," CLI, ela é baixada para a pasta centralizada em sua máquina (",[53,128,129],{},"~\u002F.agents\u002Fskills","). Em seguida, o CLI cria um ",[48,132,133],{},"link simbólico"," (symlink, que funciona como um atalho direto) da pasta ",[53,136,55],{}," de cada agente de volta para essa pasta centralizada.",[44,139,140,141,144,145,147],{},"Por exemplo, quando o Claude Code procura por habilidades em ",[53,142,143],{},"~\u002F.claude\u002Fskills\u002F",", ele é redirecionado de forma transparente para ",[53,146,129],{},". Se você fizer um ajuste em uma habilidade dentro dessa pasta centralizada, cada agente verá a atualização instantaneamente. Sem cópias manuais, sem scripts de sincronização e sem desperdício de espaço em disco.",[107,149,151,152,154],{"id":150},"instalando-o-npx-skills-e-adicionando-uma-habilidade","Instalando o ",[53,153,90],{}," e Adicionando uma Habilidade",[44,156,157],{},"Execute o seguinte comando para começar e adicionar nossa primeira habilidade:",[159,160,165],"pre",{"className":161,"code":162,"language":163,"meta":164,"style":164},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx skills add https:\u002F\u002Fgithub.com\u002Fcoleam00\u002Fexcalidraw-diagram-skill --skill excalidraw-diagram\n","bash","",[53,166,167],{"__ignoreMap":164},[168,169,172,176,180,183,186,189],"span",{"class":170,"line":171},"line",1,[168,173,175],{"class":174},"sBMFI","npx",[168,177,179],{"class":178},"sfazB"," skills",[168,181,182],{"class":178}," add",[168,184,185],{"class":178}," https:\u002F\u002Fgithub.com\u002Fcoleam00\u002Fexcalidraw-diagram-skill",[168,187,188],{"class":178}," --skill",[168,190,191],{"class":178}," excalidraw-diagram\n",[44,193,194],{},[195,196],"img",{"alt":197,"src":198},"Usando o comando npx skills add para instalar uma habilidade do GitHub","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-add-command.webp",[44,200,201,202,205,206],{},"O CLI perguntará se deseja configurar isso para um projeto específico ou globalmente. Geralmente recomendamos escolher ",[48,203,204],{},"global"," para que todos os agentes compatíveis possam acessá-la:\n",[195,207],{"alt":208,"src":209},"Selecionando a opção de instalação global na CLI npx skills","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-install-global-prompt.webp",[44,211,212,213,216,217,220,221,225],{},"Em seguida, certifique-se de selecionar ",[53,214,215],{},"Symlink"," para garantir uma ",[48,218,219],{},"única fonte da verdade",":\n",[195,222],{"alt":223,"src":224},"Escolhendo o método symlink para sincronização de habilidades","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-symlink-option.webp",[195,226],{"alt":227,"src":228},"Confirmação de instalação bem-sucedida e criação de symlink na CLI","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-installation-completed.webp",[44,230,231,232,220,234],{},"Feito isso, podemos verificar que a habilidade está instalada na pasta centralizada em ",[53,233,129],{},[195,235],{"alt":236,"src":237},"Verificando as habilidades instaladas no diretório centralizado","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-directory-verification.webp",[44,239,240,241,244,245],{},"Abra o Kimi CLI (ou qualquer outro agente) e a habilidade ",[53,242,243],{},"excalidraw-diagram"," estará disponível e pronta para uso!\n",[195,246],{"alt":247,"src":248},"Kimi CLI mostrando as habilidades centralizadas carregadas e prontas","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fkimi-cli-skills-integration.webp",[107,250,252],{"id":251},"criando-uma-habilidade-do-zero","Criando uma Habilidade do Zero",[44,254,255,256,259],{},"Para criar suas próprias habilidades, você pode usar a ferramenta ",[53,257,258],{},"skill-creator"," da Anthropic. Instale-a assim:",[159,261,263],{"className":161,"code":262,"language":163,"meta":164,"style":164},"npx skills add https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fskills --skill skill-creator\n",[53,264,265],{"__ignoreMap":164},[168,266,267,269,271,273,276,278],{"class":170,"line":171},[168,268,175],{"class":174},[168,270,179],{"class":178},[168,272,182],{"class":178},[168,274,275],{"class":178}," https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fskills",[168,277,188],{"class":178},[168,279,280],{"class":178}," skill-creator\n",[44,282,283],{},"Agora, no Kimi ou em qualquer outro agente, insira o seguinte comando (prompt):",[159,285,290],{"className":286,"code":288,"language":289},[287],"language-text","Use the skill-creator to help me build a skill for creating a product landing page\n","text",[53,291,288],{"__ignoreMap":164},[44,293,294,295,297,298],{},"O Kimi ou o seu agente detectará automaticamente o ",[53,296,258],{}," e guiará você passo a passo pelo processo:\n",[195,299],{"alt":300,"src":301},"Assistente interativo skill-creator em execução na Kimi CLI","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fkimi-cli-skill-creator-setup.webp",[107,303,305,306],{"id":304},"outros-comandos-úteis-do-npx-skills","Outros Comandos Úteis do ",[53,307,90],{},[44,309,310],{},"Aqui estão alguns outros comandos práticos:",[61,312,313,319,325],{},[64,314,315,318],{},[53,316,317],{},"npx skills ls -g",": Lista todas as habilidades instaladas globalmente",[64,320,321,324],{},[53,322,323],{},"npx skills update",": Mantém todas as habilidades atualizadas com um único comando",[64,326,327,330],{},[53,328,329],{},"npx skills remove",": Desinstala\u002Fremove uma habilidade de forma interativa",[44,332,333,334,339],{},"Consulte o ",[96,335,101,337,104],{"href":98,"rel":336},[100],[53,338,90],{}," para ver mais comandos e referências.",[107,341,343],{"id":342},"indo-mais-longe","Indo Mais Longe",[44,345,346,347,349],{},"Como todas as habilidades agora estão em um único lugar (",[53,348,129],{},"), podemos inicializar essa pasta como um repositório Git e enviá-la para o GitHub ou GitLab.",[159,351,353],{"className":161,"code":352,"language":163,"meta":164,"style":164},"cd ~\u002F.agents\u002Fskills\ngit init\ngit add .\ngit commit -m \"Initial skills folder\"\ngit remote add origin https:\u002F\u002Fgithub.com\u002FTech-Voyage-Dev\u002Fskills\ngit push -u origin main\n",[53,354,355,364,373,383,404,420],{"__ignoreMap":164},[168,356,357,361],{"class":170,"line":171},[168,358,360],{"class":359},"s2Zo4","cd",[168,362,363],{"class":178}," ~\u002F.agents\u002Fskills\n",[168,365,367,370],{"class":170,"line":366},2,[168,368,369],{"class":174},"git",[168,371,372],{"class":178}," init\n",[168,374,376,378,380],{"class":170,"line":375},3,[168,377,369],{"class":174},[168,379,182],{"class":178},[168,381,382],{"class":178}," .\n",[168,384,386,388,391,394,398,401],{"class":170,"line":385},4,[168,387,369],{"class":174},[168,389,390],{"class":178}," commit",[168,392,393],{"class":178}," -m",[168,395,397],{"class":396},"sMK4o"," \"",[168,399,400],{"class":178},"Initial skills folder",[168,402,403],{"class":396},"\"\n",[168,405,407,409,412,414,417],{"class":170,"line":406},5,[168,408,369],{"class":174},[168,410,411],{"class":178}," remote",[168,413,182],{"class":178},[168,415,416],{"class":178}," origin",[168,418,419],{"class":178}," https:\u002F\u002Fgithub.com\u002FTech-Voyage-Dev\u002Fskills\n",[168,421,423,425,428,431,433],{"class":170,"line":422},6,[168,424,369],{"class":174},[168,426,427],{"class":178}," push",[168,429,430],{"class":178}," -u",[168,432,416],{"class":178},[168,434,435],{"class":178}," main\n",[44,437,438,439,105],{},"Agora, temos um histórico completo de todas as alterações de habilidades, o que significa que podemos reverter facilmente se uma atualização quebrar algo. Além disso, podemos sincronizar perfeitamente as habilidades entre várias máquinas (como um notebook e um computador desktop) executando um rápido ",[53,440,441],{},"git pull",[107,443,445],{"id":444},"alguns-pontos-de-atenção-segurança-e-riscos","Alguns Pontos de Atenção (Segurança e Riscos)",[61,447,448,454,460,470,476],{},[64,449,450,453],{},[48,451,452],{},"A compatibilidade varia",": Nem todas as plataformas de agentes oferecem suporte a todos os recursos ainda (como ganchos personalizados ou ferramentas permitidas específicas). Uma habilidade pode funcionar muito bem em um agente, mas falhar em outro.",[64,455,456,459],{},[48,457,458],{},"Confie na fonte",": Instale apenas habilidades de fontes confiáveis.",[64,461,462,465,466,469],{},[48,463,464],{},"Revise antes de executar",": Se estiver usando uma habilidade personalizada ou de terceiros, revise os arquivos (especialmente na pasta ",[53,467,468],{},"scripts\u002F",") antes de permitir que o seu agente a execute.",[64,471,472,475],{},[48,473,474],{},"Menor privilégio",": Tente não conceder a uma habilidade mais permissões de ferramentas ou acessos do que ela realmente precisa para funcionar.",[64,477,478,481],{},[48,479,480],{},"Nunca codifique segredos",": Mantenha suas chaves de API e segredos fora dos arquivos de suas habilidades.",[44,483,484,485,487],{},"Configurar uma \"única fonte da verdade\" centralizada com o ",[53,486,90],{}," poupou nossa equipe de frustrações e trabalho duplicado. Recomendamos muito que faça o teste — os recursos de IA aumentam à medida que suas habilidades crescem!",[489,490,491],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}",{"title":164,"searchDepth":366,"depth":366,"links":493},[494,495,497,498,500,501],{"id":109,"depth":366,"text":110},{"id":150,"depth":366,"text":496},"Instalando o npx skills e Adicionando uma Habilidade",{"id":251,"depth":366,"text":252},{"id":304,"depth":366,"text":499},"Outros Comandos Úteis do npx skills",{"id":342,"depth":366,"text":343},{"id":444,"depth":366,"text":445},"2026-06-04","Usa vários agentes de IA como Claude Code ou Kimi? Aprenda a gerenciar uma pasta centralizada de habilidades compartilhada usando o npx skills CLI.","md","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002FFim-da-fragmenta%C3%A7%C3%A3o-de-habilidades-de-agentes-usando-npx-skills.webp","Centralizando habilidades de agentes de IA com npx skills CLI",true,{"schemaOrg":509,"robots":513,"sitemap":514},[510],{"@type":511,"headline":512,"description":503},"TechArticle","Como resolver a fragmentação de habilidades de agentes de IA","index, follow",{"lastmod":515},"2026-06-03","\u002Fpt\u002Farticle\u002Fcentralised-the-skills-for-agents",{"title":512,"description":503,"ogTitle":38,"ogDescription":503,"twitterTitle":38,"twitterDescription":503},"pt\u002Farticle\u002Fcentralised-the-skills-for-agents","IHdOzBx0SZ9MJTnTa5274ZNG1bN-izT23pFCh4HBTS0",[521,774],{"id":522,"title":523,"author":39,"body":524,"category":39,"date":760,"description":761,"extension":504,"image":762,"imageAlt":763,"isPublished":507,"meta":764,"minRead":769,"navigation":507,"path":770,"seo":771,"stem":772,"__hash__":773},"article\u002Fpt\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare.md","Đừng public NodeWarden: Bảo mật qua Cloudflare",{"type":41,"value":525,"toc":756},[526,529,532,546,551,558,561,565,568,572,603,607,610,677,681,684,749,753],[44,527,528],{},"No momento em que o seu NodeWarden é exposto publicamente na internet, ele começa a atrair milhares de bots automatizados em busca de vulnerabilidades 24 horas por dia, 7 dias por semana. Para proteger seus dados confidenciais, você precisa colocar sua instância do NodeWarden sob o nível máximo de bloqueio possível.",[44,530,531],{},"Para proteger sua instância do NodeWarden, você pode usar um dos dois recursos da Cloudflare:",[61,533,534,540],{},[64,535,536,539],{},[48,537,538],{},"Cloudflare IP Access Rules (Regras de Acesso por IP):"," Permite bloquear, desafiar (challenge) ou permitir o tráfego com base em endereços IP ou países específicos.",[64,541,542,545],{},[48,543,544],{},"Cloudflare Zero Trust (Recomendado):"," Atua como um gateway seguro que torna sua instância do NodeWarden completamente invisível para o público, permitindo a passagem apenas de usuários autorizados.",[547,548,550],"h4",{"id":549},"por-que-recomendamos-o-cloudflare-zero-trust","Por que recomendamos o Cloudflare Zero Trust",[44,552,553,554,557],{},"Aconselhamos fortemente o uso do Cloudflare Zero Trust, pois as regras de acesso por IP estão vinculadas a endereços IP ou países, o que significa que você precisa atualizar manualmente suas regras toda vez que viajar ou se tiver um IP dinâmico. Por outro lado, o Cloudflare Zero Trust se baseia na sua ",[48,555,556],{},"identidade",", e não na sua localização — proporcionando um acesso contínuo e seguro ao NodeWarden.",[559,560],"hr",{},[107,562,564],{"id":563},"guia-de-configuração","Guia de Configuração",[44,566,567],{},"Siga estas etapas para configurar o Cloudflare Zero Trust para o NodeWarden.",[547,569,571],{"id":570},"fase-1-primeiros-passos","Fase 1: Primeiros passos",[573,574,575,582,589,596],"ol",{},[64,576,577,578],{},"No seu painel da Cloudflare, clique em 'Zero Trust' no menu à esquerda.\n",[195,579],{"alt":580,"src":581},"Barra lateral do painel da Cloudflare mostrando a opção Zero Trust selecionada no menu de navegação.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-dashboard-zero-trust-sidebar.webp",[64,583,584,585],{},"Clique em 'Access controls' e depois em 'Applications'.\n",[195,586],{"alt":587,"src":588},"Menu de navegação do Cloudflare Zero Trust com a seção de Controles de acesso expandida.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-access-controls-menu.webp",[64,590,591,592],{},"Pode ser solicitado que você escolha um plano ('Choose a plan').\n",[195,593],{"alt":594,"src":595},"Tela de configuração da conta Cloudflare Zero Trust solicitando que o usuário escolha um plano de assinatura.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-choose-plan-setup.webp",[64,597,598,599],{},"Clique no botão 'Choose a plan' e escolha o plano 'Zero Trust Free'.\n",[195,600],{"alt":601,"src":602},"A página de detalhes do plano Zero Trust Free na Cloudflare, destacando o botão Selecionar plano.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-free-plan-selection.webp",[547,604,606],{"id":605},"fase-2-proteja-sua-interface-web","Fase 2: Proteja sua interface Web",[44,608,609],{},"Primeiro, vamos criar uma aplicação para proteger o painel web do NodeWarden.",[573,611,612,619,626,633,640,647,654,657,664,667],{},[64,613,614,615],{},"Clique em 'Create new application' para criar a primeira aplicação.\n",[195,616],{"alt":617,"src":618},"Painel de aplicativos do Cloudflare Access com o botão Criar novo aplicativo.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-create-new-application.webp",[64,620,621,622],{},"Escolha 'Self-hosted and private'.\n",[195,623],{"alt":624,"src":625},"O modal Adicionar um aplicativo no Cloudflare Access com o tipo de aplicativo Auto-hospedado e privado selecionado.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-add-self-hosted-application.webp",[64,627,628,629],{},"Insira o nome de domínio do NodeWarden.\n",[195,630],{"alt":631,"src":632},"Tela de configuração do aplicativo Cloudflare Access mostrando o hostname público configurado como warden.techvoyage.dev.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-application-public-hostname.webp",[64,634,635,636],{},"Clique em 'Create new policy' para criar uma política.\n",[195,637],{"alt":638,"src":639},"Página de políticas do Cloudflare Access mostrando que nenhuma política foi adicionada e um botão para criar uma nova política.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-no-policies-create-button.webp",[64,641,642,643],{},"Selecione 'Emails' e insira um e-mail na seção 'Policy rules'.\n",[195,644],{"alt":645,"src":646},"Tela de configuração da regra de política do Cloudflare Access com um endereço de e-mail especificado como critério de inclusão.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-rule-email.webp",[64,648,649,650],{},"Insira um nome e selecione 'Allow' na seção 'Policy details'.\n",[195,651],{"alt":652,"src":653},"Tela de detalhes da política do Cloudflare Access mostrando o nome da política NodeWarden-Web e a ação definida como Permitir.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-details-allow.webp",[64,655,656],{},"Clique em 'Save Policy' para criar a política.",[64,658,659,660],{},"Insira um nome e selecione '1 month' na seção 'Details'.\n",[195,661],{"alt":662,"src":663},"Resumo final de la configuración para um aplicativo Cloudflare Access chamado NodeWarden-Web com duração de sessão de um mês.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-application-final-details.webp",[64,665,666],{},"Clique em 'Create' para criar a aplicação.",[64,668,669,672,673],{},[48,670,671],{},"Teste:"," Abra o domínio no navegador da web; você verá o 'Cloudflare Access' solicitando o e-mail.\n",[195,674],{"alt":675,"src":676},"Uma visualização da tela de login do Cloudflare Access para NodeWarden-Web, solicitando um endereço de e-mail.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-login-screen-preview.webp",[547,678,680],{"id":679},"fase-3-permitir-a-sincronização-dos-clientes-bitwarden-bypass-de-api","Fase 3: Permitir a Sincronização dos Clientes BitWarden (Bypass de API)",[44,682,683],{},"Os aplicativos de desktop e mobile do BitWarden não conseguem processar a tela de login por e-mail da Cloudflare, por isso precisamos criar uma segunda aplicação que permita que o tráfego ignore (bypass) a tela de login especificamente para a sincronização da API.",[573,685,686,697,713,718,725,732,735,742],{},[64,687,688,689,692,693,696],{},"Volte para Applications e clique em ",[48,690,691],{},"Create new application",", escolhendo ",[48,694,695],{},"Self-hosted and private"," novamente.",[64,698,699,700,704,705,708,709],{},"Insira 'api\u002F",[701,702,703],"em",{},"', 'identity\u002F","', 'notifications\u002F",[701,706,707],{},"' e 'icons\u002F","' na seção Destinations.\n",[195,710],{"alt":711,"src":712},"Configurando múltiplos hostnames públicos para bypass de API no Cloudflare Access, incluindo os caminhos api, identity, notifications e icons.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-api-bypass-destinations.webp",[64,714,715,716],{},"Clique em 'Create new policy' para criar a política.\n",[195,717],{"alt":638,"src":639},[64,719,720,721],{},"Selecione 'Everyone' em 'Policy rules'.\n",[195,722],{"alt":723,"src":724},"Configuração da regra de política do Cloudflare Access com Todos selecionado para permitir acesso amplo a caminhos específicos.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-rule-everyone.webp",[64,726,727,728],{},"Insira un nome e selecione 'Bypass' em 'Policy details'.\n",[195,729],{"alt":730,"src":731},"Detalhes da política do Cloudflare Access para NodeWarden-API com la acción definida como Bypass.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-details-bypass.webp",[64,733,734],{},"Clique em 'Save Policy' para salvar.",[64,736,737,738],{},"Insira um nome e selecione '1 month' para 'Session Duration'.\n",[195,739],{"alt":740,"src":741},"Tela de configuração final para o aplicativo NodeWarden-API no Cloudflare Access.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-api-application-final-details.webp",[64,743,744,745],{},"Você deverá ter 2 aplicações criadas no final.\n",[195,746],{"alt":747,"src":748},"O painel de aplicativos do Cloudflare Access mostrando os aplicativos Web e API criados com sucesso.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-applications-list-final.webp",[107,750,752],{"id":751},"considerações-finais","Considerações finais",[44,754,755],{},"Lembre-se apenas de que a Cloudflare é o seu escudo de proteção externo. Para manter um cofre (vault) verdadeiramente seguro, certifique-se de continuar usando uma senha mestra forte, de utilizar a Autenticação de Dois Fatores (2FA) e de manter a sua conta da Cloudflare segura.",{"title":164,"searchDepth":366,"depth":366,"links":757},[758,759],{"id":563,"depth":366,"text":564},{"id":751,"depth":366,"text":752},"2026-05-27","No momento em que o seu NodeWarden é exposto publicamente na internet, ele começa a atrair milhares de bots automatizados em busca de vulnerabilidades 24 horas por dia, 7 dias por semana.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fproteja-nodewarden-integracao-cloudflare-guia.webp","Miniatura de um guia passo a passo para proteger um cofre NodeWarden com integração Cloudflare, mostrando um cofre digital acorrentado e um rack de servidores protegido.",{"schemaOrg":765,"robots":513,"sitemap":768},[766],{"@type":511,"headline":767,"description":761},"Pare de expor seu cofre: Proteja o NodeWarden com Cloudflare",{"lastmod":760},8,"\u002Fpt\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare",{"title":767,"description":761,"ogTitle":767,"ogDescription":761,"twitterTitle":767,"twitterDescription":761},"pt\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare","KDW5QwzozbPLfreaxGoJcxNVRwMxtCZq7VzXSko0uds",{"id":775,"title":776,"author":39,"body":777,"category":39,"date":1500,"description":1501,"extension":504,"image":1502,"imageAlt":1503,"isPublished":507,"meta":1504,"minRead":385,"navigation":507,"path":1508,"seo":1509,"stem":1510,"__hash__":1511},"article\u002Fpt\u002Farticle\u002Fsetup-antigravity-2.md","Google Antigravity 2: Instalação e Primeiras Impressões",{"type":41,"value":778,"toc":1491},[779,790,795,798,809,811,815,824,830,837,843,850,860,862,866,873,879,882,888,892,895,909,923,930,942,952,966,968,972,975,989,992,1334,1344,1350,1360,1366,1372,1378,1380,1384,1394,1406,1413,1419,1425,1444,1447,1453,1455,1459,1462,1468,1471,1477,1479,1482,1485,1488],[44,780,781,782,785,786,789],{},"No Google I\u002FO 2026, a Google anunciou o ",[48,783,784],{},"Antigravity 2",", um aplicativo de desktop independente que coloca o ",[48,787,788],{},"agente"," como a interface de usuário principal. Você simplesmente descreve o que deseja realizar, e o agente gera um plano, divide-o em subtarefas gerenciáveis e as executa.",[791,792,794],"h3",{"id":793},"pré-requisitos","Pré-requisitos",[44,796,797],{},"Antes de começarmos, você precisará de:",[61,799,800,803,806],{},[64,801,802],{},"Um computador (usamos macOS neste guia)",[64,804,805],{},"Um navegador web moderno",[64,807,808],{},"Uma conta do Gmail",[559,810],{},[107,812,814],{"id":813},"_1-instalar-o-antigravity-2","1. Instalar o Antigravity 2",[44,816,817,818,823],{},"Baixe o Antigravity 2 em ",[96,819,822],{"href":820,"rel":821},"https:\u002F\u002Fantigravity.google\u002Fdownload",[100],"antigravity.google"," e instale-o em seu computador. Na primeira inicialização, você será solicitado a fazer login com sua conta do Gmail.",[44,825,826],{},[195,827],{"alt":828,"src":829},"Tela de login com conta Google na primeira inicialização do Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-gmail-login.webp",[44,831,832,833,836],{},"Depois de fazer login, você notará um ",[48,834,835],{},"botão de voz"," no campo de entrada, permitindo gravar comandos de voz em vez de digitá-los.",[44,838,839],{},[195,840],{"alt":841,"src":842},"Botão de gravação de voz no campo de texto do Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-voice-input-field.webp",[44,844,845,846,849],{},"O Antigravity 2 também apresenta o conceito de ",[48,847,848],{},"Projeto"," (Project), que pode abranger várias pastas locais e operar com suas próprias configurações e permissões de agente específicas.",[44,851,852,856],{},[195,853],{"alt":854,"src":855},"Menu de seleção e configuração de projetos no Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-project-menu.webp",[195,857],{"alt":858,"src":859},"Criação de um novo projeto de IA com caminho de pasta no Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-project-creation.webp",[559,861],{},[107,863,865],{"id":864},"_2-configurar-servidores-mcp-e-plugins","2. Configurar Servidores MCP e Plugins",[44,867,868,869,872],{},"Todos os servidores de Model Context Protocol (MCP), plugins e habilidades (skills) são gerenciados na seção ",[48,870,871],{},"Customizations"," (Personalizações) no menu de configurações:",[44,874,875],{},[195,876],{"alt":877,"src":878},"Guia de personalizações nas configurações para gerenciar servidores MCP","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-settings-customizations.webp",[44,880,881],{},"Atualmente, os únicos plugins disponíveis são da Google, mas esperamos que mais sejam lançados no futuro.",[44,883,884],{},[195,885],{"alt":886,"src":887},"Lista de plugins oficiais do Google e integrações no Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-google-plugins-list.webp",[547,889,891],{"id":890},"adicionando-um-servidor-mcp-disponível","Adicionando um Servidor MCP Disponível",[44,893,894],{},"Para instalar um servidor MCP pré-configurado (por exemplo, GitHub):",[573,896,897,903],{},[64,898,899,900,105],{},"Clique em ",[48,901,902],{},"Add MCP+",[64,904,905,906,105],{},"Selecione o ",[48,907,908],{},"GitHub MCP Server",[44,910,911,915,919],{},[195,912],{"alt":913,"src":914},"Adicionar um servidor MCP pré-configurado clicando no botão Add MCP plus","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-mcp-button.webp",[195,916],{"alt":917,"src":918},"Seleção do GitHub MCP Server na lista de integrações disponíveis","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-select-github-mcp.webp",[195,920],{"alt":921,"src":922},"Assistente de configuração e autorização do servidor MCP do GitHub","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-github-mcp-setup.webp",[44,924,925,926],{},"A configuração do GitHub MCP Server terminou com um erro:\n",[195,927],{"alt":928,"src":929},"Erro de configuração durante o processo de instalação do GitHub MCP Server","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-github-mcp-error.webp",[44,931,932,933,935,936,938,939,941],{},"Como já temos o ",[53,934,369],{}," instalado no macOS, podemos contornar isso executando o comando ",[53,937,369],{}," diretamente na conversa. No entanto, primeiro precisamos adicionar explicitamente o comando ",[53,940,369],{}," às permissões do Antigravity.",[44,943,944,948],{},[195,945],{"alt":946,"src":947},"Caixa de diálogo para adicionar o comando git às permissões","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-git-permission-1.webp",[195,949],{"alt":950,"src":951},"Concessão de permissão de execução do comando git no menu de configurações","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-git-permission-2.webp",[44,953,954,955,957,958,962],{},"Vamos testar o comando para ver se o ",[53,956,369],{}," agora funciona:\n",[195,959],{"alt":960,"src":961},"Envio de solicitação de git status dentro da caixa de chat da IA","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-git-command-test-1.webp",[195,963],{"alt":964,"src":965},"Execução bem-sucedida do comando git status diretamente no chat","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-git-command-test-2.webp",[559,967],{},[107,969,971],{"id":970},"_3-adicionar-servidores-mcp-personalizados","3. Adicionar Servidores MCP Personalizados",[44,973,974],{},"Se o servidor MCP desejado não estiver na lista padrão, você poderá adicioná-lo editando o arquivo de configuração do MCP diretamente. A configuração está localizada em:",[159,976,978],{"className":161,"code":977,"language":163,"meta":164,"style":164},"~\u002F.gemini\u002Fconfig\u002Fmcp_config.json\n",[53,979,980],{"__ignoreMap":164},[168,981,982,985],{"class":170,"line":171},[168,983,984],{"class":396},"~",[168,986,988],{"class":987},"sTEyZ","\u002F.gemini\u002Fconfig\u002Fmcp_config.json\n",[44,990,991],{},"Vamos adicionar alguns servidores MCP da Cloudflare como exemplo. Como a Cloudflare suporta registro dinâmico de clientes, precisamos apenas ativar o OAuth. Adicione o seguinte à sua configuração JSON:",[159,993,997],{"className":994,"code":995,"language":996,"meta":164,"style":164},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","    \"cloudflare-api\": {\n      \"serverUrl\": \"https:\u002F\u002Fmcp.cloudflare.com\u002Fmcp\",\n      \"oauth\": {\n        \"enabled\": true\n      }\n    },\n    \"cloudflare-docs\": {\n      \"serverUrl\": \"https:\u002F\u002Fdocs.mcp.cloudflare.com\u002Fmcp\"\n    },\n    \"cloudflare-bindings\": {\n      \"serverUrl\": \"https:\u002F\u002Fbindings.mcp.cloudflare.com\u002Fmcp\",\n      \"oauth\": {\n        \"enabled\": true\n      }\n    },\n    \"cloudflare-builds\": {\n      \"serverUrl\": \"https:\u002F\u002Fbuilds.mcp.cloudflare.com\u002Fmcp\",\n      \"oauth\": {\n        \"enabled\": true\n      }\n    },\n    \"cloudflare-observability\": {\n      \"serverUrl\": \"https:\u002F\u002Fobservability.mcp.cloudflare.com\u002Fmcp\",\n      \"oauth\": {\n        \"enabled\": true\n      }\n    }\n","json",[53,998,999,1016,1040,1054,1069,1074,1081,1095,1112,1119,1133,1153,1166,1179,1184,1191,1205,1225,1238,1251,1256,1263,1277,1297,1310,1323,1328],{"__ignoreMap":164},[168,1000,1001,1004,1007,1010,1013],{"class":170,"line":171},[168,1002,1003],{"class":396},"    \"",[168,1005,1006],{"class":178},"cloudflare-api",[168,1008,1009],{"class":396},"\"",[168,1011,1012],{"class":987},": ",[168,1014,1015],{"class":396},"{\n",[168,1017,1018,1021,1025,1027,1030,1032,1035,1037],{"class":170,"line":366},[168,1019,1020],{"class":396},"      \"",[168,1022,1024],{"class":1023},"spNyl","serverUrl",[168,1026,1009],{"class":396},[168,1028,1029],{"class":396},":",[168,1031,397],{"class":396},[168,1033,1034],{"class":178},"https:\u002F\u002Fmcp.cloudflare.com\u002Fmcp",[168,1036,1009],{"class":396},[168,1038,1039],{"class":396},",\n",[168,1041,1042,1044,1047,1049,1051],{"class":170,"line":375},[168,1043,1020],{"class":396},[168,1045,1046],{"class":1023},"oauth",[168,1048,1009],{"class":396},[168,1050,1029],{"class":396},[168,1052,1053],{"class":396}," {\n",[168,1055,1056,1059,1062,1064,1066],{"class":170,"line":385},[168,1057,1058],{"class":396},"        \"",[168,1060,1061],{"class":174},"enabled",[168,1063,1009],{"class":396},[168,1065,1029],{"class":396},[168,1067,1068],{"class":396}," true\n",[168,1070,1071],{"class":170,"line":406},[168,1072,1073],{"class":396},"      }\n",[168,1075,1076,1079],{"class":170,"line":422},[168,1077,1078],{"class":396},"    }",[168,1080,1039],{"class":987},[168,1082,1084,1086,1089,1091,1093],{"class":170,"line":1083},7,[168,1085,1003],{"class":396},[168,1087,1088],{"class":178},"cloudflare-docs",[168,1090,1009],{"class":396},[168,1092,1012],{"class":987},[168,1094,1015],{"class":396},[168,1096,1097,1099,1101,1103,1105,1107,1110],{"class":170,"line":769},[168,1098,1020],{"class":396},[168,1100,1024],{"class":1023},[168,1102,1009],{"class":396},[168,1104,1029],{"class":396},[168,1106,397],{"class":396},[168,1108,1109],{"class":178},"https:\u002F\u002Fdocs.mcp.cloudflare.com\u002Fmcp",[168,1111,403],{"class":396},[168,1113,1115,1117],{"class":170,"line":1114},9,[168,1116,1078],{"class":396},[168,1118,1039],{"class":987},[168,1120,1122,1124,1127,1129,1131],{"class":170,"line":1121},10,[168,1123,1003],{"class":396},[168,1125,1126],{"class":178},"cloudflare-bindings",[168,1128,1009],{"class":396},[168,1130,1012],{"class":987},[168,1132,1015],{"class":396},[168,1134,1136,1138,1140,1142,1144,1146,1149,1151],{"class":170,"line":1135},11,[168,1137,1020],{"class":396},[168,1139,1024],{"class":1023},[168,1141,1009],{"class":396},[168,1143,1029],{"class":396},[168,1145,397],{"class":396},[168,1147,1148],{"class":178},"https:\u002F\u002Fbindings.mcp.cloudflare.com\u002Fmcp",[168,1150,1009],{"class":396},[168,1152,1039],{"class":396},[168,1154,1156,1158,1160,1162,1164],{"class":170,"line":1155},12,[168,1157,1020],{"class":396},[168,1159,1046],{"class":1023},[168,1161,1009],{"class":396},[168,1163,1029],{"class":396},[168,1165,1053],{"class":396},[168,1167,1169,1171,1173,1175,1177],{"class":170,"line":1168},13,[168,1170,1058],{"class":396},[168,1172,1061],{"class":174},[168,1174,1009],{"class":396},[168,1176,1029],{"class":396},[168,1178,1068],{"class":396},[168,1180,1182],{"class":170,"line":1181},14,[168,1183,1073],{"class":396},[168,1185,1187,1189],{"class":170,"line":1186},15,[168,1188,1078],{"class":396},[168,1190,1039],{"class":987},[168,1192,1194,1196,1199,1201,1203],{"class":170,"line":1193},16,[168,1195,1003],{"class":396},[168,1197,1198],{"class":178},"cloudflare-builds",[168,1200,1009],{"class":396},[168,1202,1012],{"class":987},[168,1204,1015],{"class":396},[168,1206,1208,1210,1212,1214,1216,1218,1221,1223],{"class":170,"line":1207},17,[168,1209,1020],{"class":396},[168,1211,1024],{"class":1023},[168,1213,1009],{"class":396},[168,1215,1029],{"class":396},[168,1217,397],{"class":396},[168,1219,1220],{"class":178},"https:\u002F\u002Fbuilds.mcp.cloudflare.com\u002Fmcp",[168,1222,1009],{"class":396},[168,1224,1039],{"class":396},[168,1226,1228,1230,1232,1234,1236],{"class":170,"line":1227},18,[168,1229,1020],{"class":396},[168,1231,1046],{"class":1023},[168,1233,1009],{"class":396},[168,1235,1029],{"class":396},[168,1237,1053],{"class":396},[168,1239,1241,1243,1245,1247,1249],{"class":170,"line":1240},19,[168,1242,1058],{"class":396},[168,1244,1061],{"class":174},[168,1246,1009],{"class":396},[168,1248,1029],{"class":396},[168,1250,1068],{"class":396},[168,1252,1254],{"class":170,"line":1253},20,[168,1255,1073],{"class":396},[168,1257,1259,1261],{"class":170,"line":1258},21,[168,1260,1078],{"class":396},[168,1262,1039],{"class":987},[168,1264,1266,1268,1271,1273,1275],{"class":170,"line":1265},22,[168,1267,1003],{"class":396},[168,1269,1270],{"class":178},"cloudflare-observability",[168,1272,1009],{"class":396},[168,1274,1012],{"class":987},[168,1276,1015],{"class":396},[168,1278,1280,1282,1284,1286,1288,1290,1293,1295],{"class":170,"line":1279},23,[168,1281,1020],{"class":396},[168,1283,1024],{"class":1023},[168,1285,1009],{"class":396},[168,1287,1029],{"class":396},[168,1289,397],{"class":396},[168,1291,1292],{"class":178},"https:\u002F\u002Fobservability.mcp.cloudflare.com\u002Fmcp",[168,1294,1009],{"class":396},[168,1296,1039],{"class":396},[168,1298,1300,1302,1304,1306,1308],{"class":170,"line":1299},24,[168,1301,1020],{"class":396},[168,1303,1046],{"class":1023},[168,1305,1009],{"class":396},[168,1307,1029],{"class":396},[168,1309,1053],{"class":396},[168,1311,1313,1315,1317,1319,1321],{"class":170,"line":1312},25,[168,1314,1058],{"class":396},[168,1316,1061],{"class":174},[168,1318,1009],{"class":396},[168,1320,1029],{"class":396},[168,1322,1068],{"class":396},[168,1324,1326],{"class":170,"line":1325},26,[168,1327,1073],{"class":396},[168,1329,1331],{"class":170,"line":1330},27,[168,1332,1333],{"class":396},"    }\n",[44,1335,1336,1337,1339,1340,1343],{},"Volte para a seção ",[48,1338,871],{}," no aplicativo e clique no botão ",[48,1341,1342],{},"Refresh"," (Atualizar). Agora você verá os servidores MCP da Cloudflare listados, pendentes de autorização.",[44,1345,1346],{},[195,1347],{"alt":1348,"src":1349},"Servidores MCP da Cloudflare listados pendentes de autorização","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-mcp-pending.webp",[44,1351,899,1352,1355,1356,1359],{},[48,1353,1354],{},"Authenticate"," ao lado do servidor MCP. Isso abrirá uma página de autenticação no seu navegador web. Depois de autenticado, um código de autorização (",[48,1357,1358],{},"auth code",") será gerado.",[44,1361,1362],{},[195,1363],{"alt":1364,"src":1365},"Navegador web exibindo o código de autorização OAuth dinâmico","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-auth-code.webp",[44,1367,1368,1369,105],{},"Copie esse código de autorização, cole-o de volta no campo de entrada de texto no Antigravity e clique em ",[48,1370,1371],{},"Submit",[44,1373,1374],{},[195,1375],{"alt":1376,"src":1377},"Envio do código de verificação OAuth na interface do Antigravity","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-auth-submit.webp",[559,1379],{},[107,1381,1383],{"id":1382},"_4-adicionar-habilidades-personalizadas","4. Adicionar Habilidades Personalizadas",[44,1385,1386,1387,1390,1391,105],{},"Atualmente, a adição de habilidades personalizadas (skills) ",[48,1388,1389],{},"não pode"," ser feita diretamente pela interface do usuário do aplicativo de desktop. Em vez disso, elas devem ser adicionadas diretamente na pasta ",[53,1392,1393],{},"~\u002F.gemini\u002Fconfig\u002Fskills",[44,1395,1396,1397,1399,1400],{},"Como usamos a CLI ",[53,1398,90],{}," para centralizar todas as habilidades de nossos agentes, qualquer nova habilidade adicionada pode ser disponibilizada para todos os agentes, incluindo o Antigravity. ",[701,1401,1402,1403,1405],{},"(Para saber mais sobre isso, consulte nosso artigo: ",[96,1404,38],{"href":6},").",[44,1407,1408,1409,1412],{},"Inicialmente, ao digitar ",[53,1410,1411],{},"\u002F"," na caixa de conversa, a lista de habilidades aparece vazia:",[44,1414,1415],{},[195,1416],{"alt":1417,"src":1418},"Caixa de comandos exibindo lista de habilidades vazia ao digitar barra","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-empty-skills-list.webp",[44,1420,1421,1422,1424],{},"Parece que o Antigravity 2 não lê automaticamente a pasta global de habilidades (",[53,1423,129],{},"). Para corrigir isso, precisamos criar um link simbólico apontando para o diretório de configuração do Antigravity:",[159,1426,1428],{"className":161,"code":1427,"language":163,"meta":164,"style":164},"ln -s ~\u002F.agents\u002Fskills\u002Fexcalidraw-diagram ~\u002F.gemini\u002Fconfig\u002Fskills\u002Fexcalidraw-diagram\n",[53,1429,1430],{"__ignoreMap":164},[168,1431,1432,1435,1438,1441],{"class":170,"line":171},[168,1433,1434],{"class":174},"ln",[168,1436,1437],{"class":178}," -s",[168,1439,1440],{"class":178}," ~\u002F.agents\u002Fskills\u002Fexcalidraw-diagram",[168,1442,1443],{"class":178}," ~\u002F.gemini\u002Fconfig\u002Fskills\u002Fexcalidraw-diagram\n",[44,1445,1446],{},"Depois de vinculado, a habilidade fica disponível no aplicativo!",[44,1448,1449],{},[195,1450],{"alt":1451,"src":1452},"Habilidade de diagramas do Excalidraw aparecendo na lista de comandos","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-excalidraw-skill-available.webp",[559,1454],{},[107,1456,1458],{"id":1457},"_5-testar-uma-tarefa-simples","5. Testar uma Tarefa Simples",[44,1460,1461],{},"Agora que tudo está configurado, vamos fazer um teste.",[44,1463,1464],{},[195,1465],{"alt":1466,"src":1467},"Envio de uma tarefa de teste para listar bancos de dados D1","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-test-simple-task-prompt.webp",[44,1469,1470],{},"Como mostrado abaixo, o modelo detecta e utiliza com sucesso o servidor MCP da Cloudflare recém-adicionado para lidar com a solicitação.",[44,1472,1473],{},[195,1474],{"alt":1475,"src":1476},"Agente de IA executando com sucesso a listagem de bancos de dados D1","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-test-task-success.webp",[559,1478],{},[107,1480,1481],{"id":751},"Considerações Finais",[44,1483,1484],{},"O Antigravity 2 representa uma grande mudança de uma IDE tradicional para um aplicativo de desktop acessível, capacitando os usuários comuns a atuarem como orquestradores de qualquer tarefa.",[44,1486,1487],{},"No entanto, o Antigravity 2 precisa de alguns ajustes. Quando as funcionalidades falham, a depuração pode ser frustrante devido ao tratamento de erros vago. Além disso, a documentação oficial parece pouco refinada — provavelmente gerada por IA —, já que várias referências e caminhos de arquivo estão incorretos no momento.",[489,1489,1490],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":164,"searchDepth":366,"depth":366,"links":1492},[1493,1494,1495,1496,1497,1498,1499],{"id":793,"depth":375,"text":794},{"id":813,"depth":366,"text":814},{"id":864,"depth":366,"text":865},{"id":970,"depth":366,"text":971},{"id":1382,"depth":366,"text":1383},{"id":1457,"depth":366,"text":1458},{"id":751,"depth":366,"text":1481},"2026-06-05","Descubra as novidades do Google Antigravity 2. Leia nosso guia prático para instalar o aplicativo, testar tarefas de agentes de IA e adicionar servidores MCP personalizados manualmente.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002FPT-Setup-Antigravity-2.0.webp","Análise e Configuração do Google Antigravity 2: Agentes de IA, MCPs e Plugins",{"schemaOrg":1505,"robots":513,"sitemap":1507},[1506],{"@type":511,"headline":1503,"description":1501},{"lastmod":1500},"\u002Fpt\u002Farticle\u002Fsetup-antigravity-2",{"title":1503,"description":1501,"ogTitle":776,"ogDescription":1501,"twitterTitle":776,"twitterDescription":1501},"pt\u002Farticle\u002Fsetup-antigravity-2","N8a0TiXaX04kPcM6BSaelIqeeO81TtC0LrLOgzU2y0o",1781435125701]