{"id":1791,"date":"2026-01-21T13:57:59","date_gmt":"2026-01-21T13:57:59","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/all-things-azure\/?p=1791"},"modified":"2026-02-11T14:29:58","modified_gmt":"2026-02-11T14:29:58","slug":"context-driven-development-agent-skills-for-microsoft-foundry-and-azure","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/all-things-azure\/context-driven-development-agent-skills-for-microsoft-foundry-and-azure\/","title":{"rendered":"Context-Driven Development: Agent Skills for Microsoft Foundry and Azure"},"content":{"rendered":"<p>Code will be generated, not written. Most enterprise AI workloads are net-new microservices. Modular, greenfield work. Perfect for coding agents.<\/p>\n<p>The catch? Out-of-the-box agents lack domain knowledge about your SDKs and patterns. But frontier LLMs are extraordinarily sample efficient. The patterns you need are already encoded in their latent space from pretraining. All you need is the right activation context. That is what skills do, and <a href=\"https:\/\/github.com\/microsoft\/skills\">Agent Skills<\/a> ships 126 of them for Azure and Microsoft Foundry development.<\/p>\n<p><strong>New:<\/strong> Browse all skills, agents, and documentation at <a href=\"https:\/\/microsoft.github.io\/skills\/\">microsoft.github.io\/skills<\/a>.<\/p>\n<h2>What&#8217;s in Agent Skills?<\/h2>\n<p><a href=\"https:\/\/github.com\/microsoft\/skills\">github.com\/microsoft\/skills<\/a> is a collection of skills, prompts, agents, and MCP configurations that provide the activation context to specialize coding agents for Microsoft Foundry and Azure development.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1.webp\"><img decoding=\"async\" class=\"alignnone wp-image-1820\" src=\"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1.webp\" alt=\"agent skills image image\" width=\"1157\" height=\"651\" srcset=\"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1.webp 1920w, https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1-300x169.webp 300w, https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1-1024x576.webp 1024w, https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1-768x432.webp 768w, https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-content\/uploads\/sites\/83\/2026\/01\/agent-skills-image-1-1536x864.webp 1536w\" sizes=\"(max-width: 1157px) 100vw, 1157px\" \/><\/a><\/p>\n<p>The repo contains:<\/p>\n<ul>\n<li><strong>Skills<\/strong>: 126 modular knowledge packages for specific domains (Cosmos DB, Foundry IQ, AZD Deployment, Voice Live, etc.)<\/li>\n<li><strong>Prompts<\/strong>: Reusable templates for code reviews, component creation, endpoints<\/li>\n<li><strong>Agents<\/strong>: Persona definitions (backend, frontend, infrastructure, planner, presenter, scaffolder)<\/li>\n<li><strong>MCP Servers<\/strong>: Pre-configured servers for GitHub, Playwright, Microsoft Docs, Context7<\/li>\n<li><strong>Context7 Integration<\/strong>: Indexed Foundry documentation at <a href=\"https:\/\/context7.com\/llmstxt\/microsoft_github_io_skills_llms-full_txt\">Context7<\/a>, updated daily via GitHub Actions<\/li>\n<\/ul>\n<p>Browse and copy all of them at <a href=\"https:\/\/microsoft.github.io\/skills\/\">microsoft.github.io\/skills<\/a><\/p>\n<h2>Systems Thinking First, Then Skills<\/h2>\n<p>Before loading skills into your agent, you need a mental model of what you are building, reducing your unknown-unknowns. Skills amplify your direction, they do not replace it.<\/p>\n<p>My recommendation: do the basic hello world for each SDK you plan to use. For example, for Foundry IQ, walk through the <a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/search\/agentic-retrieval-how-to-create-pipeline\">agentic retrieval pipeline quickstart<\/a>. Understand the abstractions at a high level. Know what Cosmos DB containers are, how Azure AI Search indexes work, what a Foundry agent does. You need this picture to prompt and steer the agent effectively.<\/p>\n<p>Beyond that high-level understanding? You probably will not be hand-coding the idiomatic patterns for how you consume these services. The model already has these patterns encoded. Skills surface them. You bring the architecture and intent. The agent brings the implementation details that are already latent in its weights.<\/p>\n<h2>Avoiding Context Rot<\/h2>\n<p><strong>Do not load all skills at once.<\/strong> Context rot occurs when your agent&#8217;s context window gets cluttered with irrelevant information, degrading output quality.<\/p>\n<p>Loading everything will:<\/p>\n<ul>\n<li>Dilute the agent&#8217;s attention across unrelated domains<\/li>\n<li>Waste precious context window tokens<\/li>\n<li>Cause the agent to conflate patterns from different frameworks<\/li>\n<\/ul>\n<p><strong>Only copy the specific skills essential for your current project.<\/strong> High signal-to-noise ratio is everything.<\/p>\n<p>The same principle applies to MCP servers. Do not enable every server in your config. Too many tools create the same dilution problem. Pick the servers relevant to your current task.<\/p>\n<h2>Quick Start<\/h2>\n<h3>Option 1: Install via skills.sh<\/h3>\n<p>The easiest way to add skills is through <a href=\"https:\/\/skills.sh\/microsoft\/skills\">skills.sh<\/a>:<\/p>\n<pre class=\"prettyprint\">npx skills add microsoft\/skills\r\n<\/pre>\n<p>You can also browse and install individual skills from <a href=\"https:\/\/skillsmp.com\/skills\/microsoft-agent-skills-github-skills-azure-ai-voicelive-skill-skill-md\">skillsmp.com<\/a>.<\/p>\n<h3>Option 2: Copy Only the Skills You Need<\/h3>\n<p>Browse available skills and copy relevant ones to your project:<\/p>\n<pre class=\"prettyprint\"># Clone the repo\r\ngit clone https:\/\/github.com\/microsoft\/skills.git\r\n\r\n# Copy specific skills to your project\r\ncp -r skills\/.github\/skills\/cosmos-db-python-skill your-project\/.github\/skills\/\r\ncp -r skills\/.github\/skills\/foundry-iq-python your-project\/.github\/skills\/\r\n<\/pre>\n<p>Or use symlinks. For multi-project setups:<\/p>\n<pre class=\"prettyprint\"># macOS\/Linux\r\nln -s \/path\/to\/skills\/.github\/skills\/mcp-builder \/path\/to\/your-project\/.github\/skills\/mcp-builder\r\n\r\n# Windows (PowerShell as Admin)\r\nNew-Item -ItemType SymbolicLink -Path \".github\\skills\\mcp-builder\" -Target \"C:\\skills\\.github\\skills\\mcp-builder\"\r\n<\/pre>\n<p>For sharing skills across different coding agents in the same repo:<\/p>\n<pre class=\"prettyprint\"># Symlink to multiple agent config directories\r\nln -s ..\/.github\/skills .opencode\/skills\r\nln -s ..\/.github\/skills .claude\/skills\r\n<\/pre>\n<h3>Configure Your Agent<\/h3>\n<p><strong>GitHub Copilot:<\/strong> Skills are auto-discovered from <code>.github\/skills\/<\/code><\/p>\n<p><strong>Claude Code:<\/strong> Reference <code>SKILL.md<\/code> files in your project instructions or <code>CLAUDE.md<\/code><\/p>\n<p><strong>GitHub Copilot CLI:<\/strong> Works with the same skill structure<\/p>\n<h3>Add MCP Servers<\/h3>\n<p>Copy the MCP configuration to your project:<\/p>\n<pre class=\"prettyprint\">cp skills\/.vscode\/mcp.json your-project\/.vscode\/\r\n<\/pre>\n<p>Then remove the servers you do not need. This gives your agent access to:<\/p>\n<ul>\n<li>Microsoft Learn MCP: Ground agents in official docs<\/li>\n<li>Context7: Indexed Foundry documentation<\/li>\n<li>GitHub, Playwright, Terraform servers<\/li>\n<li>Sequential Thinking, Memory tools<\/li>\n<\/ul>\n<h3>(Optional) Use Context7 for Foundry Docs<\/h3>\n<p>For real-time Foundry documentation access, add the Context7 MCP server or use directly:<\/p>\n<p><strong>Context7 URL:<\/strong> <a href=\"https:\/\/context7.com\/llmstxt\/microsoft_github_io_skills_llms-full_txt\">context7.com\/llmstxt\/microsoft_github_io_skills_llms-full_txt<\/a><\/p>\n<p>A GitHub workflow runs daily to sync the latest Foundry documentation updates automatically.<\/p>\n<h2>Available Skills<\/h2>\n<p><strong>126 skills total<\/strong> \u2014 5 core + 121 language-specific (Python, .NET, TypeScript, Java).<\/p>\n<p>Browse all skills with install commands at <a href=\"https:\/\/microsoft.github.io\/skills\/\">microsoft.github.io\/skills<\/a>.<\/p>\n<h3>Core Skills<\/h3>\n<p>Language-agnostic tooling and infrastructure:<\/p>\n<table>\n<tbody>\n<tr>\n<th>Skill<\/th>\n<th>Description<\/th>\n<\/tr>\n<tr>\n<td><code>azd-deployment<\/code><\/td>\n<td>Deploy to Azure Container Apps with Azure Developer CLI, Bicep infrastructure<\/td>\n<\/tr>\n<tr>\n<td><code>mcp-builder<\/code><\/td>\n<td>Build MCP servers for LLM tool integration (Python, Node, C#)<\/td>\n<\/tr>\n<tr>\n<td><code>skill-creator<\/code><\/td>\n<td>Guide for creating effective skills for AI coding agents<\/td>\n<\/tr>\n<tr>\n<td><code>github-issue-creator<\/code><\/td>\n<td>Convert notes, error logs, or screenshots into structured GitHub issues<\/td>\n<\/tr>\n<tr>\n<td><code>podcast-generation<\/code><\/td>\n<td>Generate podcast-style audio with Azure OpenAI Realtime API<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Language-Specific Skills<\/h3>\n<table>\n<tbody>\n<tr>\n<th>Language<\/th>\n<th>Count<\/th>\n<th>Coverage<\/th>\n<\/tr>\n<tr>\n<td><strong>Python<\/strong><\/td>\n<td>42<\/td>\n<td>Foundry agents, AI services, Cosmos DB, Search, Storage, Messaging, Monitoring<\/td>\n<\/tr>\n<tr>\n<td><strong>.NET<\/strong><\/td>\n<td>29<\/td>\n<td>Foundry, AI, ARM resource management, Messaging, Identity, Security<\/td>\n<\/tr>\n<tr>\n<td><strong>TypeScript<\/strong><\/td>\n<td>24<\/td>\n<td>Foundry, AI, React Flow, Zustand, Storage, Messaging, Frontend patterns<\/td>\n<\/tr>\n<tr>\n<td><strong>Java<\/strong><\/td>\n<td>26<\/td>\n<td>Foundry, AI, Communication Services, Cosmos, Messaging, Monitoring<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Featured Skills by Category<\/h3>\n<table>\n<tbody>\n<tr>\n<th>Category<\/th>\n<th>Skills<\/th>\n<\/tr>\n<tr>\n<td><strong>AI Foundry<\/strong><\/td>\n<td><code>azure-ai-projects-py<\/code>, <code>agent-framework-azure-ai-py<\/code>, <code>foundry-iq-py<\/code>, <code>hosted-agents-v2-py<\/code><\/td>\n<\/tr>\n<tr>\n<td><strong>AI Services<\/strong><\/td>\n<td><code>azure-search-documents-py<\/code>, <code>azure-ai-voicelive-py<\/code>, <code>azure-ai-contentsafety-py<\/code>, <code>azure-ai-evaluation-py<\/code><\/td>\n<\/tr>\n<tr>\n<td><strong>Backend<\/strong><\/td>\n<td><code>fastapi-router-py<\/code>, <code>pydantic-models-py<\/code>, <code>azure-cosmos-db-py<\/code><\/td>\n<\/tr>\n<tr>\n<td><strong>Frontend<\/strong><\/td>\n<td><code>frontend-ui-dark-ts<\/code>, <code>react-flow-node-ts<\/code>, <code>zustand-store-ts<\/code><\/td>\n<\/tr>\n<tr>\n<td><strong>Infrastructure<\/strong><\/td>\n<td><code>azd-deployment<\/code>, <code>azure-identity-py<\/code>, <code>azure-monitor-opentelemetry-py<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Scaling Beyond Static Skills<\/h2>\n<p>For larger codebases where static skills are not enough:<\/p>\n<ul>\n<li><strong>AST-based Memory Systems<\/strong>: Hierarchical graph representation of code structure<\/li>\n<li><strong>Context Graph<\/strong>: Knowledge graphs tracking component relationships and dependencies<\/li>\n<\/ul>\n<p>These help agents maintain understanding without cramming everything into the context window.<\/p>\n<h2>What&#8217;s Next<\/h2>\n<p>This is v1. I will be adding more idiomatic skills for Microsoft SDKs, covering the cloud services and frameworks teams actually use.<\/p>\n<p>I am also testing agent skills with <a href=\"https:\/\/github.com\/github\/copilot-sdk\">copilot-sdk<\/a> to validate skill quality programmatically. You can see a sample test harness at <a href=\"https:\/\/github.com\/microsoft-foundry\/copilot-sdk-samples\/tree\/main\/samples\/skill-testing\/sdk\">copilot-sdk-samples\/skill-testing<\/a>.<\/p>\n<p>For now, start with <a href=\"https:\/\/github.com\/microsoft\/skills\">github.com\/microsoft\/skills<\/a>, pick only what you need, and keep that signal-to-noise ratio high.<\/p>\n<h2>Resources<\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/microsoft\/skills\">Agent Skills Repository<\/a><\/li>\n<li><a href=\"https:\/\/microsoft.github.io\/skills\/\">GitHub Pages: Browse Skills<\/a><\/li>\n<li><a href=\"https:\/\/skills.sh\/microsoft\/skills\">skills.sh: Install Skills<\/a><\/li>\n<li><a href=\"https:\/\/context7.com\/llmstxt\/microsoft_github_io_skills_llms-full_txt\">Context7: Foundry Docs<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/github\/copilot-sdk\">Copilot SDK<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/all-things-azure\/claude-code-microsoft-foundry-enterprise-ai-coding-agent-setup\/\">Claude Code + Foundry Setup Guide<\/a><\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/all-things-azure\/codex-azure-openai-integration-fast-secure-code-development\/\">Codex + Azure OpenAI Integration<\/a><\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/ai-foundry\/\">Microsoft Foundry Docs<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Code will be generated, not written. Most enterprise AI workloads are net-new microservices. Modular, greenfield work. Perfect for coding agents. The catch? Out-of-the-box agents lack domain knowledge about your SDKs and patterns. But frontier LLMs are extraordinarily sample efficient. The patterns you need are already encoded in their latent space from pretraining. All you need [&hellip;]<\/p>\n","protected":false},"author":172657,"featured_media":1820,"comment_status":"open","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1791","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure"],"acf":[],"blog_post_summary":"<p>Code will be generated, not written. Most enterprise AI workloads are net-new microservices. Modular, greenfield work. Perfect for coding agents. The catch? Out-of-the-box agents lack domain knowledge about your SDKs and patterns. But frontier LLMs are extraordinarily sample efficient. The patterns you need are already encoded in their latent space from pretraining. All you need [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/posts\/1791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/users\/172657"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/comments?post=1791"}],"version-history":[{"count":1,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/posts\/1791\/revisions"}],"predecessor-version":[{"id":1821,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/posts\/1791\/revisions\/1821"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/media\/1820"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/media?parent=1791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/categories?post=1791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/all-things-azure\/wp-json\/wp\/v2\/tags?post=1791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}