<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Developer Productivity | The .NET Blog</title><link>https://thedotnetblog.com/fr/tags/developer-productivity/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>fr</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Mon, 27 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/fr/tags/developer-productivity/index.xml" rel="self" type="application/rss+xml"/><item><title>Mise à Jour Avril du Azure DevOps MCP Server : Requêtes WIQL, Auth PAT et MCP Apps Expérimentales</title><link>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/azure-devops-mcp-server-april-2026-wiql-pat-apps/</link><pubDate>Mon, 27 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/azure-devops-mcp-server-april-2026-wiql-pat-apps/</guid><description>Le Azure DevOps MCP Server reçoit des requêtes WIQL pour les work items, l'authentification PAT, des annotations MCP et une fonctionnalité expérimentale de MCP Apps.</description><content:encoded>&lt;p&gt;&lt;em&gt;Cet article a été traduit automatiquement. Pour la version originale, &lt;a href="https://thedotnetblog.com/posts/emiliano-montesdeoca/azure-devops-mcp-server-april-2026-wiql-pat-apps/"&gt;cliquez ici&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Le Azure DevOps MCP Server s&amp;rsquo;améliore continuellement. La mise à jour d&amp;rsquo;avril couvre les deux serveurs.&lt;/p&gt;
&lt;h2 id="support-des-requêtes-wiql"&gt;Support des Requêtes WIQL&lt;/h2&gt;
&lt;p&gt;Le nouvel outil &lt;code&gt;wit_query_by_wiql&lt;/code&gt; permet d&amp;rsquo;exécuter des requêtes Work Item Query Language depuis votre client MCP.&lt;/p&gt;
&lt;h2 id="personal-access-tokens"&gt;Personal Access Tokens&lt;/h2&gt;
&lt;p&gt;Authentification PAT sur le serveur local — important pour les scénarios d&amp;rsquo;intégration sans authentification interactive.&lt;/p&gt;
&lt;h2 id="annotations-mcp"&gt;Annotations MCP&lt;/h2&gt;
&lt;p&gt;Métadonnées pour les outils en lecture seule, destructifs et open-world — fondamentaux pour la fiabilité des agents.&lt;/p&gt;
&lt;h2 id="consolidation-des-outils-wiki"&gt;Consolidation des Outils Wiki&lt;/h2&gt;
&lt;p&gt;5 outils wiki séparés → 2 outils plus capables. Moins d&amp;rsquo;outils = meilleure performance LLM.&lt;/p&gt;
&lt;h2 id="expérimental--mcp-apps"&gt;Expérimental : MCP Apps&lt;/h2&gt;
&lt;p&gt;Workflows packagés dans l&amp;rsquo;environnement du serveur MCP. La direction est bonne.&lt;/p&gt;
&lt;p&gt;Post original de Dan Hellem : &lt;a href="https://devblogs.microsoft.com/devops/azure-devops-mcp-server-april-update/"&gt;Azure DevOps MCP Server April Update&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title>Aspire 13.2 : Support Bun, Meilleurs Conteneurs et Moins de Friction de Debug</title><link>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/aspire-132-bun-container-enhancements/</link><pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/aspire-132-bun-container-enhancements/</guid><description>Aspire 13.2 ajoute le support Bun de première classe pour les apps Vite, corrige la fiabilité de Yarn et apporte des améliorations aux conteneurs qui rendent le comportement local plus prévisible.</description><content:encoded>&lt;p&gt;&lt;em&gt;Cet article a été traduit automatiquement. Pour la version originale, &lt;a href="https://thedotnetblog.com/posts/emiliano-montesdeoca/aspire-132-bun-container-enhancements/"&gt;cliquez ici&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Si vous construisez des backends .NET avec des frontends JavaScript dans Aspire, la 13.2 est la mise à jour qui améliore silencieusement votre quotidien. Des améliorations solides à des choses légèrement agaçantes.&lt;/p&gt;
&lt;h2 id="bun-est-maintenant-citoyen-de-première-classe"&gt;Bun est Maintenant Citoyen de Première Classe&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;builder&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;addViteApp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;frontend&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;./frontend&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;withBun&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Si votre équipe utilise déjà Bun, Aspire ne vous force plus à aller à contre-courant.&lt;/p&gt;
&lt;h2 id="yarn-plus-fiable"&gt;Yarn Plus Fiable&lt;/h2&gt;
&lt;p&gt;Les utilisateurs de Yarn bénéficient de moins d&amp;rsquo;échecs mystérieux avec &lt;code&gt;withYarn()&lt;/code&gt; et &lt;code&gt;addViteApp()&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="améliorations-des-conteneurs"&gt;Améliorations des Conteneurs&lt;/h2&gt;
&lt;p&gt;Pull policy explicite avec &lt;code&gt;ImagePullPolicy.Never&lt;/code&gt; pour utiliser l&amp;rsquo;image locale sans aller au registry. PostgreSQL 18+ avec des volumes de données fonctionne maintenant correctement.&lt;/p&gt;
&lt;h2 id="améliorations-du-débogage"&gt;Améliorations du Débogage&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DebuggerDisplayAttribute&lt;/code&gt; sur les types core&lt;/li&gt;
&lt;li&gt;Meilleurs messages d&amp;rsquo;erreur pour &lt;code&gt;WaitFor&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BeforeResourceStartedEvent&lt;/code&gt; se déclenche au bon moment&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion"&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Post original de David Pine : &lt;a href="https://devblogs.microsoft.com/aspire/aspire-bun-support-and-container-enhancements/"&gt;Aspire 13.2: Bun Support and Container Enhancements&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title>68 Minutes par Jour à Ré-Expliquer Son Code ? Il Y a une Solution</title><link>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/auto-memory-stop-re-explaining-code-to-copilot/</link><pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/fr/posts/emiliano-montesdeoca/auto-memory-stop-re-explaining-code-to-copilot/</guid><description>Le context rot est réel — votre agent IA dérive après 30 tours, et vous payez la taxe de compactage toutes les heures. auto-memory donne à GitHub Copilot CLI un rappel chirurgical sans brûler des milliers de tokens.</description><content:encoded>&lt;p&gt;&lt;em&gt;Cet article a été traduit automatiquement. Pour la version originale, &lt;a href="https://thedotnetblog.com/posts/emiliano-montesdeoca/auto-memory-stop-re-explaining-code-to-copilot/"&gt;cliquez ici&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Vous connaissez ce moment où votre session Copilot atteint &lt;code&gt;/compact&lt;/code&gt; et que l&amp;rsquo;agent oublie complètement ce sur quoi vous travailliez ? Vous passez les cinq minutes suivantes à ré-expliquer la structure des fichiers, le test qui échoue, les trois approches déjà essayées. Puis ça recommence.&lt;/p&gt;
&lt;p&gt;Desi Villanueva l&amp;rsquo;a chronométré : &lt;strong&gt;68 minutes par jour&lt;/strong&gt; — juste pour la réorientation. Pas à écrire du code. Pas à revoir des PRs. Juste à remettre l&amp;rsquo;IA au courant de choses qu&amp;rsquo;elle savait déjà.&lt;/p&gt;
&lt;p&gt;Il s&amp;rsquo;avère qu&amp;rsquo;il y a une raison concrète à cela — et une solution concrète.&lt;/p&gt;
&lt;h2 id="le-mensonge-de-la-fenêtre-de-contexte"&gt;Le Mensonge de la Fenêtre de Contexte&lt;/h2&gt;
&lt;p&gt;Votre agent arrive avec un grand nombre sur la boîte. 200K tokens. Ça semble massif. En pratique c&amp;rsquo;est un plafond, pas une garantie.&lt;/p&gt;
&lt;p&gt;Voici le calcul réel :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;200K contexte total&lt;/li&gt;
&lt;li&gt;Moins ~65K pour les outils MCP chargés au démarrage (~33%)&lt;/li&gt;
&lt;li&gt;Moins ~10K pour les fichiers d&amp;rsquo;instructions comme &lt;code&gt;AGENTS.md&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cela vous laisse environ &lt;strong&gt;125K avant d&amp;rsquo;avoir tapé un seul mot&lt;/strong&gt;. Et ça empire — les LLMs ne se dégradent pas gracieusement. Ils atteignent un mur vers 60% d&amp;rsquo;utilisation. Le modèle commence à perdre des éléments mentionnés 30 tours plus tôt.&lt;/p&gt;
&lt;p&gt;Limite effective : &lt;strong&gt;45K tokens&lt;/strong&gt; avant que la qualité se dégrade.&lt;/p&gt;
&lt;h2 id="la-taxe-de-compactage"&gt;La Taxe de Compactage&lt;/h2&gt;
&lt;p&gt;Chaque &lt;code&gt;/compact&lt;/code&gt; vous coûte votre état de flow. Vous êtes profondément dans une session de débogage. Contexte partagé construit sur 30 minutes. Puis l&amp;rsquo;avertissement arrive.&lt;/p&gt;
&lt;p&gt;La partie cruelle : &lt;strong&gt;La mémoire existe déjà.&lt;/strong&gt; Copilot CLI écrit chaque session dans une base de données SQLite locale à &lt;code&gt;~/.copilot/session-store.db&lt;/code&gt;. L&amp;rsquo;agent ne peut tout simplement pas la lire.&lt;/p&gt;
&lt;h2 id="auto-memory--une-couche-de-rappel-pas-un-système-de-mémoire"&gt;auto-memory : Une Couche de Rappel, Pas un Système de Mémoire&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install auto-memory
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;~1 900 lignes de Python. Zéro dépendances. Installé en 30 secondes.&lt;/p&gt;
&lt;p&gt;Au lieu d&amp;rsquo;inonder le contexte avec des résultats grep, vous donnez à l&amp;rsquo;agent un accès chirurgical à ce qui compte vraiment — &lt;strong&gt;50 tokens au lieu de 10 000&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="en-conclusion"&gt;En Conclusion&lt;/h2&gt;
&lt;p&gt;Le context rot est une contrainte architecturale réelle. auto-memory le contourne en donnant à votre agent un mécanisme de rappel bon marché et précis.&lt;/p&gt;
&lt;p&gt;Consultez-le : &lt;a href="https://github.com/dezgit2025/auto-memory"&gt;auto-memory sur GitHub&lt;/a&gt;. Post original de Desi Villanueva : &lt;a href="https://devblogs.microsoft.com/all-things-azure/i-wasted-68-minutes-a-day-re-explaining-my-code-then-i-built-auto-memory/"&gt;I Wasted 68 Minutes a Day&lt;/a&gt;.&lt;/p&gt;</content:encoded></item></channel></rss>