Déboguer les agents Foundry hébergés v2 avec dotnet et Microsoft Agent Framework

May 5, 2026

Introduction

La nouvelle commande azd ai agent init provisionne un projet dotnet utilisant Microsoft Agent Framework ciblant Microsoft Foundry. C’est une excellente façon de démarrer rapidement, mais un point de friction apparaît immédiatement : appuyer sur F5 dans Visual Studio Code ne fonctionne pas. Le projet ne contient pas les fichiers de configuration VS Code nécessaires au débogage.

Heureusement, c’est très simple à corriger.

La solution

Deux fichiers de configuration doivent être ajoutés dans le dossier .vscode à la racine de l’espace de travail.

tasks.json

Ce fichier indique à VS Code comment compiler le projet avant de le lancer.

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "dotnet",
            "task": "build",
            "group": "build",
            "problemMatcher": [],
            "label": "dotnet: build"
        }
    ]
}

launch.json

Ce fichier configure le débogueur. Il définit la configuration de lancement, pointe vers l’assembly compilé, et surtout injecte les variables d’environnement nécessaires pour connecter l’agent au projet Microsoft Foundry.

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Agent Launch",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "dotnet: build",
            "program": "${workspaceFolder}/src/local-tools/bin/Debug/net10.0/local-tools.dll",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "console": "internalConsole",
            "env": {
                "DOTNET_ENVIRONMENT": "Development",
                "FOUNDRY_PROJECT_ENDPOINT": "https://foundry-project.services.ai.azure.com/api/projects/environment-name"
            },
            "envFile": "${workspaceFolder}/.azure/environment-name/.env"
        }
    ]
}

Remarque : Plusieurs valeurs dans launch.json doivent être adaptées à votre environnement :

  • environment-name : remplacez par le nom de l’environnement créé par azd (correspond généralement au nom du groupe de ressources ou de l’agent).
  • foundry-project : remplacez par le nom de votre projet Microsoft Foundry (visible dans le portail sous les points de terminaison du projet).
  • local-tools.dll : remplacez par le nom réel de l’assembly de votre projet (déterminé par la propriété AssemblyName dans le fichier .csproj, correspond par défaut au nom du projet).

Invoquer l’agent

Une fois la configuration en place, posez vos points d’arrêt n’importe où dans le code de l’agent et appuyez sur F5 pour démarrer le débogueur. L’agent se lance localement et attend une invite.

Pour envoyer une invite à l’agent qui s’exécute en local, utilisez la commande suivante :

azd ai agent invoke "mon invite" --local

Les points d’arrêt sont déclenchés normalement et vous pouvez inspecter les variables, avancer pas à pas dans le code et diagnostiquer tout problème, exactement comme avec n’importe quelle autre application dotnet.

Conclusion

L’absence de prise en charge native du débogage VS Code pour les templates azd ai agent init est un léger inconvénient qui se règle rapidement avec deux fichiers de configuration. Une fois en place, l’expérience de débogage complète est disponible et vous pouvez itérer rapidement sur la logique de votre agent. J’espère que cela vous fera gagner du temps !


Edité la dernière fois le 5 May 2026 par Vincent Biret


Tags: