[{"data":1,"prerenderedAt":1514},["ShallowReactive",2],{"search-navigation":3,"\u002Ffr\u002Farticle\u002Fcentralised-the-skills-for-agents":36,"\u002Ffr\u002Farticle\u002Fcentralised-the-skills-for-agents-surround":519},[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":501,"description":502,"extension":503,"image":504,"imageAlt":505,"isPublished":506,"meta":507,"minRead":405,"navigation":506,"path":515,"seo":516,"stem":517,"__hash__":518},"article\u002Ffr\u002Farticle\u002Fcentralised-the-skills-for-agents.md","Résoudre la fragmentation des compétences d'agents via npx skills",null,{"type":41,"value":42,"toc":491},"minimark",[43,57,60,85,105,110,120,137,147,154,157,191,198,209,228,237,248,252,259,280,283,291,301,307,310,330,339,343,349,435,441,445,481,487],[44,45,46,47,51,52,56],"p",{},"Si vous utilisez plusieurs agents IA ou interfaces en ligne de commande (CLIs) sur votre machine — que ce soit Hermes, Claude Code, Codex, Antigravity, Kimi ou d'autres outils compatibles —, vous avez probablement déjà rencontré ce problème frustrant : ",[48,49,50],"strong",{},"la fragmentation des compétences"," (skills). Chaque agent ou CLI gère son propre dossier ",[53,54,55],"code",{},"skills"," indépendant, ce qui entraîne des installations en doublon, des dérives de versions et une surcharge de maintenance.",[44,58,59],{},"Dans le cadre de nos travaux avec les agents IA, nous étions constamment confrontés aux limites suivantes :",[61,62,63,70,76],"ul",{},[64,65,66,69],"li",{},[48,67,68],{},"Multiplication des installations"," : Devoir installer une nouvelle compétence pour un agent, puis la réinstaller encore et encore pour tous les autres.",[64,71,72,75],{},[48,73,74],{},"Dérive des versions"," (version drift) : Personnaliser ou corriger une compétence pour un agent, oublier de mettre à jour les autres, et se retrouver avec des agents aux comportements incohérents.",[64,77,78,81,82,84],{},[48,79,80],{},"Gestion fastidieuse des compétences"," : Devoir inspecter chaque dossier ",[53,83,55],{}," de chaque agent sur l'ensemble du système pour savoir quelles compétences étaient réellement disponibles.",[44,86,87,88,91,92,94,95,104],{},"La CLI ",[53,89,90],{},"npx skills",", un outil open-source créé par Vercel, résout ce problème en vous permettant de gérer un dossier ",[53,93,55],{}," unique et centralisé, partagé de manière transparente par tous vos agents. N'hésitez pas à consulter le ",[96,97,101,102],"a",{"href":98,"rel":99},"https:\u002F\u002Fgithub.com\u002Fvercel-labs\u002Fskills",[100],"nofollow","dépôt GitHub de ",[53,103,90],{},".",[106,107,109],"h2",{"id":108},"un-dossier-centralisé","Un dossier centralisé",[44,111,112,113,115,116,119],{},"Le concept est d'une grande simplicité : si nous faisons pointer le dossier ",[53,114,55],{}," de chaque agent vers le ",[48,117,118],{},"même dossier physique",", le problème de la fragmentation disparaît instantanément.",[44,121,122,123,125,126,129,130,133,134,136],{},"Lorsque vous installez une compétence avec la CLI ",[53,124,90],{},", celle-ci est téléchargée dans le dossier centralisé de votre machine (",[53,127,128],{},"~\u002F.agents\u002Fskills","). La CLI crée ensuite un ",[48,131,132],{},"lien symbolique"," (un symlink, qui agit comme un pointeur transparent) reliant le dossier ",[53,135,55],{}," de chaque agent à ce dossier centralisé.",[44,138,139,140,143,144,146],{},"Par exemple, lorsque Claude Code recherche ses compétences dans ",[53,141,142],{},"~\u002F.claude\u002Fskills\u002F",", il est redirigé de manière invisible vers ",[53,145,128],{},". Si vous ajustez une compétence dans ce dossier centralisé, absolument tous vos agents bénéficient immédiatement de la mise à jour. Finies les copies manuelles, les scripts de synchronisation complexes et le gaspillage d'espace disque !",[106,148,150,151,153],{"id":149},"installer-npx-skills-et-ajouter-une-compétence","Installer ",[53,152,90],{}," et ajouter une compétence",[44,155,156],{},"Lancez la commande suivante pour commencer et ajouter votre toute première compétence :",[158,159,164],"pre",{"className":160,"code":161,"language":162,"meta":163,"style":163},"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,165,166],{"__ignoreMap":163},[167,168,171,175,179,182,185,188],"span",{"class":169,"line":170},"line",1,[167,172,174],{"class":173},"sBMFI","npx",[167,176,178],{"class":177},"sfazB"," skills",[167,180,181],{"class":177}," add",[167,183,184],{"class":177}," https:\u002F\u002Fgithub.com\u002Fcoleam00\u002Fexcalidraw-diagram-skill",[167,186,187],{"class":177}," --skill",[167,189,190],{"class":177}," excalidraw-diagram\n",[44,192,193],{},[194,195],"img",{"alt":196,"src":197},"Utilisation de la commande npx skills add pour installer une compétence depuis GitHub","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-add-command.webp",[44,199,200,201,204,205],{},"La CLI vous demandera si vous souhaitez effectuer cette configuration pour un projet spécifique ou de manière globale. Nous vous recommandons généralement de choisir l'option ",[48,202,203],{},"global"," pour que tous vos agents compatibles puissent y accéder d'un coup :\n",[194,206],{"alt":207,"src":208},"Sélection de l'option d'installation globale dans l'interface CLI npx skills","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-install-global-prompt.webp",[44,210,211,212,215,216,219,220,224],{},"Ensuite, veillez à bien sélectionner ",[53,213,214],{},"Symlink"," pour garantir une ",[48,217,218],{},"source unique de vérité"," :\n",[194,221],{"alt":222,"src":223},"Choix de la méthode de lien symbolique pour la synchronisation des compétences","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-symlink-option.webp",[194,225],{"alt":226,"src":227},"Confirmation de la réussite de l'installation et de la création du lien symbolique dans la CLI","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-installation-completed.webp",[44,229,230,231,219,233],{},"Une fois l'opération terminée, nous pouvons vérifier que la compétence est bien installée dans le dossier centralisé à l'emplacement ",[53,232,128],{},[194,234],{"alt":235,"src":236},"Vérification des compétences installées dans le répertoire centralisé","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fnpx-skills-directory-verification.webp",[44,238,239,240,243,244],{},"Lancez maintenant la CLI de Kimi (or tout autre agent) : la compétence ",[53,241,242],{},"excalidraw-diagram"," est disponible et prête à l'emploi !\n",[194,245],{"alt":246,"src":247},"Kimi CLI affichant les compétences centralisées chargées et prêtes","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fkimi-cli-skills-integration.webp",[106,249,251],{"id":250},"créer-une-compétence-à-partir-de-zéro","Créer une compétence à partir de zéro",[44,253,254,255,258],{},"Pour concevoir vos propres compétences sur mesure, vous pouvez utiliser l'outil ",[53,256,257],{},"skill-creator"," d'Anthropic. Installez-le comme suit :",[158,260,262],{"className":160,"code":261,"language":162,"meta":163,"style":163},"npx skills add https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fskills --skill skill-creator\n",[53,263,264],{"__ignoreMap":163},[167,265,266,268,270,272,275,277],{"class":169,"line":170},[167,267,174],{"class":173},[167,269,178],{"class":177},[167,271,181],{"class":177},[167,273,274],{"class":177}," https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fskills",[167,276,187],{"class":177},[167,278,279],{"class":177}," skill-creator\n",[44,281,282],{},"Ensuite, dans Kimi ou tout autre agent, saisissez le prompt suivant :",[158,284,289],{"className":285,"code":287,"language":288},[286],"language-text","Use the skill-creator to help me build a skill for creating a product landing page\n","text",[53,290,287],{"__ignoreMap":163},[44,292,293,294,296,297],{},"Kimi (ou votre agent) détectera automatiquement ",[53,295,257],{}," et vous guidera étape par étape dans sa création :\n",[194,298],{"alt":299,"src":300},"Exécution de l'assistant interactif skill-creator dans Kimi CLI","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002Fkimi-cli-skill-creator-setup.webp",[106,302,304,305],{"id":303},"autres-commandes-utiles-de-npx-skills","Autres commandes utiles de ",[53,306,90],{},[44,308,309],{},"Voici d'autres commandes très pratiques :",[61,311,312,318,324],{},[64,313,314,317],{},[53,315,316],{},"npx skills ls -g"," : Lister toutes les compétences installées globalement",[64,319,320,323],{},[53,321,322],{},"npx skills update"," : Mettre à jour toutes vos compétences en une seule commande",[64,325,326,329],{},[53,327,328],{},"npx skills remove"," : Désinstaller ou supprimer une compétence de manière interactive",[44,331,332,333,338],{},"Veuillez vous référer au ",[96,334,101,336],{"href":98,"rel":335},[100],[53,337,90],{}," pour découvrir d'autres commandes et ressources.",[106,340,342],{"id":341},"aller-encore-plus-loin","Aller encore plus loin",[44,344,345,346,348],{},"Puisque toutes vos compétences sont désormais réunies au même endroit (",[53,347,128],{},"), vous pouvez l'initialiser en tant que dépôt Git et le pousser vers GitHub ou GitLab.",[158,350,352],{"className":160,"code":351,"language":162,"meta":163,"style":163},"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,353,354,363,372,382,403,419],{"__ignoreMap":163},[167,355,356,360],{"class":169,"line":170},[167,357,359],{"class":358},"s2Zo4","cd",[167,361,362],{"class":177}," ~\u002F.agents\u002Fskills\n",[167,364,366,369],{"class":169,"line":365},2,[167,367,368],{"class":173},"git",[167,370,371],{"class":177}," init\n",[167,373,375,377,379],{"class":169,"line":374},3,[167,376,368],{"class":173},[167,378,181],{"class":177},[167,380,381],{"class":177}," .\n",[167,383,385,387,390,393,397,400],{"class":169,"line":384},4,[167,386,368],{"class":173},[167,388,389],{"class":177}," commit",[167,391,392],{"class":177}," -m",[167,394,396],{"class":395},"sMK4o"," \"",[167,398,399],{"class":177},"Initial skills folder",[167,401,402],{"class":395},"\"\n",[167,404,406,408,411,413,416],{"class":169,"line":405},5,[167,407,368],{"class":173},[167,409,410],{"class":177}," remote",[167,412,181],{"class":177},[167,414,415],{"class":177}," origin",[167,417,418],{"class":177}," https:\u002F\u002Fgithub.com\u002FTech-Voyage-Dev\u002Fskills\n",[167,420,422,424,427,430,432],{"class":169,"line":421},6,[167,423,368],{"class":173},[167,425,426],{"class":177}," push",[167,428,429],{"class":177}," -u",[167,431,415],{"class":177},[167,433,434],{"class":177}," main\n",[44,436,437,438,104],{},"Désormais, vous disposez d'un historique complet de toutes les modifications apportées à vos compétences, ce qui vous permet de revenir facilement en arrière en cas de problème. De plus, vous pouvez synchroniser sans effort vos compétences sur plusieurs machines (par exemple, entre votre ordinateur portable et votre poste fixe) avec un simple ",[53,439,440],{},"git pull",[106,442,444],{"id":443},"quelques-points-de-vigilance-sécurité-et-risques","Quelques points de vigilance (Sécurité et risques)",[61,446,447,453,459,469,475],{},[64,448,449,452],{},[48,450,451],{},"Compatibilité variable"," : Toutes les plateformes d'agents ne prennent pas encore en charge l'ensemble des fonctionnalités (comme les hooks personnalisés ou des autorisations d'outils spécifiques). Une compétence peut parfaitement fonctionner avec un agent et présenter des limites avec un autre.",[64,454,455,458],{},[48,456,457],{},"Confiance des sources"," : N'installez que des compétences provenant de sources fiables.",[64,460,461,464,465,468],{},[48,462,463],{},"Vérification du code"," : Si vous utilisez une compétence tierce ou personnalisée, examinez attentivement ses fichiers (notamment le dossier ",[53,466,467],{},"scripts\u002F",") avant d'autoriser votre agent à l'exécuter.",[64,470,471,474],{},[48,472,473],{},"Principe de moindre privilège"," : Évitez de donner à une compétence plus de permissions ou d'accès aux outils que ce qui est strictement nécessaire à son fonctionnement.",[64,476,477,480],{},[48,478,479],{},"Ne stockez jamais de secrets en dur"," : Gardez vos clés d'API et autres secrets confidentiels en dehors des fichiers de compétences.",[44,482,483,484,486],{},"Mettre en place une \"source unique de vérité\" centralisée à l'aide de ",[53,485,90],{}," a épargné bien des frustrations et des tâches redondantes à notre équipe. Nous vous conseillons vivement d'essayer : la puissance de l'IA grandit à mesure que s'enrichissent vos compétences !",[488,489,490],"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":163,"searchDepth":365,"depth":365,"links":492},[493,494,496,497,499,500],{"id":108,"depth":365,"text":109},{"id":149,"depth":365,"text":495},"Installer npx skills et ajouter une compétence",{"id":250,"depth":365,"text":251},{"id":303,"depth":365,"text":498},"Autres commandes utiles de npx skills",{"id":341,"depth":365,"text":342},{"id":443,"depth":365,"text":444},"2026-06-04","Vous utilisez plusieurs agents IA comme Claude Code ou Kimi ? Apprenez à centraliser vos compétences dans un dossier unique et partagé grâce à npx skills.","md","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FCentralised%20the%20skills%20for%20agents\u002FR%C3%A9soudre-la-fragmentation-des-comp%C3%A9tences-d%27agents-via-npx-skills.webp","Résoudre la fragmentation des compétences d'agents IA avec npx skills",true,{"schemaOrg":508,"robots":512,"sitemap":513},[509],{"@type":510,"headline":511,"description":502},"TechArticle","Résoudre la fragmentation des compétences d'agents IA via npx skills","index, follow",{"lastmod":514},"2026-06-03","\u002Ffr\u002Farticle\u002Fcentralised-the-skills-for-agents",{"title":511,"description":502,"ogTitle":38,"ogDescription":502,"twitterTitle":38,"twitterDescription":502},"fr\u002Farticle\u002Fcentralised-the-skills-for-agents","7PPor9QXBAxtoB4Mk-5KaWs5Hygy_z1ghBA_hbGYu6s",[520,777],{"id":521,"title":522,"author":39,"body":523,"category":39,"date":763,"description":764,"extension":503,"image":765,"imageAlt":766,"isPublished":506,"meta":767,"minRead":772,"navigation":506,"path":773,"seo":774,"stem":775,"__hash__":776},"article\u002Ffr\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare.md","Sécurisez votre coffre NodeWarden via Cloudflare",{"type":41,"value":524,"toc":755},[525,528,531,545,550,557,560,564,567,572,603,607,610,677,681,684,748,752],[44,526,527],{},"Dès l'instant où votre instance NodeWarden est exposée publiquement sur Internet, elle commence à attirer des milliers de bots automatisés qui scannent les vulnérabilités 24h\u002F24 et 7j\u002F7. Pour protéger vos données sensibles, vous devez verrouiller votre instance NodeWarden au maximum.",[44,529,530],{},"Pour sécuriser votre instance NodeWarden, vous pouvez utiliser l'une de ces deux fonctionnalités de Cloudflare :",[61,532,533,539],{},[64,534,535,538],{},[48,536,537],{},"Cloudflare IP Access Rules (Règles d'accès IP) :"," Permet de bloquer, d'imposer un défi de sécurité (challenge) ou d'autoriser le trafic en fonction d'adresses IP ou de pays spécifiques.",[64,540,541,544],{},[48,542,543],{},"Cloudflare Zero Trust (Recommandé) :"," Agit comme une passerelle sécurisée qui rend votre instance NodeWarden complètement invisible au public, ne laissant passer que les utilisateurs autorisés.",[546,547,549],"h4",{"id":548},"pourquoi-nous-recommandons-cloudflare-zero-trust","Pourquoi nous recommandons Cloudflare Zero Trust",[44,551,552,553,556],{},"Nous vous conseillons vivement d'utiliser Cloudflare Zero Trust, car les règles d'accès IP sont liées à des adresses IP ou à des pays. Cela signifie que vous devez mettre à jour manuellement vos règles à chaque fois que vous voyagez ou si vous avez une IP dynamique. Cloudflare Zero Trust, en revanche, repose sur votre ",[48,554,555],{},"identité"," et non sur votre emplacement géographique — vous offrant un accès à NodeWarden à la fois transparent et sécurisé.",[558,559],"hr",{},[106,561,563],{"id":562},"guide-de-configuration","Guide de Configuration",[44,565,566],{},"Suivez ces étapes pour configurer Cloudflare Zero Trust pour NodeWarden.",[568,569,571],"h3",{"id":570},"phase-1-pour-commencer","Phase 1 : Pour commencer",[573,574,575,582,589,596],"ol",{},[64,576,577,578],{},"Dans votre tableau de bord Cloudflare, cliquez sur 'Zero Trust' dans le menu de gauche.\n",[194,579],{"alt":580,"src":581},"Barre latérale du tableau de bord Cloudflare affichant l'option Zero Trust sélectionnée dans le menu de navigation.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-dashboard-zero-trust-sidebar.webp",[64,583,584,585],{},"Cliquez sur 'Access controls' puis sur 'Applications'.\n",[194,586],{"alt":587,"src":588},"Menu de navigation Cloudflare Zero Trust avec la section Contrôles d'accès développée.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-access-controls-menu.webp",[64,590,591,592],{},"Il se peut qu'on vous demande de choisir un forfait ('Choose a plan').\n",[194,593],{"alt":594,"src":595},"Écran de configuration du compte Cloudflare Zero Trust invitant l'utilisateur à choisir un forfait d'abonnement.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-choose-plan-setup.webp",[64,597,598,599],{},"Cliquez sur le bouton 'Choose a plan' et choisissez 'Zero Trust Free'.\n",[194,600],{"alt":601,"src":602},"La page des détails du forfait Zero Trust Free sur Cloudflare, mettant en évidence le bouton Sélectionner le forfait.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-zero-trust-free-plan-selection.webp",[568,604,606],{"id":605},"phase-2-sécurisez-votre-interface-web","Phase 2 : Sécurisez votre interface web",[44,608,609],{},"Tout d'abord, nous allons créer une application pour protéger le tableau de bord web de NodeWarden.",[573,611,612,619,626,633,640,647,654,657,664,667],{},[64,613,614,615],{},"Cliquez sur 'Create new application' pour créer la première application.\n",[194,616],{"alt":617,"src":618},"Tableau de bord des applications Cloudflare Access présentant le bouton Créer une nouvelle application.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-create-new-application.webp",[64,620,621,622],{},"Choisissez 'Self-hosted and private'.\n",[194,623],{"alt":624,"src":625},"La fenêtre modale Ajouter une application dans Cloudflare Access avec le type d'application Auto-hébergée et privée sélectionné.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-add-self-hosted-application.webp",[64,627,628,629],{},"Entrez le nom de domaine de NodeWarden.\n",[194,630],{"alt":631,"src":632},"Écran de configuration de l'application Cloudflare Access affichant le nom d'hôte public défini sur 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],{},"Cliquez sur 'Create new policy' pour créer une politique.\n",[194,637],{"alt":638,"src":639},"Page des politiques Cloudflare Access indiquant qu'aucune politique n'a été ajoutée et un bouton pour créer une nouvelle politique.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-no-policies-create-button.webp",[64,641,642,643],{},"Sélectionnez 'Emails' et entrez un e-mail sous 'Policy rules'.\n",[194,644],{"alt":645,"src":646},"Écran de configuration de la règle de politique Cloudflare Access avec une adresse e-mail spécifiée comme critère d'inclusion.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-rule-email.webp",[64,648,649,650],{},"Entrez un nom et sélectionnez 'Allow' sous 'Policy details'.\n",[194,651],{"alt":652,"src":653},"Écran des détails de la politique Cloudflare Access affichant le nom de la politique NodeWarden-Web et l'action définie sur Autoriser.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-details-allow.webp",[64,655,656],{},"Cliquez sur 'Save Policy' pour créer la politique.",[64,658,659,660],{},"Entrez un nom et sélectionnez '1 month' dans la section 'Details'.\n",[194,661],{"alt":662,"src":663},"Résumé de la configuration finale pour une application Cloudflare Access nommée NodeWarden-Web avec une durée de session d'un mois.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-application-final-details.webp",[64,665,666],{},"Cliquez sur 'Create' pour créer l'application.",[64,668,669,672,673],{},[48,670,671],{},"Testez-le :"," Ouvrez le domaine dans le navigateur web, vous verrez 'Cloudflare Access' vous demander une adresse e-mail.\n",[194,674],{"alt":675,"src":676},"Un aperçu de l'écran de connexion Cloudflare Access pour NodeWarden-Web, demandant une adresse e-mail.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-login-screen-preview.webp",[568,678,680],{"id":679},"phase-3-autoriser-la-synchronisation-des-clients-bitwarden-contournement-de-lapi","Phase 3 : Autoriser la synchronisation des clients BitWarden (Contournement de l'API)",[44,682,683],{},"Les applications de bureau et mobiles BitWarden ne peuvent pas traiter l'écran de connexion par e-mail de Cloudflare. Nous devons donc créer une deuxième application permettant au trafic de contourner (bypass) cet écran de connexion, spécifiquement pour la synchronisation de l'API.",[573,685,686,696,712,717,724,731,734,741],{},[64,687,688,689,692,693,104],{},"Retournez dans Applications et cliquez sur ",[48,690,691],{},"Create new application",", en choisissant à nouveau ",[48,694,695],{},"Self-hosted and private",[64,697,698,699,703,704,707,708],{},"Entrez 'api\u002F",[700,701,702],"em",{},"', 'identity\u002F","', 'notifications\u002F",[700,705,706],{},"' et 'icons\u002F","' dans les Destinations.\n",[194,709],{"alt":710,"src":711},"Configuration de plusieurs noms d'hôte publics pour le contournement de l'API dans Cloudflare Access, incluant les chemins api, identity, notifications et icons.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-api-bypass-destinations.webp",[64,713,714,715],{},"Cliquez sur 'Create new policy' pour créer la politique.\n",[194,716],{"alt":638,"src":639},[64,718,719,720],{},"Sélectionnez 'Everyone' sous 'Policy rules'.\n",[194,721],{"alt":722,"src":723},"Configuration de la règle de politique Cloudflare Access avec Tout le monde sélectionné pour permettre un accès large à des chemins spécifiques.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-rule-everyone.webp",[64,725,726,727],{},"Entrez un nom et sélectionnez 'Bypass' sous 'Policy details'.\n",[194,728],{"alt":729,"src":730},"Détails de la politique Cloudflare Access pour NodeWarden-API avec l'action définie sur Contourner.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-policy-details-bypass.webp",[64,732,733],{},"Cliquez sur 'Save Policy' pour sauvegarder.",[64,735,736,737],{},"Entrez un nom et sélectionnez '1 month' pour 'Session Duration'.\n",[194,738],{"alt":739,"src":740},"Écran de configuration finale pour l'application NodeWarden-API dans Cloudflare Access.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-api-application-final-details.webp",[64,742,743,744],{},"Vous devriez maintenant avoir 2 applications créées.\n",[194,745],{"alt":746,"src":747},"Le tableau de bord des applications Cloudflare Access affichant les deux applications Web et API créées avec succès.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fcloudflare-access-applications-list-final.webp",[106,749,751],{"id":750},"le-mot-de-la-fin","Le mot de la fin",[44,753,754],{},"N'oubliez pas que Cloudflare n'est que votre bouclier extérieur. Pour conserver un coffre-fort (vault) véritablement sécurisé, assurez-vous de toujours utiliser un mot de passe maître robuste, d'activer l'authentification à double facteur (2FA) et de bien protéger votre compte Cloudflare.",{"title":163,"searchDepth":365,"depth":365,"links":756},[757,762],{"id":562,"depth":365,"text":563,"children":758},[759,760,761],{"id":570,"depth":374,"text":571},{"id":605,"depth":374,"text":606},{"id":679,"depth":374,"text":680},{"id":750,"depth":365,"text":751},"2026-05-27","Dès l'instant où votre instance NodeWarden est exposée publiquement sur Internet, elle commence à attirer des milliers de bots automatisés qui scannent les vulnérabilités 24h\u002F24 et 7j\u002F7.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FHow%20to%20secure%20NodeWarden%20at%20Cloudflare\u002Fsecuriser-nodewarden-integration-cloudflare-guide.webp","Vignette d'un guide étape par étape pour sécuriser un coffre-fort NodeWarden avec l'intégration Cloudflare, illustrant un coffre numérique cadenassé et une baie de serveurs sécurisée.",{"schemaOrg":768,"robots":512,"sitemap":771},[769],{"@type":510,"headline":770,"description":764},"Arrêtez d'exposer votre coffre-fort : Sécurisez NodeWarden avec Cloudflare",{"lastmod":763},8,"\u002Ffr\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare",{"title":770,"description":764,"ogTitle":770,"ogDescription":764,"twitterTitle":770,"twitterDescription":764},"fr\u002Farticle\u002Fhow-to-secure-nodewarden-at-cloudflare","z8UTKUFaPx7biiv7HKB4nCZbWuGfXBPWDC1QYuwXVos",{"id":778,"title":779,"author":39,"body":780,"category":39,"date":1502,"description":1503,"extension":503,"image":1504,"imageAlt":1505,"isPublished":506,"meta":1506,"minRead":384,"navigation":506,"path":1510,"seo":1511,"stem":1512,"__hash__":1513},"article\u002Ffr\u002Farticle\u002Fsetup-antigravity-2.md","Prise en main de Google Antigravity 2 : Installation",{"type":41,"value":781,"toc":1493},[782,793,797,800,811,813,817,826,832,839,845,852,862,864,868,875,881,884,890,894,897,911,925,932,944,954,968,970,974,977,991,994,1336,1346,1352,1362,1368,1374,1380,1382,1386,1396,1414,1420,1426,1445,1448,1454,1456,1460,1463,1469,1472,1478,1480,1484,1487,1490],[44,783,784,785,788,789,792],{},"Lors de la Google I\u002FO 2026, Google a annoncé ",[48,786,787],{},"Antigravity 2",", une application de bureau autonome qui place l'",[48,790,791],{},"agent"," au cœur de l'interface utilisateur. Il vous suffit de décrire l'objectif à atteindre, et l'agent génère un plan, le découpe en sous-tâches gérables et les exécute.",[568,794,796],{"id":795},"prérequis","Prérequis",[44,798,799],{},"Avant de commencer, vous aurez besoin de :",[61,801,802,805,808],{},[64,803,804],{},"Un ordinateur (macOS est utilisé dans ce guide)",[64,806,807],{},"Un navigateur web moderne",[64,809,810],{},"Un compte Gmail",[558,812],{},[106,814,816],{"id":815},"_1-installer-antigravity-2","1. Installer Antigravity 2",[44,818,819,820,825],{},"Téléchargez Antigravity 2 depuis ",[96,821,824],{"href":822,"rel":823},"https:\u002F\u002Fantigravity.google\u002Fdownload",[100],"antigravity.google"," et installez-le sur votre ordinateur. Lors du premier lancement, vous serez invité à vous connecter avec votre compte Gmail.",[44,827,828],{},[194,829],{"alt":830,"src":831},"Écran de connexion au compte Google lors du premier lancement d'Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-gmail-login.webp",[44,833,834,835,838],{},"Une fois connecté, vous remarquerez un ",[48,836,837],{},"bouton vocal"," dans le champ de saisie, vous permettant d'enregistrer des requêtes vocales au lieu de les taper.",[44,840,841],{},[194,842],{"alt":843,"src":844},"Bouton d'enregistrement vocal dans le champ de saisie d'Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-voice-input-field.webp",[44,846,847,848,851],{},"Antigravity 2 introduit également le concept de ",[48,849,850],{},"Projet"," (Project), qui peut englober plusieurs dossiers locaux et fonctionner avec ses propres paramètres d'agent et autorisations spécifiques.",[44,853,854,858],{},[194,855],{"alt":856,"src":857},"Menu de sélection et de configuration des projets dans Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-project-menu.webp",[194,859],{"alt":860,"src":861},"Création d'un nouveau projet IA avec chemin de dossier dans Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-project-creation.webp",[558,863],{},[106,865,867],{"id":866},"_2-configurer-les-serveurs-mcp-et-les-plugins","2. Configurer les serveurs MCP et les plugins",[44,869,870,871,874],{},"Tous les serveurs MCP (Model Context Protocol), plugins et compétences (skills) sont gérés dans la section ",[48,872,873],{},"Customizations"," (Personnalisations) du menu des paramètres :",[44,876,877],{},[194,878],{"alt":879,"src":880},"Onglet de personnalisation pour la gestion des serveurs MCP et des compétences","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-settings-customizations.webp",[44,882,883],{},"Actuellement, les seuls plugins disponibles sont ceux de Google, mais nous espérons que d'autres seront publiés à l'avenir.",[44,885,886],{},[194,887],{"alt":888,"src":889},"Liste des plugins officiels Google et intégrations dans Antigravity 2","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-google-plugins-list.webp",[546,891,893],{"id":892},"ajouter-un-serveur-mcp-disponible","Ajouter un serveur MCP disponible",[44,895,896],{},"Pour installer un serveur MCP préconfiguré (par exemple, GitHub) :",[573,898,899,905],{},[64,900,901,902,104],{},"Cliquez sur ",[48,903,904],{},"Add MCP+",[64,906,907,908,104],{},"Sélectionnez le ",[48,909,910],{},"GitHub MCP Server",[44,912,913,917,921],{},[194,914],{"alt":915,"src":916},"Ajout d'un serveur MCP préconfiguré en cliquant sur le bouton Add MCP plus","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-mcp-button.webp",[194,918],{"alt":919,"src":920},"Sélection de GitHub MCP Server dans la liste des intégrations disponibles","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-select-github-mcp.webp",[194,922],{"alt":923,"src":924},"Assistant de configuration et d'autorisation du serveur MCP GitHub","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-github-mcp-setup.webp",[44,926,927,928],{},"La configuration du serveur MCP GitHub s'est terminée par une erreur :\n",[194,929],{"alt":930,"src":931},"Erreur de configuration lors de l'installation du serveur MCP GitHub","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-github-mcp-error.webp",[44,933,934,935,937,938,940,941,943],{},"Comme ",[53,936,368],{}," est déjà installé sur macOS, nous pouvons contourner ce problème en exécutant la commande ",[53,939,368],{}," directement dans la conversation. Cependant, nous devons d'abord ajouter explicitement la commande ",[53,942,368],{}," aux autorisations d'Antigravity.",[44,945,946,950],{},[194,947],{"alt":948,"src":949},"Boîte de dialogue de demande d'autorisation pour la commande git","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-git-permission-1.webp",[194,951],{"alt":952,"src":953},"Octroi de l'autorisation d'exécution de la commande git dans les paramètres","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-add-git-permission-2.webp",[44,955,956,957,959,960,964],{},"Testons la requête pour voir si la commande ",[53,958,368],{}," fonctionne désormais :\n",[194,961],{"alt":962,"src":963},"Envoi d'une requête git status dans la boîte de dialogue de l'agent IA","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-git-command-test-1.webp",[194,965],{"alt":966,"src":967},"Exécution réussie de la commande git status directement dans le chat","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-git-command-test-2.webp",[558,969],{},[106,971,973],{"id":972},"_3-ajouter-des-serveurs-mcp-personnalisés","3. Ajouter des serveurs MCP personnalisés",[44,975,976],{},"Si le serveur MCP de votre choix ne figure pas dans la liste par défaut, vous pouvez l'ajouter en modifiant directement le fichier de configuration MCP. La configuration se trouve à l'emplacement suivant :",[158,978,980],{"className":160,"code":979,"language":162,"meta":163,"style":163},"~\u002F.gemini\u002Fconfig\u002Fmcp_config.json\n",[53,981,982],{"__ignoreMap":163},[167,983,984,987],{"class":169,"line":170},[167,985,986],{"class":395},"~",[167,988,990],{"class":989},"sTEyZ","\u002F.gemini\u002Fconfig\u002Fmcp_config.json\n",[44,992,993],{},"Ajoutons quelques serveurs MCP Cloudflare à titre d'exemple. Comme Cloudflare prend en charge l'enregistrement dynamique des clients, il nous suffit d'activer l'OAuth. Ajoutez le code suivant à votre configuration JSON :",[158,995,999],{"className":996,"code":997,"language":998,"meta":163,"style":163},"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,1000,1001,1018,1042,1056,1071,1076,1083,1097,1114,1121,1135,1155,1168,1181,1186,1193,1207,1227,1240,1253,1258,1265,1279,1299,1312,1325,1330],{"__ignoreMap":163},[167,1002,1003,1006,1009,1012,1015],{"class":169,"line":170},[167,1004,1005],{"class":395},"    \"",[167,1007,1008],{"class":177},"cloudflare-api",[167,1010,1011],{"class":395},"\"",[167,1013,1014],{"class":989},": ",[167,1016,1017],{"class":395},"{\n",[167,1019,1020,1023,1027,1029,1032,1034,1037,1039],{"class":169,"line":365},[167,1021,1022],{"class":395},"      \"",[167,1024,1026],{"class":1025},"spNyl","serverUrl",[167,1028,1011],{"class":395},[167,1030,1031],{"class":395},":",[167,1033,396],{"class":395},[167,1035,1036],{"class":177},"https:\u002F\u002Fmcp.cloudflare.com\u002Fmcp",[167,1038,1011],{"class":395},[167,1040,1041],{"class":395},",\n",[167,1043,1044,1046,1049,1051,1053],{"class":169,"line":374},[167,1045,1022],{"class":395},[167,1047,1048],{"class":1025},"oauth",[167,1050,1011],{"class":395},[167,1052,1031],{"class":395},[167,1054,1055],{"class":395}," {\n",[167,1057,1058,1061,1064,1066,1068],{"class":169,"line":384},[167,1059,1060],{"class":395},"        \"",[167,1062,1063],{"class":173},"enabled",[167,1065,1011],{"class":395},[167,1067,1031],{"class":395},[167,1069,1070],{"class":395}," true\n",[167,1072,1073],{"class":169,"line":405},[167,1074,1075],{"class":395},"      }\n",[167,1077,1078,1081],{"class":169,"line":421},[167,1079,1080],{"class":395},"    }",[167,1082,1041],{"class":989},[167,1084,1086,1088,1091,1093,1095],{"class":169,"line":1085},7,[167,1087,1005],{"class":395},[167,1089,1090],{"class":177},"cloudflare-docs",[167,1092,1011],{"class":395},[167,1094,1014],{"class":989},[167,1096,1017],{"class":395},[167,1098,1099,1101,1103,1105,1107,1109,1112],{"class":169,"line":772},[167,1100,1022],{"class":395},[167,1102,1026],{"class":1025},[167,1104,1011],{"class":395},[167,1106,1031],{"class":395},[167,1108,396],{"class":395},[167,1110,1111],{"class":177},"https:\u002F\u002Fdocs.mcp.cloudflare.com\u002Fmcp",[167,1113,402],{"class":395},[167,1115,1117,1119],{"class":169,"line":1116},9,[167,1118,1080],{"class":395},[167,1120,1041],{"class":989},[167,1122,1124,1126,1129,1131,1133],{"class":169,"line":1123},10,[167,1125,1005],{"class":395},[167,1127,1128],{"class":177},"cloudflare-bindings",[167,1130,1011],{"class":395},[167,1132,1014],{"class":989},[167,1134,1017],{"class":395},[167,1136,1138,1140,1142,1144,1146,1148,1151,1153],{"class":169,"line":1137},11,[167,1139,1022],{"class":395},[167,1141,1026],{"class":1025},[167,1143,1011],{"class":395},[167,1145,1031],{"class":395},[167,1147,396],{"class":395},[167,1149,1150],{"class":177},"https:\u002F\u002Fbindings.mcp.cloudflare.com\u002Fmcp",[167,1152,1011],{"class":395},[167,1154,1041],{"class":395},[167,1156,1158,1160,1162,1164,1166],{"class":169,"line":1157},12,[167,1159,1022],{"class":395},[167,1161,1048],{"class":1025},[167,1163,1011],{"class":395},[167,1165,1031],{"class":395},[167,1167,1055],{"class":395},[167,1169,1171,1173,1175,1177,1179],{"class":169,"line":1170},13,[167,1172,1060],{"class":395},[167,1174,1063],{"class":173},[167,1176,1011],{"class":395},[167,1178,1031],{"class":395},[167,1180,1070],{"class":395},[167,1182,1184],{"class":169,"line":1183},14,[167,1185,1075],{"class":395},[167,1187,1189,1191],{"class":169,"line":1188},15,[167,1190,1080],{"class":395},[167,1192,1041],{"class":989},[167,1194,1196,1198,1201,1203,1205],{"class":169,"line":1195},16,[167,1197,1005],{"class":395},[167,1199,1200],{"class":177},"cloudflare-builds",[167,1202,1011],{"class":395},[167,1204,1014],{"class":989},[167,1206,1017],{"class":395},[167,1208,1210,1212,1214,1216,1218,1220,1223,1225],{"class":169,"line":1209},17,[167,1211,1022],{"class":395},[167,1213,1026],{"class":1025},[167,1215,1011],{"class":395},[167,1217,1031],{"class":395},[167,1219,396],{"class":395},[167,1221,1222],{"class":177},"https:\u002F\u002Fbuilds.mcp.cloudflare.com\u002Fmcp",[167,1224,1011],{"class":395},[167,1226,1041],{"class":395},[167,1228,1230,1232,1234,1236,1238],{"class":169,"line":1229},18,[167,1231,1022],{"class":395},[167,1233,1048],{"class":1025},[167,1235,1011],{"class":395},[167,1237,1031],{"class":395},[167,1239,1055],{"class":395},[167,1241,1243,1245,1247,1249,1251],{"class":169,"line":1242},19,[167,1244,1060],{"class":395},[167,1246,1063],{"class":173},[167,1248,1011],{"class":395},[167,1250,1031],{"class":395},[167,1252,1070],{"class":395},[167,1254,1256],{"class":169,"line":1255},20,[167,1257,1075],{"class":395},[167,1259,1261,1263],{"class":169,"line":1260},21,[167,1262,1080],{"class":395},[167,1264,1041],{"class":989},[167,1266,1268,1270,1273,1275,1277],{"class":169,"line":1267},22,[167,1269,1005],{"class":395},[167,1271,1272],{"class":177},"cloudflare-observability",[167,1274,1011],{"class":395},[167,1276,1014],{"class":989},[167,1278,1017],{"class":395},[167,1280,1282,1284,1286,1288,1290,1292,1295,1297],{"class":169,"line":1281},23,[167,1283,1022],{"class":395},[167,1285,1026],{"class":1025},[167,1287,1011],{"class":395},[167,1289,1031],{"class":395},[167,1291,396],{"class":395},[167,1293,1294],{"class":177},"https:\u002F\u002Fobservability.mcp.cloudflare.com\u002Fmcp",[167,1296,1011],{"class":395},[167,1298,1041],{"class":395},[167,1300,1302,1304,1306,1308,1310],{"class":169,"line":1301},24,[167,1303,1022],{"class":395},[167,1305,1048],{"class":1025},[167,1307,1011],{"class":395},[167,1309,1031],{"class":395},[167,1311,1055],{"class":395},[167,1313,1315,1317,1319,1321,1323],{"class":169,"line":1314},25,[167,1316,1060],{"class":395},[167,1318,1063],{"class":173},[167,1320,1011],{"class":395},[167,1322,1031],{"class":395},[167,1324,1070],{"class":395},[167,1326,1328],{"class":169,"line":1327},26,[167,1329,1075],{"class":395},[167,1331,1333],{"class":169,"line":1332},27,[167,1334,1335],{"class":395},"    }\n",[44,1337,1338,1339,1341,1342,1345],{},"Revenez à la section ",[48,1340,873],{}," de l'application et cliquez sur le bouton ",[48,1343,1344],{},"Refresh"," (Actualiser). Vous verrez maintenant les serveurs MCP Cloudflare s'afficher, en attente d'autorisation.",[44,1347,1348],{},[194,1349],{"alt":1350,"src":1351},"Serveurs MCP Cloudflare listés en attente d'autorisation","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-mcp-pending.webp",[44,1353,901,1354,1357,1358,1361],{},[48,1355,1356],{},"Authenticate"," à côté du serveur MCP. Cela ouvrira une page d'authentification dans votre navigateur web. Une fois authentifié, un code d'autorisation (",[48,1359,1360],{},"auth code",") sera généré.",[44,1363,1364],{},[194,1365],{"alt":1366,"src":1367},"Navigateur web affichant le code d'autorisation OAuth dynamique","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-auth-code.webp",[44,1369,1370,1371,104],{},"Copiez ce code d'autorisation, collez-le dans le champ de saisie d'Antigravity, puis cliquez sur ",[48,1372,1373],{},"Submit",[44,1375,1376],{},[194,1377],{"alt":1378,"src":1379},"Envoi du code de vérification OAuth dans l'interface d'Antigravity","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-cloudflare-auth-submit.webp",[558,1381],{},[106,1383,1385],{"id":1384},"_4-ajouter-des-compétences-personnalisées","4. Ajouter des compétences personnalisées",[44,1387,1388,1389,1392,1393,104],{},"Actuellement, l'ajout de compétences personnalisées (skills) ",[48,1390,1391],{},"ne peut pas"," se faire directement via l'interface de l'application de bureau. Elles doivent être ajoutées directement dans le dossier ",[53,1394,1395],{},"~\u002F.gemini\u002Fconfig\u002Fskills",[44,1397,1398,1399,1401,1402,1409,1410,1413],{},"Puisque nous utilisons la CLI ",[53,1400,90],{}," pour centraliser toutes les compétences de nos agents, toute nouvelle compétence ajoutée peut être mise à disposition de tous les agents, y compris Antigravity. ",[700,1403,1404,1405,1408],{},"(Pour en savoir plus, consultez notre article : ",[96,1406,1407],{"href":6},"Résoudre la fragmentation des compétences des agents IA avec npx skills",").","\nAu départ, lorsque vous tapez ",[53,1411,1412],{},"\u002F"," dans la zone de conversation, la liste des compétences apparaît vide :",[44,1415,1416],{},[194,1417],{"alt":1418,"src":1419},"Boîte de commande affichant une liste de compétences vide lors de la saisie du raccourci slash","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-empty-skills-list.webp",[44,1421,1422,1423,1425],{},"Il semble qu'Antigravity 2 ne lise pas automatiquement le dossier global des compétences (",[53,1424,128],{},"). Pour corriger cela, nous devons créer un lien symbolique pointant vers le répertoire de configuration d'Antigravity :",[158,1427,1429],{"className":160,"code":1428,"language":162,"meta":163,"style":163},"ln -s ~\u002F.agents\u002Fskills\u002Fexcalidraw-diagram ~\u002F.gemini\u002Fconfig\u002Fskills\u002Fexcalidraw-diagram\n",[53,1430,1431],{"__ignoreMap":163},[167,1432,1433,1436,1439,1442],{"class":169,"line":170},[167,1434,1435],{"class":173},"ln",[167,1437,1438],{"class":177}," -s",[167,1440,1441],{"class":177}," ~\u002F.agents\u002Fskills\u002Fexcalidraw-diagram",[167,1443,1444],{"class":177}," ~\u002F.gemini\u002Fconfig\u002Fskills\u002Fexcalidraw-diagram\n",[44,1446,1447],{},"Une fois le lien créé, la compétence devient disponible dans l'application !",[44,1449,1450],{},[194,1451],{"alt":1452,"src":1453},"Compétence de diagramme Excalidraw s'affichant dans la liste de commandes","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-excalidraw-skill-available.webp",[558,1455],{},[106,1457,1459],{"id":1458},"_5-tester-une-tâche-simple","5. Tester une tâche simple",[44,1461,1462],{},"Maintenant que tout est configuré, lançons un test.",[44,1464,1465],{},[194,1466],{"alt":1467,"src":1468},"Envoi d'une tâche de test pour l'affichage des bases de données D1","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-test-simple-task-prompt.webp",[44,1470,1471],{},"Comme illustré ci-dessous, le modèle détecte et utilise avec succès le serveur MCP Cloudflare nouvellement ajouté pour traiter la demande.",[44,1473,1474],{},[194,1475],{"alt":1476,"src":1477},"Agent IA exécutant avec succès le listage des bases de données D1 via MCP","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002Fantigravity-test-task-success.webp",[558,1479],{},[106,1481,1483],{"id":1482},"dernières-réflexions","Dernières réflexions",[44,1485,1486],{},"Antigravity 2 représente une transition majeure d'un IDE traditionnel vers une application de bureau accessible, permettant aux utilisateurs du quotidien de devenir les chefs d'orchestre de n'importe quelle tâche.",[44,1488,1489],{},"Cependant, Antigravity 2 a encore besoin de quelques ajustements. En cas de dysfonctionnement, le débogage peut s'avérer frustrant en raison d'une gestion des erreurs trop vague. De plus, la documentation officielle manque de soin — probablement générée par IA — car plusieurs références et chemins de fichiers sont actuellement incorrects.",[488,1491,1492],{},"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":163,"searchDepth":365,"depth":365,"links":1494},[1495,1496,1497,1498,1499,1500,1501],{"id":795,"depth":374,"text":796},{"id":815,"depth":365,"text":816},{"id":866,"depth":365,"text":867},{"id":972,"depth":365,"text":973},{"id":1384,"depth":365,"text":1385},{"id":1458,"depth":365,"text":1459},{"id":1482,"depth":365,"text":1483},"2026-06-05","Découvrez les nouveautés de Google Antigravity 2. Lisez notre guide pratique pour installer l'application, tester les tâches des agents IA et ajouter manuellement des serveurs MCP personnalisés.","https:\u002F\u002Finimages.techvoyage.dev\u002Farticles\u002FSetup%20Antigravity%202.0\u002FFR-Setup-Antigravity-2.0.webp","Test et configuration de Google Antigravity 2 : agents IA, MCP et plugins",{"schemaOrg":1507,"robots":512,"sitemap":1509},[1508],{"@type":510,"headline":1505,"description":1503},{"lastmod":1502},"\u002Ffr\u002Farticle\u002Fsetup-antigravity-2",{"title":1505,"description":1503,"ogTitle":779,"ogDescription":1503,"twitterTitle":779,"twitterDescription":1503},"fr\u002Farticle\u002Fsetup-antigravity-2","Wz8KE_UmYjTnwfX2xkkihSUdWPBS2Qya-AbaBN7ZLCs",1781435122178]