Missed .NET Day on Agentic Modernization? Watch the coding demos and agentic workflow sessions on demand.
Microsoft
Developer Blogs
Get the latest information, insights, and news from Microsoft.
Highlights

Building Agents for Teams: Managing the noise of collaboration
The comments that go into code versus those that go into the pull request description
Clearer Build Optimization Results with GitHub Copilot
Latest posts
Today I will… Modernize a .NET application
Today I will modernize a .NET Framework application to .NET 10 using the GitHub Copilot modernization tooling built-in to Visual Studio. The tooling helps us upgrade applications running on legacy versions of .NET and also migrate them to Azure. Today we're going to focus on the upgrade portion. And, the tooling will do all the work for us! But it doesn't do everything at once, and that's good. It introduces checkpoints into the .NET upgrade process to tell us what it has been up to we can then guide it towards the outcome we want. And at each of those checkpoints it creates a markdown file t...
Reducing C++ template bloat by factoring out the type-dependent portions of the function, practical exam
Applying our principles.
Reducing C++ template bloat by factoring out the type-dependent portions of the function
Looking for consolidation points.
Go 1.27.0-1 Microsoft build now available
A new release of the Microsoft build of Go is now available for download.
Go 1.26.7-1 and 1.25.14-1 Microsoft builds now available
A new release of the Microsoft build of Go is now available for download.
Outgrowing SQL Server Express? Upgrade to Azure SQL Database Free Tier in 3 Steps
If you’ve been building local prototypes, internal tools, web backends, or lightweight services on SQL Server Express, you know the routine: it’s free, familiar, and gets the job done – until you hit hardware limits or spend weekends manual backup scripts and handling OS patches. Learn how to upgrade from SQL Server Express to Azure SQL Database free tier in 3 simple steps. Whether you're running SQL Server 2022 (or older) and hitting the hard 10 GB storage wall, or using SQL Server 2025 and realizing 50 GB of disk space doesn't solve the strict 1.4 GB memory bottleneck, staying on Express limits your applica...
MSSQL Extension for VS Code: SQL Formatter, Azure SQL Database Provisioning, and More
Writing and maintaining SQL is easier when you can eliminate repetitive steps and keep your scripts cleanly formatted. With the MSSQL extension for VS Code v1.45, we're introducing the Public Preview of the SQL Formatter alongside the General Availability of Azure SQL Database Provisioning and Shortcuts Configuration. You can now apply consistent T-SQL formatting across your projects, create free tier cloud databases with automated post-deployment actions, and streamline frequently used commands and queries directly inside Visual Studio Code. What's new in MSSQL extension for VS Code v1.45 Here's a summary of t...
On wrapping a callable in a lambda that just calls it with the same parameters
Just use the callable directly.
Aspire 13.5: Fresh pixels and better workflows
Aspire 13.5 refreshes the dashboard and aspire.dev, expands the Interaction Service, adds cross-scope Azure references and Kubernetes persistent volumes, and brings live terminals into the AppHost.
Announcing AppxManifest IntelliSense Support in the WinApp VS Code Extension
The WinApp VS Code extension exists to make Windows app development feel at home in VS Code. It brings the Windows App Development CLI right into the editor, so you can initialize, run, debug, define the identity of, package, and sign Windows apps built with .NET, WPF, WinUI, C++, Electron, Rust, Tauri, or Flutter, all without switching tools. Get it now: Install the WinApp extension from the VS Code Marketplace. We're excited to announce the release of v0.3.0. This release brings schema-aware IntelliSense to your manifest files, adds workspace search to the commands that require a file or folder, and i...
Azure Cosmos DB in the Agentic Era: Data Tools for Developers and AI Agents
Anthropic's 2026 Agentic Coding Trends Report captures an important tension in how developers use AI. Engineers report using AI in roughly 60% of their work, yet say they can fully delegate only 0–20% of their tasks. AI is becoming a constant collaborator, but it still needs setup, supervision, validation, and human judgment. That gap is especially relevant when an agent starts working with a database. Database requests often sound easy. “Show me the failed orders from last week.” “Why is this query expensive?” “Does this container have the field I need?” For a developer, answering those question...
The Two Hybrid Searches in Microsoft SQL
Hybrid search is usually described as combining keyword search with vector search. Microsoft SQL does that, for sure, but we do quite a bit more right out of the box. SQL dynamically evaluates queries and switches between kNN and ANN vector search based on cost and selectivity. These two types of hybrid search, work together, ensuring your semantic queries return the best possible results to your apps and agents. Text search In 1998, Microsoft Research Cambridge welcomed Stephen Robertson, one of the principal architects of BM25, or Best Matching 25, the relevance-ranking algorithm that became foundational to m...
What’s a PFN?
What's a PFN? MSIX introduced Package identity in Windows 8. While the familiar package identity "5-tuple" was functional, it wasn't especially convenient to pass through APIs or embed in resources such as files, registry keys, URLs, or XML documents. To address this, Windows defined an opaque string representation known as a Package Moniker. Windows called a related identifier derived from a package's Name and Publisher the Package Family Moniker. These were commonly abbreviated as PM and PFM. As development progressed, Windows quite sensibly required new APIs to pass through API Design Review. The review tea...
Why did the Microsoft Entertainment Pack for Windows have a special sticker announcing that it also had Tetris?
A contingency plan.
Apple Silicon and Xcode 27 images available in pay-as-you-go (preview)
Apple developers can now build and test their applications natively on Apple Silicon in Azure Pipelines. New arm64 macOS agents are available in public preview through the pay-as-you-go GitHub-hosted Agents pool. Starting with Apple Silicon, Azure Pipelines is bringing over some of the agent sizes already available in GitHub Actions. The preview includes the following macOS images: Running workloads directly on Apple Silicon avoids the overhead and compatibility limitations of emulating arm64 on Intel hardware. It also lets teams validate applications against the same architecture used by current Apple device...
From single call to agents: five new Claude capabilities now available in Microsoft Foundry
Structured outputs, web search, web fetch, MCP connector, and tool search are now available for Claude models hosted on Azure in Microsoft Foundry, turning a model endpoint into a production agent platform.
How do functions like alloca allocate memory from the stack?
The usual probing.
Windows App Development CLI v0.6 – create new WinUI applications, sign packages with Azure, and more
Windows App Development CLI v0.6.0 has just shipped and contains a ton of new features. Much of the changes in this release focus on getting from zero to a running app faster: scaffold a fresh WinUI project with a single command, search real WinUI controls and samples without leaving the terminal, and run your app straight from a .csproj with no manual build step first. It also adds cloud-based artifact signing, sparse-package workflows, and agent-friendly UI recordings. Grab it with winget install Microsoft.WinAppCLI, or head to the repo for npm and other install options. Here's a tour of the highligh...
Forcing an ARM64X executable to run as a specific architecture
You can request the target machine architecture.
Git-APE SaaS Factory
Agentic Platform Engineering for SaaS. Accelerating the Path to Market with Git-APE If you are an ISV building SaaS on Azure, the first demo is usually the easy part. The harder work is turning that proof of concept into a secure, scalable, commercial-ready service that can be operated confidently in production. That gap shows up quickly. Tenant isolation, identity, entitlement, marketplace fulfilment, metering, cost controls, observability, compliance evidence, and a clean path from customer purchase to tenant provisioning all need to be designed in, not bolted on later. None of those are side quests....
Go 1.26.6-1 and 1.25.13-1 Microsoft builds now available
A new release of the Microsoft build of Go including security fixes is now available for download.
Clearer Build Optimization Results with GitHub Copilot
We know that slow builds are a consistent theme in feedback from C++ developers. Your feedback helped us to shape GitHub Copilot build performance for Windows, an agent that can trace your build, find bottlenecks, apply optimizations, and measure the result. When using the agent, the clearest outcome is a straightforward win. The agent changes your project, rebuilds it, and shows how your build is made faster. Sometimes, a change may make a clean rebuild slightly slower while improving the incremental builds you run throughout the day. At other times, we also observed that optimizations may help without reachi...
MSVC Build Tools Preview updates – August 2026
Try the latest updates to MSVC Build Tools Preview
Routing and Failover for Microsoft.Extensions.AI
Route requests across models and providers natively in Microsoft.Extensions.AI with RoutingChatClient, SemanticRoutingChatClient, and FailoverChatClient — new experimental primitives for content-based routing, failover, and custom routing policies.
Your best friend: BlockOnPossibleDataLoss=True
BlockOnPossibleDataLoss can frustrate developers, but it's one of the most important safeguards in database deployment. Here's how to keep your local development loop fast while protecting the data that matters.
A little helper class for managing LPPROC_THREAD_ATTRIBUTE_LIST s
Another RAII-style wrapper.
Building Agents for Teams: Managing the noise of collaboration
Most of us are familiar with one-to-one agent chats: private, direct interactions where rules are relatively simple. With only you and the agent, each moment has clear intent. You can ask follow-up questions, pause, or restart without worrying about how each exchange affects anyone else. Collaboration in groups works differently. Every message competes for attention, and a reply that is helpful to one individual may interrupt five others. Effective collaboration is built on countless small social judgments and gestures: deciding when to respond or stay quiet, choosing how much to say, and using the conventions...
From Sync APIs to support for the GPT-5 model series and agentic workflows: What’s new in Azure Content Understanding – August 2026
Enterprise content is no longer just something people read. AI apps and agents are only as useful as the information they can understand, yet much of the world’s enterprise knowledge is locked in documents, forms, tables, images, audio, and video. The latest Azure Content Understanding updates help developers turn that content into structured, grounded data with less custom processing. This release brings broader support for the GPT-5 model series, lower token usage, improved confidence scoring, new synchronous APIs for Read and Layout, advanced contextualization for higher-quality extraction, new tax-focused pre...
Azure Content Understanding GPT-5 Series Guide: Model Selection, Grounding Improvements, and Confidence Enhancements
Enterprise content is no longer just something people consume. As organizations increasingly rely on AI to extract and act on information from documents, images, audio, and video, Azure Content Understanding is expanding support for the GPT-5 series and improving grounding and confidence to deliver greater flexibility, efficiency, and quality. This expanded model catalog enables organizations to choose the right level of intelligence for each workload, helping reduce costs for high-volume processing while preserving access to advanced reasoning capabilities where needed. It also provides optimized pipelines tu...
Instructions Hygiene – What Frontier Models Still Need You to Say
Get the most out of the latest models by providing the right level of instructions
The comments that go into code versus those that go into the pull request description
Understanding the temporal relevance.
What’s New in vcpkg (Jul 2026)
These updates include major SBOM improvements in vcpkg-tool, 302 updated ports including multiple major library upgrades, and other minor improvements and bug fixes.
Azure Developer CLI extension framework is GA: build dev workflows for apps using Azure
What parts of building and shipping on Azure still take too many steps? Maybe you want a command that starts a project with your organization’s approved architecture and infrastructure. Maybe you need to connect deployments to an internal service catalog, run security checks before provisioning, or guide developers through a process that currently lives across scripts and documentation. When we first introduced the azd extension framework, we invited developers to think about that wish list. The framework was still taking shape in beta, and we wanted to learn which workflows developers and platform teams ne...
August Patches for Azure DevOps Server
We are releasing new patches for our self‑hosted product, Azure DevOps Server. We strongly recommend that all customers stay up to date with the latest, most secure version of Azure DevOps Server. The most recent release, Azure DevOps Server, is available on the download page. The following versions have been patched. For more details on these updates, see the release notes: ⬇️Azure DevOps Server Patch Download ✅Verifying Installation To verify that the patch is installed, run the following command on the Azure DevOps Server machine using the patch installer you downloaded: Replace with the name of the...
.NET 11 Preview 7 is now available!
Find out about the new features in .NET 11 Preview 7 across libraries, runtime, SDK, C#, ASP.NET Core, .NET MAUI, Entity Framework Core, F#, and Windows Forms.
.NET and .NET Framework August 2026 servicing releases updates
A recap of the latest servicing updates for .NET and .NET Framework for August 2026.
Today I will… manage Git Submodules without leaving the IDE
If you've worked with Git submodules for any length of time, you probably have a love-hate relationship with them. They're genuinely useful for pulling a shared library, an SDK, or common build scripts into your project. But actually working with them usually means tabbing over to a terminal and trying to remember whether it's this time all while a perfectly good IDE sits right in front of you, shrugging. That's the part we wanted to fix. Starting in Visual Studio 18.9, Git submodules are a first-class part of the IDE no more bouncing out to the command line just to keep your dependencies in order. It's been one...
Remove and Package Lifetime
MSIX uses a Garbage Collection (GC) design for staged package lifetime and destaging. Throughout this article: Package Core Principles A staged package can't be destaged while any references to it exist. This is a direct consequence of MSIX's core architectural principles: Consequently, removing a package's payload from disk is not a direct result of a single API call. Instead, package payloads are automatically destaged when they are no longer needed. Even then, destaging may not occur immediately. Some actions that remove a reference don't directly trigger Deployment activity. In these cases,...
The little-known winstart.bat batch file
It had been there long before Windows 95, but nobody remembered.
Build Locally, Ship to Cloud for $0: Azure SQL for Modern App Developers
As app developers, our primary focus is building great user experiences, designing APIs, and shipping features quickly. What we don't want is database friction—wasting hours configuring local DB instances, writing verbose migration scripts by hand, or worrying about unexpected cloud bills while prototyping. Today, we are making database development fast, intelligent, and completely free. By combining the Azure SQL Developer Container for local offline development, AI Agent Skills to automate your ORM and data layer, and the Azure SQL Database Free Tier, you can build locally and ship to production in minutes f...
Intelligent Terminal 0.2 is here with local model support
We're back, and this is our first minor version bump: 0.1 to 0.2! It's our biggest release yet. This update adds support for local models, lets you run a different agent in each tab with , brings OpenCode into the built-in agent lineup, runs your agent inside WSL where your work actually lives, and makes the Agent Pane richer to navigate and easier to read. It also sharpens Autofix and fixes a long list of reliability issues. You can grab the update from the Microsoft Store, via , or by heading to the release page on GitHub. Let's dive in! Local model support is here! We've heard you: one of the most common ...
How can I perform a CopyFile in unbuffered mode?
Try one of the fancier alternatives to <CODE>CopyFile</CODE>.
I Enabled RBAC and Everything Broke. What Did I Do Wrong?
We covered the roles your Azure Cosmos DB app needs in our previous post. Now let’s look at what happens after you’ve assigned those roles, switched identities, disabled keys and suddenly staring at a . As we continue this security series, we’ll walk through the most common causes, how to diagnose them, and how to get back to green quickly. The situation You did everything right. You gave your app a managed identity, assigned a data role, switched your code over to , and turned off key-based auth like all the good security guidance told you to. Then you deploy, and every single call comes back with this: Res...
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 5
Cheating with <CODE>std::unique_ptr</CODE>.
Test reporting in Microsoft.Testing.Platform: from red build to root cause
Microsoft.Testing.Platform brings failures into GitHub Actions and Azure DevOps, uses pipeline history to separate regressions from flakes, and preserves usable reports when a test host crashes.
Announcing the preview of the Work IQ Developer Tools
Software is shifting from apps built for people to agents that can reason over context and act on someone's behalf. Microsoft 365 Copilot put that shift in front of hundreds of millions of users, and Work IQ gave agents a production-ready intelligence layer to build on. What's been missing is the path in between: getting from an idea to a production agent running in front of customers. Today we're announcing the developer preview of Work IQ Developer Tools (WIQD), the agentic experience for Microsoft 365 Copilot extensibility that takes any plugin (skills, connectors, declarative agents) from an empty folder t...
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 4
Moving things around if possible.
Pull request annotations on work item cards
It's now easier to track development progress without leaving your Kanban board. Azure Boards now displays pull request annotations directly on work item cards, making it easy to see at a glance when work is actively moving through code review. With pull request status visible directly on the board, your team can quickly understand the state of development without opening a work item or switching to Azure Repos. Whether you're in a stand-up, planning your next sprint, or simply reviewing the board, you can immediately identify which work items have active pull requests. If you prefer a cleaner board, you can ...
You can now use the Azure DevOps Service Connection instead of a PAT or Build Session token
We're excited to announce the Azure DevOps service connection, a new way to access Azure DevOps from your pipelines using a Microsoft Entra workload identity (a service principal or managed identity) instead of a Personal Access Token (PAT) or session token. This post walks through what it is, how to set it up, and the many places you can use it, including several capabilities we've added based on your feedback. Why use an Azure DevOps service connection? Using an Azure DevOps service connection improves the security of your pipelines in several ways: Because the connection authenticates as a Microsoft ...
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 3
Forcing an object into the global interface table.
Azure DevOps Remote MCP Server is generally available
Today, we're excited to announce the general availability of the Azure DevOps MCP Server 🎉 The Azure DevOps MCP Server gives AI assistants secure, contextual access to your Azure DevOps projects so they can help you plan, build, and ship software more effectively. With the Azure DevOps remote MCP Server, you can get started without installing or hosting anything yourself. Simply connect your AI assistant directly to the Azure DevOps hosted endpoint by using streamable HTTP transport and start working with your projects in minutes. Getting Started Getting started in simple. Depending on the tools that you are u...
Beyond Chat: live Speech-to-Text with Foundry Local and C#
Build a live speech-to-text app in C# with Foundry Local, a compact Nemotron model, and local model lifecycle management.
Build Production-Ready Agents with the GitHub Copilot Harness and Agent Framework
Developers increasingly want to build agents that can reason about code, modify files, execute commands, interact with developer tools, and work across entire repositories. While GitHub Copilot already provides a powerful coding harness for these scenarios, developers often need additional capabilities such as observability, middleware, approval workflows, enterprise governance, and integration with broader agent ecosystems. The GitHub Copilot integration in Microsoft Agent Framework brings these worlds together. You can now use GitHub Copilot's agentic harness as the execution engine for your agents while conti...
Remove Is Not Uninstall
Just as There is no Install – it’s ‘Stage’ and ‘Register’ explained that Install is not truly an installation operation in MSIX, Remove is similarly not an uninstall operation. This can be surprising - sometimes even alarming - to developers coming from traditional installer technologies such as MSI, where uninstalling software typically implies: In MSIX, that model simply does not exist. Remove = Deregister + (Maybe) Destage From MSIX Deployment's perspective, a package lifecycle consists of four fundamental operations: There's a symmetry here. Stage and Register do the work necessary to make ...
Build Azure Skills Faster with Cloud Academy, a Visual Studio Subscriber Benefit
If you've been looking for a practical way to build Azure skills, Cloud Academy (a QA company) gives Visual Studio subscribers hands-on learning that fits into busy schedules. Whether you're new to Azure, expanding your cloud expertise, working towards certifications or preparing for more advanced projects, this benefit helps you learn by doing. What you'll find in Cloud Academy The Cloud Academy benefit gives Visual Studio subscribers a flexible learning experience that adapts to different learning styles and schedules, providing: With the Cloud Academy benef...
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 2
Using a reference stored in the global interface table.
Building an operations assistant on Azure that waits for approval before it acts
Grounding an assistant in runbooks is straightforward. The harder part begins when the model proposes an action that requires authorization. An operations assistant needs stronger controls as soon as it can act. Answering "which runbook covers this alert" is a search problem. Opening an incident from that same conversation is a control-plane problem, and that is where a helpful prototype quietly turns into something you would not want on call. I built a deliberately narrow reference app to sit on that boundary and see what breaks. It runs on Azure Container Apps, retrieves Markdown runbooks thro...
Strengthening NuGet Supply Chain Security: Reducing API Key Lifetime
NuGet API key durations will be reduced to 30 days starting August 17th. This change will significantly strengthen the integrity of the NuGet supply chain.
Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 1
Looking for a COM reference that is between strong and weak.
From generated code to trusted code with a unit-test agent
Meet the open-source polyglot testing agent that learns from a repository, writes unit tests, and checks that they build and pass.
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 10
What failure of the context callback means.
A deep dive into Power Pages Enhanced Authorization
Dataverse Native Authorization Model for Power Pages How mapped identities, security roles, and record filters move external-user authorization closer to the data. We’re introducing a major update to the Power Pages security model: authorization for external users is now enforced natively in Dataverse. Customers can opt in to this feature as they transition to the new model. This architecture moves Power Pages authorization closer to the data by translating Power Pages concepts into Dataverse-native security constructs. Instead of relying on Power Pages at runtime to reconstruct authorization for every request...
Introducing WPA MCP: Early Preview of AI-assisted trace analysis in Windows Performance Analyzer
Windows Performance Analyzer (WPA) is one of the most powerful tools available for understanding system performance on Windows. It helps engineers investigate Event Tracing for Windows (ETW) traces across CPU, memory, disk, networking, scheduling, input, and many other areas of the operating system. That power also comes with complexity. A single trace can contain a huge amount of data, and finding the right signal often requires knowing which WPA tables to open, which columns matter, how to filter the right time range, and how to connect multiple pieces of evidence into a root cause. We are working on WPA ...
Azure Developer CLI (azd) July 2026
This is the July round-up for the Azure Developer CLI (). Five releases shipped since the last post: 1.27.0, 1.27.1, 1.28.0, 1.28.1, and 1.29.0. Below is what's new, what changed, and what we fixed, with links to the pull requests if you want to dig in. Have feedback or questions? Join the release discussion on GitHub. Highlights: 🌐 Microsoft Foundry at the AI Engineer World's Fair In Pablo Castro's (Microsoft) "On AI and Knowledge" session at the AI Engineer World's Fair, the Microsoft Foundry team showed their command-line experience built on top of the extension platform. I...
Building agent teams with Agent Framework, GitHub Copilot CLI and Squad
Microsoft Agent Framework supports creating agents that use the GitHub Copilot SDK as their backend. GitHub Copilot agents provide access to powerful coding-oriented AI capabilities, including shell command execution, file operations, URL fetching, Model Context Protocol (MCP) server integration, and can be integrated into your existing development pipeline. We recently shipped this integration to v1.0 in C# and Python - fully supported and stable. Find out more here: MS Learn | Agent Framework | GitHub Copilot Agents and check out the samples here: .NET | Python A great example of using MAF and GitHub Copi...
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 9
Maybe it doesn't matter.
Azure SDK Release (July 2026)
Azure SDK releases every month. In this post, you'll find this month's highlights and release notes.
Tell your model when to think harder
Not every question deserves the same amount of thought. Renaming a variable isn't the same as debugging a memory leak, and they don't need the same level of thinking. So why should your model treat them the same way every time? Starting in Visual Studio 18.9 Insiders 2, it doesn't have to. Supported models now come with a thinking effort control, so you can dial up the reasoning when a problem is genuinely hard and dial it back down when it isn't. It's a small knob with a big payoff: better-matched answers, and more control over how many credits you spend getting them. A dial, not a switch Thinking effort is...
Making an agile version of a Windows Runtime delegate in C++/WinRT, part 8
Exceptions hiding in lambda captures.
Announcing v2.0 of the official MCP C# SDK
MCP C# SDK v2.0 implements the 2026-07-28 specification with a stateless-first protocol, standardized HTTP headers, and Multi Round-Trip Requests for interactive tools, all while staying backward compatible.
Package Integrity and Enforcement
A recent conversation started (as many interesting conversations do) with a simple question: "Why is MSIX secure?" MSIX includes multiple layers of protection designed to defend against both accidental damage and malicious tampering. But as with all good security solutions, it's not the individual elements so much as their interlocking design that makes the whole stronger than the sum of its parts. MSIX was designed around several core facets, integrated in sometimes novel ways. A packaged process can be trusted to a higher degree than most applications because Windows maintains a verifiable chain of trust fr...
Visual Studio July Update — Meet the New Agent, Powered by the GitHub Copilot SDK
There's a new Agent (Preview) in Copilot Chat, built on the same GitHub Copilot SDK that powers the GitHub Copilot CLI, that gets more done with less back-and-forth.