<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Holger Imbery</title>
    <description>The latest articles on DEV Community by Holger Imbery (@holgerimbery).</description>
    <link>https://dev.to/holgerimbery</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2736716%2Fa3ddf62e-8581-4eea-b140-b3fc2121c057.png</url>
      <title>DEV Community: Holger Imbery</title>
      <link>https://dev.to/holgerimbery</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/holgerimbery"/>
    <language>en</language>
    <item>
      <title>Copilot Managed Runtime: The Runtime Becomes the Governance Boundary</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 24 Oct 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/copilot-managed-runtime-the-runtime-becomes-the-governance-boundary-4d0i</link>
      <guid>https://dev.to/holgerimbery/copilot-managed-runtime-the-runtime-becomes-the-governance-boundary-4d0i</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Microsoft now runs the code that Copilot, Copilot Studio, and third-party AI tools produce, inside your Microsoft 365 tenant. I think that is the right answer to a problem we can no longer solve at the build side. But a runtime is only as good as the policies behind it, and this one sits on top of the Power Platform estate you already have, with its environments, DLP, and routing rules. This article explains what was announced, where I would place it, and what I would set up in the next 90 days.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Introduction: the tracker that 200 people now depend on
&lt;/h2&gt;

&lt;p&gt;Every enterprise I work with has a version of this story. Someone in operations gets tired of a shared Excel file. They build a small tracker in an afternoon. It works. They share the link in a Teams channel. Three weeks later, 200 colleagues depend on it, it talks to a SharePoint list and a line-of-business system, and nobody in IT knows it exists. The owner is going on parental leave next month.&lt;/p&gt;

&lt;p&gt;Five years ago that tracker was a canvas app, and the Power Platform CoE had at least a fighting chance to find it. Today the same person can describe the tracker in a chat and get working code back. Soon an agent may build it unasked.&lt;/p&gt;

&lt;p&gt;That is the context for Microsoft Copilot Managed Runtime. My thesis is simple. Copilot Managed Runtime shifts enterprise governance from the tools people build with to the place their code runs. That is the right move, because we can no longer control who builds apps with AI. But the runtime is only as good as the policies behind it, and it arrives on top of an existing Power Platform estate. Architects should treat it as a landing zone to design deliberately, before the first AI-built app goes viral.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Microsoft announced, and what it did not
&lt;/h2&gt;

&lt;p&gt;On 25 September 2026, Microsoft put Copilot Managed Runtime into public preview. The &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/build-where-you-want-run-with-confidence-now-microsoft-hosts-and-manages-the-code-created-by-copilot/" rel="noopener noreferrer"&gt;Copilot blog announcement&lt;/a&gt; describes it as a platform “to run code within the Microsoft 365 tenant boundary that’s governed by IT.” According to the same post, it already powers the apps built in Copilot Cowork, Copilot Code, and Copilot Studio. Microsoft is also opening it to third-party tools and professional developers. Lovable is the named third-party example.&lt;/p&gt;

&lt;p&gt;For developers, the way in is an SDK (&lt;code&gt;@microsoft/managed-apps&lt;/code&gt;) and a CLI (&lt;code&gt;@microsoft/managed-apps-cli&lt;/code&gt;) invoked as &lt;code&gt;ms&lt;/code&gt;. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/managed-apps/developer/?view=o365-worldwide" rel="noopener noreferrer"&gt;SDK overview on Microsoft Learn&lt;/a&gt; lists the documented capabilities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Entra authentication and authorization out of the box&lt;/li&gt;
&lt;li&gt;More than 1,500 connectors, callable from JavaScript and TypeScript&lt;/li&gt;
&lt;li&gt;A native Git inner loop, with either a platform-managed repository or your own GitHub repository (owned by an organization on GitHub Enterprise Cloud)&lt;/li&gt;
&lt;li&gt;Adherence to sharing limits, Conditional Access, Advanced Connector Policies, and Data Loss Prevention&lt;/li&gt;
&lt;li&gt;A GitHub Copilot plugin for coding agents&lt;/li&gt;
&lt;li&gt;A central inventory in the Microsoft 365 admin center ( &lt;strong&gt;Apps &amp;gt; All apps&lt;/strong&gt; ), with usage analytics and health metrics with alerting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Users open their apps at &lt;code&gt;managedapps.cloud.microsoft&lt;/code&gt;. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/managed-apps/?view=o365-worldwide" rel="noopener noreferrer"&gt;overview page&lt;/a&gt; now lists four build paths: Cowork, Copilot Studio, Copilot Code, and the SDK with its CLI. All four produce an app that inherits the tenant’s default governance policy: approved connectors, sharing rules, and content security policy.&lt;/p&gt;

&lt;p&gt;One detail was easy to miss at launch and matters a lot: there is a Power Platform environment behind every app. According to the &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/faq-about-apps?view=o365-worldwide" rel="noopener noreferrer"&gt;admin FAQ&lt;/a&gt;, apps are created in personal developer environments, and environment routing creates those environments for makers. They are always managed environments. Each one sits in an environment group, and that group carries the connector, sharing, and content security rules. Most of the governance discussion below comes back to this.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Licensing.&lt;/strong&gt; Users need either a Power Apps Premium license or Copilot Credits to run an app. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/licensing-faq?view=o365-worldwide" rel="noopener noreferrer"&gt;licensing FAQ&lt;/a&gt; is now clear on how credits are counted. The runtime measures usage in API calls. Launching an app, reading or writing data through a connector, and publishing an app each count as an API call, and each call costs 0.1 credits. Specialized services such as Work IQ APIs are charged separately at their own rates. The October 2026 &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide&lt;/a&gt; lists pay-as-you-go credits at $0.01 each (USD list price), so one launch costs a tenth of a cent. Users without enough credits first get a warning. During preview they are then blocked after 20 app operations or five minutes of use, whichever comes first.&lt;/p&gt;

&lt;p&gt;Power Apps Premium is not quite “free” either. Premium users don’t consume credits when they run apps, but their API calls count toward the daily Power Platform request limits of their license, and usage above those limits is billed in credits. The Power Apps use rights that come with Microsoft 365 or Dynamics 365 licenses do not cover these apps at all.&lt;/p&gt;

&lt;p&gt;Building and running are billed separately. Building in Cowork is charged through the maker’s Cowork spending policy in the Microsoft 365 admin center. Building in Copilot Studio is charged through Copilot Studio billing per environment in the Power Platform admin center, and billing starts during creation, not at publication. Running an app is billed per user and managed in the Microsoft 365 admin center. So the cost of one app can show up in two admin centers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Availability.&lt;/strong&gt; All eligible commercial tenants get the runtime automatically, and no admin action is needed. But each creation path has its own default. According to the &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/?view=o365-worldwide" rel="noopener noreferrer"&gt;admin overview&lt;/a&gt;, Copilot Studio app creation is on by default, CLI app creation is off by default and has to be enabled per environment or environment group, and Cowork app building depends on the tenant being onboarded to the Frontier program.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Repositories.&lt;/strong&gt; The repository type is chosen when an app is created and cannot be changed later. If you bring your own repository, it must be owned by an organization on GitHub Enterprise Cloud, on github.com or a ghe.com data residency host. Personal accounts, GitHub Enterprise Server, and other providers such as Azure DevOps are not supported. Repository visibility is not set in the runtime. You manage it with GitHub Enterprise Cloud repository policies.&lt;/p&gt;

&lt;p&gt;On the same day, Microsoft &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;launched the new Copilot&lt;/a&gt; with Home, Code, and Autopilot. It split pricing into a user subscription for everyday AI and usage-based billing for Cowork, Code, Autopilot, and frontier models. Microsoft said cost management in Agent 365 would expand to cover Code and Copilot Managed Runtime, with Copilot Studio agents planned for October. A week earlier, on 17 September, the &lt;a href="https://www.microsoft.com/en-us/power-platform/blog/power-apps/whats-new-in-power-platform-september-2026-feature-update/" rel="noopener noreferrer"&gt;Power Platform September update&lt;/a&gt; made the model app-builder skill and the canvas authoring agent plugin (with MCP support) generally available.&lt;/p&gt;

&lt;p&gt;Everything above about the runtime is preview. Microsoft Learn marks it as prerelease documentation subject to change, and the Copilot Credits Guide lists it as a paid public preview, so usage is billed even though the product is not generally available. The Cowork build path also requires the Frontier program. Do not bet production workloads on today’s details.&lt;/p&gt;

&lt;p&gt;When I started this article, two of my biggest questions were the credit cost of a launch and how existing Power Platform DLP applies. Microsoft has since documented both. What it still has not documented is an export path to another platform, what happens to an app when its owner leaves, and which events reach Microsoft Purview. I come back to those below.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it matters: governing the runtime instead of the builder
&lt;/h2&gt;

&lt;p&gt;For about a decade, citizen-development governance has worked on the build side. We controlled who got a maker license, which environments existed, which connectors a maker could combine, and which templates people started from. That model assumed building was the hard part, done in a small number of tools we owned.&lt;/p&gt;

&lt;p&gt;That assumption is gone. A business user can now produce an app in Cowork, in Copilot Studio, in Lovable, or with a coding agent in Visual Studio Code. You cannot put a gate in front of every one of those tools. Trying to do so creates the shadow IT you wanted to prevent.&lt;/p&gt;

&lt;p&gt;The runtime is the one place all of those paths converge. Identity, connectors, sharing, and inventory are enforced there, regardless of who wrote the code. Microsoft frames it as “central governance should not require centralized creation.” I agree with that sentence. It is overdue.&lt;/p&gt;

&lt;p&gt;I’d push back on the next step in Microsoft’s argument, though. The blog says enterprise readiness “becomes the default path.” A default is not readiness. A default policy decides which connectors an app may call. It does not decide who supports the app at 8 a.m. on a Monday, whether the data model will survive a second department, or what happens when the owner leaves. The runtime removes the platform work. It does not remove the operating model work, and that is the part most customers underinvest in.&lt;/p&gt;

&lt;p&gt;What gets better: one inventory across build tools, Entra sign-in everywhere, real Git history instead of opaque app packages, and a policy layer that applies to code you did not write. What gets harder: a new kind of app now lives in your Power Platform environment groups but is governed from the Microsoft 365 admin center, with its own licensing logic. Two admin centers share one set of rules. That overlap is the architect’s problem, not Microsoft’s.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture implications: where an app should live
&lt;/h2&gt;

&lt;p&gt;The first question in every workshop will be: should this app run in Copilot Managed Runtime, in Power Apps, or in Azure? There are clear criteria.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Criterion&lt;/th&gt;
&lt;th&gt;Managed Runtime&lt;/th&gt;
&lt;th&gt;Power Apps&lt;/th&gt;
&lt;th&gt;Azure&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Audience size&lt;/td&gt;
&lt;td&gt;Team to department&lt;/td&gt;
&lt;td&gt;Department to enterprise&lt;/td&gt;
&lt;td&gt;Enterprise or external&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Data sources&lt;/td&gt;
&lt;td&gt;Connectors, Graph, SharePoint&lt;/td&gt;
&lt;td&gt;Dataverse plus connectors&lt;/td&gt;
&lt;td&gt;Anything, you build it&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Dataverse&lt;/td&gt;
&lt;td&gt;Through the Dataverse connector&lt;/td&gt;
&lt;td&gt;Native&lt;/td&gt;
&lt;td&gt;Via API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Licensing you own&lt;/td&gt;
&lt;td&gt;Premium or credits&lt;/td&gt;
&lt;td&gt;Premium already paid&lt;/td&gt;
&lt;td&gt;Azure consumption&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ALM maturity&lt;/td&gt;
&lt;td&gt;Git, own repos on GitHub Enterprise Cloud only&lt;/td&gt;
&lt;td&gt;Solutions, pipelines&lt;/td&gt;
&lt;td&gt;Full DevOps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Expected lifetime&lt;/td&gt;
&lt;td&gt;Weeks to months&lt;/td&gt;
&lt;td&gt;Years&lt;/td&gt;
&lt;td&gt;Years&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pro-dev ownership&lt;/td&gt;
&lt;td&gt;Optional&lt;/td&gt;
&lt;td&gt;Optional&lt;/td&gt;
&lt;td&gt;Required&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;I read the table like this. Managed Runtime is the right default for small, AI-built, connector-backed tools with a limited audience and an uncertain future. Power Apps stays the home for apps that need a real Dataverse data model, security roles, business process flows, and the solution-based ALM that many enterprises have spent years building. Azure remains the answer when you need custom infrastructure, external users, or an engineering team that owns the service end to end.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connectors.&lt;/strong&gt; The 1,500+ connectors are the headline, but the defaults are much tighter. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/governance?view=o365-worldwide" rel="noopener noreferrer"&gt;default governance settings&lt;/a&gt; allow 18 Microsoft first-party connectors that authenticate only through Entra ID, plus 12 Microsoft MCP servers. Third-party, custom, and preview connectors are excluded. Even on allowed connectors, actions that open the door wide, such as “Send an HTTP request”, Office Scripts, or freeform DAX queries in Power BI, are blocked by default. That is a sensible starting point. The risk now sits in two places: when you widen the list, and in tenants that already have environment groups and data policies (more on that below). If you switch the connector policy to full control, Microsoft stops adding new connectors automatically, and the list is yours to maintain from then on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git and versioning.&lt;/strong&gt; The Git inner loop is a real improvement over what most citizen-built apps ever had. Builds and deploys come from real commits, and bring-your-own GitHub means branch policies and pull-request reviews still apply. But the repository choice is permanent per app, your own repositories must sit in a GitHub Enterprise Cloud organization, and Azure DevOps is not supported. Decide the repository pattern before people start creating apps, not after. There is also a setting that allows developers to deploy artifacts built outside Microsoft’s build system. It is off by default. Keep it off unless you have a build pipeline you trust, because the supply-chain checks then become your job.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When an app outgrows the runtime.&lt;/strong&gt; This is the question I would ask Microsoft first. The blog describes a developer pulling code down and continuing to build without standing up a separate runtime. That covers growth in code. It does not cover growth in audience, data volume, or criticality. I have seen too many “temporary” tools become business-critical to accept “we’ll move it later” as a plan. Because the code is a TypeScript or JavaScript single-page app in Git, moving to Azure is at least technically plausible. Moving to Power Apps is not documented. A Power Apps code app looks like the closest target, but until Microsoft describes a path, I would plan for a rebuild. Treat that as a design input, not a surprise.&lt;/p&gt;

&lt;p&gt;Power Platform is also moving toward code. Microsoft Learn already has guidance on converting a vibe app to a Power Apps code app, and the model app-builder skill now builds Dataverse artifacts from natural language. The overlap between the two platforms will grow before it shrinks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Governance implications: the default policy is the real control
&lt;/h2&gt;

&lt;p&gt;Because the runtime is on automatically, and Copilot Studio app creation is on by default, the default governance policy is not a setting you will get to eventually. It is the control that already applies to every app built today. The defaults live in a default environment group, which you find in the Microsoft 365 admin center under &lt;strong&gt;Apps &amp;gt; Settings &amp;gt; Environment groups&lt;/strong&gt;. It has four rules: routing, connectors and MCP servers, sharing, and content security policy. Review them this week.&lt;/p&gt;

&lt;p&gt;Some routing decisions cannot be undone. The service initializes Copilot Managed Runtime governance when the first app is created, or earlier when an administrator opens the app governance experience. After that, an existing “Everyone” catch-all routing rule can no longer be deleted or changed, and the routing rule created for the runtime is permanent. Makers who match no routing rule cannot create apps at all. Plan your routing in the Power Platform admin center first. If someone in Copilot Studio has already built an app, governance is already initialized in your tenant.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connector policy overlap.&lt;/strong&gt; At launch I could not find how existing Power Platform DLP applies to these apps. That is now documented. For an existing environment group, it depends on two things: whether the group has an advanced connector policy (ACP), and whether the “Advanced connector policies only” switch is on.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Existing ACP&lt;/th&gt;
&lt;th&gt;ACP only&lt;/th&gt;
&lt;th&gt;What applies&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Off&lt;/td&gt;
&lt;td&gt;Classic data policies. If none applies, connectors are not restricted.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;On&lt;/td&gt;
&lt;td&gt;Nothing. Data policies are ignored and connectors are not restricted.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Off&lt;/td&gt;
&lt;td&gt;Both. The most restrictive result wins.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;On&lt;/td&gt;
&lt;td&gt;Only the ACP. Data policies stay configured but are ignored.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Two of those four cases leave connectors unrestricted. There is also a display trap. For an existing group without an ACP, the Microsoft 365 admin center may report that no connectors are allowed, even when far more is possible. In mixed mode, it shows the ACP allow list but may not show restrictions from data policies. Check the effective policy in the Power Platform admin center before you tell your security team the answer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ownership and orphaned apps.&lt;/strong&gt; The inventory is better than I expected. It shows the current owner (which can differ from the original creator), status, hosting region, and environment group, and Global Administrators and Power Platform Administrators can block or delete an app from there. The apps also appear in the Power Platform admin center inventory. What I still cannot find is an action to reassign ownership, or documented behavior when the owner’s account is removed. Copilot Studio has an ownership reassignment API for orphaned agents; I found nothing equivalent for runtime apps. Until Microsoft documents it, assume you need your own process.&lt;/p&gt;

&lt;p&gt;Two smaller details belong in that process. Sharing an app does not grant access to its data; recipients still need their own permissions. And the reverse is also true: revoking someone’s access to an app does not remove their permissions on the underlying data. No single action does both.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Audit.&lt;/strong&gt; The blog lists auditing among the organizational policies. The runtime documentation I read does not yet say which events reach Microsoft Purview, or at what level of detail. Verify before you rely on it for compliance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost as a governance signal.&lt;/strong&gt; I like the credit model more than most people will. Every launch and every connector call is a metered API call at 0.1 credits, so usage shows up as spend, and spend is something finance will actually look at. A chatty app that calls APIs in a loop becomes visible. The block after 20 operations or five minutes is a hard, early signal that a user is not licensed.&lt;/p&gt;

&lt;p&gt;I’d push back on a common assumption here: that users with Power Apps Premium make the cost question go away. For them, normal use does not consume credits. That is good for the budget, but it also removes the signal, at least until they hit their daily request limits. For those users, use the usage analytics and the Monitor tab in the admin center instead, which show open success rate, session counts, and latency, and let you set alert rules.&lt;/p&gt;

&lt;p&gt;One app, two places for cost. For apps built in Copilot Studio, build costs are managed per environment in the Power Platform admin center, while runtime costs are managed per user in the Microsoft 365 admin center. Microsoft also said Copilot Studio agents would come to Agent 365 cost management in October. Check that this has actually reached your tenant, and connect both views, before you publish a FinOps baseline.&lt;/p&gt;

&lt;p&gt;The open questions I would put to Microsoft are now shorter. How do apps move to another platform when they outgrow the runtime? What happens to an app, its repository, and its connections when the owner is deprovisioned? Which runtime events reach Purview? When does preview end, and does the 20-operation grace period survive general availability?&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical recommendations: the next 30 to 90 days
&lt;/h2&gt;

&lt;p&gt;This is what I am recommending to customers right now, in rough order.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Decide routing before governance initializes.&lt;/strong&gt; Look at environment routing in the Power Platform admin center now. Decide between an Everyone catch-all and security-group scoped rules, knowing that parts of this become permanent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review the default environment group and limit who can create.&lt;/strong&gt; Copilot Studio app creation is on by default, and you can restrict it to specific Entra security groups. Leave CLI creation off until you have a defined developer audience. Keep external artifact deployment off.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check the effective connector policy for existing environment groups.&lt;/strong&gt; Look at the “Advanced connector policies only” switch and the data policies in the Power Platform admin center. Do not trust the Microsoft 365 admin center view alone.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decide who owns the admin inventory.&lt;/strong&gt; Apps &amp;gt; All apps is a new surface, but the Power Platform Administrator role already has full rights there. Give it to the team that owns the Power Platform inventory, with a weekly review and health alerts set up in Monitor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Define a graduation path.&lt;/strong&gt; Write down when an app must move to Power Apps or Azure: audience size, data sensitivity, need for a real Dataverse model, or business criticality.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Set the repository standard.&lt;/strong&gt; Platform-managed Git or bring-your-own GitHub, decided centrally, because the choice cannot be changed per app later. If you bring your own, use a GitHub Enterprise Cloud organization and enforce repository visibility there.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Set up runtime billing deliberately.&lt;/strong&gt; Users without Premium cannot run apps beyond the grace period until you turn on usage-based billing and create a spending policy for managed applications. Set per-user limits, decide whether “Auto-apply new services” (on by default) should stay on, and route credit requests into your existing approval workflow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check which users already hold Power Apps Premium.&lt;/strong&gt; They run apps without consuming credits up to their request limits. The Power Apps rights included in Microsoft 365 do not count. That changes both your cost forecast and your pilot audience.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pilot with one department.&lt;/strong&gt; Pick one with a real backlog of small tools and a manager willing to own the outcome. Measure launches, API calls, and support requests for eight weeks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Align with the Power Platform CoE.&lt;/strong&gt; These apps live in Power Platform environment groups, so this is not a separate estate. Same connectors, same DLP intent, same orphaned-app process. Two governance teams with two rulebooks is the failure mode I would most like to avoid.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Conclusion: design the landing zone before the traffic arrives
&lt;/h2&gt;

&lt;p&gt;I think Microsoft made the right architectural choice. You cannot govern every build tool when every employee, and soon every agent, can write code. Governing the place code runs is the only boundary that scales. Copilot Managed Runtime gives us that boundary inside Microsoft 365, with Entra, connectors, Git, and an inventory in one place.&lt;/p&gt;

&lt;p&gt;But a boundary is not a design. The defaults are sensible but generic, the preview will change, costs are split across two admin centers, and the runtime is built on the same environments and routing rules as your Power Platform estate. Treat it as a landing zone: routing, policies, ownership, graduation rules, and cost controls, agreed before the first app gets popular.&lt;/p&gt;

&lt;p&gt;The consequence I would plan for is not the business user with a tracker. It is Autopilot and similar agents building small tools for themselves, on the same runtime, under the same policies. When the builder is an agent with its own identity, the runtime is the only place left to govern. Better to get it right while the builders are still human.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/build-where-you-want-run-with-confidence-now-microsoft-hosts-and-manages-the-code-created-by-copilot/" rel="noopener noreferrer"&gt;Build where you want, run with confidence: Now Microsoft hosts and manages the code created by Copilot&lt;/a&gt;, 25 September 2026: public preview, “governed by IT” wording, build experiences covered, Lovable example, admin center inventory, “central governance should not require centralized creation”, auditing listed as a policy area&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/managed-apps/?view=o365-worldwide" rel="noopener noreferrer"&gt;What is Microsoft Copilot Managed Runtime (preview)&lt;/a&gt;, last updated 15 October 2026: four build paths, Frontier requirement for Cowork, inherited default governance policy, managedapps.cloud.microsoft portal, Apps &amp;gt; All apps&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/managed-apps/developer/?view=o365-worldwide" rel="noopener noreferrer"&gt;Microsoft Copilot Managed Runtime SDK overview (preview)&lt;/a&gt;, last updated 30 September 2026: SDK and CLI, 1,500+ connectors, GitHub Copilot plugin, repository options and limits, policy adherence, licensing, warning and block limits, automatic availability&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/?view=o365-worldwide" rel="noopener noreferrer"&gt;Copilot Managed Runtime overview and key concepts for admins (preview)&lt;/a&gt;, last updated 13 October 2026: defaults per creation path, admin roles, security group scoping for Copilot Studio, external artifacts setting, build and runtime billing&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/governance?view=o365-worldwide" rel="noopener noreferrer"&gt;Copilot Managed Runtime default governance settings (preview)&lt;/a&gt;, last updated 29 September 2026: default environment group, 18 connectors and 12 MCP servers, blocked actions, content security policy, permanent routing rule, connector policy evaluation for existing environment groups&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/faq-about-apps?view=o365-worldwide" rel="noopener noreferrer"&gt;FAQ about Microsoft Copilot Managed Runtime (preview)&lt;/a&gt;, last updated 25 September 2026: personal developer environments, governance initialization, Everyone catch-all rule, sharing and data access, mixed-mode connector display&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/licensing-faq?view=o365-worldwide" rel="noopener noreferrer"&gt;Copilot Managed Runtime licensing FAQ (preview)&lt;/a&gt;, last updated 7 October 2026: what counts as an API call, 0.1 credits per call, Premium request limits, Microsoft 365 and Dynamics 365 Power Apps rights not covered, spending policy setup&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/apps/inventory?view=o365-worldwide" rel="noopener noreferrer"&gt;View and oversee apps in Copilot Managed Runtime across your tenant (preview)&lt;/a&gt;, last updated 25 September 2026: inventory columns, block and delete, Monitor tab and alerts, roles&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide&lt;/a&gt;, October 2026: Copilot Managed Runtime as paid public preview, API call metering, pay-as-you-go price per credit in USD, Power Apps Premium request limits&lt;/li&gt;
&lt;li&gt;Official Microsoft Blog, &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;Introducing the new Copilot with Home, Code and Autopilot&lt;/a&gt;, 25 September 2026: new Copilot, split pricing (user subscription and usage-based billing), Agent 365 cost management scope and October plan for Copilot Studio agents, Autopilot&lt;/li&gt;
&lt;li&gt;Microsoft Tech Community, &lt;a href="https://techcommunity.microsoft.com/blog/ai-finops-blog/new-finops-for-ai-capabilities-control-spend-measure-value-and-optimize-for-impa/4559660" rel="noopener noreferrer"&gt;New FinOps for AI capabilities: Control spend, measure value, and optimize for impact&lt;/a&gt;, September 2026: FinOps for AI context&lt;/li&gt;
&lt;li&gt;Microsoft Power Platform Blog, &lt;a href="https://www.microsoft.com/en-us/power-platform/blog/power-apps/whats-new-in-power-platform-september-2026-feature-update/" rel="noopener noreferrer"&gt;What’s new in Power Platform: September 2026 feature update&lt;/a&gt;, 17 September 2026: model app-builder skill and canvas authoring agent plugin with MCP support generally available&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agent365</category>
      <category>alm</category>
      <category>copilotcowork</category>
      <category>copilotmanagedruntim</category>
    </item>
    <item>
      <title>Agents With Their Own Accounts: What Changes When Copilot Studio Agents Stop Borrowing Your Identity</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 17 Oct 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/agents-with-their-own-accounts-what-changes-when-copilot-studio-agents-stop-borrowing-your-identity-1bhm</link>
      <guid>https://dev.to/holgerimbery/agents-with-their-own-accounts-what-changes-when-copilot-studio-agents-stop-borrowing-your-identity-1bhm</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;On October 15, 2026, Microsoft announced agent accounts, business process memory, and triggers for Copilot Studio. This is less about what these agents can do and more about what they are: a new kind of principal in your tenant, with its own credentials and memory.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In my customer projects, Copilot Studio discussions tend to come back to the same question: whose identity does the agent use when it does something? So far the honest answer has been “it depends”, and that becomes a problem once agents run recurring processes so that they keep working when nobody is looking.&lt;/p&gt;

&lt;p&gt;I think an agent with its own account should be treated as a new principal, much closer to a service account than to a product feature. In practice, that means giving each agent a job description, scoped permissions, a named human owner, clear memory limits, a budget, and a plan for retiring it. If you cannot write that down, I would not give the agent an account yet. Keep in mind that Microsoft is rolling these features out through the Frontier program, which is early access, so details may still change.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Microsoft announced
&lt;/h2&gt;

&lt;p&gt;The announcement is a &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/delegate-shared-business-processes-to-agents-that-are-more-persistent-and-proactive-with-microsoft-copilot-studio/" rel="noopener noreferrer"&gt;Microsoft Copilot Blog post&lt;/a&gt; by Jason Moore, Vice President of Product for Microsoft Copilot Studio, published October 15, 2026. It describes managed agents that belong to the organization and persist beyond any one person’s role or tenure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent accounts.&lt;/strong&gt; Microsoft says agent accounts let agents work in Microsoft 365 with their own credentials, “similar to how any person would”. People can reach the agent in Microsoft Teams and Outlook, @mention it in comments in Word, Excel, and PowerPoint, and hand it tasks that it continues between their interactions. Accounts also let agents work with other agents, tools, apps, and services using their own approved credentials and scoped permissions, without relying on any individual user’s or maker’s credentials. Work is attributed to the agent, and administrators can scope access and manage the agents’ lifecycle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Business process memory.&lt;/strong&gt; Microsoft says this memory carries users’ preferences and business process context into each new process cycle. Anything one person tells the agent about the process becomes a shared resource for everyone else. Makers guide how the retained context is used through instructions, and they decide which business records and policies are authoritative.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Triggers in the GitHub Copilot harness.&lt;/strong&gt; Any agent built on the GitHub Copilot harness can be started by an external signal, such as an email, or on a set cadence, without an additional prompt.&lt;/p&gt;

&lt;p&gt;Microsoft also says it plans to add access policies, quality, cost management, and lifecycle controls specific to these agents in the coming months. Microsoft also says agent refinements and a browser-enabled cloud computer for agents are coming.&lt;/p&gt;

&lt;p&gt;Neither the announcement nor the what’s new page covers licensing, pricing, regional availability, or retention for agent accounts or business process memory. Please check these points in your own tenant before you plan anything.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it matters
&lt;/h2&gt;

&lt;p&gt;When an agent runs on the &lt;strong&gt;user’s credentials&lt;/strong&gt; , it sees only what that user can see. This is safe, but awkward for shared processes because the result depends on who asked.&lt;/p&gt;

&lt;p&gt;When an agent runs on the &lt;strong&gt;maker’s credentials&lt;/strong&gt; , it works for everyone but acts as one person. I have seen this go wrong more than once. The maker changes role, a connection breaks, and a process stops without anyone noticing. Or the audit log shows a named employee doing things that person never did.&lt;/p&gt;

&lt;p&gt;When an agent runs on a &lt;strong&gt;shared service account&lt;/strong&gt; , attribution stays blurred. If several agents share one, nobody can tell which agent did what.&lt;/p&gt;

&lt;p&gt;Agent accounts address all three cases. My reading is that they give org-owned agents a much clearer, platform-supported answer to who did what. That helps with audits, incident response, and German works councils, who will want to know that agent activity cannot be mistaken for employee activity.&lt;/p&gt;

&lt;p&gt;There is a second change. An agent you can email and @mention behaves like a colleague, so users will treat it like one. They will tell it things in passing, expect it to remember, and assume that someone is responsible for it. Every one of these expectations needs a governance answer.&lt;/p&gt;

&lt;p&gt;The third change comes from triggers. Nobody has to start the agent anymore, so it can run at 03:00 on a Sunday because an email arrived. Risk and cost are no longer tied to office hours, and your monitoring should reflect that.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture implications
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Agent accounts and Microsoft Entra Agent ID
&lt;/h3&gt;

&lt;p&gt;How do agent accounts relate to the Microsoft Entra Agent ID that Copilot Studio already creates? Here, I separate what is documented from what isn’t.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/whats-new" rel="noopener noreferrer"&gt;What’s new in Copilot Studio&lt;/a&gt; page says that starting in July 2026, Copilot Studio automatically creates a Microsoft Entra Agent ID for every new agent, and you can no longer opt out at the environment level. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/admin-use-entra-agent-identities" rel="noopener noreferrer"&gt;Microsoft Entra Agent IDs for Copilot Studio agents&lt;/a&gt; page explains that connector permissions are attached to the agent identity as API permissions, that admins can target them with Conditional Access, and that deleting an agent also deletes its Agent ID. That page says it describes agents powered by the standard harness, and the &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/govern-agents-identities-overview" rel="noopener noreferrer"&gt;App registration, agent identities, and authentication&lt;/a&gt; page says Agent ID provisioning timing depends on the harness. The same page describes Entra Agent IDs as service principals with an “Agent” subtype and says that no one in your tenant, including tenant administrators, can generate tokens with the agent identity.&lt;/p&gt;

&lt;p&gt;The October 15 post does not say whether an agent account is built on the Entra Agent ID, sits next to it, or is something else. It also does not say whether an agent account needs a license, has a mailbox in the usual sense, or shows up as a user object. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-agent-365/builder/identity" rel="noopener noreferrer"&gt;Agent 365 identity integration page&lt;/a&gt; refers to Agent 365 identity concepts such as agentic users, but I have not found any Microsoft statement that links them to Copilot Studio agent accounts.&lt;/p&gt;

&lt;p&gt;For now I would govern the Entra Agent IDs you already have and confirm the identity model of agent accounts in your own tenant. I would not design an access model on the assumption that the two are the same object.&lt;/p&gt;

&lt;p&gt;Microsoft’s pages give different dates for this change: March 18, 2026 on a Microsoft Entra page, May 2026 on the Copilot Studio identity pages, and July 2026 (no opt-out) on the what’s new page. Check your older agents, because some may still use legacy app registrations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Credentials move from people to agents
&lt;/h3&gt;

&lt;p&gt;With borrowed credentials, the agent’s access was inherited from a person. With agent accounts, someone has to design it. In my experience, the first permission list is almost always too broad, because the maker lists everything the process might ever need. I prefer to derive permissions from the process steps: for each step, which system it touches and whether it reads or writes. Grant that, and review it after the first few cycles.&lt;/p&gt;

&lt;h3&gt;
  
  
  Memory changes the data model
&lt;/h3&gt;

&lt;p&gt;Copilot Studio already offers memory for agents on the GitHub Copilot harness. According to the what’s new page for June 2026, it captures user preferences and patterns and “stores them per user”. Business process memory works differently on purpose, because what one person tells the agent becomes available to everyone who works with it.&lt;/p&gt;

&lt;p&gt;It is a shared knowledge base written through conversations, so the choice of authoritative records is the key design decision. If the instructions do not state clearly that the ERP record wins over a remembered comment, sooner or later a remembered comment will win.&lt;/p&gt;

&lt;h3&gt;
  
  
  Triggers change the runtime profile
&lt;/h3&gt;

&lt;p&gt;Triggers make the agent event-driven, which raises the usual questions. What happens when 400 emails arrive in an hour, when the same signal arrives twice, or when a run cannot finish? I did not find published limits, retry behavior, or concurrency controls for these triggers in the sources I read, so I would test all three before going live.&lt;/p&gt;

&lt;h2&gt;
  
  
  Governance implications
&lt;/h2&gt;

&lt;h3&gt;
  
  
  A named human owner, not just a sponsor
&lt;/h3&gt;

&lt;p&gt;According to the identity documentation, Copilot Studio adds the agent owner to the Entra Agent ID as a sponsor with limited permissions for “governance traceability” and “accountability for agent lifecycle.” That is a sensible default, but the maker is rarely the person who owns the business process. I would record both, plus a deputy.&lt;/p&gt;

&lt;h3&gt;
  
  
  Shared memory, retention, and the right to be forgotten
&lt;/h3&gt;

&lt;p&gt;I expect the hardest discussions here, at least in the EU. People will tell the agent things about other people, for example, “Don’t send the forecast to Martin before Thursday; he’s on leave.” That is personal data under the GDPR, about someone who never talked to the agent.&lt;/p&gt;

&lt;p&gt;The sources don’t say where business process memory is stored, how long it is kept, whether Microsoft Purview retention and eDiscovery cover it, or how to find and delete a single entry. If someone makes an erasure request under Article 17 or an access request under Article 15, you need to be able to say what the agent remembers about that person. Until Microsoft documents this, I would use instructions to keep personal data out of memory, tell users clearly that the memory is shared, and involve the data protection officer before the pilot starts. In many cases, a data protection impact assessment will be appropriate.&lt;/p&gt;

&lt;p&gt;Do not assume that business process memory follows the retention and deletion rules of Teams chats or Exchange mail. Microsoft has not documented this. Treat it as an open question and check it before any personal data reaches the agent.&lt;/p&gt;

&lt;h3&gt;
  
  
  Triggers and cost when nobody is watching
&lt;/h3&gt;

&lt;p&gt;The what’s new page for August 2026 says that agents, workflows, and apps powered by the GitHub Copilot harness use usage-based billing measured in Copilot Credits. Triggers are part of that harness. My reading is that every triggered run can therefore consume credits, even when no person is involved.&lt;/p&gt;

&lt;p&gt;The failure modes are familiar: a mail loop between two agents, or a five-minute test schedule nobody changed back. Microsoft says cost-management controls for these agents are planned, which suggests they aren’t all available yet. Until they are, I would use the agent usage estimator before going live and review consumption per agent every week. I wrote about the wider cost picture in my &lt;a href="https://holgerimbery.blog/agent-finops-microsoft-ecosystem" rel="noopener noreferrer"&gt;October 10, 2026 article on agent FinOps&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lifecycle and retirement
&lt;/h3&gt;

&lt;p&gt;These agents are meant to outlive the projects that built them, so I would set a review date when each agent is created. If the owner doesn’t confirm the agent is still needed, switch off the triggers first, then remove permissions, then delete the agent. The documentation confirms that deleting an agent deletes its Entra Agent ID. The documentation doesn’t yet confirm whether it also removes the agent account and its business process memory, so test this during a pilot.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical recommendations
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Pick the right processes first
&lt;/h3&gt;

&lt;p&gt;Microsoft suggests starting with one shared business process, and I agree. Good candidates are &lt;strong&gt;stable&lt;/strong&gt; , &lt;strong&gt;clearly owned&lt;/strong&gt; , and &lt;strong&gt;recurring&lt;/strong&gt; , and mistakes in them are &lt;strong&gt;visible and easy to reverse&lt;/strong&gt;. Typical examples include weekly reporting, triaging incoming contracts, and collecting status updates before a steering meeting.&lt;/p&gt;

&lt;p&gt;I would avoid processes with unclear ownership, processes that touch special categories of personal data, one-off projects, and anything where the agent would make a final decision with legal effect on a person. In Microsoft’s example, the finance team keeps authority over allocations and spending. I would treat that as a rule for every org-owned agent.&lt;/p&gt;

&lt;h3&gt;
  
  
  Personal agent or org-owned agent
&lt;/h3&gt;

&lt;p&gt;I use the following table with customers. If most answers fall into the right column, the agent should be org-owned.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Question&lt;/th&gt;
&lt;th&gt;Personal agent&lt;/th&gt;
&lt;th&gt;Org-owned agent&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Who benefits?&lt;/td&gt;
&lt;td&gt;One person&lt;/td&gt;
&lt;td&gt;A team or function&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Should it outlive its creator?&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Whose access should it use?&lt;/td&gt;
&lt;td&gt;The user’s&lt;/td&gt;
&lt;td&gt;Its own, scoped&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Should memory be shared?&lt;/td&gt;
&lt;td&gt;No, per user&lt;/td&gt;
&lt;td&gt;Yes, per process&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Does it start on its own?&lt;/td&gt;
&lt;td&gt;Rarely&lt;/td&gt;
&lt;td&gt;Often, by trigger&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Who is accountable?&lt;/td&gt;
&lt;td&gt;The user&lt;/td&gt;
&lt;td&gt;A named process owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Audit needs&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;td&gt;High, actions attributed to the agent&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Mixed answers often mean two agents that are easier to govern separately.&lt;/p&gt;

&lt;h3&gt;
  
  
  A short readiness checklist
&lt;/h3&gt;

&lt;p&gt;Before I give an agent its own account, I want the following points answered in writing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Job description.&lt;/strong&gt; A paragraph on what the agent does, for whom, and what it must never do.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Owner and deputy.&lt;/strong&gt; A named process owner and a deputy, in addition to the maker.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Permissions.&lt;/strong&gt; Systems and actions derived from the process steps, with read and write listed separately.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identity.&lt;/strong&gt; The agent’s Entra Agent ID checked in the Microsoft Entra admin center, and Conditional Access reviewed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Memory rules.&lt;/strong&gt; Instructions that name the authoritative records, and a notice to users that memory is shared.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data protection.&lt;/strong&gt; Data protection officer informed, a documented decision on an impact assessment, and a process for erasure and access requests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Triggers.&lt;/strong&gt; Sources, schedule, and expected volume documented, with a plan for duplicates and bursts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Budget.&lt;/strong&gt; Expected Copilot Credits per cycle and a named person who reviews usage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review date.&lt;/strong&gt; The date when the owner must confirm that the agent is still needed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exit plan.&lt;/strong&gt; The order for switching off triggers, removing access, and deleting the agent.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Use the Frontier phase to collect evidence
&lt;/h3&gt;

&lt;p&gt;If your tenant is in the Frontier program, I would use the next weeks to answer the open questions rather than build a showcase. How does an agent account appear in Microsoft Entra? What do the audit logs show? Can you delete a memory entry? What does a triggered run cost?&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;With these features, Copilot Studio agents become participants in a process instead of tools that people use. Microsoft calls them digital teammates. I find that description useful as long as we follow it through: a teammate has a role, a manager, limits, and at some point leaves.&lt;/p&gt;

&lt;p&gt;Borrowed credentials have been a weak spot in many agent projects I have seen, so clear attribution is a real improvement. But several controls are still on the way, and the documentation on identity, memory retention, and trigger limits is incomplete. Start with one stable, clearly owned, recurring process, write the job description before you build, keep personal data out of shared memory, watch credit consumption, and set a retirement date on day one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Copilot Blog (Copilot Studio), &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/delegate-shared-business-processes-to-agents-that-are-more-persistent-and-proactive-with-microsoft-copilot-studio/" rel="noopener noreferrer"&gt;Delegate shared business processes to agents that are more persistent and proactive with Microsoft Copilot Studio&lt;/a&gt;, October 15, 2026: agent accounts, business process memory, triggers in the GitHub Copilot harness, planned controls, agent refinements, browser-enabled cloud computer, budget agent example, Frontier program rollout&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/whats-new" rel="noopener noreferrer"&gt;What’s new in Copilot Studio&lt;/a&gt;, last updated October 5, 2026: automatic Microsoft Entra Agent ID for every new agent from July 2026 without environment opt-out, per-user memory for GitHub Copilot harness agents (June 2026), usage-based billing in Copilot Credits (August 2026), agent usage estimator (April 2026)&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/admin-use-entra-agent-identities" rel="noopener noreferrer"&gt;Microsoft Entra Agent IDs for Copilot Studio agents&lt;/a&gt;: connector permissions on the agent identity, Conditional Access, deletion of the Agent ID with the agent, move from app registrations, scope limited to the standard harness&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/govern-agents-identities-overview" rel="noopener noreferrer"&gt;App registration, agent identities, and authentication&lt;/a&gt;: Agent IDs as service principals with an “Agent” subtype, provisioning timing by harness, agent owner added as sponsor, no token generation by tenant users&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-agent-365/builder/identity" rel="noopener noreferrer"&gt;Agent identity integration for Copilot Studio&lt;/a&gt;, last updated May 19, 2026: automatic Agent IDs, Agent 365 registry and governance integration, reference to agentic users&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/entra/agent-id/migrate-copilot-studio-agents-to-agent-id" rel="noopener noreferrer"&gt;Recreate Copilot Studio agents with Microsoft Entra Agent ID&lt;/a&gt;: legacy service principals, March 18, 2026 date for automatic agent identities, agent-specific audit trails and lifecycle governance&lt;/li&gt;
&lt;li&gt;holgerimbery.blog, &lt;a href="https://holgerimbery.blog/agent-finops-microsoft-ecosystem" rel="noopener noreferrer"&gt;agent FinOps in the Microsoft ecosystem&lt;/a&gt;, October 10, 2026: my earlier article on agent cost management&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agentaccounts</category>
      <category>agentgovernance</category>
      <category>copilotstudio</category>
      <category>entraagentid</category>
    </item>
    <item>
      <title>Agent FinOps in the Microsoft Ecosystem - Rev1</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/agent-finops-in-the-microsoft-ecosystem-rev1-184l</link>
      <guid>https://dev.to/holgerimbery/agent-finops-in-the-microsoft-ecosystem-rev1-184l</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;This is the second post in the series on Copilot and agent costs. &lt;a href="https://holgerimbery.blog/copilot-pricing-licenses-and-credits" rel="noopener noreferrer"&gt;Part one&lt;/a&gt; was the price list: the Copilot license for everyday AI, and Copilot Credits for agentic work. This post is about what happens after you buy. Agent costs show up in four places (Copilot, Cowork, Copilot Studio, and Foundry), spread over three consoles, and each one has different controls. For each, I cover where you see the cost, what actually stops spending, and how to bring it down. Everything comes from Microsoft’s own pages.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a living article. I check it against Microsoft’s documentation, pricing pages, and announcements at the start of every month and update it when something changes. The changelog at the end lists every change.&lt;/p&gt;

&lt;h2&gt;
  
  
  What FinOps means when you run agents
&lt;/h2&gt;

&lt;p&gt;FinOps comes down to three habits: make spending visible, give it an owner, then reduce it.&lt;/p&gt;

&lt;p&gt;That works well for cloud costs, because they have a clear unit: an hour of a virtual machine, a gigabyte, a request. Agents don’t. One user question can start a plan, several model calls, a search through company data, a few tool calls, some retries, and sometimes other agents. It all happens in seconds, usually before any dashboard updates.&lt;/p&gt;

&lt;p&gt;So you keep the three habits and count something else. A useful number is the cost of one agent session. A better one, if you can get it, is the cost of one result: one ticket solved, one document checked, one invoice cleared. Finance can work with that.&lt;/p&gt;

&lt;p&gt;Three things make agents harder than normal cloud costs.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Costs can start before you go live.&lt;/strong&gt; On one Copilot Studio harness, building, previewing, and testing an agent already use credits.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Without a person in the loop, nothing slows an agent down.&lt;/strong&gt; Costs then follow how often the agent is triggered, not how many people use it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The numbers are spread out.&lt;/strong&gt; Copilot and Cowork report in the Microsoft 365 admin center, Copilot Studio in the Power Platform admin center, and Foundry in Azure. Nothing shows all of them together.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Four meters, three consoles
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Where agents run&lt;/th&gt;
&lt;th&gt;What you pay for&lt;/th&gt;
&lt;th&gt;Where you see the cost&lt;/th&gt;
&lt;th&gt;Can you set a hard stop?&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 Copilot&lt;/td&gt;
&lt;td&gt;A license per user; agents are billed per use for people without one&lt;/td&gt;
&lt;td&gt;Microsoft 365 admin center&lt;/td&gt;
&lt;td&gt;Yes, a monthly limit per user&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Cowork&lt;/td&gt;
&lt;td&gt;Copilot Credits per task, always&lt;/td&gt;
&lt;td&gt;Microsoft 365 admin center&lt;/td&gt;
&lt;td&gt;Yes, a monthly limit per user&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Studio&lt;/td&gt;
&lt;td&gt;Copilot Credits per agent action&lt;/td&gt;
&lt;td&gt;Power Platform admin center&lt;/td&gt;
&lt;td&gt;Yes, a monthly limit per agent&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Foundry agents&lt;/td&gt;
&lt;td&gt;Model tokens, tools, storage, compute&lt;/td&gt;
&lt;td&gt;Azure Cost Management&lt;/td&gt;
&lt;td&gt;No, budgets only warn&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Credit use in the first three comes out of one pool per tenant. Foundry is billed through Azure and is completely separate.&lt;/p&gt;

&lt;h2&gt;
  
  
  Copilot and Cowork: the Microsoft 365 admin center
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Where it is and what it covers
&lt;/h3&gt;

&lt;p&gt;The cost screen for Copilot Credits is in the Microsoft 365 admin center under &lt;strong&gt;Copilot &amp;gt; Cost management&lt;/strong&gt;. Microsoft’s &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-overview-copilot-credits" rel="noopener noreferrer"&gt;usage-based billing overview&lt;/a&gt; (updated September 25, 2026) calls it “a centralized place to govern and monitor AI experiences”. You can see usage by spending policy, user, group, agent, service, and funding source.&lt;/p&gt;

&lt;p&gt;It covers fewer services than you might expect. The overview lists Cowork, apps built with Cowork, and the Work IQ API (for third-party agents). For Copilot Studio, the same page still sends you to “Copilot Studio pay-as-you-go” instead. Copilot Studio isn’t in there yet. More on that in the section on October.&lt;/p&gt;

&lt;p&gt;Before any of this can run, someone has to switch it on. The Configuration tab is where you turn on usage-based billing, pick how you pay (pay-as-you-go, pre-purchase, or capacity packs), and link an Azure subscription. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/user-subscription-license-usage-based-billing" rel="noopener noreferrer"&gt;USL and UBB page&lt;/a&gt; is clear: “Admins must set up a billing policy before a user can use” these experiences.&lt;/p&gt;

&lt;h3&gt;
  
  
  How spending policies work
&lt;/h3&gt;

&lt;p&gt;Spending policies are the main control. The rules are simple once you’ve read them, but a few of them surprise people.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Policies can apply to the tenant, to groups, or to users. Individual users can only be added through security groups.&lt;/li&gt;
&lt;li&gt;The default policy sets the tenant limit. Every other policy has its own limit and “doesn’t inherit the tenant-level limit.”&lt;/li&gt;
&lt;li&gt;If a user is in several policies, only one applies: the one with the highest per-user limit, then the largest policy limit, then the newest. “The chosen policy applies in full and settings from other policies aren’t combined.”&lt;/li&gt;
&lt;li&gt;When a user reaches the limit, “they lose access to agents and services for the rest of the month”. Moving them to another group doesn’t help: “Moving a user between groups or spending policies doesn’t reset the user’s consumption.”&lt;/li&gt;
&lt;li&gt;Policies cap spending. They “don’t reserve or allocate Copilot Credits”.&lt;/li&gt;
&lt;li&gt;For Cowork, a policy can also limit which AI models people can use. Microsoft calls these “model profiles”: a saved set of at least two models that you attach to a policy. They are “currently available only for Copilot Cowork”.&lt;/li&gt;
&lt;li&gt;Credits are used in a fixed order: capacity packs first, then the pre-purchase plan, then pay-as-you-go.&lt;/li&gt;
&lt;li&gt;You can change a policy’s billing method later. This used to be impossible. Since the &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-setup" rel="noopener noreferrer"&gt;setup page&lt;/a&gt; was updated on October 2, 2026, it says: “Changing the billing method doesn’t require you to delete and recreate the policy.” Scope, limits, alerts, and services stay as they are.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For Cowork, a spending policy does more than cap money. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/cowork-admin-governance" rel="noopener noreferrer"&gt;Cowork admin page&lt;/a&gt; says: “A spending policy is an access control, not only a budget.” If someone isn’t in a policy, they can’t use Cowork.&lt;/p&gt;

&lt;p&gt;The setting “Auto-apply new services” is on by default. Every new service Microsoft adds to usage-based billing is then covered by your existing policies without anyone deciding it should be. Microsoft’s own advice on the &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-setup" rel="noopener noreferrer"&gt;setup page&lt;/a&gt;: “Turn off the setting if you want to review and add future services manually.”&lt;/p&gt;

&lt;h3&gt;
  
  
  Who can do what
&lt;/h3&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-setup" rel="noopener noreferrer"&gt;setup page&lt;/a&gt; splits the work across roles, which helps if finance and IT share the job. Microsoft changed this on October 2, 2026: the AI and License admins can now edit policies, but no longer create them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;th&gt;What they can do&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Global admin, Billing admin&lt;/td&gt;
&lt;td&gt;Turn on usage-based billing, add and change billing methods&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI admin, License admin&lt;/td&gt;
&lt;td&gt;Edit spending policies, limits, alerts, and billing methods, but not create new policies&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI Reader, Global Reader&lt;/td&gt;
&lt;td&gt;Read-only access, good for finance&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  What users see
&lt;/h3&gt;

&lt;p&gt;In Cowork, a user can type &lt;code&gt;/cost&lt;/code&gt; to see what a task used and how many credits they have left this month. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-cost" rel="noopener noreferrer"&gt;/cost page&lt;/a&gt; (updated August 13, 2026) also says what it doesn’t do: “It does not provide month-over-month trends, usage history”. Microsoft says more is coming, including “new ways to view their credit consumption or request credits from their admin”, but gives no date.&lt;/p&gt;

&lt;p&gt;Users can also ask for more credits. Admins can send those requests to their own IT portal or a ServiceNow workflow instead of handling them in the admin center.&lt;/p&gt;

&lt;h3&gt;
  
  
  The adoption report is not a cost report
&lt;/h3&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/activity-reports/microsoft-365-copilot-agents-new" rel="noopener noreferrer"&gt;Microsoft Copilot Agents usage report&lt;/a&gt; (preview, updated August 18, 2026) shows active users (licensed and unlicensed), active agents, responses, and who built each agent. Data shows up “within an hour”. It has no cost or credit figures, covers only the last 7 or 30 days, hides user names by default, and leaves out two things: “SharePoint agents used in Teams aren’t currently included”, and “Cowork usage is not included”. Use it to see which agents people really use. Don’t use it to charge anyone.&lt;/p&gt;

&lt;p&gt;The admin center figures are not your bill. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-monitor-spending" rel="noopener noreferrer"&gt;monitoring page&lt;/a&gt; says the Overview tab refreshes every 4 hours and the Consumption tab every 2 hours, and exports are “a point-in-time snapshot”. Use the monthly invoice for the real numbers.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to keep costs down
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Decide license or pay-per-use for each group, with real numbers.&lt;/strong&gt; For licensed users, employee-facing agent use in Copilot Chat, Teams, and SharePoint is largely free (see part one for the exceptions). For heavy agent users a license can be cheaper than credits. For light users it’s the other way round. This is a buying decision, and it makes the biggest difference to your bill.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Turn on per-user limits from day one.&lt;/strong&gt; Cowork work has no natural end. Someone who finds it useful will use it more next week.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use approvals instead of raising everyone’s limit.&lt;/strong&gt; Each request for more credits shows you what people really need.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set one policy per Entra group.&lt;/strong&gt; Then you can compare groups and see which team uses far more than the others.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Get the billing method right the first time&lt;/strong&gt; , and check Auto-apply before Microsoft adds the next service.&lt;/p&gt;

&lt;h2&gt;
  
  
  Copilot Studio: the Power Platform admin center
&lt;/h2&gt;

&lt;p&gt;Part one covers the credit rates for each agent action. Here I only repeat what you need to control them.&lt;/p&gt;

&lt;h3&gt;
  
  
  When the meter starts
&lt;/h3&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/harnesses-overview" rel="noopener noreferrer"&gt;harnesses overview&lt;/a&gt; (updated October 1, 2026) says: “The harness you use affects the billing, features, and capabilities of what you build.”&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Harness&lt;/th&gt;
&lt;th&gt;What it’s for&lt;/th&gt;
&lt;th&gt;When charging starts&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Standard&lt;/td&gt;
&lt;td&gt;Agents with topics and agent flows&lt;/td&gt;
&lt;td&gt;When the agent is used, at the standard rates&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Chat&lt;/td&gt;
&lt;td&gt;Copilot Chat extended with your own knowledge&lt;/td&gt;
&lt;td&gt;Billed per use, or included in the Copilot license&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GitHub Copilot&lt;/td&gt;
&lt;td&gt;Multi-step agents that reason and work with documents&lt;/td&gt;
&lt;td&gt;With your first build action, before anyone publishes&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The GitHub Copilot harness “charges credits from the moment you start building”, according to the &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/billing-credit-overview" rel="noopener noreferrer"&gt;billing overview for that harness&lt;/a&gt; (updated September 28, 2026). Previewing, testing, and creating evaluations all use credits. Credits cover model tokens, tools (including knowledge and MCP servers), and the harness itself. Places people assume are free aren’t either: “Developer environments and trial environments move to usage-based billing September 1, 2026.”&lt;/p&gt;

&lt;p&gt;Four more rules from the &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;billing rates page&lt;/a&gt; (updated August 3, 2026) matter for control:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Reasoning models cost more.&lt;/strong&gt; You pay the feature rate plus the premium AI tools rate of 10 credits per 1,000 tokens.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agent flows are only free one way.&lt;/strong&gt; For licensed users, “the ‘No charge’ inclusion applies only to runs triggered via the ‘When an agent calls the flow’ trigger”. A flow started by a schedule or an event is billed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Computer use isn’t included.&lt;/strong&gt; “Computer-Using Agents (CUA) usage is not included in the Microsoft Copilot USL.”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Power Automate cloud flows are separate.&lt;/strong&gt; They “use Power Automate licensing, not Copilot Credits” and aren’t affected by Copilot Studio limits.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where you see the cost
&lt;/h3&gt;

&lt;p&gt;In the Power Platform admin center, go to &lt;strong&gt;Licensing &amp;gt; Products &amp;gt; Copilot Studio&lt;/strong&gt;. The &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/manage-copilot-studio-copilot-credits-capacity" rel="noopener noreferrer"&gt;capacity page&lt;/a&gt; (updated October 2, 2026) describes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;credits from the tenant pool that you assign to environments;&lt;/li&gt;
&lt;li&gt;reports you can download by environment, agent, or user, including “the count of billed versus nonbillable credits” (the non-billed part is what your licensed users get free);&lt;/li&gt;
&lt;li&gt;daily data for the current month and the last two full months, and monthly data for the past 12 months.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you pay as you go, a billing plan links environments to an Azure subscription and creates a Power Platform account resource there. It’s hidden in the Azure portal by default; choose “View hidden types” to find it.&lt;/p&gt;

&lt;p&gt;One limit matters for chargeback. For the GitHub Copilot harness, Microsoft &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/manage-usage-github-copilot-harness" rel="noopener noreferrer"&gt;says&lt;/a&gt;: “Discrete costs aren’t attributed to individual makers or end users.” You see costs per environment and per agent, not per person.&lt;/p&gt;

&lt;h3&gt;
  
  
  What stops spending
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Per-agent limits.&lt;/strong&gt; Each agent can have a monthly credit limit, with the status “Within limit”, “Nearing limit”, or “Over limit”. With the hard stop on, “The agent is automatically turned off once it hits the defined limit.” This is the setting to rely on when money matters. Azure budgets won’t do it: they “send notifications but don’t stop Copilot Studio consumption.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The 125% rule on prepaid capacity.&lt;/strong&gt; “Enforcement is triggered when a tenant reaches 125% of their prepaid capacity.” Custom agents are then switched off, and users see “This agent is currently unavailable. It has reached its usage limit.” Agent flows behave differently: once prepaid capacity is fully used, new flow runs are blocked while the agent keeps answering. So an agent can look fine while part of its work has stopped. An email goes to the tenant admin.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pay-as-you-go has no cutoff.&lt;/strong&gt; Extra use is billed to Azure: “With pay-as-you-go, enforcement doesn’t apply”. No outage, but no ceiling either. Choose which risk you’d rather have.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to keep costs down
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Look at how often agents ground in company data.&lt;/strong&gt; Grounding costs 10 credits, a classic answer 1. An agent that searches SharePoint or Exchange on every turn costs about ten times as much as a simple one. This is often the biggest number in a Copilot Studio estimate, and often the easiest to cut.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose the right harness.&lt;/strong&gt; The GitHub Copilot harness is right for real multi-step work, and it charges you to build as well as to run. Use the Standard harness where that isn’t needed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set a monthly limit with a hard stop on every production agent.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Keep environments contained.&lt;/strong&gt; Give each environment its own credits and clear the option “Draw from the available capacity in my tenant”. This doesn’t stop use through a pay-as-you-go plan linked to the same environment. With environment groups, you can enforce it for a whole group through a rule called “Cost controls - Draw from tenant credit pool”; the environment setting then becomes read-only and can’t be overridden by scripts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Move flows to the agent trigger where you can.&lt;/strong&gt; Not every scheduled flow has to be scheduled.&lt;/p&gt;

&lt;h2&gt;
  
  
  One credit pool, two admin centers, one Azure bill
&lt;/h2&gt;

&lt;p&gt;This is easy to miss because each side describes it in different words.&lt;/p&gt;

&lt;p&gt;Credits are pooled for the whole tenant. Credits you assign to environments in the Power Platform admin center come out of the same pool that Cowork and the Work IQ API use. The Microsoft 365 admin page says this “reduces the prepaid capacity available for Cowork and Work IQ API services”. What the Microsoft 365 admin center shows as available is what you bought minus what’s already been given to environments.&lt;/p&gt;

&lt;p&gt;So two teams take from one pool, usually without talking to each other. If your Power Platform admin hands out a lot of capacity, your Microsoft 365 admin sees available credits drop for no obvious reason. Put both people in the same monthly review.&lt;/p&gt;

&lt;p&gt;Azure adds a third view. According to the &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-compare-dashboard-views" rel="noopener noreferrer"&gt;page comparing the two views&lt;/a&gt; (updated September 25, 2026):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cowork, Work IQ, and Copilot Studio all show up on the Azure bill “under the Microsoft Copilot Studio service rather than separate services”.&lt;/li&gt;
&lt;li&gt;“Azure Cost Management doesn’t show consumption against Prepaid Capacity packs.”&lt;/li&gt;
&lt;li&gt;To tell services apart on the bill today, put them in separate Azure subscriptions or resource groups. Microsoft says to “use service tags as they become available”, with no date.&lt;/li&gt;
&lt;li&gt;Admin center totals and Azure totals won’t match. Microsoft: “Use the monthly billing record for reconciliation, not the usage dashboards.”&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Foundry agents: Azure
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What you pay for
&lt;/h3&gt;

&lt;p&gt;Foundry works the opposite way to Copilot Studio. A credit hides a whole workflow behind one number. Foundry charges every resource separately, which is harder to forecast but much easier to assign to a team.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://azure.microsoft.com/en-us/pricing/details/foundry-agent-service/" rel="noopener noreferrer"&gt;Foundry Agent Service pricing page&lt;/a&gt; says there is “no additional charge for creating or running Foundry-native agents using prompts and workflows”. You pay for what the agent uses.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;What the agent uses&lt;/th&gt;
&lt;th&gt;How it’s charged&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Models&lt;/td&gt;
&lt;td&gt;Tokens, input and output priced separately&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;File Search (knowledge)&lt;/td&gt;
&lt;td&gt;$0.11 per GB of vector storage per day, first GB free&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Code Interpreter&lt;/td&gt;
&lt;td&gt;$0.033 per session&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Web Search and Custom Search&lt;/td&gt;
&lt;td&gt;$14 per 1,000 requests&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hosted agents (Agent Framework, LangGraph)&lt;/td&gt;
&lt;td&gt;The container compute they run on, per hour&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fabric, SharePoint, Bing grounding, Foundry IQ, Logic Apps connectors&lt;/td&gt;
&lt;td&gt;Charged separately, on top of tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/concepts/manage-costs" rel="noopener noreferrer"&gt;cost planning page&lt;/a&gt; (updated August 27, 2026) adds three things that catch teams in the second month:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fine-tuning is charged three times, for training, hosting, and inference. A fine-tuned deployment costs money while it exists, even if nobody uses it.&lt;/li&gt;
&lt;li&gt;Failed calls aren’t automatically free: “HTTP status codes alone don’t determine whether usage is billed.”&lt;/li&gt;
&lt;li&gt;There’s no emergency brake. OpenAI offers hard spending limits; Azure OpenAI “doesn’t currently provide this functionality.”&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where you see the cost
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Azure Cost Management is the official record.&lt;/strong&gt; Azure OpenAI sits inside the wider Cognitive Services group, so filter by service tier. Meters are named &lt;code&gt;model-name-GUID&lt;/code&gt;. Partner and community models show up at resource group level, and some under “Global resources”, so look at the whole resource group, not only the Foundry resource.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Foundry portal shows estimates.&lt;/strong&gt; There’s an estimated cost per project and in the agent list. Use it for quick checks, and use Cost Management and the invoice for real numbers. The estimates leave out prompt agents, non-Foundry agents, and provisioned throughput.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anomaly alerts are slower than agents.&lt;/strong&gt; Azure compares each day with a forecast based on the last 60 days, and “Anomaly detection runs 36 hours after the end of the day (UTC)”. Alert rules work only per subscription, you get five per subscription, and each alert email is sent once. For normal workloads that’s fine. For an agent stuck in a loop, the money is gone before the alert arrives.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to keep costs down
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Match the deployment type to the work.&lt;/strong&gt; Standard pay-per-token for development and uneven traffic. Provisioned throughput for steady production that needs predictable speed, but you can’t pause it: “Billing stops only when the deployment is deleted.” Provisioned quota is shared across supported models in a region and deployment type. If you buy a reservation, create the deployments first and buy after. A reservation doesn’t guarantee capacity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Move bulk work to Batch.&lt;/strong&gt; Jobs that can wait up to 24 hours run at “50% less cost than global standard”. It’s the most overlooked discount for bulk summarizing and classifying.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use prompt caching, and check both sides.&lt;/strong&gt; Cached input is cheaper on Standard deployments and up to 100% cheaper on provisioned ones. On GPT-5.6 models and newer, writing to the cache can cost extra. The prompt needs at least 1,024 tokens with an identical start, and caches aren’t shared between Azure subscriptions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Treat the model router mode as a cost setting.&lt;/strong&gt; Balanced picks cheaper models that stay within about 1 to 2% of the best quality. Cost mode allows about 5 to 6%. Quality mode ignores cost. The usable context window is limited by the smallest model behind the router.&lt;/p&gt;

&lt;h2&gt;
  
  
  What changes in October
&lt;/h2&gt;

&lt;p&gt;On September 25 Microsoft &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;announced&lt;/a&gt; that cost management will cover more services:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Cost management in Agent 365 is expanding beyond Cowork and Work IQ APIs to include Code and Copilot Managed Runtime, with support for agents built in Microsoft Copilot Studio planned for October.&lt;/p&gt;

&lt;p&gt;&lt;cite&gt;Official Microsoft Blog, September 25, 2026&lt;/cite&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If it arrives as announced, Copilot Studio costs will show up next to Cowork in the Microsoft 365 admin center. Then you would see most of the credit pool in one place for the first time.&lt;/p&gt;

&lt;p&gt;A note on the name. The blog calls it “cost management in Agent 365”. Agent 365 has been generally available since May 1, 2026, at $15 per user (€13.00 on Microsoft’s German page) or included in E7, and it’s managed in the admin center under &lt;strong&gt;Agents&lt;/strong&gt;. But on Microsoft’s documentation pages, cost management sits under &lt;strong&gt;Copilot &amp;gt; Cost management&lt;/strong&gt; , and the &lt;a href="https://learn.microsoft.com/en-us/office365/servicedescriptions/microsoft-agent-365/microsoft-agent-365" rel="noopener noreferrer"&gt;Agent 365 service description&lt;/a&gt; (updated October 1, 2026) still lists no cost features. I read “Agent 365” here as the name of the direction, and the Copilot area of the admin center as the place where you actually find the settings.&lt;/p&gt;

&lt;p&gt;The same post announced more controls. Here is where each one stands as of October 6, 2026:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Announced&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Code and Copilot Managed Runtime in cost management&lt;/td&gt;
&lt;td&gt;Not yet on Microsoft’s list of covered services in the admin center. The October 2026 &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide&lt;/a&gt; now describes how both use credits. Managed Runtime is in paid public preview&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Studio agents&lt;/td&gt;
&lt;td&gt;“Planned for October”; still not documented on October 6, 2026&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Managing spending policies through an API&lt;/td&gt;
&lt;td&gt;Announced; no API documentation yet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sending credit requests to your own approval workflow&lt;/td&gt;
&lt;td&gt;Already available and documented&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Choosing model families per user group, which also limits what Auto picks&lt;/td&gt;
&lt;td&gt;Partly there: “model profiles” in spending policies, for Cowork only&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Users see usage, remaining credits, and history in Copilot&lt;/td&gt;
&lt;td&gt;Remaining credits yes; history not yet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Insights on which Cowork tasks pay off&lt;/td&gt;
&lt;td&gt;Available in the &lt;a href="https://learn.microsoft.com/en-us/viva/insights/org-team-insights/ai-cost-dashboard" rel="noopener noreferrer"&gt;Insights consumption dashboard&lt;/a&gt;, for Cowork and the Work IQ API only&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;What I couldn’t find anywhere yet:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;whether “agents built in Copilot Studio” means all three harnesses or only the GitHub Copilot harness;&lt;/li&gt;
&lt;li&gt;whether per-agent limits, environment allocation, and the 125% rule stay in the Power Platform admin center, move over, or are replaced by spending policies;&lt;/li&gt;
&lt;li&gt;how user- and group-based policies will apply to autonomous agents and to people without a license, since Copilot Studio is managed per environment and agent today;&lt;/li&gt;
&lt;li&gt;whether Auto-apply will put Copilot Studio agents under your existing Cowork policies automatically;&lt;/li&gt;
&lt;li&gt;how capacity packs, the pre-purchase plans, and existing Power Platform billing plans carry over;&lt;/li&gt;
&lt;li&gt;whether it starts as a preview, and the roadmap or Message Center ID.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before Copilot Studio agents arrive, check whether Auto-apply is still on for your broad policies. If it is and Copilot Studio agents join, they may land under a limit that was sized for Cowork.&lt;/p&gt;

&lt;p&gt;Microsoft’s own pages also disagree in places:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the blog says “Agent 365”, the documentation says Copilot &amp;gt; Cost management;&lt;/li&gt;
&lt;li&gt;the blog says Code and Managed Runtime are covered, while the documentation page updated the same day doesn’t list them;&lt;/li&gt;
&lt;li&gt;the &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide&lt;/a&gt; (October 2026) says credit usage “is centrally managed through the Microsoft 365 admin center”, while the documentation still sends Copilot Studio to the Power Platform admin center;&lt;/li&gt;
&lt;li&gt;the blog says users can see their usage history, while the /cost page says it shows none.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The documentation seems to lag the announcements. Check your own tenant.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to charge costs back
&lt;/h2&gt;

&lt;p&gt;Each platform gives you a different handle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Copilot and Cowork: the spending policy.&lt;/strong&gt; One policy per Entra group is your department unit, with per-user limits inside it. These are the only places with real per-user cost data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Copilot Studio: the environment and the billing plan.&lt;/strong&gt; The Power Platform account resource created by a pay-as-you-go billing plan can be tagged like any Azure resource. That’s how Copilot Studio costs get into your normal Azure cost model. Deleting the billing policy doesn’t delete that resource. Since there’s no per-user view, the way you lay out environments is your chargeback model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Foundry: the project tag.&lt;/strong&gt; The best handle of the four, and still in preview. “Every Foundry project is automatically tagged with a project tag on its underlying usage.” You don’t tag anything yourself; filter Cost Analysis by &lt;code&gt;project&lt;/code&gt;. The preview covers models sold by Azure, including Azure OpenAI, but not models bought through Azure Marketplace.&lt;/p&gt;

&lt;p&gt;And Azure itself: because Cowork, Work IQ, and Copilot Studio all appear as “Microsoft Copilot Studio” on the bill, use separate subscriptions or resource groups if you need them apart. For pre-purchase plans, use the amortized cost view to spread the cost over the year.&lt;/p&gt;

&lt;p&gt;Here’s a pattern that works. This part is my advice, not Microsoft’s: one environment and one billing plan per business unit in Copilot Studio, with the account resource tagged to that unit; one spending policy per Entra group for Copilot and Cowork, with per-user limits; one Foundry project per use case, in a resource group that belongs to the business unit. Then one place where you bring it all together.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bringing it all into one view
&lt;/h2&gt;

&lt;p&gt;Can anything connect the four? Partly, and you have to build it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Microsoft’s FinOps guidance
&lt;/h3&gt;

&lt;p&gt;Microsoft’s FinOps guidance on Learn follows three phases (Inform, Optimize, Operate) and is “largely based on the FinOps Framework with a few enhancements”. It’s good guidance, but it doesn’t cover agents or Copilot Credits. The &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/framework/quantify/unit-economics" rel="noopener noreferrer"&gt;unit economics page&lt;/a&gt; comes closest to “what does one agent session cost”, and it points you to your own telemetry. Nobody hands you a cost-per-conversation number.&lt;/p&gt;

&lt;h3&gt;
  
  
  The FinOps toolkit and FinOps hubs
&lt;/h3&gt;

&lt;p&gt;The &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/finops-toolkit-overview" rel="noopener noreferrer"&gt;FinOps toolkit&lt;/a&gt; is open source and released monthly. It includes FinOps hubs, Power BI reports, workbooks (including cost optimization and governance), the Azure Optimization Engine, PowerShell and Bicep modules, and open data. If you only need better Azure reporting for Foundry, the workbooks and Power BI reports may be enough.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/finops-hubs-overview" rel="noopener noreferrer"&gt;FinOps hubs&lt;/a&gt; are Microsoft’s “virtual command centers for leaders throughout the organization to report on, monitor, and optimize cost”. Deploying one gives you a Data Lake Storage account, Data Factory for loading, Key Vault, and optionally Azure Data Explorer or Microsoft Fabric for analysis. The benefits that matter for agents: reporting across separate tenants, discount savings for EA and MCA accounts (where Foundry reservations show up), fast year-over-year queries, the FOCUS cost format, and room to add your own business data.&lt;/p&gt;

&lt;p&gt;Microsoft publishes the cost: from $120 a month plus about $10 a month per $1 million of spend monitored. Most of that is the analysis engine: about $120 for a single-node Data Explorer cluster, or $300 for F2 Fabric capacity. Without either, it’s about $5 per $1 million monitored. For a large agent estate that’s small. For a small one, start with the workbooks and reports.&lt;/p&gt;

&lt;h3&gt;
  
  
  What a hub doesn’t see on its own
&lt;/h3&gt;

&lt;p&gt;A hub loads Cost Management exports, so it sees what Azure bills. That covers all of Foundry, and Copilot Studio if you pay as you go. It doesn’t cover capacity packs, which Azure doesn’t show, or the per-user and per-policy detail from the Microsoft 365 admin center. So the realistic target is three feeds, not one screen:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feed&lt;/th&gt;
&lt;th&gt;What it covers&lt;/th&gt;
&lt;th&gt;How it gets into the hub&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Cost Management exports (FOCUS)&lt;/td&gt;
&lt;td&gt;Foundry, plus Copilot Studio and Cowork billed through Azure&lt;/td&gt;
&lt;td&gt;Built in&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Power Platform consumption reports&lt;/td&gt;
&lt;td&gt;Copilot Studio per environment and agent, including capacity packs&lt;/td&gt;
&lt;td&gt;Your own export and Data Factory pipeline&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 Cost management views&lt;/td&gt;
&lt;td&gt;Copilot and Cowork per policy, group, and user&lt;/td&gt;
&lt;td&gt;Your own export and pipeline&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Microsoft expects you to extend a hub this way. One rule: don’t change the built-in pipelines or the data in the &lt;code&gt;msexports&lt;/code&gt; container, and give your own pipelines a clear prefix.&lt;/p&gt;

&lt;p&gt;Sort out permissions early, because they cross teams. Exports need Cost Management Contributor (or the matching EA or MCA billing roles). Deploying the template needs Owner, or Contributor plus Role-Based Access Control Administrator.&lt;/p&gt;

&lt;p&gt;Microsoft also shows how to &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/configure-ai" rel="noopener noreferrer"&gt;put an agent on top of a hub&lt;/a&gt;, through a Kusto Query MCP server published to Teams or Microsoft 365 Copilot. It’s handy for quick questions like which agent grew most this month. It has the same gaps as the hub, and it’s an agent itself, so give it a spending limit too.&lt;/p&gt;

&lt;p&gt;Cost Management exports usually run every 24 hours. Anything built on top inherits that delay. No hub gives you a live agent bill.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why bother
&lt;/h3&gt;

&lt;p&gt;For “what did this agent cost last month”, the admin center screens are enough. To run a portfolio, one data store helps in a few ways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One total that finance accepts&lt;/strong&gt; , instead of three reports pasted into a spreadsheet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chargeback that survives a reorganization&lt;/strong&gt; , because costs follow environments, policies, projects, and tags, not someone’s spreadsheet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reporting across tenants&lt;/strong&gt; , if you have an acquisition or a regional tenant.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evidence for commitments&lt;/strong&gt; like provisioned throughput, reservations, and pre-purchase plans.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A place for business numbers&lt;/strong&gt; , so you can get from spend to cost per result.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Where to start
&lt;/h2&gt;

&lt;p&gt;This order is mine, not Microsoft’s. It starts with what pays off fastest and leaves the building work for later.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Turn on the controls you already have.&lt;/strong&gt; Per-agent monthly limits with a hard stop in the Power Platform admin center. Per-user limits and alerts in the Microsoft 365 admin center, with Auto-apply off until you’ve decided. Budgets and anomaly alerts on the Azure subscriptions that carry Foundry, knowing they only warn.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Give every agent and environment an owner.&lt;/strong&gt; A cost nobody owns is a cost nobody reduces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Set up the structure before volume arrives.&lt;/strong&gt; One environment and billing plan per business unit, one spending policy per Entra group, one Foundry project per use case, and the Power Platform account resource tagged to a cost center.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agree how the pool is shared.&lt;/strong&gt; Decide how much capacity goes to Power Platform environments and how much stays for Cowork, and review it monthly with both admins.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Turn on Azure reporting.&lt;/strong&gt; Create a FOCUS export, then use the toolkit’s Power BI reports and workbooks. For many companies, that’s enough.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Build a hub when several teams need the same data&lt;/strong&gt; , then add the Power Platform and Microsoft 365 feeds.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Add business numbers, then an agent on top.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Steps one to four cost time, not money. Steps five to seven are engineering with a real bill. Teams often jump to step six because it’s the fun part, and find out months later that they have great reporting for agents that still have no limits and no owners.&lt;/p&gt;

&lt;p&gt;In October, check Microsoft’s list of services covered by usage-based billing. When Copilot Studio shows up there, this post gets an update.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Official Microsoft Blog, &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;Introducing the new Copilot with Home, Code and Autopilot&lt;/a&gt;, September 25, 2026: the cost management expansion, Copilot Studio planned for October, the other announced controls&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-overview-copilot-credits" rel="noopener noreferrer"&gt;Usage-Based Billing and Cost Management for Copilot Credits&lt;/a&gt;, last updated September 25, 2026: where cost management is, which services it covers, Auto-apply on by default&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-manage-copilot-credits" rel="noopener noreferrer"&gt;Managing AI experiences enabled by usage-based billing&lt;/a&gt;, last updated October 2, 2026: spending policy rules, which policy wins, model profiles, the shared pool&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-setup" rel="noopener noreferrer"&gt;Set up usage-based billing for Copilot Credits&lt;/a&gt;, last updated October 2, 2026: roles, billing method can be changed, order of credit use, Auto-apply advice, tenant limit not inherited&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-monitor-spending" rel="noopener noreferrer"&gt;Monitor Copilot Credit spending&lt;/a&gt;: refresh times, credit requests, custom request policies&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-compare-dashboard-views" rel="noopener noreferrer"&gt;View Copilot Credit consumption in the Microsoft 365 admin center and on your Azure bill&lt;/a&gt;, last updated September 25, 2026: one Azure service name, capacity packs missing from Azure, reconciliation, service tags&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/user-subscription-license-usage-based-billing" rel="noopener noreferrer"&gt;Understanding the user subscription license (USL) and usage-based billing (UBB)&lt;/a&gt;, last updated September 25, 2026: billing policy required, more user views coming&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-copilot-credits-cost" rel="noopener noreferrer"&gt;Check your credit usage for Cowork tasks with /cost&lt;/a&gt;, last updated August 13, 2026: what users see, no usage history&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/cowork-admin-governance" rel="noopener noreferrer"&gt;Manage Copilot Cowork for your organization&lt;/a&gt;, last updated September 14, 2026: spending policy as access control&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/activity-reports/microsoft-365-copilot-agents-new" rel="noopener noreferrer"&gt;Microsoft Copilot Agents usage report (Preview)&lt;/a&gt;, last updated August 18, 2026: what the adoption report shows and leaves out&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/enterprise" rel="noopener noreferrer"&gt;Microsoft Copilot Plans and Pricing: Enterprise&lt;/a&gt;, read September 29, 2026: employee-facing and API footnotes, Azure subscription for agents&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/harnesses-overview" rel="noopener noreferrer"&gt;Harnesses in Copilot Studio&lt;/a&gt;, last updated October 1, 2026: the three harnesses and how they’re billed&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/billing-credit-overview" rel="noopener noreferrer"&gt;Overview of usage-based billing for the GitHub Copilot harness&lt;/a&gt;, last updated September 28, 2026: charging from the first build action, what credits cover&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/manage-usage-github-copilot-harness" rel="noopener noreferrer"&gt;Manage costs for agents powered by the GitHub Copilot harness&lt;/a&gt;, last updated August 28, 2026: no per-user attribution, budgets don’t stop use, developer and trial environments, the environment group rule&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;Billing rates and management: Copilot Studio&lt;/a&gt;, last updated August 3, 2026: reasoning surcharge, flow trigger rule, computer use, Power Automate flows, the 125% rule&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/manage-copilot-studio-copilot-credits-capacity" rel="noopener noreferrer"&gt;Manage Copilot Credits and capacity for Copilot Studio&lt;/a&gt;, last updated October 2, 2026: reports, data retention, per-agent limits and hard stop, environment allocation&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/pay-as-you-go-set-up" rel="noopener noreferrer"&gt;Set up a pay-as-you-go plan&lt;/a&gt;, last updated December 16, 2025: billing plans, the hidden Power Platform account resource, tagging it for cost allocation&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/office365/servicedescriptions/microsoft-agent-365/microsoft-agent-365" rel="noopener noreferrer"&gt;Microsoft Agent 365: Service Description&lt;/a&gt;, last updated October 1, 2026: no cost features listed&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/admin/manage/agent-365-overview" rel="noopener noreferrer"&gt;Agent management in Microsoft 365 admin center&lt;/a&gt;, last updated August 20, 2026: the Agents area of the admin center&lt;/li&gt;
&lt;li&gt;Microsoft Security Blog, &lt;a href="https://www.microsoft.com/en-us/security/blog/2026/05/01/microsoft-agent-365-now-generally-available-expands-capabilities-and-integrations/" rel="noopener noreferrer"&gt;Microsoft Agent 365, now generally available&lt;/a&gt;, May 1, 2026: general availability and price&lt;/li&gt;
&lt;li&gt;Microsoft Licensing, &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide: October 2026&lt;/a&gt;: credits pooled per tenant, central management statement, Code and Copilot Managed Runtime billed in credits&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/viva/insights/org-team-insights/ai-cost-dashboard" rel="noopener noreferrer"&gt;How to use the Consumption Dashboard in Insights&lt;/a&gt;, last updated September 8, 2026: Cowork and Work IQ consumption in Insights&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/build-where-you-want-run-with-confidence-now-microsoft-hosts-and-manages-the-code-created-by-copilot/" rel="noopener noreferrer"&gt;Copilot Managed Runtime public preview&lt;/a&gt;, September 25, 2026: Managed Runtime in public preview&lt;/li&gt;
&lt;li&gt;Microsoft Azure, &lt;a href="https://azure.microsoft.com/en-us/pricing/details/foundry-agent-service/" rel="noopener noreferrer"&gt;Foundry Agent Service pricing&lt;/a&gt;, read September 29, 2026: no charge for Foundry-native agents, tool prices, hosted agents&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/concepts/manage-costs" rel="noopener noreferrer"&gt;Plan and manage costs for Microsoft Foundry&lt;/a&gt;, last updated August 27, 2026: fine-tuning, failed calls, no hard limits, meter names, portal estimates, project tag chargeback&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/provisioned-throughput-billing" rel="noopener noreferrer"&gt;Provisioned throughput billing and cost management&lt;/a&gt;, last updated May 26, 2026: no pause, shared quota, reservation order&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/batch" rel="noopener noreferrer"&gt;Getting started with Azure OpenAI batch deployments&lt;/a&gt;, last updated June 5, 2026: 50% less than global standard&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/prompt-caching" rel="noopener noreferrer"&gt;Prompt caching with Azure OpenAI&lt;/a&gt;, last updated August 11, 2026: read discounts, write charges, 1,024-token rule&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/model-router" rel="noopener noreferrer"&gt;Model router for Microsoft Foundry&lt;/a&gt;, last updated September 1, 2026: routing modes and the context window limit&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/cost-management-billing/understand/analyze-unexpected-charges" rel="noopener noreferrer"&gt;Identify anomalies and unexpected changes in cost&lt;/a&gt;, last updated June 26, 2025: 36-hour delay, subscription scope, five rules, one-time email&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/framework/finops-framework" rel="noopener noreferrer"&gt;FinOps Framework overview&lt;/a&gt;, last updated May 8, 2025: the three phases&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/framework/quantify/unit-economics" rel="noopener noreferrer"&gt;Unit economics&lt;/a&gt;, last updated April 2, 2025: measuring cost per unit yourself&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/finops-toolkit-overview" rel="noopener noreferrer"&gt;FinOps toolkit overview&lt;/a&gt;, last updated February 11, 2026: toolkit parts and monthly releases&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/finops-hubs-overview" rel="noopener noreferrer"&gt;FinOps hubs overview&lt;/a&gt;, last updated April 1, 2026: components, benefits, cost estimate, permissions, &lt;code&gt;msexports&lt;/code&gt; rule&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/configure-ai" rel="noopener noreferrer"&gt;Configure AI agents for FinOps hubs&lt;/a&gt;, last updated May 18, 2026: agent on top of a hub, 24-hour exports&lt;/li&gt;
&lt;li&gt;Previous article in this series: &lt;a href="https://holgerimbery.blog/copilot-pricing-licenses-and-credits" rel="noopener noreferrer"&gt;Understanding Microsoft Copilot Licensing - Rev1&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Four open conflicts as of publication:&lt;/strong&gt; where cost management lives (“Agent 365” or Copilot &amp;gt; Cost management), whether Code and Managed Runtime are covered yet, whether Copilot Studio is managed in the Microsoft 365 or Power Platform admin center, and whether users can see their usage history. Check each one in your own tenant.&lt;/p&gt;

&lt;h2&gt;
  
  
  Changelog
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Date&lt;/th&gt;
&lt;th&gt;Change&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;October 10, 2026&lt;/td&gt;
&lt;td&gt;Rev1. First published as part two of the living series.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>agent365</category>
      <category>agentfinops</category>
      <category>chargeback</category>
      <category>copilotcowork</category>
    </item>
    <item>
      <title>Understanding Microsoft Copilot Licensing - Rev1</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/understanding-microsoft-copilot-licensing-rev1-529h</link>
      <guid>https://dev.to/holgerimbery/understanding-microsoft-copilot-licensing-rev1-529h</guid>
      <description>&lt;p&gt;This is a living article (only on my own blog; see canonical URL!). I check it against Microsoft’s pricing pages, licensing guides, and Learn documentation at the start of every month and update it when something changes. The changelog at the end lists every change.&lt;/p&gt;

&lt;h2&gt;
  
  
  Since September 25, Copilot has two price tags
&lt;/h2&gt;

&lt;p&gt;On September 25, 2026, Jared Spataro described the new split on the &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;Official Microsoft Blog&lt;/a&gt;. The per-user license (Microsoft calls it the USL, user subscription license) covers everyday AI. Usage-based billing (UBB) covers the heavy work. His wording: “Cowork, Code, and Autopilot … and frontier models like Astra and Fable all run on UBB.”&lt;/p&gt;

&lt;p&gt;For the license, the post promises “the best possible quality at a fixed cost”: Copilot in Chat and in Word, Excel, PowerPoint, Outlook, and Teams, plus model selection. Auto, the default mode that picks a model for each request, “is at the heart of the USL.”&lt;/p&gt;

&lt;p&gt;Microsoft published a Learn page on the same day, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/user-subscription-license-usage-based-billing" rel="noopener noreferrer"&gt;Understanding the user subscription license (USL) and usage-based billing (UBB)&lt;/a&gt;. It calls the two kinds of work “everyday AI” and “advanced AI”. Everyday AI is summarizing meetings, drafting documents, and analysis. Advanced AI is “complex, long-running agentic work you hand off”: Cowork, Code, Autopilot, the newest frontier models, and some new agentic features in SharePoint.&lt;/p&gt;

&lt;p&gt;The page also answers three practical questions.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Do credits replace the license?&lt;/strong&gt; No. “UBB experiences consume Copilot Credits and require a USL for access.”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Can users run up a bill on their own?&lt;/strong&gt; Not at first. “Admins must set up a billing policy before a user can use AI experiences that require usage-based billing.”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Who should pay?&lt;/strong&gt; Microsoft suggests UBB “may be better funded by business units”. So IT buys the licenses, and the teams that want agentic work pay for the credits.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Put the base plan underneath, because you can’t buy Copilot without one, and you get three layers.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;What it covers&lt;/th&gt;
&lt;th&gt;How you pay&lt;/th&gt;
&lt;th&gt;Who usually pays&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 base plan&lt;/td&gt;
&lt;td&gt;The prerequisite&lt;/td&gt;
&lt;td&gt;Fixed, per user&lt;/td&gt;
&lt;td&gt;IT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot license (USL)&lt;/td&gt;
&lt;td&gt;Chat, Copilot in the Office apps, Auto, model choice&lt;/td&gt;
&lt;td&gt;Fixed, per user&lt;/td&gt;
&lt;td&gt;IT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Usage-based billing (UBB)&lt;/td&gt;
&lt;td&gt;Cowork, Code, Autopilot, frontier models, Work IQ APIs, many agents&lt;/td&gt;
&lt;td&gt;Copilot Credits, per use&lt;/td&gt;
&lt;td&gt;Business units, if you follow Microsoft&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The US enterprise page is clear about the first row: “A qualifying Microsoft 365 subscription is required to purchase Copilot.”&lt;/p&gt;

&lt;p&gt;In August 2026, Microsoft renamed “Microsoft 365 Copilot” to “Microsoft Copilot”. Learn: “Microsoft 365 Copilot is now named Microsoft Copilot”. Most pricing pages still use the old name, so I use it wherever I quote it.&lt;/p&gt;

&lt;h2&gt;
  
  
  How we got here
&lt;/h2&gt;

&lt;p&gt;The September 25 post named something that had been happening for a year. Here are the main steps.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Date&lt;/th&gt;
&lt;th&gt;What changed&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;September 1, 2025&lt;/td&gt;
&lt;td&gt;“Messages” in Copilot Studio renamed to Copilot Credits, same price&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;October 27, 2025&lt;/td&gt;
&lt;td&gt;Copilot Credit Pre-Purchase Plan introduced&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;December 2, 2025&lt;/td&gt;
&lt;td&gt;Copilot Business for small companies announced at $21&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;March 9, 2026&lt;/td&gt;
&lt;td&gt;Microsoft 365 E7 announced (available May 1 at $99); Cowork in research preview&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;June 16, 2026&lt;/td&gt;
&lt;td&gt;Cowork generally available, billed in credits&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;July 1, 2026&lt;/td&gt;
&lt;td&gt;Base Microsoft 365 plans more expensive; Copilot price unchanged&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;September 25, 2026&lt;/td&gt;
&lt;td&gt;License and usage-based billing split named; Code and Autopilot go on credits&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That year, the $30 license price didn’t move. Almost every new feature that needs a lot of computing went onto credits instead.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the Copilot license costs
&lt;/h2&gt;

&lt;p&gt;These are Microsoft’s list prices as of October 2, 2026. Dollar prices are from the US pages. Euro prices are from the German pages and exclude VAT. Other countries and buying channels (EA or CSP) may have different numbers.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Plan&lt;/th&gt;
&lt;th&gt;USD per user/month&lt;/th&gt;
&lt;th&gt;EUR per user/month&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 Copilot&lt;/td&gt;
&lt;td&gt;$30.00&lt;/td&gt;
&lt;td&gt;€26.00&lt;/td&gt;
&lt;td&gt;Paid yearly (monthly billing: $31.50; no euro price published)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 Copilot Business&lt;/td&gt;
&lt;td&gt;$21.00&lt;/td&gt;
&lt;td&gt;€18.20&lt;/td&gt;
&lt;td&gt;Up to 300 users&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Business, current discount&lt;/td&gt;
&lt;td&gt;$18.00&lt;/td&gt;
&lt;td&gt;€15.60&lt;/td&gt;
&lt;td&gt;July 1 – December 31, 2026&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Standard + Copilot Business&lt;/td&gt;
&lt;td&gt;$23.50&lt;/td&gt;
&lt;td&gt;€20.36&lt;/td&gt;
&lt;td&gt;Bundle, paid yearly&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Premium + Copilot Business&lt;/td&gt;
&lt;td&gt;$32.00&lt;/td&gt;
&lt;td&gt;€27.73&lt;/td&gt;
&lt;td&gt;Bundle, paid yearly&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 E7 (Copilot included)&lt;/td&gt;
&lt;td&gt;$99.00&lt;/td&gt;
&lt;td&gt;€91.92&lt;/td&gt;
&lt;td&gt;Paid yearly&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The &lt;a href="https://www.microsoft.com/en-us/copilot/solutions/enterprise" rel="noopener noreferrer"&gt;US enterprise page&lt;/a&gt; shows “$30.00 user/month, paid yearly” and “Or $31.50 paid monthly (Annual commitment)”. The &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/enterprise" rel="noopener noreferrer"&gt;German enterprise page&lt;/a&gt; shows €26.00 per user per month, billed annually. It also offers monthly payments, but doesn’t show a monthly euro price.&lt;/p&gt;

&lt;p&gt;Which base plans qualify is listed in &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/microsoft-365-copilot-licensing" rel="noopener noreferrer"&gt;License options for Microsoft Copilot&lt;/a&gt; (updated September 17, 2026). For the enterprise add-on that’s E7 (which already includes Copilot), E5, E3, F1, F3, the Business plans, Apps for Enterprise and for Business, Office 365 E5, E3, E1, and F3, the Teams plans, and standalone Exchange, SharePoint, OneDrive, Planner and Project, Visio, and Clipchamp plans.&lt;/p&gt;

&lt;p&gt;What the license adds over free Chat is set out in the &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/enterprise" rel="noopener noreferrer"&gt;enterprise pricing matrix&lt;/a&gt;: priority model access, Work IQ, and semantic indexing. Voice shows the difference well: “10 mins/day for Copilot Chat users; 60 mins/day for Microsoft 365 Copilot users.”&lt;/p&gt;

&lt;h3&gt;
  
  
  Copilot Business
&lt;/h3&gt;

&lt;p&gt;Copilot Business is the license for companies with up to 300 users. Microsoft launched it in December 2025. The &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2025/12/02/microsoft-365-copilot-business-the-future-of-work-for-small-businesses/" rel="noopener noreferrer"&gt;launch post&lt;/a&gt; said: “For just USD 21 per user per month, Copilot Business brings…”. It also offered bundle prices “for a limited time only (until June 30, 2026)”.&lt;/p&gt;

&lt;p&gt;A new discount now runs on the &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/business" rel="noopener noreferrer"&gt;business pricing page&lt;/a&gt;: “This discount offer is available between July 1, 2026, and December 31, 2026.” The &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/pricing" rel="noopener noreferrer"&gt;German page&lt;/a&gt; gives the same dates, with Copilot Business at €18.20, discounted to €15.60.&lt;/p&gt;

&lt;p&gt;Read the small print before you plan with the lower number. The discount is only for “existing Microsoft 365 customers with an eligible Business plan”, and “promotional pricing applies to the first year only”. If you buy at €15.60 today, you pay €18.20 from the second year. Eligible base plans, according to Learn, are Business Premium, Business Standard, Business Basic, Apps for Business, and Teams Essentials.&lt;/p&gt;

&lt;p&gt;Copilot Business doesn’t include any credits either. The pricing page also lists Cowork as “Metered” for Business customers.&lt;/p&gt;

&lt;h3&gt;
  
  
  Microsoft 365 E7
&lt;/h3&gt;

&lt;p&gt;Judson Althoff announced E7 on March 9, 2026, on the &lt;a href="https://blogs.microsoft.com/blog/2026/03/09/introducing-the-first-frontier-suite-built-on-intelligence-trust/" rel="noopener noreferrer"&gt;Official Microsoft Blog&lt;/a&gt;: “Microsoft 365 E7 unifies Microsoft 365 E5, Microsoft 365 Copilot and Agent 365”. It became available “on May 1 for $99 per user”. Agent 365 is also sold on its own, “on May 1 for $15 per user”. E7 is “available with and without Teams.”&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://www.microsoft.com/en-us/microsoft-365/enterprise/e7" rel="noopener noreferrer"&gt;E7 product page&lt;/a&gt; shows $99.00 per user per month, with E5 next to it at $60.00. The &lt;a href="https://www.microsoft.com/de-de/microsoft-365/enterprise/e7" rel="noopener noreferrer"&gt;German E7 page&lt;/a&gt; shows €91.92, with E5 at €58.13. The &lt;a href="https://www.microsoft.com/de-de/microsoft-365/enterprise/microsoft365-plans-and-pricing" rel="noopener noreferrer"&gt;German enterprise plans page&lt;/a&gt; lists Agent 365 on its own at €13.00 per user per month. The July price change left E7 alone: “Microsoft 365 E7 pricing is not changing as part of this update.”&lt;/p&gt;

&lt;p&gt;E7 gives you the license, not a credit budget. Cowork, Code, and every other credit-based feature cost E7 users the same as they do for everyone else.&lt;/p&gt;

&lt;h3&gt;
  
  
  The base plans went up on July 1, 2026
&lt;/h3&gt;

&lt;p&gt;Microsoft announced this in December 2025 in &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2025/12/04/advancing-microsoft-365-new-capabilities-and-pricing-update/" rel="noopener noreferrer"&gt;Advancing Microsoft 365: New capabilities and pricing update&lt;/a&gt;, and published the full tables in February 2026 in &lt;a href="https://www.microsoft.com/en-us/licensing/news/2026-M365-Packaging-Pricing-Updates" rel="noopener noreferrer"&gt;Microsoft 365 Pricing and Packaging Updates&lt;/a&gt;. The plans most Copilot customers sit on changed like this (list prices with Teams, per user per month, paid yearly). Microsoft published the before-and-after prices in dollars only. For Germany, I can only show today’s price.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Plan&lt;/th&gt;
&lt;th&gt;US before&lt;/th&gt;
&lt;th&gt;US from July 1, 2026&lt;/th&gt;
&lt;th&gt;Germany today&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 E3&lt;/td&gt;
&lt;td&gt;$36.00&lt;/td&gt;
&lt;td&gt;$39.00&lt;/td&gt;
&lt;td&gt;€37.78&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 E5&lt;/td&gt;
&lt;td&gt;$57.00&lt;/td&gt;
&lt;td&gt;$60.00&lt;/td&gt;
&lt;td&gt;€58.13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Basic&lt;/td&gt;
&lt;td&gt;$6.00&lt;/td&gt;
&lt;td&gt;$7.00&lt;/td&gt;
&lt;td&gt;€6.07&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Standard&lt;/td&gt;
&lt;td&gt;$12.50&lt;/td&gt;
&lt;td&gt;$14.00&lt;/td&gt;
&lt;td&gt;€12.13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Premium&lt;/td&gt;
&lt;td&gt;$22.00&lt;/td&gt;
&lt;td&gt;$22.00&lt;/td&gt;
&lt;td&gt;€19.06&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The same page lists Office 365, frontline, and Apps plans. Copilot was left out on purpose: the &lt;a href="https://www.microsoft.com/en-us/licensing/news/2026-M365-Packaging-Pricing-Updates-FAQ" rel="noopener noreferrer"&gt;public FAQ&lt;/a&gt; says the change “does not apply to standalone Microsoft Teams or Copilot SKUs.” Existing customers keep their price until renewal. Part of the reasoning is new Copilot Chat features in the base plans, which the December post describes as “inbox and calendar awareness and access to Word, Excel, and PowerPoint agents”.&lt;/p&gt;

&lt;h2&gt;
  
  
  What people get without a license
&lt;/h2&gt;

&lt;p&gt;Every eligible Microsoft 365 user has Copilot Chat. &lt;a href="https://learn.microsoft.com/en-us/copilot/manage" rel="noopener noreferrer"&gt;Manage Microsoft Copilot Chat&lt;/a&gt; (updated September 24, 2026) says it is “available at no extra cost for eligible users”.&lt;/p&gt;

&lt;p&gt;It isn’t the same as having a license, and users can see which one they have. The &lt;a href="https://learn.microsoft.com/en-us/copilot/overview" rel="noopener noreferrer"&gt;Copilot Chat overview&lt;/a&gt; and the support article &lt;a href="https://support.microsoft.com/en-us/microsoft-365-copilot/what-copilot-license-do-i-have" rel="noopener noreferrer"&gt;What Copilot license do I have&lt;/a&gt; describe three labels:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Label shown to the user&lt;/th&gt;
&lt;th&gt;What they get&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Chat (Basic)&lt;/td&gt;
&lt;td&gt;Chat, but no Copilot in Word, Excel, PowerPoint, and OneNote&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft 365 Copilot (Basic)&lt;/td&gt;
&lt;td&gt;Standard access to Copilot in those apps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Premium / Pro&lt;/td&gt;
&lt;td&gt;A licensed Copilot user&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Learn adds that the in-app experience “might vary depending on your organization’s licensing and tenant configuration”.&lt;/p&gt;

&lt;p&gt;Unlicensed users can still run up costs through agents. The E7 page footnote says: “An Azure subscription is required to use agents and is priced on a metered basis.” The rate on &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/pay-as-you-go/meters" rel="noopener noreferrer"&gt;Meters for Microsoft Copilot pay-as-you-go services&lt;/a&gt; is “$0.01 per message”. That page still uses the old word, but it’s the same price as one Copilot Credit.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Copilot Credits work
&lt;/h2&gt;

&lt;p&gt;A year ago, Copilot Studio counted “messages”. &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/billing-licensing" rel="noopener noreferrer"&gt;Standard harness licensing&lt;/a&gt; records the change: “Starting on September 1, 2025, the common currency for agents changed from messages to Copilot Credits.” The price stayed the same.&lt;/p&gt;

&lt;p&gt;Since then, credits have become the currency for much more than Copilot Studio. The &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide-September-2026.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide&lt;/a&gt; (September 2026) says: “Copilot Credits serve as the common currency in this usage-based model.” One pool per tenant pays for Cowork, Copilot Studio agents, Dynamics 365 agents, Power Platform features, and the Work IQ APIs.&lt;/p&gt;

&lt;p&gt;You can buy them three ways.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Option&lt;/th&gt;
&lt;th&gt;Price&lt;/th&gt;
&lt;th&gt;Commitment&lt;/th&gt;
&lt;th&gt;Suits&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pay-as-you-go&lt;/td&gt;
&lt;td&gt;$0.01 per credit&lt;/td&gt;
&lt;td&gt;None; billed monthly via Azure&lt;/td&gt;
&lt;td&gt;Getting started, uneven use&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pre-Purchase Plan (P3)&lt;/td&gt;
&lt;td&gt;5% to 20% off&lt;/td&gt;
&lt;td&gt;One year, paid up front&lt;/td&gt;
&lt;td&gt;Large, predictable use&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Capacity pack&lt;/td&gt;
&lt;td&gt;$200 (€173.30) per 25,000 credits a month&lt;/td&gt;
&lt;td&gt;Billed annually&lt;/td&gt;
&lt;td&gt;Existing Copilot Studio setups&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Both licensing guides give the pay-as-you-go rate as “Pricing: $0.01/Copilot Credit”. The &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Microsoft-Copilot-Studio-Licensing-Guide.pdf" rel="noopener noreferrer"&gt;Copilot Studio Licensing Guide, October 2026&lt;/a&gt; prices the pack at “$200 per credit pack/month (billed annually)”. Unused pack credits don’t roll over. The &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/pricing/copilot-studio" rel="noopener noreferrer"&gt;German Copilot Studio page&lt;/a&gt; shows €173.30 in its comparison table, while its FAQ leaves the pack price blank. The US page has the same gap.&lt;/p&gt;

&lt;p&gt;Microsoft introduced the Pre-Purchase Plan on October 27, 2025, in &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/scale-your-agent-rollout-with-confidence-introducing-copilot-credit-pre-purchase-plan/" rel="noopener noreferrer"&gt;Scale your agent rollout with confidence&lt;/a&gt;, as “a one-year, pay-up-front purchase option for Copilot Credits”. It counts toward an Azure consumption commitment and renews automatically. The discount depends on how much you buy:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Credits bought up front&lt;/th&gt;
&lt;th&gt;Discount&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;300,000&lt;/td&gt;
&lt;td&gt;5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1,500,000&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3,000,000&lt;/td&gt;
&lt;td&gt;7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;15,000,000&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30,000,000&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;75,000,000&lt;/td&gt;
&lt;td&gt;12%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;150,000,000&lt;/td&gt;
&lt;td&gt;14%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;225,000,000&lt;/td&gt;
&lt;td&gt;17%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300,000,000&lt;/td&gt;
&lt;td&gt;20%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;You can’t undo a pre-purchase. The &lt;a href="https://learn.microsoft.com/en-us/azure/cost-management-billing/reservations/copilot-credit-p3" rel="noopener noreferrer"&gt;Cost Management page for Copilot Credit P3&lt;/a&gt; says: “All purchases are final.” Unused credits expire at the end of the year, so size the plan on what you actually use, not on the discount.&lt;/p&gt;

&lt;p&gt;Since February 2026, there is also an Agent Pre-Purchase Plan that covers Copilot Studio and Microsoft Foundry together. The September licensing guide: “Each ACU is worth $1 of Copilot Credit or Microsoft Foundry usage.” It has three tiers: 20,000 units at 5%, 100,000 at 10%, and 500,000 at 15%.&lt;/p&gt;

&lt;h2&gt;
  
  
  What uses credits
&lt;/h2&gt;

&lt;p&gt;Spataro’s sentence names Cowork, Code, Autopilot, and frontier models. Other Microsoft pages add a few more. This is everything I could confirm.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;th&gt;Source&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Cowork&lt;/td&gt;
&lt;td&gt;Generally available since June 16, 2026&lt;/td&gt;
&lt;td&gt;Cowork launch post&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Code&lt;/td&gt;
&lt;td&gt;Rolling out to Frontier program tenants&lt;/td&gt;
&lt;td&gt;September 25 blog post&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Autopilot (formerly Scout)&lt;/td&gt;
&lt;td&gt;Private preview from end of September 2026&lt;/td&gt;
&lt;td&gt;September 25 blog post&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Frontier models Astra and Fable&lt;/td&gt;
&lt;td&gt;On usage-based billing&lt;/td&gt;
&lt;td&gt;September 25 post, USL/UBB Learn page&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Some Copilot in SharePoint features: image generation and editing, advanced autofill, site analytics&lt;/td&gt;
&lt;td&gt;Credits rolling out with general availability, which started September 30, 2026&lt;/td&gt;
&lt;td&gt;SharePoint blog, USL/UBB Learn page&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Work IQ APIs&lt;/td&gt;
&lt;td&gt;Nothing included in the license&lt;/td&gt;
&lt;td&gt;Credits Guide&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Computer use in agents&lt;/td&gt;
&lt;td&gt;Not included in the license&lt;/td&gt;
&lt;td&gt;Billing rates Learn page&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Apps built in Copilot Studio&lt;/td&gt;
&lt;td&gt;Paid public preview&lt;/td&gt;
&lt;td&gt;Copilot Studio Licensing Guide&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Copilot Cowork
&lt;/h3&gt;

&lt;p&gt;Cowork was the first major Copilot feature that the license alone doesn’t cover. It started as a research preview in March and became generally available on June 16, 2026. The &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2026/06/16/copilot-cowork-is-now-generally-available/" rel="noopener noreferrer"&gt;launch post&lt;/a&gt; says it is “billed on a usage basis, denominated in Copilot Credits”, and the June 2026 edition of the Credits Guide adds: “No Cowork entitlements are included with the Microsoft 365 Copilot subscription.” So each Cowork user needs a license and credits.&lt;/p&gt;

&lt;p&gt;A task’s cost depends on the model, how much context it pulls in, how many tools it calls, and how long it runs. Microsoft gives rough examples:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Credits (Microsoft’s examples)&lt;/th&gt;
&lt;th&gt;At $0.01 per credit&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Light&lt;/td&gt;
&lt;td&gt;70–200&lt;/td&gt;
&lt;td&gt;$0.70–$2.00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;400–600&lt;/td&gt;
&lt;td&gt;$4.00–$6.00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Heavy&lt;/td&gt;
&lt;td&gt;about 1,500&lt;/td&gt;
&lt;td&gt;about $15.00&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Your own tasks won’t match these exactly, but they give you the order of magnitude. Frontier program tenants had a grace period and were “not billed until July 1, 2026”. Cowork ships switched off (“Cowork is off by default”), and admins can set spending limits for the whole tenant, for groups, and for individual users.&lt;/p&gt;

&lt;p&gt;The pricing page line “Available via Frontier program, pricing final upon GA” refers to App Builder and Workflows agents, not to Cowork. Cowork’s billing is already final.&lt;/p&gt;

&lt;h3&gt;
  
  
  Code and Autopilot
&lt;/h3&gt;

&lt;p&gt;Code lets anyone build small apps, dashboards, and automations. The September 25 post says “Code is rolling out to Frontier at the end of the month, with broad availability in the coming weeks”, and that it “will be in preview for Microsoft 365 Premium and Pro subscribers later this year.”&lt;/p&gt;

&lt;p&gt;Autopilot is “a persistent, proactive and personal agent that keeps working even when you’re not”. According to the post, “Autopilot is expanding to private preview at the end of the month.”&lt;/p&gt;

&lt;p&gt;Both use credits from day one. Both are built to run longer than a typical Cowork task, so I expect they’ll end up as the bigger items on the bill. That’s my view, not something Microsoft has said.&lt;/p&gt;

&lt;h2&gt;
  
  
  Copilot Studio agents: included or billed?
&lt;/h2&gt;

&lt;p&gt;This is the question I get asked most. A licensed Copilot user talks to a Copilot Studio agent. Who pays for it?&lt;/p&gt;

&lt;p&gt;Often nobody, as long as usage stays within limits. The &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;billing rates page&lt;/a&gt; lists employee-facing use as “No charge” when the user has a Copilot license, and the agent runs under that user’s identity, with the note “Usage is limited to fair usage limits.” &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/billing-licensing" rel="noopener noreferrer"&gt;Standard harness licensing&lt;/a&gt; says that for licensed users in Copilot Chat, Teams, and SharePoint, “classic answers, generative answers, or Microsoft Graph tenant grounding have zero-rated usage”. Zero-rated means they cost no credits.&lt;/p&gt;

&lt;p&gt;The trouble is in the exceptions. An agent uses credits when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A flow starts on its own.&lt;/strong&gt; Free runs apply “only to runs triggered via the ‘When an agent calls the flow’ trigger”. A flow started by a schedule or an event is billed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It gives generative answers outside Agent Builder.&lt;/strong&gt; They’re billed “unless the agent is created in Agent Builder in Microsoft 365” and don’t use tenant graph grounding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It uses computer use.&lt;/strong&gt; “Computer-Using Agents (CUA) usage is not included in the Microsoft 365 Copilot USL.”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It calls APIs.&lt;/strong&gt; The &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/business" rel="noopener noreferrer"&gt;business pricing page&lt;/a&gt;: “Does not include cost of API calls, including Work IQ API calls.”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It uses Work IQ.&lt;/strong&gt; The September 2026 Credits Guide: “Work IQ APIs are not included as entitlements in the Microsoft Copilot license.” The Tools API costs 0.1 credits per call. The Chat and Context APIs vary by query; the June edition gave examples ranging from 20 to 150 credits per query. Work IQ used inside Copilot itself (chat, the Office apps, Researcher, Analyst, Facilitator) carries no extra charge. The older Retrieval API and Chat API stay free for licensed users, and the guide says, “This licensing model will continue for now.” I wouldn’t count on that lasting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It’s built on the GitHub Copilot harness.&lt;/strong&gt; Copilot Studio now has three harnesses (Copilot Chat, Standard, GitHub Copilot). The GitHub one “Requires Copilot Credits for LLM-powered maker experiences”, even while you’re still building.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The user has no license.&lt;/strong&gt; All of the free rules above apply to licensed users only.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before anyone promises a business unit that “agents are included with Copilot”, go through each agent’s triggers, tools, channels, and users. Scheduled flows, computer use, Work IQ calls, the GitHub harness, and unlicensed users all cost credits.&lt;/p&gt;

&lt;h3&gt;
  
  
  What a Copilot Studio agent costs per action
&lt;/h3&gt;

&lt;p&gt;When an agent does use credits, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;Billing rates and management&lt;/a&gt; (updated August 3, 2026) sets the rates. These are for the Standard harness.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;th&gt;Copilot Credits&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Classic answer&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Generative answer&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent action&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tenant graph grounding&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent flow actions&lt;/td&gt;
&lt;td&gt;13 per 100 actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI tools, basic / standard / premium&lt;/td&gt;
&lt;td&gt;1 / 15 / 100 per 10 responses&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content processing&lt;/td&gt;
&lt;td&gt;8 per page&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Voice, classic / GenAI / premium GenAI&lt;/td&gt;
&lt;td&gt;10 / 35 / 75 per minute&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The same page has four more rules that change the result:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reasoning models cost extra: “Total cost = feature rate for the operation + text and generative AI tools (premium)”, and the premium rate is 10 credits per 1,000 tokens.&lt;/li&gt;
&lt;li&gt;Computer use is charged at the agent action rate.&lt;/li&gt;
&lt;li&gt;Your own models are billed separately: the rates “exclude bring-your-own-model configurations, including Azure Foundry models”.&lt;/li&gt;
&lt;li&gt;Prepaid capacity has a hard limit: “Enforcement is triggered when a tenant reaches 125% of their prepaid capacity.” Custom agents then stop, and agent flows are blocked once capacity runs out.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Copilot Studio licenses
&lt;/h3&gt;

&lt;p&gt;If you buy capacity packs, each pack is the tenant license: $200 for 25,000 credits a month. On top of that, “A Copilot Studio User License ($0) is required for each user that builds” agents, and Learn says you first need “a Copilot Studio tenant prepaid Copilot Credit pack subscription”. If you pay as you go or pre-purchase instead, makers don’t need a user license. They need the “Copilot Studio Author role”, a free security group in the Power Platform admin center.&lt;/p&gt;

&lt;p&gt;The September guide’s change log lists a few more changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;three harnesses since August 2026, with the standalone Copilot Studio license adding the GitHub harness, external channels, and users without a Copilot license;&lt;/li&gt;
&lt;li&gt;“Default Dataverse Database capacity increased from 5 GB to 15 GB” in December 2025;&lt;/li&gt;
&lt;li&gt;Managed Environments included in the “Copilot Studio for Microsoft Copilot license”, “only for features related to Copilot Studio”;&lt;/li&gt;
&lt;li&gt;Apps built in Copilot Studio in paid public preview since September 2026, “billed through Copilot Credits”.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Announced, but not yet dated
&lt;/h2&gt;

&lt;p&gt;Several changes from September 25 still have no firm date.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Usage limits on the license.&lt;/strong&gt; The Learn page describes users who “Reach usage limits in the USL (coming soon)”. They’ll see a notice as they approach the limit. After the limit, “they have the option to continue with UBB by consuming Copilot Credits or, if applicable, reroute to Auto to continue their work.” The same page says some models are “included with fair use, such as GPT 5.6 and Sonnet, and others included with limits, such as Opus.”&lt;/p&gt;

&lt;p&gt;There’s no date for the usage limits yet. When they arrive, part of what people do today at the flat license price will start costing credits. If you budget for 2027 now, leave room for that.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Better cost controls.&lt;/strong&gt; The blog says cost management in Agent 365 “is expanding beyond Cowork and Work IQ APIs to include Code and Copilot Managed Runtime, with support for agents built in Microsoft Copilot Studio planned for October.” Admins get more control over spending policies and model choice, and users can see their own credit balance in Copilot. I’ll go through these in the next post.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;New services join your billing policy automatically.&lt;/strong&gt; &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-overview-copilot-credits" rel="noopener noreferrer"&gt;Usage-Based Billing and Cost Management for Copilot Credits&lt;/a&gt; says: “The Auto-apply new services setting is enabled by default”. When Microsoft moves another feature onto credits, it can start using your budget without anyone deciding it should.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Partner purchases.&lt;/strong&gt; Microsoft has moved this date. New Copilot Business licenses bought through a CSP partner will have pay-as-you-go credits switched on from December 1, 2026, not November 2 as first announced. The &lt;a href="https://learn.microsoft.com/en-us/partner-center/announcements/2026-october" rel="noopener noreferrer"&gt;Partner Center announcement for October 2026&lt;/a&gt; adds two details. The default limit is “4,000 Copilot Credits per user per month”, which admins can change. That’s up to $40 per user per month at the pay-as-you-go rate. And the change “will initially not be available” in several markets, including Germany, France, Italy, Spain, and the Netherlands.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ignite.&lt;/strong&gt; Microsoft points to Ignite, November 17–20, 2026, for the next round of news. Prices may move again after that.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before the next budget round
&lt;/h2&gt;

&lt;p&gt;Prices alone won’t give you a budget, but they will help you make a few decisions now.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Plan two budgets.&lt;/strong&gt; One for base plans and Copilot licenses, fixed per user. One for credits, which depend on usage. If you bought Copilot Business at the discount, use the full price from year two.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decide who owns the credit budget.&lt;/strong&gt; Microsoft suggests business units. Agree on it before anyone switches on Cowork, Code, or Autopilot.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Don’t pre-purchase yet.&lt;/strong&gt; Pay as you go for a few months, then buy a Pre-Purchase Plan based on real numbers. The purchase is final.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Buying through a partner?&lt;/strong&gt; Talk to them before December 1, 2026, about how pay-as-you-go will be set up for new Copilot Business licenses, and agree whether the default limit of 4,000 credits per user per month suits you.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The price list only tells you what you could pay. What you actually pay depends on how you run things, and that’s what the next post in this series covers: where each of these costs appears, which admin center shows it, how to set billing policies and spending limits, how to charge costs back to the teams that cause them, and what to do once Microsoft puts a date on the usage limits.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Official Microsoft Blog, &lt;a href="https://blogs.microsoft.com/blog/2026/09/25/introducing-the-new-copilot-with-home-code-and-autopilot/" rel="noopener noreferrer"&gt;Introducing the new Copilot with Home, Code and Autopilot&lt;/a&gt;, September 25, 2026: the license and usage-based billing split, Code and Autopilot timelines, cost management expansion, admin and user controls, Ignite dates&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/user-subscription-license-usage-based-billing" rel="noopener noreferrer"&gt;Understanding the user subscription license (USL) and usage-based billing (UBB)&lt;/a&gt;, last updated September 25, 2026: everyday and advanced AI, UBB requires a USL, billing policy requirement, funding by business units, usage limits “coming soon”, model inclusion&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/usage-based-billing-overview-copilot-credits" rel="noopener noreferrer"&gt;Usage-Based Billing and Cost Management for Copilot Credits&lt;/a&gt;, last updated September 25, 2026: auto-apply setting&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/business" rel="noopener noreferrer"&gt;Microsoft Copilot Plans and Pricing – AI for Business&lt;/a&gt;, read October 1, 2026: Copilot Business prices, discount terms, bundles, Cowork “Metered”, API calls excluded&lt;/li&gt;
&lt;li&gt;Microsoft Germany, &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/pricing" rel="noopener noreferrer"&gt;Microsoft 365 Copilot for business, German page&lt;/a&gt;, read October 2, 2026: euro prices for Copilot Business and bundles, discount dates, prices excluding VAT&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://www.microsoft.com/en-us/copilot/pricing/enterprise" rel="noopener noreferrer"&gt;Microsoft Copilot Plans and Pricing – Enterprise&lt;/a&gt;, read October 1, 2026: feature matrix, voice limits&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://www.microsoft.com/en-us/copilot/solutions/enterprise" rel="noopener noreferrer"&gt;AI for Enterprise Productivity - Microsoft Copilot&lt;/a&gt;, read October 1, 2026: $30.00 and $31.50 prices, qualifying plan requirement&lt;/li&gt;
&lt;li&gt;Microsoft Germany, &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/enterprise" rel="noopener noreferrer"&gt;Microsoft 365 Copilot for enterprise, German page&lt;/a&gt;, read October 1, 2026: €26.00 price, no monthly euro price shown&lt;/li&gt;
&lt;li&gt;Microsoft Germany, &lt;a href="https://www.microsoft.com/de-de/microsoft-365-copilot/pricing/copilot-studio" rel="noopener noreferrer"&gt;Copilot Studio pricing, German page&lt;/a&gt;, read October 1, 2026: €173.30 in the comparison table, pack price missing in the FAQ&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/microsoft-365-copilot-licensing" rel="noopener noreferrer"&gt;License options for Microsoft Copilot&lt;/a&gt;, last updated September 17, 2026: eligible base plans&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/copilot/manage" rel="noopener noreferrer"&gt;Manage Microsoft Copilot Chat&lt;/a&gt;, last updated September 24, 2026: rename to Microsoft Copilot, Copilot Chat at no extra cost&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/copilot/overview" rel="noopener noreferrer"&gt;Overview of Microsoft Copilot Chat&lt;/a&gt;, last updated September 10, 2026: the three Copilot labels&lt;/li&gt;
&lt;li&gt;Microsoft Support, &lt;a href="https://support.microsoft.com/en-us/microsoft-365-copilot/what-copilot-license-do-i-have" rel="noopener noreferrer"&gt;What Copilot license do I have&lt;/a&gt;, April 2026: the three Copilot labels&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/pay-as-you-go/meters" rel="noopener noreferrer"&gt;Meters for Microsoft Copilot pay-as-you-go services&lt;/a&gt;, last updated August 18, 2026: $0.01 rate for agents in Copilot Chat&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/billing-licensing" rel="noopener noreferrer"&gt;Standard harness licensing – Copilot Studio&lt;/a&gt;, last updated August 3, 2026: messages renamed to credits, zero-rated usage, user license prerequisite&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;Billing rates and management – Copilot Studio&lt;/a&gt;, last updated August 3, 2026: rates per action, reasoning surcharge, computer use, 125% limit, free use for licensed users&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Microsoft-Copilot-Studio-Licensing-Guide.pdf" rel="noopener noreferrer"&gt;Microsoft Copilot Studio Licensing Guide – October 2026&lt;/a&gt;, October 2026: pack price, pre-purchase tiers, Agent Pre-Purchase Plan, $0 user license, Author role, harnesses, change log&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Copilot-Credits-Guide-September-2026.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide – September 2026&lt;/a&gt;, September 2026: credits as common currency, pay-as-you-go rate, pre-purchase tiers, Work IQ not included in the license, Tools API rate, no extra charge for Work IQ inside Copilot&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://cdn-dynmedia-1.microsoft.com/is/content/microsoftcorp/microsoft/bade/documents/products-and-services/en-us/ai/Microsoft-Copilot-Credits-Guide-June-16-2026-PUB.pdf" rel="noopener noreferrer"&gt;Copilot Credits Guide – June 2026&lt;/a&gt;, June 2026: no Cowork entitlement in the license, Cowork and Work IQ example credit ranges&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/azure/cost-management-billing/reservations/copilot-credit-p3" rel="noopener noreferrer"&gt;Copilot Credit P3 – Microsoft Cost Management&lt;/a&gt;, last updated July 17, 2026: purchases are final, expiry at end of term&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/copilot-studio/scale-your-agent-rollout-with-confidence-introducing-copilot-credit-pre-purchase-plan/" rel="noopener noreferrer"&gt;Scale your agent rollout with confidence: Introducing Copilot Credit Pre-Purchase Plan&lt;/a&gt;, October 27, 2025: introduction of the Pre-Purchase Plan&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2025/12/02/microsoft-365-copilot-business-the-future-of-work-for-small-businesses/" rel="noopener noreferrer"&gt;Microsoft 365 Copilot Business: The future of work for small businesses&lt;/a&gt;, December 2, 2025: launch and $21 price, bundle offer until June 30, 2026&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2025/12/04/advancing-microsoft-365-new-capabilities-and-pricing-update/" rel="noopener noreferrer"&gt;Advancing Microsoft 365: New capabilities and pricing update&lt;/a&gt;, December 4, 2025, updated March 18, 2026: announcement of the July 1, 2026 price change, Copilot Chat features&lt;/li&gt;
&lt;li&gt;Microsoft Germany, &lt;a href="https://www.microsoft.com/de-de/microsoft-365/enterprise/microsoft365-plans-and-pricing" rel="noopener noreferrer"&gt;Microsoft 365 Enterprise plans and pricing, German page&lt;/a&gt;, read October 2, 2026: E3 €37.78, E5 €58.13, Agent 365 €13.00&lt;/li&gt;
&lt;li&gt;Microsoft Germany, German pages for &lt;a href="https://www.microsoft.com/de-de/microsoft-365/business/microsoft-365-plans-and-pricing" rel="noopener noreferrer"&gt;Business Basic (plan comparison)&lt;/a&gt;, &lt;a href="https://www.microsoft.com/de-de/microsoft-365/business/microsoft-365-business-standard" rel="noopener noreferrer"&gt;Business Standard&lt;/a&gt;, and &lt;a href="https://www.microsoft.com/de-de/microsoft-365/business/microsoft-365-business-premium" rel="noopener noreferrer"&gt;Business Premium&lt;/a&gt;, read October 1, 2026: €6.07, €12.13, and €19.06&lt;/li&gt;
&lt;li&gt;Microsoft Licensing, &lt;a href="https://www.microsoft.com/en-us/licensing/news/2026-M365-Packaging-Pricing-Updates" rel="noopener noreferrer"&gt;Microsoft 365 Pricing and Packaging Updates&lt;/a&gt;, February 16, 2026: old and new base plan prices, effective date&lt;/li&gt;
&lt;li&gt;Microsoft Licensing, &lt;a href="https://www.microsoft.com/en-us/licensing/news/2026-M365-Packaging-Pricing-Updates-FAQ" rel="noopener noreferrer"&gt;Microsoft 365 Packaging and Pricing Updates Public FAQ&lt;/a&gt;, March 24, 2026: Copilot excluded, E7 unchanged, prices kept until renewal&lt;/li&gt;
&lt;li&gt;Official Microsoft Blog, &lt;a href="https://blogs.microsoft.com/blog/2026/03/09/introducing-the-first-frontier-suite-built-on-intelligence-trust/" rel="noopener noreferrer"&gt;Introducing the First Frontier Suite built on Intelligence + Trust&lt;/a&gt;, March 9, 2026: E7 contents and price, Agent 365 at $15, Cowork research preview&lt;/li&gt;
&lt;li&gt;Microsoft, &lt;a href="https://www.microsoft.com/en-us/microsoft-365/enterprise/e7" rel="noopener noreferrer"&gt;Microsoft 365 E7 for Enterprise&lt;/a&gt; and &lt;a href="https://www.microsoft.com/de-de/microsoft-365/enterprise/e7" rel="noopener noreferrer"&gt;German page&lt;/a&gt;, read October 1, 2026: $99.00 and €91.92 prices, E5 at $60.00 and €58.13, metered agents footnote&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Blog, &lt;a href="https://www.microsoft.com/en-us/copilot/blog/2026/06/16/copilot-cowork-is-now-generally-available/" rel="noopener noreferrer"&gt;Copilot Cowork is now generally available&lt;/a&gt;, June 16, 2026: general availability, credit billing, example task costs, grace period, off by default&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/whats-new" rel="noopener noreferrer"&gt;What’s new in Copilot Cowork&lt;/a&gt;, last updated September 25, 2026: model change at launch&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/partner-center/announcements/2026-october" rel="noopener noreferrer"&gt;October 2026 announcements – Partner Center&lt;/a&gt;, last updated October 1, 2026: pay-as-you-go default for new CSP Copilot Business licenses moved to December 1, 2026, default limit of 4,000 credits per user per month, markets where it starts later&lt;/li&gt;
&lt;li&gt;Microsoft SharePoint Blog, &lt;a href="https://techcommunity.microsoft.com/blog/spblog/what%E2%80%99s-new-in-copilot-in-sharepoint-october-2026/4535423" rel="noopener noreferrer"&gt;What’s new in Copilot in SharePoint: October 2026&lt;/a&gt;, October 1, 2026: general availability from September 30, 2026, image generation and editing, advanced autofill, and site analytics use Copilot Credits&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Changelog
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Date&lt;/th&gt;
&lt;th&gt;Change&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;October 2, 2026&lt;/td&gt;
&lt;td&gt;Rev1. Renamed to “Understanding Microsoft Copilot Licensing - Rev1” and described as a living series. Partner (CSP) pay-as-you-go default moved from November 2 to December 1, 2026, with a default limit of 4,000 credits per user per month and a later start in Germany and other markets. Added the Copilot in SharePoint features that use credits. Sources moved to the Copilot Studio Licensing Guide (October 2026) and the Copilot Credits Guide (September 2026). Prices re-checked on the US and German pages: no changes. Removed the series intro at the top.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;October 3, 2026&lt;/td&gt;
&lt;td&gt;First published. Prices checked against Microsoft’s US and German pages on October 1, 2026.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>agent365</category>
      <category>agentfinops</category>
      <category>copilotcowork</category>
      <category>copilotcredits</category>
    </item>
    <item>
      <title>Prompt Libraries Are Reusable Text - Skills Are Reusable Expertise</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/prompt-libraries-are-reusable-text-skills-are-reusable-expertise-1elc</link>
      <guid>https://dev.to/holgerimbery/prompt-libraries-are-reusable-text-skills-are-reusable-expertise-1elc</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Every organization I work with has built a prompt library, and almost every one of them has watched it rot. Custom skills for declarative agents are the first mechanism in this ecosystem that fixes the cause rather than the symptom. This article explains what a skill really is, why it beats a prompt, and why you should build your first five in Agent Builder instead of reaching for Copilot Studio.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Every prompt library dies the same death
&lt;/h2&gt;

&lt;p&gt;Most companies do the same thing in the same order. They buy Copilot licenses. They run training sessions. Then someone builds a prompt library.&lt;/p&gt;

&lt;p&gt;It usually lives in SharePoint. It has a nice front page. It holds forty to four hundred prompts with names like &lt;em&gt;Write executive summary&lt;/em&gt; or &lt;em&gt;Create project kickoff&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;For about six weeks, it works well.&lt;/p&gt;

&lt;p&gt;Then it falls apart.&lt;/p&gt;

&lt;p&gt;Someone improves prompt #17 and tells nobody. A second copy shows up in a Teams channel. A third gets pasted into an onboarding deck. A helpful colleague rewrites it for their own team. Now nobody knows which one is the real one, nobody tests any of them, and the quality a user gets depends on which copy they happened to find.&lt;/p&gt;

&lt;p&gt;You cannot fix that with better folders. The problem is the thing itself. A prompt is just text.&lt;/p&gt;

&lt;p&gt;A prompt library gives you &lt;strong&gt;reusable content&lt;/strong&gt;. What it never gives you is &lt;strong&gt;reusable behavior&lt;/strong&gt; — and behavior is what companies actually want to make consistent.&lt;/p&gt;

&lt;h2&gt;
  
  
  A skill is a folder, and that is the point
&lt;/h2&gt;

&lt;p&gt;Custom skills for declarative agents are in preview right now, and the concept is almost disappointingly simple. A skill is a &lt;strong&gt;folder&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;project-kickoff/
├── SKILL.md # required
├── templates/
│ └── kickoff-template.docx
├── references/
│ ├── project-methodology.md
│ └── governance-checklist.md
└── scripts/
    └── build-milestone-table.py

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Only one file is required: &lt;code&gt;SKILL.md&lt;/code&gt;. It holds the skill’s name and description in YAML front matter, plus the instructions that tell the model how to do the task. Those instructions must stay under 20,000 characters. Everything else — templates, reference material, scripts — is optional. And that optional part is where it gets interesting.&lt;/p&gt;

&lt;p&gt;Microsoft describes a skill as “a modular capability that you add to a declarative agent to help it accomplish a specific task more reliably and repeatably.”&lt;/p&gt;

&lt;p&gt;Look at those two words: &lt;strong&gt;reliably&lt;/strong&gt; and &lt;strong&gt;repeatably&lt;/strong&gt;. Not &lt;em&gt;smarter&lt;/em&gt;. Not &lt;em&gt;faster&lt;/em&gt;. Those are the words you use for a business asset, not a clever trick.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F304f1ej7sjci5fuhoxle.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F304f1ej7sjci5fuhoxle.png" alt="upgit_20260919_1789813724.png" width="800" height="768"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Microsoft just retired the way we taught this in 2025
&lt;/h2&gt;

&lt;p&gt;There is a line in the documentation that deserves more attention than it is getting:&lt;/p&gt;

&lt;p&gt;“Custom skills are a new, distinct component of a declarative agent. In earlier guidance, the word &lt;em&gt;skills&lt;/em&gt; referred to task descriptions that you wrote inline within an agent’s instructions. Custom skills &lt;strong&gt;replace&lt;/strong&gt; that approach.”&lt;/p&gt;

&lt;p&gt;That is Microsoft ending the old habit of writing longer and longer instructions. Everything many of us taught last year — put the whole method in the instruction box, structure it with headings, hope the model keeps paying attention to all of it — is now the old way.&lt;/p&gt;

&lt;p&gt;If you have ever written a long instruction block, you know the failure mode. The more you add, the more the earlier rules quietly stop being followed. There is a reason declarative agent instructions are capped at 8,000 characters.&lt;/p&gt;

&lt;h2&gt;
  
  
  The agent only loads a skill when it needs it
&lt;/h2&gt;

&lt;p&gt;This is the most important technical reason a skill beats a prompt, and the one people skip past.&lt;/p&gt;

&lt;p&gt;An agent does not load a skill until the task calls for it. The instructions and the files come into context on demand. Microsoft calls this progressive disclosure. The practical effect is that the agent stays focused &lt;strong&gt;even when you have many skills&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here are the two shapes side by side:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Prompt library Skills
-------------- ------
Agent instructions Agent
  40 pages of method ├── Contract Review
  loaded on every single turn ├── Business Case
  all competing for attention ├── Risk Assessment
                                ├── Project Charter
                                └── Executive Briefing
                                (loads only what it needs)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each skill gets its own 20,000-character budget, on top of the agent’s 8,000-character instructions — and it only costs you context when it is actually in play. That is not a small convenience. It changes how far you can scale before quality degrades.&lt;/p&gt;

&lt;h2&gt;
  
  
  Scripts beat improvised code
&lt;/h2&gt;

&lt;p&gt;If a skill includes a script, the agent runs &lt;strong&gt;that&lt;/strong&gt; script. It does not write fresh code each time and hope the math comes out the same.&lt;/p&gt;

&lt;p&gt;For an ROI model, a scoring matrix, or a chart that must look identical in every business case going to the board, this is the difference between “usually right” and “provable”.&lt;/p&gt;

&lt;p&gt;The sandbox those scripts run in is deliberately narrow, and you should know the limits before you promise anything:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Capability&lt;/th&gt;
&lt;th&gt;Supported?&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Internet or network access&lt;/td&gt;
&lt;td&gt;No — no network access at runtime&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Installing packages at runtime&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Authenticated network calls&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Packages already in the sandbox&lt;/td&gt;
&lt;td&gt;Yes, but do not depend on one unless you confirmed it&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Calling connectors, API plugins, MCP servers from a script&lt;/td&gt;
&lt;td&gt;No — the agent can use them through the orchestrator, the script cannot&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Supported script types are &lt;code&gt;.py&lt;/code&gt;, &lt;code&gt;.js&lt;/code&gt;, &lt;code&gt;.mjs&lt;/code&gt;, &lt;code&gt;.cjs&lt;/code&gt;, &lt;code&gt;.ts&lt;/code&gt;, &lt;code&gt;.mts&lt;/code&gt;, &lt;code&gt;.sh&lt;/code&gt;, and &lt;code&gt;.bash&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Those limits look restrictive written out like that. In practice they are exactly what a security architect needs to hear before approving anything, and they rule out almost nothing that a document-producing skill wants to do.&lt;/p&gt;

&lt;h2&gt;
  
  
  The knowledge travels with the behavior
&lt;/h2&gt;

&lt;p&gt;A prompt can &lt;em&gt;describe&lt;/em&gt; your template. A skill can &lt;strong&gt;contain&lt;/strong&gt; it.&lt;/p&gt;

&lt;p&gt;The approved Word file, the wording list, the governance checklist, the KPI definitions — all inside the package, sitting next to the instructions that know how to use them. A skill can carry Office documents, PDFs, Markdown, CSV, images, and structured data files, up to 350 files across all skills on an agent.&lt;/p&gt;

&lt;p&gt;Sensitivity labels on those files are retained and honored. A labeled template does not stop being labeled because it sits inside a skill. Uploaded skill files are stored in tenant-scoped SharePoint Embedded containers — inside your tenant, under your control. User-defined permissions and Double Key Encryption are not supported in the sandbox.&lt;/p&gt;

&lt;h2&gt;
  
  
  The comparison, stated plainly
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Prompt library&lt;/th&gt;
&lt;th&gt;Skill&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;The user has to find the prompt&lt;/td&gt;
&lt;td&gt;The agent finds the skill&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;The user pastes it in&lt;/td&gt;
&lt;td&gt;Used automatically&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Plain text&lt;/td&gt;
&lt;td&gt;Instructions, files, and scripts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hard to govern&lt;/td&gt;
&lt;td&gt;A versioned package&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cannot be tested&lt;/td&gt;
&lt;td&gt;Can be tested&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Loaded every time&lt;/td&gt;
&lt;td&gt;Loaded only when needed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Knowledge buried in text&lt;/td&gt;
&lt;td&gt;Knowledge packed with behavior&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  A normal user should never know what a skill is
&lt;/h2&gt;

&lt;p&gt;This is the part I care about most, and the part that usually gets lost in architecture debates.&lt;/p&gt;

&lt;p&gt;The whole experience should be this:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Create a project kickoff document.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That is all. No prompt library. No searching. No copy and paste. No wondering which version is current. The agent recognizes the task, loads the kickoff skill, and the user gets the right structure, the right terminology, the required sections, and the right tone — without learning anything new.&lt;/p&gt;

&lt;p&gt;Every time we ask users to &lt;em&gt;understand the system&lt;/em&gt; before they can &lt;em&gt;get good output&lt;/em&gt;, adoption drops. Skills are the first thing in this ecosystem that reliably moves the complexity out of the user’s head and into the asset.&lt;/p&gt;

&lt;h2&gt;
  
  
  Five skills I would build first
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Executive briefing
&lt;/h3&gt;

&lt;p&gt;Background, current status, risks, decisions needed, recommendation. The same shape every time. Leadership stops receiving five different interpretations of the word “summary”.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Meeting outcome
&lt;/h3&gt;

&lt;p&gt;Not notes. Outcomes: executive summary, decisions, actions with owner and due date, open risks, items for escalation. The difference between a record of what was &lt;em&gt;said&lt;/em&gt; and a record of what was &lt;em&gt;decided&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Business case
&lt;/h3&gt;

&lt;p&gt;Current state, future state, benefits, risks, financial model, ROI. This one earns its script — the ROI calculation belongs in a &lt;code&gt;.py&lt;/code&gt; file, not in a fresh guess inside every document.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Architecture decision record
&lt;/h3&gt;

&lt;p&gt;Context, decision, alternatives, consequences, risks, review date. Architects will like this one most, because an ADR that keeps changing shape is an ADR nobody can read three years later.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Project health check
&lt;/h3&gt;

&lt;p&gt;Schedule, budget, scope, risks, dependencies, stakeholders — with explicit rules for green, amber, and red in the reference files, so “amber” means the same thing in Hamburg and in Lisbon.&lt;/p&gt;

&lt;p&gt;Notice what those five have in common. None of them are clever. They are &lt;strong&gt;consistent&lt;/strong&gt;. That is the entire point.&lt;/p&gt;

&lt;h2&gt;
  
  
  You do not need Copilot Studio for any of them
&lt;/h2&gt;

&lt;p&gt;Whenever I present this, someone from the platform team says: &lt;em&gt;fine, we will build these in Copilot Studio so we can govern them properly.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For these scenarios, that is the wrong reflex — and Microsoft’s own guidance agrees.&lt;/p&gt;

&lt;p&gt;Look at what those five skills actually do. They &lt;strong&gt;draft, structure, summarize, assess, and format&lt;/strong&gt; content the user can already see in Microsoft 365. They do not raise tickets. They do not write into SAP. They do not run unattended overnight. They do not need to appear on a public website or in WhatsApp. They do not branch through approval flows.&lt;/p&gt;

&lt;p&gt;Microsoft draws the line clearly. Choose Agent Builder when you want to quickly create an agent for yourself or a small team, using natural language and existing content. Choose Copilot Studio when you need a broader audience, multi-step workflows, custom integrations, autonomous behavior, or lifecycle management across environments.&lt;/p&gt;

&lt;p&gt;All five skills above sit on the Agent Builder side of that line.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Agent Builder&lt;/th&gt;
&lt;th&gt;Copilot Studio&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Audience&lt;/td&gt;
&lt;td&gt;Individuals or small teams&lt;/td&gt;
&lt;td&gt;Department, organization, or external customers&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Typical agent&lt;/td&gt;
&lt;td&gt;Lightweight Q&amp;amp;A and content work on organizational knowledge&lt;/td&gt;
&lt;td&gt;Multi-step workflows, business system integration, autonomous scenarios&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Extra license&lt;/td&gt;
&lt;td&gt;None beyond Microsoft 365 Copilot&lt;/td&gt;
&lt;td&gt;Requires a Copilot Studio license&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Governance home&lt;/td&gt;
&lt;td&gt;Microsoft 365 admin center&lt;/td&gt;
&lt;td&gt;Power Platform admin center, with finer-grained controls&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skills per agent&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;n/a&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skill package&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;.zip&lt;/code&gt;, up to 50 MB, 25 MB per file&lt;/td&gt;
&lt;td&gt;n/a&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Two more practical points in Agent Builder’s favor. You can &lt;strong&gt;ask it to create a skill from a plain description&lt;/strong&gt; — describe the repeatable workflow you want packaged, then check what it produced under &lt;em&gt;Configure → Skills&lt;/em&gt;. And you can &lt;strong&gt;upload a complete &lt;code&gt;.zip&lt;/code&gt;&lt;/strong&gt; you built yourself, which is the route I would take for anything that carries a real template.&lt;/p&gt;

&lt;p&gt;One warning on that upload: you must upload the complete &lt;code&gt;.zip&lt;/code&gt;. Uploading &lt;code&gt;SKILL.md&lt;/code&gt; on its own does not work, and building a skill from individual file uploads is not supported in Agent Builder. If you work in the Microsoft 365 Agents Toolkit instead, the rule inverts — there you add the skill directory, and &lt;code&gt;.zip&lt;/code&gt; is not supported.&lt;/p&gt;

&lt;h2&gt;
  
  
  The escape hatch that removes the last objection
&lt;/h2&gt;

&lt;p&gt;The strongest argument for starting in Agent Builder is that you can reverse it.&lt;/p&gt;

&lt;p&gt;You can &lt;strong&gt;copy an agent created in Microsoft 365 Copilot into Copilot Studio&lt;/strong&gt; when you need advanced capabilities or broader integration. The core configuration and instructions are preserved. You do not start over.&lt;/p&gt;

&lt;p&gt;So choosing Agent Builder is not a decision you have to defend for the next five years. You revisit it the day a skill genuinely needs a connector, a workflow, or an external channel.&lt;/p&gt;

&lt;p&gt;My rule, stated plainly:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If the skill produces a document, an assessment, or a decision record — Agent Builder. If the skill has to &lt;em&gt;touch another system&lt;/em&gt; — Copilot Studio.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Pushing a business case skill through Copilot Studio does not make it better governed. It makes it slower to build, more expensive to license, and dependent on a team that has real integration work waiting.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest caveats
&lt;/h2&gt;

&lt;p&gt;It would be unfair to sell only the good side. This is a &lt;strong&gt;preview&lt;/strong&gt; , and it behaves like one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Frontier Program required&lt;/strong&gt; Custom skills are in preview for organizations in the Microsoft Frontier Preview. Not every tenant qualifies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Not available with Information Barriers&lt;/strong&gt; Custom skills are not available in tenants that use Microsoft Purview Information Barriers. The restriction applies to both admin-deployed and user-created declarative agents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No ISV distribution yet&lt;/strong&gt; Support for independent software vendors to publish declarative agents with custom skills through Partner Center is not available yet. Microsoft explicitly tells ISVs not to submit such packages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scripts have no network access&lt;/strong&gt; Covered above, but worth repeating because it catches people who assumed a script could call an API.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Skills and uploaded files don’t mix yet&lt;/strong&gt; More on that below.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sharing one skill across several agents isn’t supported yet&lt;/strong&gt; More on that below too, because it is the question I get in every room.&lt;/p&gt;

&lt;h2&gt;
  
  
  “Not shared” does not mean “only once”
&lt;/h2&gt;

&lt;p&gt;Let me answer the question directly, because the documentation does not.&lt;/p&gt;

&lt;p&gt;The support matrix has a single row — &lt;em&gt;reuse across agents: not supported at this stage of the preview&lt;/em&gt; — for both Agent Builder and the Agents Toolkit. That is the whole statement. No rule says a &lt;code&gt;.zip&lt;/code&gt; may only be uploaded once.&lt;/p&gt;

&lt;p&gt;So: nothing stops you from uploading the same &lt;code&gt;project-kickoff.zip&lt;/code&gt; to three different agents. You can do that today. What you get is &lt;strong&gt;three separate copies&lt;/strong&gt; , not one shared skill. The row is about &lt;em&gt;linking&lt;/em&gt;, not &lt;em&gt;uploading&lt;/em&gt;. No central skill library that several agents point to. A skill belongs to the agent you uploaded it to.&lt;/p&gt;

&lt;p&gt;Why that matters in daily life: fix a small mistake in the ROI script, and you have to upload the file again to every agent that uses it. Nothing tells you which agent carries which version. A few months later, one agent is on version 3, and another is still on version 1 — and you are back where the prompt library left you, just with tidier files.&lt;/p&gt;

&lt;p&gt;So keep the master copy &lt;strong&gt;outside&lt;/strong&gt; Copilot: in Git, or in one properly governed SharePoint library. Treat every upload as a delivery from that master, never as the original. When real sharing arrives, you reconnect instead of rebuilding.&lt;/p&gt;

&lt;p&gt;The most exciting version of this story — one &lt;code&gt;project-kickoff&lt;/code&gt; skill used by the HR onboarding agent, the PMO agent, the transformation agent, and the portfolio agent at the same time — is where this is going. It is not where we are today.&lt;/p&gt;

&lt;h2&gt;
  
  
  The thing about uploaded files
&lt;/h2&gt;

&lt;p&gt;One more limit worth planning around. Right now, an agent &lt;strong&gt;cannot have both skills and uploaded files&lt;/strong&gt;. Microsoft lists this under known issues and says support is planned.&lt;/p&gt;

&lt;p&gt;“Uploaded files” means files you upload to the agent from your own computer, under &lt;em&gt;Knowledge&lt;/em&gt; on the Configure tab. Microsoft calls them &lt;em&gt;embedded files&lt;/em&gt;. The content is copied into the agent exactly as it is at that moment. That is different from pointing the agent at a file in SharePoint or OneDrive, where the agent keeps reading the live document and picks up your later changes.&lt;/p&gt;

&lt;p&gt;So if your agent already has files uploaded that way, you cannot simply add a skill to it yet. You have two options: point the agent at the same content in SharePoint or OneDrive instead, or put those files &lt;strong&gt;inside the skill package&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The second option is the better design anyway. A template or a list of definitions belongs right next to the instructions that use it — not in a separate pile of knowledge the agent has to work out how to apply.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters more than it sounds
&lt;/h2&gt;

&lt;p&gt;Power Automate did not become important because flows were technically novel. It became important because it gave business automation a &lt;strong&gt;packaging format&lt;/strong&gt; — something you could name, version, own, hand over, and audit.&lt;/p&gt;

&lt;p&gt;Skills are that moment for enterprise know-how in Copilot.&lt;/p&gt;

&lt;p&gt;Champions stop being prompt authors and become capability authors. Instead of teaching a thousand people to use prompt #17 correctly, you publish &lt;code&gt;project-kickoff&lt;/code&gt; once, and everyone who comes after benefits without being taught anything.&lt;/p&gt;

&lt;p&gt;Prompt libraries standardize &lt;strong&gt;what users type&lt;/strong&gt;. Skills standardize &lt;strong&gt;how the work gets done&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would check before shipping
&lt;/h2&gt;

&lt;p&gt;If you are going to start this month, work through this list first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Confirm you are in the Frontier Preview&lt;/strong&gt; , and confirm you are not running Purview Information Barriers. Those two answers decide whether the rest of the list matters at all.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pick one skill, not five&lt;/strong&gt; Take the document your organization produces most often and argues about least. Executive briefing is usually the right first move.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Put the master in source control before the first upload&lt;/strong&gt; This is the single habit that prevents the prompt-library failure from repeating itself.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Move the templates into the package&lt;/strong&gt; If the agent currently has uploaded files, that is a blocker today — and moving them into the skill is the better design regardless.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Write the description as a trigger, not a label&lt;/strong&gt; The description in the YAML front matter is how the agent decides to load the skill. “Create approved project kickoff documents, including objectives, scope, stakeholders, governance, risks, milestones, and success metrics. Use whenever a user wants to start a project” works. “Kickoff skill” does not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test it with a user who has never heard the word skill&lt;/strong&gt; If they have to be told the skill exists, the description is wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do not route it through Copilot Studio because it feels more serious&lt;/strong&gt; Route it there when it has to touch another system. Until then, Agent Builder, no code, no extra license.&lt;/p&gt;

&lt;p&gt;If you take one sentence to your next steering committee, take this one: &lt;strong&gt;prompt libraries are reusable text, skills are reusable expertise.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One thing to verify in your own tenant:&lt;/strong&gt; the entire feature is in preview and behind the Frontier Program, so the limits quoted here — 8 skills per agent, 50 MB per package, 350 files, 20,000 characters of skill instructions — are the numbers documented on 4 September 2026 and are the kind of thing that moves during a preview. Check them against Microsoft Learn before you build a rollout plan on top of them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/declarative-agent-skills" rel="noopener noreferrer"&gt;Custom skills in declarative agents (preview)&lt;/a&gt;, last updated 4 September 2026: the definition of a skill, the “custom skills replace that approach” wording, progressive disclosure, the support matrix including the 8-skill and 50 MB limits, supported file and script types, the sandbox restrictions, sensitivity labels and SharePoint Embedded storage, the Frontier Preview and Information Barriers restrictions, the ISV note, the “reuse across agents: not supported” row, and the known issue about skills and embedded files&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/agent-builder-add-skills" rel="noopener noreferrer"&gt;Add custom skills to your declarative agent in Agent Builder (preview)&lt;/a&gt;, last updated 4 September 2026: creating a skill from a natural-language description, the upload flow under Configure, the requirement to upload the complete &lt;code&gt;.zip&lt;/code&gt; rather than &lt;code&gt;SKILL.md&lt;/code&gt; alone, and the prerequisites&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/copilot-studio-experience" rel="noopener noreferrer"&gt;Choose between Agent Builder in Microsoft 365 Copilot and Copilot Studio to build your agent&lt;/a&gt;, accessed 19 September 2026: the audience, agent type, capability, governance, and licensing comparison, and the ability to copy an agent from Microsoft 365 Copilot into Copilot Studio with configuration and instructions preserved&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/declarative-agent-tool-comparison" rel="noopener noreferrer"&gt;Choose the right tool to build your declarative agent&lt;/a&gt;, accessed 19 September 2026: the no-code, low-code, and pro-code positioning of Agent Builder, Copilot Studio, and the Microsoft 365 Agents Toolkit, and the licensing prerequisites for each&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/knowledge-sources" rel="noopener noreferrer"&gt;Add knowledge sources to your declarative agent&lt;/a&gt;, accessed 19 September 2026: embedded file content as a distinct knowledge source, supported in Agent Builder but not in the Agents Toolkit&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agentbuilder</category>
      <category>githubcopilot</category>
      <category>copilotstudio</category>
      <category>declarativeagents</category>
    </item>
    <item>
      <title>Long-Running Business Processes in Copilot Studio: State Tables, Agent Flows and Multi-Agent Orchestration</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/long-running-business-processes-in-copilot-studio-state-tables-agent-flows-and-multi-agent-2db0</link>
      <guid>https://dev.to/holgerimbery/long-running-business-processes-in-copilot-studio-state-tables-agent-flows-and-multi-agent-2db0</guid>
      <description>&lt;p&gt;How I built long-running processes, like invoice processing or purchase order handling, with the standard harness — no custom middleware, no side platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why I stopped thinking in conversations
&lt;/h2&gt;

&lt;p&gt;The first thing I had to unlearn in my projects was the idea that an agent is a conversation. A conversation is short, synchronous, and forgettable. A business process is none of those things. An invoice arrives on a Tuesday, sits in an approval queue for four days, gets rejected because a purchase order number is missing, comes back on Monday, and finally posts to the backend system (if there is any) two weeks after it first landed in the mailbox.&lt;/p&gt;

&lt;p&gt;Nothing in that story fits into a chat turn. But it all fits into a &lt;strong&gt;state table&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;My way of working is simple: the agent is not the process. The agent is a worker that picks up work, does one well-scoped thing, writes down what it did, and moves the item to the next state. The process lives in Dataverse. That single decision made long-running automation reliable for me — and I build everything I describe here with the standard harness: Copilot Studio, agent flows, Dataverse, connectors. No custom orchestration layer, no separate runtime to operate.&lt;/p&gt;

&lt;h2&gt;
  
  
  The state table is the process
&lt;/h2&gt;

&lt;p&gt;Every long-running process I run has one central Dataverse table. For invoice handling, I call it &lt;code&gt;Invoice Case&lt;/code&gt;. It is deliberately boring:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Column&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;CaseId&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Business key, used in every message and log line&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;State&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Choice column — the only authority on where the item stands&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;SubState&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Optional refinement inside a state (e.g. &lt;em&gt;waiting on supplier&lt;/em&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AssignedAgent&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Which specialized agent currently owns the item&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Attempts&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Retry counter, guards against loops&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;NextActionAt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;When the item should be looked at again&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Payload&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Extracted structured data as JSON&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Confidence&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Extraction confidence, drives the human-in-the-loop branch&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;LastError&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Plain-language reason for the last failure&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AuditTrail&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Append-only log of state transitions&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The state list for invoices, in the order I actually use it:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Received → Classified → Extracted → Validated → Matched → PendingApproval → Approved → Posted → Closed&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;plus the two states that carry all the real-world mess: &lt;code&gt;NeedsHuman&lt;/code&gt; and &lt;code&gt;Failed&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Two rules I do not break:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Only one component may write &lt;code&gt;State&lt;/code&gt; at a time&lt;/strong&gt; Transitions go through a single agent flow that takes the current state and the requested target state, validates the transition against an allowed-transition list, and writes the new row version. Everything else &lt;em&gt;reads&lt;/em&gt; state and &lt;em&gt;proposes&lt;/em&gt; transitions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Every transition is written before the side effect, and confirmed after it&lt;/strong&gt; If the backend system posting call dies halfway, I want the table to say &lt;code&gt;Posting&lt;/code&gt; with an attempt count, not &lt;code&gt;Approved&lt;/code&gt; forever.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That is idempotency in practice. Because the state table is the source of truth, a retry is never a duplicate — it is a re-read of a row that already knows how far it got.&lt;/p&gt;

&lt;h2&gt;
  
  
  The orchestrator agent
&lt;/h2&gt;

&lt;p&gt;An orchestrator sits on top of the table. It is a Copilot Studio agent with a deliberately thin job description: read the case, decide which specialist should handle the current state, hand over, and write the result back. It has no domain knowledge about VAT rules or supplier master data. It knows states and routing.&lt;/p&gt;

&lt;p&gt;I give it exactly three kinds of tools:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;an agent flow &lt;strong&gt;GetNextCases&lt;/strong&gt; — pulls cases whose &lt;code&gt;NextActionAt&lt;/code&gt; is due, ordered by priority&lt;/li&gt;
&lt;li&gt;an agent flow &lt;strong&gt;TransitionCase&lt;/strong&gt; — the guarded write described above&lt;/li&gt;
&lt;li&gt;connected &lt;strong&gt;child agents&lt;/strong&gt; , one per specialist capability&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The orchestrator’s instructions are a routing table in prose, not a personality. Something like: &lt;em&gt;“If State is Received, hand the case to the Classification agent. If State is Classified and the document type is Invoice, hand it to the Invoice Extraction agent. If confidence is below the threshold, transition to NeedsHuman and notify the queue owner.”&lt;/em&gt; Short, testable sentences. When routing gets more complex than that, the complexity belongs in the flow, not the prompt.&lt;/p&gt;

&lt;p&gt;The trigger side is equally boring and equally important. Three entry points cover almost everything I have built:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Event-driven&lt;/strong&gt; — a new mail with attachment, a file dropped into SharePoint, a Dataverse row created.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scheduled&lt;/strong&gt; — a recurring agent flow that sweeps due cases. This heartbeat makes “long-running” work possible. A process that waits four days does not need a session that stays open for four days; it needs a table row with a date and a sweeper.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Human-driven&lt;/strong&gt; — an approver replies, a clerk fixes a field, someone asks the agent in Teams “where is invoice 4711?” and gets the state, the history, and the current blocker.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The specialists
&lt;/h2&gt;

&lt;p&gt;The specialist agents hold the domain knowledge, and each one is scoped small enough that I can describe its job in one sentence.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Classifier.&lt;/strong&gt; Decides what the document is — Invoice, credit note, dunning letter, delivery note, something else entirely. Cheap, fast, and it keeps the expensive extraction work off documents that never needed it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scanned-document extraction agent&lt;/strong&gt; This is the one people ask about most. Scanned PDFs and photographed invoices are a different problem from digital PDFs, and I treat them as such. The agent runs the document through OCR/document intelligence, then reasons over the recognized content to produce the structured payload: supplier, invoice number, invoice date, net, tax, gross, currency, PO number, line items, IBAN. It returns per-field confidence, not just values — and I persist that confidence, because it is the switch that decides whether a human ever sees the document.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Digital PDF extraction agent&lt;/strong&gt; Same output contract, different path: text layer first, OCR only as fallback. Same JSON schema so that everything downstream is indifferent to how the data was obtained. Agreeing on one schema across all extraction paths is the single highest-leverage design decision in the whole solution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Validator&lt;/strong&gt; Arithmetic, tax plausibility, IBAN format, duplicate detection against previously posted invoices, supplier existence in master data. Deterministic checks belong in flows; judgment calls belong in the agent. I keep that line clean.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Matcher&lt;/strong&gt; Purchase order and goods-receipt matching — two-way or three-way depending on the client. Produces a match result and a deviation list, never a decision on its own.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Approval agent&lt;/strong&gt; Determines the approver from amount, cost center, and delegation rules, sends an adaptive card, and waits. “Waits” here means: writes &lt;code&gt;PendingApproval&lt;/code&gt;, sets &lt;code&gt;NextActionAt&lt;/code&gt; for the reminder, and stops. Nothing stays in memory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Posting agent&lt;/strong&gt; Talks to the backend system through a connector, with the write-before/confirm-after pattern.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Communication and alerting agent&lt;/strong&gt; Manages SLAs, deadlines, and escalations. When a case breaches its SLA target or an approval sits unattended, it sends reminders via Teams or email, escalates to backup approvers, and records every notification in the state table.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Supplier inquiry agent&lt;/strong&gt; triggers an email back to the invoice sender whenever essential data is missing or invalid — like an absent PO number, unverifiable tax ID, or mismatched line items. It specifies the exact issue, attaches the reference, transitions the case to &lt;code&gt;WaitingForSupplier&lt;/code&gt;, and sets a deadline so the process parks cleanly until a reply arrives.&lt;/p&gt;

&lt;p&gt;Each specialist gets the case ID and reads what it needs from the table. I deliberately avoid passing large context between agents. The state table is shared memory: queryable, auditable, and survives restarts—three things a conversation context does not.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the state table gives me beyond orchestration
&lt;/h2&gt;

&lt;p&gt;Once the process lives in Dataverse, many things I used to build separately come for free.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Observability.&lt;/strong&gt; A Power BI report over the state table is the process dashboard: how many invoices sit in each state, average dwell time per state, which supplier produces the most &lt;code&gt;NeedsHuman&lt;/code&gt; cases, which extraction fields have the lowest confidence. That last one is my improvement backlog, generated automatically.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Human-in-the-loop that scales&lt;/strong&gt; &lt;code&gt;NeedsHuman&lt;/code&gt; is a queue, and a model-driven app over the same table is the clerk’s workplace. The agent prepares, the human decides, the agent continues. No screenshots, no re-keying.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Safe evolution&lt;/strong&gt; Adding a new step to the process means adding a state and a specialist. Nothing else changes, because nothing else knew the process shape to begin with.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explainability&lt;/strong&gt; When someone asks why invoice 4711 took eleven days, the audit trail answers with timestamps and reasons. That conversation used to be the hardest part of the project.&lt;/p&gt;

&lt;h2&gt;
  
  
  What made the difference
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Design the state list on paper, with the business, before touching the maker portal. If the states are wrong, no amount of prompt engineering rescues the solution.&lt;/li&gt;
&lt;li&gt;Keep every agent’s instruction short enough to read out loud. Long instructions are undebuggable.&lt;/li&gt;
&lt;li&gt;Put deterministic logic in agent flows, judgment in agents, and truth in Dataverse.&lt;/li&gt;
&lt;li&gt;Make every operation idempotent and every transition guarded.&lt;/li&gt;
&lt;li&gt;Store confidence and route on it. Automation that knows when to ask for help gets trusted; automation that is confidently wrong once does not.&lt;/li&gt;
&lt;li&gt;Start with one document type and one supplier group, run it in production, then widen.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The technology stack here is unglamorous on purpose. The interesting engineering isn’t in the agent—it is in the table that remembers what the agent did.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>copilotstudio</category>
      <category>standardharness</category>
      <category>longrunningprocesses</category>
      <category>statetables</category>
    </item>
    <item>
      <title>Multi-Agent Orchestration in Copilot Studio - Pick the Harness First</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/multi-agent-orchestration-in-copilot-studio-pick-the-harness-first-2ka0</link>
      <guid>https://dev.to/holgerimbery/multi-agent-orchestration-in-copilot-studio-pick-the-harness-first-2ka0</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;The last article was about workflows and the agent node. This one goes one level up. Copilot Studio now runs three harnesses, and the harness you pick decides which multi-agent building blocks you are even allowed to use. Child agents, connected agents, A2A, and MCP are not four flavors of the same thing, and they are not all available everywhere.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The one sentence that should govern the whole design
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Harness first, architecture second.&lt;/strong&gt; Not because it is elegant, but because Microsoft states plainly that agents “can’t be transferred to the standard harness, and vice versa”. There is no runtime toggle. A harness change is a rebuild, and every multi-agent mechanism you plan on depends on which runtime you started in.&lt;/p&gt;

&lt;p&gt;Microsoft’s own definition of a harness is deliberately narrow: it is “a runtime that exists between the two” — the model and the agent’s configuration — and it “determines when to call the model, what components to send it”. The white paper published on 1 September 2026 phrases it as “the operating layer between the model and the agent’s configuration”. The consequential sentence follows immediately: “The harness you use affects the billing, features, and capabilities.”&lt;/p&gt;

&lt;p&gt;Three harnesses, from the harnesses overview page (last updated 27 August 2026):&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Harness&lt;/th&gt;
&lt;th&gt;Microsoft’s framing&lt;/th&gt;
&lt;th&gt;Built for&lt;/th&gt;
&lt;th&gt;Billing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;GitHub Copilot&lt;/td&gt;
&lt;td&gt;“the most capable option, built for reasoning-heavy agents”&lt;/td&gt;
&lt;td&gt;“Complex, multi-step business processes”&lt;/td&gt;
&lt;td&gt;Copilot Credits, consumption-based&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Standard&lt;/td&gt;
&lt;td&gt;“a dependable option for rule-based agents”&lt;/td&gt;
&lt;td&gt;“Rule-based agents and structured conversations”&lt;/td&gt;
&lt;td&gt;Existing Copilot Studio licensing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copilot chat&lt;/td&gt;
&lt;td&gt;“allows you to extend Microsoft 365 Copilot Chat”&lt;/td&gt;
&lt;td&gt;Enterprise knowledge in Chat&lt;/td&gt;
&lt;td&gt;Consumption or included with M365 Copilot&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The GitHub Copilot harness reached general availability with the announcement on 2 September 2026: “The GitHub Copilot harness is now generally available”. That is the status to plan against. Note what is &lt;em&gt;not&lt;/em&gt; GA inside it — the same blog marks connected agents “(in preview)”, along with Work IQ, memory, and user file upload, while skills, workflows-as-tools, and MCP-as-tool are GA. The Learn page for connected agents carries no preview banner, which is the first of two documentation conflicts worth knowing about.&lt;/p&gt;

&lt;h2&gt;
  
  
  Read the banner, not the marketing
&lt;/h2&gt;

&lt;p&gt;The most reliable capability map in Copilot Studio documentation is not a comparison table. It is the one-line banner at the top of each Learn article.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;“This article describes features used in agents … powered by the standard harness.”&lt;/strong&gt; appears on &lt;em&gt;Add a child agent&lt;/em&gt;, &lt;em&gt;Agent-to-agent (A2A)&lt;/em&gt;, &lt;em&gt;Connect to an existing agent&lt;/em&gt;, and &lt;em&gt;Manage Entra Agent IDs&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;“Features in this article are used by agents or workflows powered by the GitHub Copilot harness.”&lt;/strong&gt; appears on &lt;em&gt;Skills overview&lt;/em&gt;, &lt;em&gt;Tools overview&lt;/em&gt;, &lt;em&gt;Connected agents overview&lt;/em&gt;, &lt;em&gt;Add an MCP server as a tool&lt;/em&gt;, and &lt;em&gt;Files the agent creates&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Read those two lists again. The classic multi-agent toolkit — child agents, A2A, connecting external agent types — sits under the standard banner. The new stack — skills, sandboxed files, MCP-as-tool, the new connected-agents surface — sits under the GitHub Copilot banner. That is not a rollout accident I expect to be corrected next month; it is the current architectural line.&lt;/p&gt;

&lt;h2&gt;
  
  
  When do you need multi-agent orchestration at all
&lt;/h2&gt;

&lt;p&gt;Before the harness question, the honest question: does this need more than one agent?&lt;/p&gt;

&lt;p&gt;Microsoft’s own guidance gives a usable threshold. Split the agent when it exceeds roughly “more than 30-40 choices of action”. Below that, you are adding orchestration latency and a second thing to govern for no return. The multi-agent patterns page frames the benefit as modularity: one agent calling others makes solutions “more modular, scalable, and manageable”.&lt;/p&gt;

&lt;p&gt;My working rule, in the order I actually apply it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;One agent, more instructions.&lt;/strong&gt; Cheapest. Works until the instruction file becomes a policy manual nobody re-reads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One agent, more skills&lt;/strong&gt; (GitHub Copilot harness). A procedure that belongs to this agent and loads only when relevant.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One agent, child agents&lt;/strong&gt; (standard harness). An embedded specialist that needs its own tool budget, typed inputs, and trigger.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Connected agents.&lt;/strong&gt; Separate ownership, separate lifecycle, separate security boundary, or multiple parents consuming the same specialist.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A2A.&lt;/strong&gt; The specialist is not a Copilot Studio agent at all.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Steps 2 and 3 are in-agent complexity. Steps 4 and 5 are cross-agent work. Conflating those two categories is the single most expensive modeling mistake I see, and it produces either an unmaintainable god-agent or an org chart of agents nobody can trace a request through.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which element lives in which harness
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Element&lt;/th&gt;
&lt;th&gt;Standard harness&lt;/th&gt;
&lt;th&gt;GitHub Copilot harness&lt;/th&gt;
&lt;th&gt;Why&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Child agents&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Documented only under the standard banner; skills absorb most of the use cases&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Connected agents (Copilot Studio)&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Both harnesses; new harness restricted to Copilot Studio-built agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Connected agents (Foundry, Fabric Data, M365 Agents SDK)&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Only the standard harness documents the external agent types&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A2A&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Not documented&lt;/td&gt;
&lt;td&gt;The A2A article carries the standard-harness banner; no GitHub Copilot-harness A2A article exists&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MCP servers as tools&lt;/td&gt;
&lt;td&gt;Yes (needs generative orchestration)&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Both, but the new-harness page is still marked prerelease&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Workflows as tools&lt;/td&gt;
&lt;td&gt;Classic agent flows&lt;/td&gt;
&lt;td&gt;Yes, GA&lt;/td&gt;
&lt;td&gt;“Workflows can give agents access to multistep deterministic automation”&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skills&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Skills are a GitHub Copilot-harness construct&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sandbox/file generation&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Native creation and editing of Word, Excel, PowerPoint, and PDF&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Memory&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes (preview)&lt;/td&gt;
&lt;td&gt;New-harness capability&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The practical consequence is blunt. &lt;strong&gt;If you need to reach a non-Copilot Studio agent today — Foundry, SAP, ServiceNow, a partner agent, your own framework — that work belongs in the standard harness.&lt;/strong&gt; The new-harness connected agents page states it directly: “you can currently only connect other agents built in Copilot Studio”. A2A, Fabric, and M365 Agents SDK multi-agent support went GA back in April 2026 — on the standard side.&lt;/p&gt;

&lt;h2&gt;
  
  
  Child agents: more than delegation
&lt;/h2&gt;

&lt;p&gt;The child agent is routinely undersold as “a sub-agent”. Read the &lt;em&gt;Add a child agent&lt;/em&gt; page (updated 25 August 2026), and it is closer to a topic with an orchestrator inside it. Microsoft defines it as “a lightweight agent that exists within the context of your main agent”, and inline agents “share context with the main agent” — a child always receives the parent’s context, with no opt-out.&lt;/p&gt;

&lt;p&gt;What you actually get, and what no skill offers:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Triggers.&lt;/strong&gt; By default, “agents respond to users or triggers, based on their description”. But you can bind explicit events: a message is received, a custom client event occurs, an activity occurs, the conversation changes, it’s invoked, it’s redirected to, the user is inactive for a while, a plan completes, an AI-generated response is about to be sent.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explicit invocation.&lt;/strong&gt; “It’s redirected to” makes the child callable from inside a topic — deterministic hand-off, not description matching. You can also reference it with &lt;code&gt;/&lt;/code&gt; from instructions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Typed inputs and outputs.&lt;/strong&gt; Each input carries a display name, description, and data type, with an optional “Make this input required”. Outputs are typed the same way. This is a contract, not a prose hand-off.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Validation and reprompting.&lt;/strong&gt; A “Should prompt user” toggle, a Condition with a “Condition not met prompt”, up to two reprompts, and an “Action if no entity found” that escalates, sets a value, or leaves it empty.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Power Fx.&lt;/strong&gt; Switch the condition builder to the formula editor, and the routing decision becomes an expression.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Priority and ordering.&lt;/strong&gt; “A lower number indicates a higher priority”; ties are resolved “in the order of creation (oldest first)”. Child agents and topics share the same trigger set, so priority is how you keep them from fighting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Post-completion behavior.&lt;/strong&gt; After running: don’t respond (the default), write the response with generative AI, send a specific response, or send an adaptive card.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Its own orchestration and its own tool limits.&lt;/strong&gt; “Because child agents have their own orchestration, they have their own limits for the number of tools.” Microsoft calls that separate limit one of the benefits — it is how you partition a parent that has outgrown its tool budget. The stated price is latency, “added by the added layer of orchestration”.&lt;/p&gt;

&lt;p&gt;That last pair is the real reason child agents survive. They are a tool-budget partition with a typed interface and conversational control, inside one agent boundary.&lt;/p&gt;

&lt;h2&gt;
  
  
  Skills: reusable behavior, not a reusable agent
&lt;/h2&gt;

&lt;p&gt;A skill in the GitHub Copilot harness is a different species. Microsoft describes skills as “self-contained sets of instructions and logic”, explicitly contrasted with tools “which connect to external services”. Selection is by relevance: “The orchestration runtime invokes a skill when a user’s request matches the skill’s purpose.”&lt;/p&gt;

&lt;p&gt;The package is deliberately boring: a &lt;code&gt;SKILL.md&lt;/code&gt; with “a YAML front matter (name, description) and instructions”, plus “Optional supporting files, such as scripts, templates, and reference documents”, zipped. Authoring is Build → Skills → Create from blank (the name takes “only lowercase letters, numbers, and hyphens”) or drag-and-drop upload of a &lt;code&gt;.md&lt;/code&gt; or a ZIP.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;invoice-reconciliation/
├── SKILL.md # YAML front matter: name, description + Markdown instructions
├── scripts/
│ ├── compare_invoice.py
│ └── create_report.py
├── templates/
│ └── reconciliation-template.xlsx
└── references/
    └── matching-rules.md

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Because it is Markdown in a ZIP, a skill goes in Git, gets reviewed in a pull request, gets versioned and released independently, and gets attached to several agents. That is the genuine advance over a child agent, which lives and dies inside its parent. It also means an existing GitHub Copilot or Claude-style skill is a plausible starting point, where its instructions and assets fit the Copilot Studio runtime.&lt;/p&gt;

&lt;p&gt;The second advance is reviewed code. Instead of the model regenerating a transformation each run, the skill ships a script that was tested once and behaves the same way every time. For reconciliation logic, format validation, or document assembly, that is the difference between a demo and something finance will sign off.&lt;/p&gt;

&lt;h2&gt;
  
  
  Child agent versus skill, side by side
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Child agent (standard)&lt;/th&gt;
&lt;th&gt;Skill (GitHub Copilot)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Boundary&lt;/td&gt;
&lt;td&gt;Inside one parent agent&lt;/td&gt;
&lt;td&gt;Inside one agent, but portable across agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Reuse&lt;/td&gt;
&lt;td&gt;Not reusable outside its parent&lt;/td&gt;
&lt;td&gt;Created once, added to multiple agents, exported, source-controlled&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invocation&lt;/td&gt;
&lt;td&gt;Description match, explicit redirect, or bound trigger&lt;/td&gt;
&lt;td&gt;Description match by the orchestration runtime&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Interface&lt;/td&gt;
&lt;td&gt;Typed inputs and outputs, required flags, validation&lt;/td&gt;
&lt;td&gt;Instructions in Markdown; no typed contract&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Conversation control&lt;/td&gt;
&lt;td&gt;Reprompts, conditions, priority, adaptive-card completion&lt;/td&gt;
&lt;td&gt;None; the agent owns the conversation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Own tool limit&lt;/td&gt;
&lt;td&gt;Yes — a separate orchestration budget&lt;/td&gt;
&lt;td&gt;No — it uses the agent’s tools&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Executable assets&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Scripts, templates, reference files in the sandbox&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Versioning&lt;/td&gt;
&lt;td&gt;Part of the parent agent’s lifecycle&lt;/td&gt;
&lt;td&gt;Independent — Git, review, release&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Read across the rows, and the trade is clear. &lt;strong&gt;You give up the typed contract and the conversational controls, and you get portability, reviewed code, and file work.&lt;/strong&gt; A skill is not a drop-in replacement for every child agent, and anyone telling you the migration is mechanical has not tried it on a child agent with required inputs and two reprompts.&lt;/p&gt;

&lt;p&gt;Where a skill wins: the behavior belongs to one agent, the capability is essentially instructions plus transformation logic plus templates, you want to attach it to several agents, and you do not need an independently governed identity.&lt;/p&gt;

&lt;p&gt;Where a child agent still wins: you need an embedded specialist with its own knowledge and tools, you need explicit input/output variables, validation, event triggers, priority or conversational completion, and you want the child-specific tool limit while keeping everything inside one main agent.&lt;/p&gt;

&lt;h2&gt;
  
  
  The two limitations of skills nobody reads until it hurts
&lt;/h2&gt;

&lt;p&gt;This is the section I would put in front of any team that has just watched a skills demo.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. A skill is not a connection
&lt;/h3&gt;

&lt;p&gt;A skill does not authenticate. It does not hold a credential. It is not a connector, and it cannot become one. Microsoft’s own framing separates the two categories precisely: skills are “self-contained”, while tools “connect to external services”.&lt;/p&gt;

&lt;p&gt;So a skill can hold the classification logic, the HTML template assembly, the field validation, the draft body. It cannot read the shared mailbox. Reading or writing that mailbox is a Graph-backed tool, a workflow, a custom connector, or an MCP server — configured on the agent, governed by the platform, visible to the admin. The script inside the skill cannot obtain a token independently.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Skill code has no outbound network path
&lt;/h3&gt;

&lt;p&gt;The widely reported behavior of the agent sandbox is that code running in it cannot call Microsoft Graph, cannot call an arbitrary REST API, cannot connect to a database, cannot send mail, cannot download a package at runtime, cannot write to SharePoint, and cannot reach an MCP server over HTTP from the script itself. Even where a networking library such as &lt;code&gt;requests&lt;/code&gt; is present, the code cannot use it to leave the sandbox. The filesystem is a working area, not durable storage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Caveat, and I want to be precise about it:&lt;/strong&gt; these specifics — no egress, the Python version, the preinstalled library count, the temporary filesystem — are currently documented in Microsoft’s community engineering blog, not on Microsoft Learn. Learn confirms only that tasks run “in a secure sandbox governed by Copilot Studio”, plus concrete numbers on the output side: created files are capped at &lt;strong&gt;10 MB per file&lt;/strong&gt; with &lt;strong&gt;28-day retention&lt;/strong&gt;. Design for no egress, because that is what the runtime does, but do not quote it as a compliance control in an architecture board paper until it lands on Learn.&lt;/p&gt;

&lt;p&gt;The pattern that follows from both limits:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Agent reasoning
 |
 +-- Skill instructions
 | |
 | +-- Local script execution in the sandbox
 | +-- Local file transformation
 | +-- Validation and calculation
 |
 +-- Governed tool &amp;lt;-- the ONLY way out
      |
      +-- Microsoft Graph
      +-- Dataverse / SharePoint / Dynamics 365
      +-- External REST API
      +-- MCP server

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The restriction is a feature. No arbitrary egress means no arbitrary exfiltration path, and every external operation stays visible through Copilot Studio tooling, Power Platform data policies, connector controls, and DLP. It also breaks lifted-and-shifted skills. A GitHub Copilot CLI skill happily assumes it can &lt;code&gt;pip install&lt;/code&gt;, clone a repo, hit an endpoint, read an environment variable, query a database, or start a local service. None of those assumptions transfer. Every network-dependent part has to be refactored into a formal tool before the skill is worth anything in Copilot Studio.&lt;/p&gt;

&lt;h2&gt;
  
  
  MCP and A2A are not competitors
&lt;/h2&gt;

&lt;p&gt;They answer different questions, and teams conflate them weekly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MCP connects an agent to tools.&lt;/strong&gt; It is “a standard for exposing tools to an agent”. In the new harness you add one at Build → Tools → Add → Model Context Protocol, giving a name, description, server URL and authentication. On the standard side you must turn on generative orchestration to use MCP at all. Two limits worth planning around: “MCP servers count against the total number of tools”, and the number of concurrent instances “is capped” — Microsoft states the cap exists but publishes no integer. Governance is inherited: blocking Power Platform connectors in DLP “also blocks access to tools in connected MCP servers”.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A2A connects an agent to another agent.&lt;/strong&gt; It is “an open standard for communication and collaboration between agents”, and it lets Copilot Studio “delegate tasks to another agent, not just call APIs”. Configuration is Agents → Add agent → A2A agent, where you supply the endpoint URL and the agent card is read from &lt;code&gt;.well-known&lt;/code&gt; automatically. Authentication is none, API key, or OAuth 2.0. Two details that matter operationally: “A2A connections use the custom connector infrastructure”, so your existing connector governance applies; and the payload carries “Full chat history, not just the latest user utterance” — read that sentence again before you delegate to a partner agent outside your tenant.&lt;/p&gt;

&lt;p&gt;And once more, because it is the single most load-bearing constraint in this article: &lt;strong&gt;A2A is documented for the standard harness only.&lt;/strong&gt; There is no GitHub Copilot-harness A2A article as of early September 2026.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connected agents in both harnesses
&lt;/h2&gt;

&lt;p&gt;Connected agents exist on both sides, with different reach.&lt;/p&gt;

&lt;p&gt;Definition is common: “separate agents with their own orchestration, tools, and knowledge”, and they “can bypass plan limits” — which is the second tool-budget escape hatch after child agents.&lt;/p&gt;

&lt;p&gt;On the &lt;strong&gt;standard&lt;/strong&gt; harness you add one at Agents → Add an agent → Copilot Studio. The source agent must be in the same environment, published, and have “Let other agents connect to and use this one” enabled. You choose whether to hand over context with the “Pass conversation history to this agent” option — the contrast with a child agent, which always receives the parent’s context, is exactly the security boundary you want when the specialist is owned by another team. Documented limits: an agent that has its own connected agents “can’t also use the same agent as a connected agent” elsewhere, and “Redirecting to Fabric Data agents isn’t currently supported”.&lt;/p&gt;

&lt;p&gt;On the &lt;strong&gt;GitHub Copilot&lt;/strong&gt; harness, connected agents are the principal delegation mechanism, and the orchestrator does more with the result than fire-and-forget. It folds connected-agent output back into a broader working context alongside files, tool results, and intermediate artifacts, and then decides whether to continue, retry, take another path, or stop. That continued orchestration is the actual difference from a single delegated call. The price is the restriction already noted: Copilot Studio agents only.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vocabulary, because half the arguments are terminological
&lt;/h2&gt;

&lt;p&gt;I use these five definitions on every engagement, and they end most of the debate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Skill&lt;/strong&gt; — behavior belonging inside one agent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Connected agent&lt;/strong&gt; — separately owned expertise, security boundary, lifecycle, or a reusable specialist with more than one consumer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Child agent&lt;/strong&gt; — an embedded specialist with typed contracts and its own tool budget, inside one parent, standard harness only.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Workflow&lt;/strong&gt; — a deterministic multi-step process.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tool&lt;/strong&gt; — access to an external capability or system. Including MCP. Including the only way out of the sandbox.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge&lt;/strong&gt; — information the agent may retrieve and reason over.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In-agent complexity becomes skills. Cross-agent work stays a connected agent. Everything that leaves the tenant boundary is a tool or A2A.&lt;/p&gt;

&lt;h2&gt;
  
  
  Money and identity, before the design review
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Billing is the harness distinction with the sharpest edge.&lt;/strong&gt; On the GitHub Copilot harness, “All usage is billed based on consumption and measured in Copilot credits”, covering “large language model (LLM) tokens, tools (including knowledge and MCPs), and the harness itself”. The timing is what catches teams: “Billing starts when you start building”, against the standard harness “which starts billing after publish”. Building, testing, and evaluating are all metered. The Power Platform admin guidance is equally direct — GitHub Copilot-harness agents are not covered by a Microsoft 365 Copilot license, they are “Billed for all usage”, the admin agent inventory now carries a Harness column, and developer and trial environments moved to usage-based billing on 1 September 2026.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Identity is now automatic.&lt;/strong&gt; “Copilot Studio automatically creates a Microsoft Entra Agent ID for each new agent,” and you “can no longer opt out”. Connector permissions are “re-validated at runtime against Advanced Connector Policies (ACP) and DLP”. A dating conflict to be aware of: Learn says this changed “After May 2026”; the September blog says “as of July 2026”. Either way, plan for it rather than discovering it in a governance review.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DLP reaches skills too.&lt;/strong&gt; Skills can be blocked wholesale at tenant level through the “Skills with Copilot Studio” connector classification, the same mechanism that governs HTTP, Power Platform connectors as tools, MCP, knowledge sources, channels, and event triggers.&lt;/p&gt;

&lt;h2&gt;
  
  
  The architecture I actually recommend
&lt;/h2&gt;

&lt;p&gt;Not a migration. A portfolio.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Standard harness
 |
 +-- Front-door conversations, mandatory question sequences, validation
 +-- High-volume FAQ, intake, routing, support, case creation
 +-- Deterministic routing with topics, Power Fx, adaptive cards
 +-- A2A to Foundry, SAP, ServiceNow, partner and custom agents
 +-- Child agents where typed contracts and tool partitioning matter

GitHub Copilot harness
 |
 +-- Document-intensive and multi-file processing
 +-- Processes where every exception cannot be designed in advance
 +-- Multi-source research producing several deliverables
 +-- Iterative planning, retry, and recovery
 +-- Skills for reusable, reviewed operating procedures
 +-- Connected Copilot Studio agents for genuine cross-agent work

Shared layer
 |
 +-- Workflows for deterministic approvals, writes, notifications
 +-- MCP servers, connectors, REST tools for all governed external access
 +-- Dataverse, Microsoft Graph, Power Platform governance and DLP

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Standard-harness agents are the responsive, controlled front door. Workflows own the approvals, the writes and the system updates, because that is where determinism is provable. GitHub-harness agents handle the heavy analysis, file processing, exception resolution, and curation. Skills encode the operating procedures. Connected agents represent independently owned domain specialists. Everything that touches an external system goes through a governed tool.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would check before shipping
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Did you pick the harness before the canvas?&lt;/strong&gt; It cannot be changed later without a rebuild.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do you need an external agent?&lt;/strong&gt; If yes, it is the standard harness today. A2A is not documented in the new harness.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is that thing a skill or a connection?&lt;/strong&gt; If it authenticates or leaves the sandbox, it is a tool. Always.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Have you refactored network-dependent skill code?&lt;/strong&gt; &lt;code&gt;pip install&lt;/code&gt;, direct API calls, and database queries don’t survive the move.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Where does the generated file go?&lt;/strong&gt; The sandbox is temporary; files are capped at 10 MB and expire after 28 days. Persist through a tool or hand it to the user.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Are you paying to build?&lt;/strong&gt; Usage-based billing on the new harness starts at authoring, not at publish.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Is the tool budget the actual problem?&lt;/strong&gt; If so, a child agent or a connected agent partitions it. A skill does not.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Did you confirm the preview status yourself?&lt;/strong&gt; Connected agents, memory, Work IQ, and user file upload are marked as preview in the blog; some Learn pages are still prerelease.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Neither harness supersedes the other. The standard harness owns deterministic conversation, mature channels, typed child agents, and documented interoperability. The GitHub Copilot harness owns reasoning, files, skills, and adaptive recovery. The interesting systems being built right now use both, connected by workflows and governed tools — and the teams that get it right are the ones who made the harness decision consciously, on day one, instead of discovering it in month three.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/harnesses-overview" rel="noopener noreferrer"&gt;Harnesses overview&lt;/a&gt;, last updated 27 August 2026: the definition of a harness, the three harnesses, comparison guidance, the “secure sandbox governed by Copilot Studio” wording&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/overview" rel="noopener noreferrer"&gt;GitHub Copilot harness overview&lt;/a&gt;, 26 August 2026: agents “can’t be transferred” between harnesses&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/add-agent-child-agent" rel="noopener noreferrer"&gt;Add a child agent&lt;/a&gt;, 25 August 2026: definition, triggers, typed inputs and outputs, validation and reprompts, Power Fx conditions, priority, after-running behavior, separate orchestration and tool limits, latency trade-off&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-overview" rel="noopener noreferrer"&gt;Skills overview&lt;/a&gt;, 26 August 2026, and &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-create" rel="noopener noreferrer"&gt;Create a skill&lt;/a&gt; / &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-add-existing" rel="noopener noreferrer"&gt;Add an existing skill&lt;/a&gt;, 3 August 2026: skills as self-contained instructions versus tools, SKILL.md and YAML front matter, packaging, authoring and upload paths, runtime selection&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/authoring-add-other-agents" rel="noopener noreferrer"&gt;Connected agents overview&lt;/a&gt;, 26 August 2026: new-harness connected agents, the Copilot Studio-only restriction&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/add-agent-copilot-studio-agent" rel="noopener noreferrer"&gt;Connect to an existing agent&lt;/a&gt;, 3 August 2026: standard-harness configuration path, pass-conversation-history option, connected-agent limits&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/add-agent-agent-to-agent" rel="noopener noreferrer"&gt;Agent-to-agent (A2A)&lt;/a&gt;, 26 August 2026: standard-harness banner, endpoint and agent card configuration, authentication options, custom connector infrastructure, full chat history in the payload&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/tools-add-mcp-server" rel="noopener noreferrer"&gt;Add an MCP server as a tool&lt;/a&gt;, 29 July 2026 (prerelease), and &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/tools-overview" rel="noopener noreferrer"&gt;Tools overview&lt;/a&gt;, 26 August 2026: configuration path, MCP counting against tool limits, concurrency cap, DLP inheritance&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/created-files-overview" rel="noopener noreferrer"&gt;Files the agent creates&lt;/a&gt;, 29 July 2026: 10 MB per file, 28-day retention&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/guidance/multi-agent-patterns" rel="noopener noreferrer"&gt;Multi-agent orchestration patterns and best practices&lt;/a&gt;, 22 May 2026: modularity rationale, inline agents also known as child agents, shared context, the 30-40 choices-of-action split threshold&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/billing-credit-overview" rel="noopener noreferrer"&gt;Copilot credits overview&lt;/a&gt;, 31 August 2026, and &lt;a href="https://learn.microsoft.com/en-us/power-platform/admin/manage-usage-github-copilot-harness" rel="noopener noreferrer"&gt;Manage usage for the GitHub Copilot harness&lt;/a&gt;, 28 August 2026: consumption billing, what credits cover, billing at build time, the Harness column, 1 September 2026 change for dev and trial environments&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/admin-use-entra-agent-identities" rel="noopener noreferrer"&gt;Manage Entra Agent IDs&lt;/a&gt;, 26 August 2026, and &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/admin-data-loss-prevention" rel="noopener noreferrer"&gt;Data loss prevention&lt;/a&gt;, 15 May 2026: automatic agent identity, runtime re-validation against ACP and DLP, the Skills with Copilot Studio connector classification&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog, &lt;a href="https://www.microsoft.com/en-us/microsoft-copilot/blog/copilot-studio/new-and-improved-github-copilot-harness-agent-skills-and-richer-context/" rel="noopener noreferrer"&gt;New and improved: GitHub Copilot harness, agent skills, and richer context&lt;/a&gt;, 2 September 2026: GA of the GitHub Copilot harness, preview markers on connected agents, memory, Work IQ and user file upload, workflows and MCP servers as tools&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog, &lt;a href="https://www.microsoft.com/en-us/microsoft-copilot/blog/copilot-studio/new-and-improved-multi-agent-orchestration-connected-experiences-and-faster-prompt-iteration/" rel="noopener noreferrer"&gt;New and improved: multi-agent orchestration, connected experiences, and faster prompt iteration&lt;/a&gt;, 1 April 2026: A2A, Fabric and M365 Agents SDK multi-agent GA, the Ask Microsoft sub-agent pattern, Coca-Cola Beverages Africa&lt;/li&gt;
&lt;li&gt;Microsoft TechCommunity, &lt;a href="https://techcommunity.microsoft.com/blog/copilot-studio-blog/white-paper-choosing-between-the-github-copilot-and-standard-harnesses-in-copilo/4552385" rel="noopener noreferrer"&gt;White paper: choosing between the GitHub Copilot and standard harnesses in Copilot Studio&lt;/a&gt;, September 2026: the harness as operating layer, decision guidance&lt;/li&gt;
&lt;li&gt;Microsoft CAT community blog, &lt;a href="https://microsoft.github.io/mcscatblog/posts/copilot-studio-agent-sandbox/" rel="noopener noreferrer"&gt;The new Copilot Studio agent sandbox&lt;/a&gt;: no outbound network path, Python runtime and preinstalled libraries, non-permanent storage, egress only through knowledge sources and tools. &lt;strong&gt;Not Microsoft Learn&lt;/strong&gt; — treat the no-egress statement as community-sourced until it is published on Learn&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>a2a</category>
      <category>agents</category>
      <category>childagents</category>
      <category>connectedagents</category>
    </item>
    <item>
      <title>Workflows in the Copilot Studio: What the Agent Node Actually Changes</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/workflows-in-the-copilot-studio-what-the-agent-node-actually-changes-ipj</link>
      <guid>https://dev.to/holgerimbery/workflows-in-the-copilot-studio-what-the-agent-node-actually-changes-ipj</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;The earlier articles in this series dealt with agents: the orchestrator, the loop, skills, connected agents. This one is about the other half of the platform. The new workflows experience, the deterministic backbone, and the agent node, which lets a flow hand one step over to an agent that reasons instead of following hard-coded logic.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Status first, because it moved
&lt;/h2&gt;

&lt;p&gt;On 3 August 2026 Ryan Cunningham announced that the capability previewed over the prior two months is “now generally available for production use” under a new name: the GitHub Copilot harness in Copilot Studio. The workflow designer came with it, giving “a visual canvas to understand and edit workflows, including adding agent nodes and running workflow evals”. So the accurate statement is not that a standalone workflow designer shipped GA, it is that the harness the new designer runs on is GA. The Learn page for the agent node says the same thing from the other direction: its features “are used by agents or workflows powered by the GitHub Copilot harness”.&lt;/p&gt;

&lt;p&gt;That scoping matters when you plan. Copilot Studio now runs three harnesses side by side: Copilot Chat for customizing Chat experiences, Standard for conversational, topic-based agents, and the GitHub Copilot harness for complex agentic processes. Microsoft has committed to continued support for the first two, for existing agents and for new authoring. Nothing forces a migration.&lt;/p&gt;

&lt;p&gt;Also GA: computer use since May 2026, with the August update embedding computer-using agents into multi-step workflows, and A2A since April 2026. Still preview: adding a workflow or an MCP server as a tool for an agent. Run-only agent sharing, which lets you give business users the ability to trigger an autonomous agent without maker access, is reported to be in preview, but I could not confirm it on Learn or the Copilot Studio blog, so check its status yourself before you plan around it. Classic agent flows remain GA.&lt;/p&gt;

&lt;p&gt;Budget before you build. Agents on the GitHub Copilot harness “use usage-based billing for all work, regardless of Microsoft 365 Copilot licensing”, priced on the models you pick, the organizational context and tools you attach, and runtime. The maker-side work is billed too: natural language authoring, evaluations and testing fall under the same meter. That is a different economic model from the fixed rate card the Copilot Chat and Standard harnesses stay on, and it is the single most common thing I see teams miss.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually changed
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjxbih03p83vpvqd7fy8t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjxbih03p83vpvqd7fy8t.png" alt="The forced choice between fully structured and fully agentic, converging into one canvas" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure 1: one canvas instead of a choice between fully structured and fully agentic.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The definition of a workflow has not moved. It is a trigger plus at least one action, running a rule-based path where the same input produces the same output. That predictability is why anyone lets a flow touch a financial record.&lt;/p&gt;

&lt;p&gt;You could always call an agent from a classic agent flow. It was one line item in an AI-capabilities submenu, prose in and prose out. The flow was the star and the agent was a service it happened to phone. In the new designer the agent is a node on the canvas, sitting next to “read a SharePoint list” and “send an email”.&lt;/p&gt;

&lt;p&gt;That sounds cosmetic. It is not, and the reason is the plumbing around the node rather than the node itself.&lt;/p&gt;

&lt;h2&gt;
  
  
  The agent node in practice
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpdspoddf9k600jgmzo03.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpdspoddf9k600jgmzo03.png" alt="A Copilot Studio workflow with an agent node as an inline, first-class step among deterministic actions" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure 2: the agent node as a step among the deterministic actions.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;When you drop an agent node you pick one of two things, and this is the part that surprised people who read the May announcements:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;An existing published agent.&lt;/strong&gt; It “runs with whatever instructions, tools, and knowledge it was already configured with”. You give it a Message for this run, with dynamic content from earlier steps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A new agent for this workflow.&lt;/strong&gt; An inline agent whose instructions, tools, knowledge and output shape are configured in the node itself and travel with the workflow. There is no separate Message field; the Instructions field doubles as the per-run prompt.&lt;/p&gt;

&lt;p&gt;Inline agents are not reusable. The docs are blunt about it: an inline agent is scoped to its workflow, and if you build the same one twice you should promote it to a published agent and call that instead. My rule of thumb is that the second time I write the same inline instructions, it becomes a published agent.&lt;/p&gt;

&lt;p&gt;Three settings on that node do more for reliability than anything else:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Output shape.&lt;/strong&gt; You choose a text response, structured output with named fields, or custom structured output matching a JSON schema you define. Pick a structured shape and each field becomes its own dynamic-content token downstream. This is the whole game. A text response drops you back into string parsing. A schema lets the next node branch on &lt;code&gt;priority == "high"&lt;/code&gt; or write straight to a Dataverse column.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Request human assistance when unsure.&lt;/strong&gt; The agent emails the connection owner and waits for a reply before continuing. Turn it on where being wrong costs more than being slow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Work IQ.&lt;/strong&gt; Grounds the agent in the running user’s recent mail, Teams, calendar, OneDrive and SharePoint context. Useful when the workflow acts on behalf of a person. Note the naming drift: Microsoft now also uses Microsoft IQ for the organizational-data connection on the agent side, so do not assume a colleague means the same thing you do.&lt;/p&gt;

&lt;h2&gt;
  
  
  Testing and evaluation, which is where the time goes
&lt;/h2&gt;

&lt;p&gt;Node-level testing is the feature I use most. You open the node’s Test tab, enter inputs manually or reuse inputs from a previous run, and inspect the output without executing the whole flow. Anyone who has debugged a fifteen-step flow by reading run-history JSON knows what that saves.&lt;/p&gt;

&lt;p&gt;Evaluations build on top of a test run. You write test methods in natural language describing what a good response looks like, then get a pass or fail per grader with the evidence behind it. Failed results can come back with suggested improvements. The loop is configure, test, evaluate, improve.&lt;/p&gt;

&lt;p&gt;Know the limits before you plan around them:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Evaluations only work for new agents created in workflows, not for called published agents.&lt;/li&gt;
&lt;li&gt;You cannot select a custom model for evaluations.&lt;/li&gt;
&lt;li&gt;Up to five AI-generated test methods per node, and 20 evaluation runs per node per day.&lt;/li&gt;
&lt;li&gt;Evaluations run against the most recent test output, so change the instructions and you re-test before you re-evaluate.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That last constraint bites during a tuning session. Twenty runs a day disappears faster than you expect when three people are iterating on the same node.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where determinism goes and where judgment goes
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fezv480u24exfx4qq2xyy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fezv480u24exfx4qq2xyy.png" alt="A deterministic backbone that detours up into an agent node and back" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure 3: the backbone stays reliable; the node plugs in where judgment is needed.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is the one decision the platform will not make for you.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Deterministic action when&lt;/th&gt;
&lt;th&gt;Agent node when&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;The rule is stable and expressible as if-then&lt;/td&gt;
&lt;td&gt;The decision needs reasoning over unstructured input&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;The step writes to a system of record&lt;/td&gt;
&lt;td&gt;The step must orchestrate several tools to decide&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;You need same input, same output&lt;/td&gt;
&lt;td&gt;You must pull and combine several sources&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Compliance requires a fixed, provable path&lt;/td&gt;
&lt;td&gt;The input varies too much for a fixed path&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Latency and cost must be predictable&lt;/td&gt;
&lt;td&gt;A person would apply judgment, not a lookup&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The Graebel case Microsoft published is this rule in production. Relocation requests arrive as unstructured emails with unique instructions, attachments and edge cases, so a purely structured automation was too rigid. Their Service Order Agent, built with Copilot Studio and Azure AI, “transforms unstructured service order emails into compliant transactions within Graebel’s globalCONNECT platform, even where no workflow APIs were available”, and escalates exceptions through workflows when needed. Judgment where the input is messy, structure where the process must be governed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Four ways to reach intelligence, and which caller owns the loop
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkw00tdyr3kdc7i0fgyyi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkw00tdyr3kdc7i0fgyyi.png" alt="Four ways intelligence enters a system: agent node, connected agent, skill, and A2A" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure 4: who calls whom.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Teams conflate these constantly. Ask who calls, whose loop runs, and who owns the callee.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mechanism&lt;/th&gt;
&lt;th&gt;Caller to callee&lt;/th&gt;
&lt;th&gt;Whose loop runs&lt;/th&gt;
&lt;th&gt;Use for&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Deterministic action&lt;/td&gt;
&lt;td&gt;Flow to connector&lt;/td&gt;
&lt;td&gt;None, rule-based&lt;/td&gt;
&lt;td&gt;Provable, rule-expressible steps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent node&lt;/td&gt;
&lt;td&gt;Workflow to agent&lt;/td&gt;
&lt;td&gt;The called agent’s, bounded by the flow&lt;/td&gt;
&lt;td&gt;A reasoning point inside a process&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Connected agent&lt;/td&gt;
&lt;td&gt;Agent to specialist agent&lt;/td&gt;
&lt;td&gt;The specialist’s&lt;/td&gt;
&lt;td&gt;Delegation inside the agent runtime&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skill&lt;/td&gt;
&lt;td&gt;Agent to its own behavior&lt;/td&gt;
&lt;td&gt;The calling agent’s&lt;/td&gt;
&lt;td&gt;Behavior reused across agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A2A&lt;/td&gt;
&lt;td&gt;Agent to cross-platform agent&lt;/td&gt;
&lt;td&gt;The remote agent’s&lt;/td&gt;
&lt;td&gt;Foundry, SDK, third-party agents&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The short version: the agent node is the flow’s way to reach an agent, connected agents are an agent’s way to reach an agent. Get it backwards and you rebuild the god-agent problem on a new surface, either as a workflow encoding judgment in an ever-branching condition tree or as an agent stuffed with process logic that belonged in a flow.&lt;/p&gt;

&lt;p&gt;Both directions are now available. Adding a workflow or an MCP server as a tool for an agent is in preview, so the agent-calls-flow half is not yet something I would design a production system around.&lt;/p&gt;

&lt;h2&gt;
  
  
  A worked example: unstructured intake
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuffx7m6v96eyznvr6mtd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuffx7m6v96eyznvr6mtd.png" alt="Unstructured intake rebuilt as a workflow with an agent node, a decision, and human review" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure 5: the flow owns the process and the writes, the node owns the one judgment, a person handles exceptions.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Relocation order, invoice, vendor contract. Same shape every time.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;TRIGGER
  When an email arrives in the intake mailbox
     |
DETERMINISTIC ACTIONS (provable, auditable)
  - Save the message and attachments to the case store
  - Create a case record in Dataverse (status = "received")
     |
AGENT NODE (the one reasoning point)
  - Reads the email and attachments
  - Classifies the request, extracts fields, flags edge cases
  - Returns CUSTOM STRUCTURED OUTPUT against a schema:
    {category, fields[], exceptions[], confidence}
  - "Request human assistance when unsure" is on
     |
DETERMINISTIC BRANCH (structure resumes)
  - High confidence and no exceptions -&amp;gt; file and advance
  - Otherwise -&amp;gt; human review node
     |
DETERMINISTIC ACTIONS
  - Write the outcome to the system of record (idempotent)
  - Notify the requester, close or route the case

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Read the control flow. The flow owns the process and every write. The node owns the single judgment no condition tree could hold, and it hands back a schema-shaped result rather than prose. The human review node keeps a person on the branch that costs money.&lt;/p&gt;

&lt;p&gt;The output schema is what makes this hold together. Without it, the next node is parsing free text and you have moved the fragility rather than removed it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Boundaries I check before shipping
&lt;/h2&gt;

&lt;p&gt;Everything from the earlier articles still applies: least privilege, idempotent writes, audit, treating imported agents and skills as supply-chain dependencies. The node adds four checks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do not claim determinism across the node.&lt;/strong&gt; A workflow with an agent node is only as deterministic as its deterministic parts. Keep every side-effecting write in a deterministic action with an idempotency key, after the node returns and, where it matters, after a person has looked. The node decides, the deterministic step commits.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Untrusted content enters through the node.&lt;/strong&gt; The node ingests whatever the flow hands it: an email body, an uploaded document, a portal field. That is the same surface as CVE-2026-21520, the “ShareLeak” indirect prompt injection rated CVSS 7.5, where an unauthenticated attacker planted a fake system-role instruction in a public SharePoint form field. Microsoft patched it on 15 January 2026, but in Capsule Security’s follow-up testing data still exfiltrated, which is the more useful lesson: treat the patch as a floor, not a control. Validate payloads, never let free-text content override instructions, keep human review on consequential branches.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cost compounds.&lt;/strong&gt; Usage-based billing covers building, testing and evaluating, not just running. An agent node in a loop over the day’s meetings is a different cost profile from one node on an intake trigger. Do not put a node where a deterministic action would do.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Identity and sharing.&lt;/strong&gt; Starting in July 2026, Copilot Studio automatically creates an Entra Agent ID for every new agent and you can no longer opt out at the environment level. Plan for it rather than discovering it. If the point of the automation is to let business users trigger it, run-only sharing is the mechanism to watch, though I have not been able to confirm its status in Microsoft’s own documentation.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would tell a team starting today
&lt;/h2&gt;

&lt;p&gt;Build on the new canvas if the work is a multi-step process with ambiguous decision points. That is what the GitHub Copilot harness is for, and it is GA. If you are customizing a Chat experience or shipping a topic-based conversational agent, the Copilot Chat and Standard harnesses are still the right answer and still supported. Pick the harness before you pick the canvas.&lt;/p&gt;

&lt;p&gt;Start with the backbone. Write the deterministic steps first, run them, then find the one place a rule cannot express the decision and put the node there. Working the other way around produces an agent with a flow bolted on.&lt;/p&gt;

&lt;p&gt;Define the output schema before you write the instructions. It forces you to state what the downstream steps actually need, and it usually shortens the instructions.&lt;/p&gt;

&lt;p&gt;Use inline agents for the first version and promote to a published agent the moment a second workflow wants the same reasoning.&lt;/p&gt;

&lt;p&gt;Test the node in isolation before you run the flow, and budget the evaluation limits into your tuning session.&lt;/p&gt;

&lt;p&gt;The backbone stays boring. The reasoning plugs in where it earns its place. That is the whole design.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/workflows-experience/agent-node-workflow" rel="noopener noreferrer"&gt;Add an agent node to a workflow&lt;/a&gt;, last updated 22 July 2026: existing versus inline agents, instructions and message fields, tools and knowledge, output shapes, Work IQ, request human assistance, node testing and evaluations with their limits, usage-based billing note&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog, &lt;a href="https://techcommunity.microsoft.com/blog/copilot-studio-blog/more-powerful-agents-and-workflows-for-autonomous-business-processes-introducing/4542969" rel="noopener noreferrer"&gt;More powerful agents and workflows for autonomous business processes: Introducing a new harness for Copilot Studio&lt;/a&gt;, Ryan Cunningham, 3 August 2026: GA of the GitHub Copilot harness, the workflow designer with agent nodes and workflow evals, the three-harness model, usage-based billing&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/whats-new" rel="noopener noreferrer"&gt;What’s new in Copilot Studio&lt;/a&gt;: computer use GA May 2026, A2A GA April 2026, Microsoft IQ, automatic Entra Agent ID from July 2026, workflow and MCP server as agent tools in preview&lt;/li&gt;
&lt;li&gt;Microsoft Learn, &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/flows-overview" rel="noopener noreferrer"&gt;Agent flows overview&lt;/a&gt;: the classic experience, trigger and action anatomy, the deterministic contract&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog, &lt;a href="https://www.microsoft.com/en-us/microsoft-copilot/blog/copilot-studio/new-and-improved-computer-using-agents-a-new-workflows-experience-and-real-time-voice-experiences/" rel="noopener noreferrer"&gt;New and improved: Computer-using agents, a new workflows experience, and real-time voice experiences&lt;/a&gt;: the redesigned canvas, agent nodes, inline AI actions, remote MCP support, the Graebel Service Order Agent&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog, &lt;a href="https://www.microsoft.com/en-us/microsoft-copilot/blog/copilot-studio/new-and-improved-agent-governance-intelligent-workflows-and-connected-app-experiences/" rel="noopener noreferrer"&gt;New and improved: Agent governance, intelligent workflows, and connected app experiences&lt;/a&gt;: the deterministic definition of workflows, embedding agents in them&lt;/li&gt;
&lt;li&gt;Microsoft Adoption, &lt;a href="https://enablement.microsoft.com/en-us/ai-agents/transformation-stories/graebel/" rel="noopener noreferrer"&gt;Graebel uses governed automation to modernize global relocation service orders with Microsoft Copilot Studio&lt;/a&gt;, last updated 21 July 2026&lt;/li&gt;
&lt;li&gt;VentureBeat, &lt;a href="https://venturebeat.com/" rel="noopener noreferrer"&gt;Microsoft patched a Copilot Studio prompt injection. The data exfiltrated anyway&lt;/a&gt;, Louis Columbus, 15 April 2026, and the NVD entry for CVE-2026-21520, for the ShareLeak disclosure timeline and severity&lt;/li&gt;
&lt;li&gt;Community coverage, treat as commentary and verify on Learn: RPABOTS.WORLD, &lt;em&gt;Copilot Studio Rebuilt: Workflow Designer GA, CUA, and Run-Only Sharing Explained&lt;/em&gt;, August 2026, and WindowsForum’s thread on run-only agent sharing, which is the only place I found that capability described. Note that these also describe the 3 August release as a standalone Workflow Designer GA; Microsoft’s own announcement frames it as the GitHub Copilot harness reaching GA with the workflow designer included&lt;/li&gt;
&lt;li&gt;Prior articles in this series, for the agent-first model, the orchestration patterns, and the skills versus connected agents boundary&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>a2a</category>
      <category>agentflows</category>
      <category>agentnode</category>
      <category>agents</category>
    </item>
    <item>
      <title>Microsoft Copilot Cowork in Practice</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/microsoft-copilot-cowork-in-practice-4pf9</link>
      <guid>https://dev.to/holgerimbery/microsoft-copilot-cowork-in-practice-4pf9</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;In short&lt;/strong&gt; Cowork went from preview to worldwide general availability in about three months, and most of the guidance still circulating is from the preview era. This is what I have run into since then: the enablement path, the Anthropic decision European tenants have to make, what the skills do well, and where they stop.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;I keep this post updated in my own blog&lt;/strong&gt; &lt;/p&gt;

&lt;h2&gt;
  
  
  What Cowork actually is
&lt;/h2&gt;

&lt;p&gt;For two years we used AI to help with work: draft the mail, summarise the thread, sketch the deck. Cowork does the task instead. You describe an outcome, it plans the steps, executes them across your tenant, and stops for your approval before anything leaves it.&lt;/p&gt;

&lt;p&gt;Under the hood it is an agentic orchestration layer inside Microsoft 365 Copilot. It reasons across calendar, mail, files, and Teams content through Work IQ, shows its progress step by step, and lets you pause, resume, or cancel mid-run.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The mental model I use with customers.&lt;/strong&gt; Brief it like a colleague, approve like an auditor. The output is a finished task, not text.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Status, licensing, availability
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Copilot Cowork reached worldwide general availability on 16 June 2026.&lt;/strong&gt; Anything you read that calls it “Frontier opt-in only” predates that.&lt;/p&gt;

&lt;h3&gt;
  
  
  How you get it
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;License.&lt;/strong&gt; A Microsoft 365 Copilot license is required.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Off by default.&lt;/strong&gt; Admins decide when to switch it on and for whom. Staged, not automatic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Billing.&lt;/strong&gt; Usage-based via Copilot Credits (pay-as-you-go, roughly $0.01 per credit), with a pre-commit discount option. Tenant, group, and user spending limits, alerts, and usage reporting are available.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bundled route.&lt;/strong&gt; Cowork-class capability is also in Microsoft 365 E7, the Frontier Suite tier (see below).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where it runs
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Web:&lt;/strong&gt; &lt;code&gt;m365.cloud.microsoft&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Desktop:&lt;/strong&gt; the Microsoft 365 Copilot app for Windows and Mac&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mobile:&lt;/strong&gt; the Microsoft 365 Copilot app for iPhone and Android (new since spring, when mobile was unsupported)&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Acts on, not runs in.&lt;/strong&gt; Cowork sends Outlook mail and posts to Teams, but you launch it from the Microsoft 365 Copilot app, not as an add-in inside Teams or Outlook. Older notes saying it “runs in Teams and Outlook” mean “acts on”.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  The models
&lt;/h3&gt;

&lt;p&gt;Cowork is multi-model and the lineup has already moved since GA. Today the picker offers &lt;strong&gt;Claude Opus 4.8&lt;/strong&gt; , &lt;strong&gt;Claude Sonnet 5&lt;/strong&gt; (which replaced Sonnet 4.6 at GA as the efficient everyday choice), the &lt;strong&gt;Sonnet+Opus Advisor&lt;/strong&gt; pairing, &lt;strong&gt;GPT 5.5&lt;/strong&gt; , and &lt;strong&gt;Claude Fable 5&lt;/strong&gt; in preview. Image generation runs on ChatGPT Images 2.0. The fine-tuned “Cowork 1” model was announced as coming soon in June and has not shipped yet, so do not build a business case on it.&lt;/p&gt;

&lt;p&gt;Leave the picker on Auto and Cowork chooses. Two things deserve an admin’s attention: Fable 5 is off by default and has to be turned on in Copilot settings, and it is one of the preview models that require data retention by the model provider, which is a different contractual track from the subprocessor arrangement (next section). The residency consequence of the Anthropic dependency is the section after that, and for European tenants it is the one that decides the project.&lt;/p&gt;

&lt;h2&gt;
  
  
  Enabling it
&lt;/h2&gt;

&lt;p&gt;Short sequence, but the mechanism changed at GA and this is where preview-era runbooks now fail. Cowork is no longer managed under All Agents &amp;gt; Cowork, and the agent-based access control from the preview no longer governs who can use it. Access hangs off billing instead: admins enable usage-based billing, and that is what opens Cowork to users.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Licensing.&lt;/strong&gt; Target users hold a Microsoft 365 Copilot license.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enable usage-based billing&lt;/strong&gt; in the Microsoft 365 admin center, with Copilot Credits and spending limits configured before anyone starts. This is the step that grants access, not a Cowork on/off switch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Set discoverability and scope access.&lt;/strong&gt; Decide whether Cowork is discoverable to end users, and scope through security groups. If you make it discoverable without enabling billing, users can request access from inside the app and you approve or decline on policy, cost, and compliance. Pilot rings first.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decide the Anthropic setting.&lt;/strong&gt; Default in most commercial clouds, a deliberate opt-in for EU, EFTA, and UK.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pre-decide governance:&lt;/strong&gt; sensitivity labels, your approved-use matrix, audit and SIEM telemetry. Note what is not yet on the menu: Purview data loss prevention is still not supported for Cowork, so do not plan a control around it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open Cowork.&lt;/strong&gt; Web, desktop, or mobile app, then select Cowork.&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;First run.&lt;/strong&gt; A chat input, a side panel for files, suggested prompts (&lt;em&gt;Catch me up&lt;/em&gt;, &lt;em&gt;Organize my inbox&lt;/em&gt;, &lt;em&gt;Prep for a meeting&lt;/em&gt;), a &lt;strong&gt;Tasks&lt;/strong&gt; view in the navigation, and an output panel where generated files land.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To take it away again, scope through the same security groups or manage availability in Copilot settings. Group-based and reversible.&lt;/p&gt;

&lt;h2&gt;
  
  
  What “subprocessor” means here
&lt;/h2&gt;

&lt;p&gt;For most tenants the Anthropic dependency is invisible plumbing. What your legal team cares about is the contract behind it.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Subprocessor status.&lt;/strong&gt; Anthropic operates as a Microsoft subprocessor under Microsoft’s Product Terms and Data Protection Addendum. Breach notification, incident response, and data-handling obligations run through Microsoft, not through a separate Anthropic agreement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Copyright cover.&lt;/strong&gt; Microsoft’s Customer Copyright Commitment applies to Anthropic models inside the products it covers, including Microsoft 365 Copilot and Copilot Studio.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;There is a second track, and it matters.&lt;/strong&gt; Some newer Anthropic models are offered as “preview models with data retention”. For those, Anthropic acts as an &lt;strong&gt;independent data processor, not a Microsoft subprocessor&lt;/strong&gt; , under Anthropic’s own commercial terms and DPA. They are off by default everywhere, including in regions where the other Anthropic models are on by default, and they have to be enabled separately. Claude Fable 5 in Cowork’s picker is one of them, so this is live, not theoretical.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;What retention means there.&lt;/strong&gt; Anthropic, not Microsoft, stores most inputs and outputs for up to 30 days. Content flagged by Anthropic’s trust and safety classifiers can be held for up to two years, and classification scores for up to seven. Cowork shows a banner while such a model is selected. Anthropic does not use retained data for training without your express permission. If your legal position rests on the Product Terms and DPA, that position does not cover these models.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why two providers.&lt;/strong&gt; Pairing a drafting model with a reviewing model from another vendor is the same idea behind Researcher’s Critique capability.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  EU Data Boundary and the Anthropic switch
&lt;/h2&gt;

&lt;p&gt;In every EU project I have run, this is the decision that sets the timeline. Microsoft made it an explicit, informed choice rather than a hidden default, which is helpful, because you can document it.&lt;/p&gt;

&lt;h3&gt;
  
  
  The facts, current as of August 2026
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Anthropic is a Microsoft subprocessor under the Product Terms and DPA.&lt;/li&gt;
&lt;li&gt;Anthropic-processed requests are &lt;strong&gt;currently excluded from the EU Data Boundary&lt;/strong&gt; and, where applicable, from in-country processing commitments.&lt;/li&gt;
&lt;li&gt;For &lt;strong&gt;EU, EFTA, and UK tenants, Anthropic models are off by default&lt;/strong&gt;. An administrator opts in. The setting appears, but it is set to “No users”.&lt;/li&gt;
&lt;li&gt;If you opted in previously under Anthropic’s separate commercial terms, &lt;strong&gt;you have to opt in again&lt;/strong&gt;. The toggle went back to off.&lt;/li&gt;
&lt;li&gt;Preview models with data retention stay off even after you opt in. They are a separate switch and a separate contract.&lt;/li&gt;
&lt;li&gt;Cowork does most of its reasoning, drafting, and tool work on Anthropic models. So for a European organisation, enabling Anthropic is in practice the enabling step.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where the setting lives
&lt;/h3&gt;

&lt;p&gt;Microsoft 365 admin center → &lt;strong&gt;Copilot → Settings → View all → “AI providers operating as Microsoft subprocessors”&lt;/strong&gt;. Select Anthropic and save. You need the AI Administrator or Global Administrator role. (Older notes call the sub-node “Data Access”. The current path is “View all”.)&lt;/p&gt;

&lt;h3&gt;
  
  
  How I run the enablement
&lt;/h3&gt;

&lt;p&gt;Treat it as a governed project with six steps. Done once, they hold for the life of the rollout.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Confirm the contractual position.&lt;/strong&gt; Ask your Microsoft account team for written confirmation that Anthropic is engaged as a subprocessor under the Product Terms and DPA, and file it in the vendor risk register.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Document lawful basis and transfer mechanism.&lt;/strong&gt; Processing happens outside the EU Data Boundary, so record the data flow in your RoPA and apply the same transfer discipline you use for other non-EUDB services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Define an approved-use matrix.&lt;/strong&gt; Which roles, business units, and data classifications may use Anthropic-routed features. Start where value is high and sensitivity is moderate: drafting, research, summarising non-regulated content.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use the controls that actually exist.&lt;/strong&gt; Sensitivity labels are supported and are inherited by the documents Cowork creates, with the highest-priority label winning when several sources are used. So are DSPM for AI, auditing, Insider Risk Management, communication compliance, eDiscovery, and data lifecycle management. &lt;strong&gt;Data loss prevention, data classification, and Compliance Manager are not supported for Cowork.&lt;/strong&gt; Build the guardrail out of labels and detection, not DLP, and test it end-to-end before you widen the ring.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Turn on telemetry.&lt;/strong&gt; Prompts and responses land in the unified audit log, along with events like starting a conversation, adding or sharing a skill or plugin, running a scheduled prompt, starting a browser task, uploading a file, and Cowork writing an artifact to OneDrive. Pull those into your SIEM and validate coverage during the ramp.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Roll out in rings.&lt;/strong&gt; Informed pilot, feedback, expand. The opt-in is reversible and group-scoped.&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The framing that gets a yes.&lt;/strong&gt; The Anthropic toggle is a contractual and governance decision, not a technical one. Once those six steps are done, you can approve Cowork with a compliance story you can defend and an audit trail to back it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Two things European admins get wrong
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;What “off” actually means.&lt;/strong&gt; Copilot’s base models are OpenAI GPT and Anthropic sits on top as an opt-in layer. Microsoft’s wording is that some features are only available when Anthropic models are enabled, and that certain features may no longer be accessible if you turn Anthropic off. Since Cowork does most of its work on Anthropic models, expect it to be unavailable or badly degraded rather than quietly falling back to GPT 5.5. Tell your users that before they file the ticket.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The EU app-level setting (3 April 2026).&lt;/strong&gt; A separate switch, “Copilot in M365 apps with Anthropic models in EU/EFTA and UK”, makes Anthropic the default model for Copilot in Word, Excel, and PowerPoint. It is on by default only for tenants created after 25 March 2026; older tenants should check the Message Center. It still routes data outside the EU Data Boundary, so it belongs in the same governance story.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 13 built-in skills
&lt;/h2&gt;

&lt;p&gt;Cowork’s behaviour is packaged as &lt;strong&gt;skills&lt;/strong&gt; the agent loads on demand, using the open Agent Skills format. You do not pick one. Cowork matches your prompt against each skill’s description, then streams what it is doing (“Preparing to create Word documents”, “Composing your email”). Naming a skill works too: &lt;em&gt;“Use the Deep Research skill to compare these three proposals.”&lt;/em&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Skill&lt;/th&gt;
&lt;th&gt;What it does&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Word&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Create and edit Word documents end-to-end.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Excel&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Build and edit spreadsheets, including formulas.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;PowerPoint&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Generate decks from content or templates.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;PDF&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Produce PDFs, including from other formats; read PDFs as input.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Email&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Read, draft, and send Outlook mail, with approval.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Scheduling&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Find times, send invites, manage RSVPs.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Calendar Management&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Review and reorganise calendar entries, defend focus time.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Meetings&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Prep, summarise, extract action items.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Daily Briefing&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Assemble an overview from email, calendar, and Teams.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Enterprise Search&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Search your Microsoft 365 environment, with citations.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Communications&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Draft audience-tailored updates, announcements, escalations.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Deep Research&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Multi-step investigation across attached and indexed sources.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Adaptive Cards&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Render structured output as visual cards.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Beyond that list, Cowork also generates images (ChatGPT Images 2.0, saved to your session and your OneDrive output folder) and, in Frontier, can drive a local Edge browser to finish web tasks using the sign-ins you already have. The browser tab runs on your machine, so your existing conditional access, DLP, and browsing policies apply, a tenant setting called Cowork Browsing turns the capability on or off, and every browser task is written to the unified audit log.&lt;/p&gt;

&lt;p&gt;Still not there: no built-in Power BI skill, though the Fabric IQ plugin brings Power BI and Fabric data into Cowork. No access to files on your local disk. Third-party tools arrive through plugins rather than as built-in skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  Custom skills with SKILL.md
&lt;/h2&gt;

&lt;p&gt;The 13 are the floor. Each user can add up to &lt;strong&gt;50 custom skills&lt;/strong&gt; as &lt;code&gt;SKILL.md&lt;/code&gt; files.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where they live.&lt;/strong&gt; OneDrive, under &lt;code&gt;/Documents/Cowork/skills/&lt;/code&gt;, one subfolder per skill with a &lt;code&gt;SKILL.md&lt;/code&gt; inside, for example &lt;code&gt;/Documents/Cowork/skills/weekly-report/SKILL.md&lt;/code&gt;. Cowork picks them up at the start of each session, no admin toggle. Added one mid-session? Start a new task.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The file is no longer the only route.&lt;/strong&gt; Since GA there is a Customize page that hosts your skills and your plugins in one place. You can build a skill through a guided conversation, upload one as &lt;code&gt;.md&lt;/code&gt;, &lt;code&gt;.zip&lt;/code&gt;, or &lt;code&gt;.skill&lt;/code&gt;, and share a skill or plugin with specific people, re-sharing to push updates. I still author in the file and use the page for distribution, because a file in Git is reviewable and a guided conversation is not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anatomy.&lt;/strong&gt; YAML frontmatter with &lt;code&gt;name&lt;/code&gt; and &lt;code&gt;description&lt;/code&gt;, then Markdown instructions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;weekly-report&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Compiles a weekly status report from my calendar, email, and Teams&lt;/span&gt;
  &lt;span class="s"&gt;activity. Use when I ask for "my weekly report" or "wrap up the week."&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

&lt;span class="c1"&gt;# Weekly Report&lt;/span&gt;

&lt;span class="s"&gt;When invoked, do the following&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;

&lt;span class="s"&gt;1. Pull all meetings I attended in the past 7 days from my calendar.&lt;/span&gt;
&lt;span class="s"&gt;2. Identify action items I committed to, from meeting notes and follow-up emails.&lt;/span&gt;
&lt;span class="s"&gt;3. List open items still awaiting my response.&lt;/span&gt;
&lt;span class="s"&gt;4. Summarise key decisions made in Teams channels I own.&lt;/span&gt;

&lt;span class="c1"&gt;## Output&lt;/span&gt;
&lt;span class="s"&gt;Produce a Word document titled "Weekly Report, [date range]" and save it to&lt;/span&gt;
&lt;span class="s"&gt;/Documents/Reports/Weekly/. Cap each section at 6 bullets; use a direct tone.&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The description does the work.&lt;/strong&gt; Cowork decides when to invoke a skill from the &lt;code&gt;description&lt;/code&gt; field alone. “Helps with reports” gets ignored or fires at the wrong moment. “Use when I ask for my weekly report or ‘wrap up the week’” fires reliably. Put the trigger phrase in the description. This is the single most common fix I make to other people’s skills.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;The standard behind it.&lt;/strong&gt; &lt;code&gt;SKILL.md&lt;/code&gt; is the open Agent Skills standard, originally from Anthropic and now supported by Claude Code, VS Code Copilot, Gemini CLI, Cursor, JetBrains Junie, and 30 or more other tools. Examples at &lt;a href="https://github.com/anthropics/skills" rel="noopener noreferrer"&gt;github.com/anthropics/skills&lt;/a&gt;, spec at &lt;a href="https://agentskills.io/home" rel="noopener noreferrer"&gt;agentskills.io&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Limits worth knowing: custom skills are &lt;strong&gt;not validated by Microsoft&lt;/strong&gt; , so review their output, especially anything that mails externally or edits shared content. They cannot bypass approvals, and they cannot reach data the user could not already open.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prompts that hold up
&lt;/h2&gt;

&lt;p&gt;Skills work best when you brief an outcome and let Cowork assemble the steps. Patterns I keep reusing:&lt;/p&gt;

&lt;h3&gt;
  
  
  Email
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;“Read my unread emails from the past 24 hours. Group them by project. For anything from marketing about the spring campaign, draft a reply summarising the latest results from the attached CSV and propose a 30-minute review next Tuesday between 10 and 12. Show me each draft before sending.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It triages, drafts from the thread plus attachments, and prompts before each send. &lt;em&gt;“Catch me up on the Acme account”&lt;/em&gt; quietly combines Email, Enterprise Search, and Meetings into one brief.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scheduling and calendar hygiene
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;“Find 30 minutes next week with Sarah, Tom, and me. Avoid Mondays. Book a room if available, send the invite ‘Spring campaign review’ with an agenda I’ll dictate, and propose two backup times.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Review next week’s calendar. Flag back-to-backs longer than 3 hours, identify meetings without a clear agenda, and propose declines for anything I’m only optional on. Show me the proposals before acting.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Scheduling moves things forward, Calendar Management cleans up. Both improve sharply with explicit constraints. Private events are respected and never surfaced.&lt;/p&gt;

&lt;h3&gt;
  
  
  Meetings and briefings
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;“Prepare me for Monday’s quarterly review with the CISO. Pull her last month of meetings with my team, open action items from those notes in Teams, and status updates sent via email. Produce a one-page briefing I can share 24 hours in advance.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Daily Briefing is the obvious scheduled prompt: &lt;em&gt;“Every weekday at 7:00 AM, run my morning briefing and save it to /Documents/Briefings/.”&lt;/em&gt; Easiest automation to set up, best return per minute invested.&lt;/p&gt;

&lt;p&gt;Since July there is a second kind of automation worth knowing: &lt;strong&gt;event-driven tasks&lt;/strong&gt; that fire when a matching email arrives or a Teams message is posted, including when you are @mentioned. You describe what to watch for, Cowork proposes the automation, you confirm it. Both kinds run with your permissions, still ask for approval before sending or posting unless you pre-authorise, carry rate limits and loop protection, and show up on the same Scheduled page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Documents
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;“Draft a 2-page board memo on Q1 results. Use the attached financial summary and the previous board memo as references. Direct tone, no jargon. Save to /Documents/Board/.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Document skills produce real files in OneDrive or SharePoint, not inline text. They show up in the side panel and persist afterwards; &lt;strong&gt;Download All&lt;/strong&gt; grabs a session’s outputs as a zip. Chains are common: &lt;em&gt;“build the deck, save it to OneDrive, and post a link in #leadership”&lt;/em&gt; touches three skills, and each external action is approved separately.&lt;/p&gt;

&lt;h3&gt;
  
  
  Search and research
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;“Run a competitive analysis of our top three competitors using the product team’s research files and the industry reports in /SharePoint/Industry. Produce a Word document with an executive summary and an Excel comparison matrix. Flag capability gaps. Use Critique.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Enterprise Search is the broad sweep across mail, calendar, files, Teams, OneNote, and SharePoint, answering with citations and bounded by existing permissions. Deep Research is the multi-step synthesis, optionally routed through Researcher’s Critique. Treat the citations as your audit trail for anything you forward outside the company.&lt;/p&gt;

&lt;h2&gt;
  
  
  Approvals, pause, and the Tasks view
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Approvals.&lt;/strong&gt; Before sending mail, posting in Teams, or scheduling a meeting, Cowork shows a preview of the content (recipients, subject, body, time, channel), a risk-level indicator for medium and high risk actions, and a &lt;strong&gt;Show parameters&lt;/strong&gt; option for the technical detail.&lt;/p&gt;

&lt;p&gt;You then hit the action button, open the dropdown next to it to approve and skip similar prompts for the rest of the session, or cancel. For mail and Teams messages the dropdown is scoped: skip only for one recipient, only for a domain, or always for that action. Use the narrowest scope that gets you through the task, and never widen it in a conversation touching external recipients.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pause and resume.&lt;/strong&gt; Pause finishes the current step and halts, a hard pause stops immediately, resume continues, cancel ends the task. Lose the network and it reconnects and picks up where it stopped.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tasks is your working record.&lt;/strong&gt; Two views: Recent, in reverse chronological order with filters for In progress, Needs input, Done, and Failed, and Scheduled, which appears once you have at least one scheduled prompt or event-driven task and lets you edit, pause, resume, or delete each. Click any task to jump back into its session. When Cowork needs something from you, the status reads &lt;em&gt;Needs user input&lt;/em&gt; until you answer. For the actual audit trail, go to the unified audit log, not this view.&lt;/p&gt;

&lt;h2&gt;
  
  
  Grounding it properly
&lt;/h2&gt;

&lt;p&gt;Output quality tracks context almost linearly. A vague prompt against an empty workspace gives generic text. The same prompt with three well-chosen attachments gives something you can send.&lt;/p&gt;

&lt;p&gt;Three ways to add context: drag and drop from your device, use &lt;strong&gt;Add work context&lt;/strong&gt; to pull files, people, meetings, and chats from OneDrive, SharePoint, or Teams, or reference a path in the prompt (“use &lt;code&gt;/Documents/Brand/guide.pdf&lt;/code&gt;”).&lt;/p&gt;

&lt;p&gt;What has measurably lifted quality for my customers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A brand and tone kit.&lt;/strong&gt; One folder with the style guide, a sample memo, and a glossary. &lt;em&gt;“Match the tone and structure of the attached memo.”&lt;/em&gt; The output starts reading like your team.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A context pack per recurring task.&lt;/strong&gt; For a weekly report: last period’s deliverable, a definitions file, the data source. Attach the folder and the output stays consistent across cycles.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Source pinning.&lt;/strong&gt; &lt;em&gt;“Only state facts from the attached document. Flag anything I need to verify separately.”&lt;/em&gt; This is the cheapest hallucination control available.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Hard numbers.&lt;/strong&gt; Attachments under &lt;strong&gt;200 MB&lt;/strong&gt; each. Prompts up to &lt;strong&gt;250,000 characters&lt;/strong&gt;. Files must sit in OneDrive, SharePoint, or Teams, with no local-drive access. Cowork &lt;strong&gt;cannot read encrypted files&lt;/strong&gt; , even ones you can open yourself. Work IQ grounds it automatically and within permissions, but explicit attachments are per-task and are not re-read later, so reattach or reference the path.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Limits
&lt;/h2&gt;

&lt;p&gt;Lead with these in your enablement material. Users should meet the boundaries in training, not on a Friday afternoon.&lt;/p&gt;

&lt;p&gt;By design: no local file access, no file deletion in OneDrive or SharePoint (Cowork creates and edits, users delete), no reading encrypted files, no Microsoft validation of custom skills, 200 MB per attachment and 250,000 characters per prompt.&lt;/p&gt;

&lt;p&gt;Regional and governance: Anthropic off by default in EU, EFTA, and UK with admin opt-in, and a fresh opt-in required if you had enabled it under Anthropic’s own terms before; preview models with data retention off everywhere until separately enabled; only non-federal GCC can opt in among government clouds, processed outside the FedRAMP-authorised US Government cloud, with federal GCC, GCC High, DoD, and other sovereign clouds excluded and no toggle shown; use limited to Anthropic-supported countries and regions.&lt;/p&gt;

&lt;p&gt;Compliance surface: supported today are DSPM and DSPM for AI, auditing, sensitivity labels including inheritance, encryption without labels, Insider Risk Management, communication compliance, eDiscovery, and data lifecycle management. &lt;strong&gt;Not supported: data loss prevention, data classification, and Compliance Manager.&lt;/strong&gt; Cowork interactions also show in activity explorer but not on the Apps and agents dashboard or the AI observability page. Validate your own coverage before you rely on any of it as regulatory evidence.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The trade honestly stated.&lt;/strong&gt; Cowork gives up some autonomy and breadth in exchange for keeping AI-driven actions inside auditable, policy-governed, compliance-covered infrastructure. For regulated enterprises that trade is the reason to buy it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Re-check monthly:&lt;/strong&gt; the model lineup, which turned over inside two months at GA; the skill list and custom-skill cap; regional availability and the EU, preview-model, and GCC settings; billing; the plugin catalogue; and whether DLP support for Cowork has landed. It was announced as coming at GA and as of mid-August it still has not.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is coming: E7, Agent 365, Researcher, plugins
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Microsoft 365 E7, the Frontier Suite.&lt;/strong&gt; Generally available &lt;strong&gt;1 May 2026 at $99 per user per month&lt;/strong&gt;. It bundles E5, the Entra Suite, Microsoft 365 Copilot including Cowork, and Agent 365. Microsoft’s own pitch is that the suite costs less than buying those parts separately, so the business case rests on whether you would have bought Agent 365 governance and Cowork-class capability anyway.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent 365, the control plane for agents.&lt;/strong&gt; Generally available &lt;strong&gt;1 May 2026&lt;/strong&gt; , $15 per user per month standalone or included in E7. It extends Microsoft’s user-management stack to AI agents: central identity, security, and compliance across Copilot Studio agents, custom agents, partner agents, and Cowork itself. Some parts, including shadow-agent discovery and Windows 365 for Agents, are still preview. Start your agent inventory now, even if it is Cowork plus two Copilot Studio agents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Researcher with Critique.&lt;/strong&gt; One model drafts, a second model from a different provider reviews for accuracy, completeness, and citation integrity. Microsoft reports a &lt;strong&gt;DRACO score of 57.4, about 13.8% above single-model approaches&lt;/strong&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Read that benchmark carefully.&lt;/strong&gt; Those figures are Microsoft’s own evaluation, not independently verified, and I could not trace them to a current primary Microsoft source when I last checked. The baseline is also described slightly differently across Microsoft’s materials. If you quote it, say “Microsoft-reported” and do not hang a decision on it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Plugins.&lt;/strong&gt; At GA, Cowork opened to partner plugins with nine live: Enosix, Harvey, LSEG, Miro, monday.com, Moody’s, Morningstar, S&amp;amp;P Global Energy, and TeamsMaestro. Adobe, Atlassian, Box, Canva, CB Insights, Databricks, MoneyForward, and Templafy were announced as next. On the Microsoft side, Fabric IQ and the Dynamics 365 Sales, Customer Service, and ERP plugins are GA, with Sales and Customer Service enabled by default and disableable in the admin center. The catalogue moves, so check the App Store rather than any list, including this one. Plugins are how third-party tools reach Cowork, built on the same package format and skill standard as your own &lt;code&gt;SKILL.md&lt;/code&gt; files, and admins control which ones are visible. Since June you can also upload your own plugin package and share skills and plugins with named colleagues, so a curated team library is worth starting now.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checklist
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Admins standing up Cowork:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Confirm Copilot licenses, then enable usage-based billing with Copilot Credits, spending limits, and alerts in place first.&lt;/li&gt;
&lt;li&gt;Set discoverability, scope access to a pilot security group, and decide how you handle access requests.&lt;/li&gt;
&lt;li&gt;Make the Anthropic decision using the six steps above, documented, and decide separately whether preview models with data retention are allowed at all.&lt;/li&gt;
&lt;li&gt;Test sensitivity labels and their inheritance end-to-end, wire the audit log into your SIEM, and note that DLP does not yet cover Cowork.&lt;/li&gt;
&lt;li&gt;Publish an approved-use matrix and a short user guide that leads with the limits.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Your first two weeks as a user:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set up one scheduled Daily Briefing and refine its format.&lt;/li&gt;
&lt;li&gt;Build one custom skill, starting with &lt;code&gt;weekly-report&lt;/code&gt;, and sharpen its description.&lt;/li&gt;
&lt;li&gt;Run one document workflow with grounding attachments end-to-end.&lt;/li&gt;
&lt;li&gt;Use the Tasks view as your audit trail and approve external actions deliberately.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Where this leaves you
&lt;/h2&gt;

&lt;p&gt;Cowork closes the gap between deciding something needs doing and it being done. The briefing that cost thirty minutes of tab-switching is drafted before your first coffee. The weekly report that depended on one person remembering scattered threads gets assembled, cited, and formatted by a scheduled skill. That payoff shows up for teams that invest in the setup: sharp skill descriptions, grounded attachments, disciplined approvals.&lt;/p&gt;

&lt;p&gt;The obligations come with it. Every action Cowork takes goes out under your name and your organisation’s compliance posture. The subprocessor decision, the DLP wiring, the label hygiene, the spending limits: none of that is governance theatre, it is what makes the capability safe to scale.&lt;/p&gt;

&lt;p&gt;In Europe there is one more layer. The EU AI Act and GDPR do not block Cowork, they require documented intent. Enabling third-party models deliberately, keeping audit trails, and telling employees what is happening is work you can show to customers, regulators, and candidates.&lt;/p&gt;

&lt;p&gt;So: start narrow, learn fast, govern from day one, expand on evidence. One team, one skill, one scheduled briefing, two weeks. Then read the Tasks log, fix the prompts, add the next use case. The organisations that will look back at 2026 as a turning point are not the ones with the broadest rollout. They are the ones that built the smallest trustworthy foundation first.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Microsoft:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/" rel="noopener noreferrer"&gt;Cowork overview &amp;amp; FAQ (Microsoft Learn)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.microsoft.com/en-us/microsoft-365/blog/2026/06/16/copilot-cowork-is-now-generally-available/" rel="noopener noreferrer"&gt;Copilot Cowork is now generally available (Microsoft 365 Blog, 16 Jun 2026)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/connect-to-ai-subprocessor" rel="noopener noreferrer"&gt;Connect to an AI subprocessor (Microsoft Learn)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/copilot-anthropic-apps" rel="noopener noreferrer"&gt;Anthropic models in Copilot for Microsoft 365 apps (Microsoft Learn)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://microsoftpartners.microsoft.com/abs/Blog/?title=Introducing%20Microsoft%20365%20E7:%20The%20Frontier%20Suite" rel="noopener noreferrer"&gt;Introducing Microsoft 365 E7: The Frontier Suite&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.microsoft.com/en-us/security/blog/2026/05/01/microsoft-agent-365-now-generally-available-expands-capabilities-and-integrations/" rel="noopener noreferrer"&gt;Microsoft Agent 365 now generally available (Microsoft Security Blog, 1 May 2026)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/cowork-plugin-development" rel="noopener noreferrer"&gt;Build plugins &amp;amp; skills for Cowork (Microsoft Learn)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Standards and background:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://agentskills.io/home" rel="noopener noreferrer"&gt;Agent Skills standard, agentskills.io&lt;/a&gt; · &lt;a href="https://github.com/anthropics/skills" rel="noopener noreferrer"&gt;Anthropic Skills examples, github.com/anthropics/skills&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;My 14-part Cowork series (April to May 2026) at &lt;a href="https://holgerimbery.blog" rel="noopener noreferrer"&gt;holgerimbery.blog&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>githubcopilot</category>
      <category>cowork</category>
      <category>governance</category>
      <category>microsoft365copilot</category>
    </item>
    <item>
      <title>Cost optimization for agentic systems</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/cost-optimization-for-agentic-systems-5beg</link>
      <guid>https://dev.to/holgerimbery/cost-optimization-for-agentic-systems-5beg</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Summary lede:&lt;/strong&gt; With agents, a single request can fan out into model calls, retrievals, retries, and tool actions that cost far more than the prompt suggests. Here’s how I measure, allocate, and govern that full cost — not just the token line — and tie it to outcomes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why read this:&lt;/strong&gt; It walks through the real cost of an agent workflow, maps it to Microsoft’s three agent surfaces, and sets up the controls before the bill runs away from you.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Why “Agent FinOps,” and why now
&lt;/h2&gt;

&lt;p&gt;For about a decade, cloud FinOps gave finance and engineering a shared language for variable spend: tag it, allocate it, optimize it. Token pricing stretched that language but kept the anchor — a human prompt, a single response. Agents cut the anchor. One request can set off a plan, several model calls, retrieval, tool actions, retries, and sub-agents, all in seconds and usually finished before the dashboard updates.&lt;/p&gt;

&lt;p&gt;A few numbers set the stakes. Industry coverage of the FinOps Foundation’s 2026 State of FinOps report puts inference at about 85% of enterprise AI spend — the cost is in running models, not building them. A May 2026 Microsoft Research study of agentic coding found that models can’t reliably predict their own token usage (self-prediction correlated with actual use at about 0.39), and that the same task can vary by up to 30x in total tokens. Agentic tasks can burn up to 1,000 times more tokens than a simple chat, and agents make an estimated 3–10x more model calls than chatbots for the same user-facing job.&lt;/p&gt;

&lt;p&gt;The failure stories are concrete: organizations that spent an annual AI budget in four months, a company that capped AI spend at $200 a week after too many surprises, and a single agent stuck in a reasoning loop that billed about $4,700 of compute in one afternoon before anyone noticed. Around 96% of organizations report AI costs higher than expected once workloads hit production.&lt;/p&gt;

&lt;p&gt;What I see in projects is that the surprise is rarely the model itself — it’s everything around it. And as of this summer, the meter starts earlier than it used to: on Copilot Studio, building an agent now draws credits, not just running one. That’s what Agent FinOps is for: measuring, allocating, and governing the full cost of an agent workflow, then tying that cost to a business outcome. On the Microsoft stack, that means spanning three very different meters.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why agent costs behave differently
&lt;/h2&gt;

&lt;p&gt;The common mistake is to budget for the visible inference line and stop there. In cost reviews, the raw token figure usually lands 40–60% below the real cost of an agentic workload once you count the machinery around it. Four cost centers do the hiding:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Hidden cost center&lt;/th&gt;
&lt;th&gt;Why it escapes the budget&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Retry &amp;amp; failure recovery&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Agents retry on tool errors, rate limits, and validation failures. A 15% step-failure rate with two retries can double the token count — yet most estimates assume zero retries.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Embedding &amp;amp; retrieval&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Every RAG step adds embedding and search calls. Cheap on their own, they compound across dozens of retrievals per session and land on a different line item.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Guardrail &amp;amp; safety calls&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Moderation, PII detection, and policy checks are separate model calls — sometimes two or three in sequence — usually owned by a platform team and never billed back to the product.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Orchestration &amp;amp; compute&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The framework, context store, tool servers, and memory run on compute that scales with session time, not tokens. A 30-minute task runs 30 minutes of infrastructure.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;So the unit that matters is not cost per token but cost per agent session — and, where you can get it, cost per outcome: per ticket resolved, per document reviewed, per invoice exception cleared. That is the number that connects to the P&amp;amp;L, and the one Agent FinOps exists to defend.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Microsoft agent estate: three surfaces, three meters
&lt;/h2&gt;

&lt;p&gt;Microsoft customers now build and run agents in three places, each with its own cost model. Treating them as one estate — rather than three separate invoices — is most of the job.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Surface&lt;/th&gt;
&lt;th&gt;Cost unit&lt;/th&gt;
&lt;th&gt;How you pay&lt;/th&gt;
&lt;th&gt;Primary controls&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Copilot Studio&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Copilot Credits (≈ $0.01)&lt;/td&gt;
&lt;td&gt;Pay-as-you-go, prepaid credit packs, or annual prepurchase&lt;/td&gt;
&lt;td&gt;Power Platform admin center: per-environment and per-agent caps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Microsoft Foundry Agent Service&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Model tokens + tool &amp;amp; compute charges&lt;/td&gt;
&lt;td&gt;Pay-as-you-go, provisioned throughput, batch, or Agent Commit Units&lt;/td&gt;
&lt;td&gt;Azure Cost Management: budgets, quotas, token-per-minute limits, tags&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Copilot Cowork&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Copilot Credits ($0.01)&lt;/td&gt;
&lt;td&gt;Pay-as-you-go or prepaid P3 volume plan&lt;/td&gt;
&lt;td&gt;Off by default; tenant / group / user budgets, alerts, usage reports&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Copilot Studio — the Copilot Credit meter
&lt;/h3&gt;

&lt;p&gt;Copilot Studio meters agents in Copilot Credits, the common currency Microsoft adopted when it renamed the earlier “messages” unit on 1 September 2025. Each credit is worth about one US cent, and how many you spend depends on what the agent does, not how many words it writes. The published rates make the gradient clear:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Agent activity&lt;/th&gt;
&lt;th&gt;Copilot Credits&lt;/th&gt;
&lt;th&gt;M365 Copilot licensed user&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Classic (authored) answer&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Generative answer&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent action&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tenant Graph grounding (per response)&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent flow actions (per 100)&lt;/td&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content processing (per page)&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Premium AI tools (per 10 responses)&lt;/td&gt;
&lt;td&gt;100&lt;/td&gt;
&lt;td&gt;Included&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Two design facts drive most of the bill. First, grounding costs about ten times a plain reply: a tenant-Graph-grounded response bills at 10 credits against 1 for a classic answer, so an agent that reaches into SharePoint or Exchange on every turn costs roughly ten times a simple chatbot. On its own, that single factor moved a pilot’s projected cost more than any model choice did. Second, autonomy adds up quietly — Microsoft’s own guidance notes an agent with deep reasoning and autonomous triggers can use up to 100 credits (about $1) per 10 auto-triggered interactions, roughly $0.10 each with no human in the loop.&lt;/p&gt;

&lt;p&gt;Usage by people already licensed for Microsoft 365 Copilot is included at no extra charge, which turns “how much per message?” into “credits or licenses?” For everyone else, there are three ways to buy: pay-as-you-go at $0.01 per credit through an Azure subscription; prepaid packs (for example, 25,000 credits for $200 a month — an effective $0.008 per credit, about 20% below pay-as-you-go); and an annual prepurchase of Copilot Credit Commit Units usable across eligible products. Bring-your-own models, including Azure Foundry models, are billed separately.&lt;/p&gt;

&lt;p&gt;There’s a third fact that changed the math this year, and it’s easy to miss. The August 2026 licensing guide moves the meter upstream: the LLM-powered maker actions you use while building — natural-language authoring, evaluation, and preview — now draw Copilot Credits. Only manual, non-LLM configuration stays free. In other words, the cost clock can start before a single user ever talks to the agent. Publishing itself is still free; it’s the act of designing with AI that now bills.&lt;/p&gt;

&lt;p&gt;How much building costs depends on the harness — the scaffolding that lets an agent plan, reason, hold context, and call tools. Copilot Studio ships three, and they meter differently:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Harness&lt;/th&gt;
&lt;th&gt;What it’s for&lt;/th&gt;
&lt;th&gt;When credits are consumed&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Copilot Chat&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Customize Microsoft 365 Copilot with your own knowledge — e.g. an onboarding agent answering from SharePoint&lt;/td&gt;
&lt;td&gt;LLM-powered build actions draw credits; employee-facing runtime in Microsoft channels is included in the Microsoft 365 Copilot license, under the user’s identity and fair-use limits&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Standard&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule-based conversational agents with predefined topics and flows — e.g. an IT agent routing laptop requests through approval&lt;/td&gt;
&lt;td&gt;Same as Copilot Chat: LLM-powered build actions draw credits; employee-facing Microsoft-channel runtime is license-included&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;GitHub Copilot&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Agentic, end-to-end process automation — e.g. an accounts-payable agent that reads invoices, matches purchase orders, and routes exceptions&lt;/td&gt;
&lt;td&gt;Credits during &lt;strong&gt;creation and&lt;/strong&gt; runtime — the runtime is not zero-rated by the license&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The takeaway for FinOps is that “building” is no longer a free, pre-production zone. The GitHub Copilot harness — the one you reach for exactly when the work is most autonomous and most valuable — bills you to build it &lt;em&gt;and&lt;/em&gt; bills you to run it, license or no license. The old mental model, where cost only showed up once real users arrived, is gone. Budget the build, not just the run.&lt;/p&gt;

&lt;h3&gt;
  
  
  Microsoft Foundry Agent Service — tokens, tools, and reserved capacity
&lt;/h3&gt;

&lt;p&gt;Where Copilot Studio hides cost inside a single credit, Foundry Agent Service exposes the underlying resources directly — the code-first path developers want. There’s no charge for creating or running a Foundry-native agent itself; you pay for what it consumes:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;How it is billed&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Model inference&lt;/td&gt;
&lt;td&gt;Foundry Models token consumption — input and output priced separately, output typically 4–8x the input rate.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;File Search (knowledge)&lt;/td&gt;
&lt;td&gt;$0.11 per GB of vector storage per day (first 1 GB free).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Code Interpreter&lt;/td&gt;
&lt;td&gt;$0.033 per session.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Web Search / Custom Search&lt;/td&gt;
&lt;td&gt;$14 per 1,000 transactions.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hosted agents (Agent Framework, LangGraph)&lt;/td&gt;
&lt;td&gt;Billed on the underlying container compute per hour.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tools, Fabric, SharePoint, Bing grounding, Foundry IQ&lt;/td&gt;
&lt;td&gt;Separate charges and licenses, on top of tokens.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Because the meter is granular, real bills routinely run 15–40% above a token-only estimate once Azure AI Search, fine-tuned-model hosting, and monitoring are added. The biggest lever is picking the right deployment type per workload:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Standard (pay-per-token) — no idle cost, scales with usage. The default for development, spiky traffic, and anything still being validated.&lt;/li&gt;
&lt;li&gt;Provisioned Throughput (PTU-hour) — reserved model capacity billed hourly whether or not a request comes in. Predictable performance and lower effective cost for steady, high, latency-sensitive production.&lt;/li&gt;
&lt;li&gt;Batch — large asynchronous jobs at roughly 50% off standard, with a 24-hour target turnaround. Underused, and the biggest single discount for summarization or bulk classification.&lt;/li&gt;
&lt;li&gt;Priority processing — pay-per-token at a premium for lower, more consistent latency where it genuinely matters.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The expensive mistakes are mismatches. Provision PTUs for a workload that only spikes a few hours a day and you pay around the clock for part-time capacity; run a high-volume production app on pay-as-you-go and you invite variable cost and rate limits at the worst moment. PTU capacity can’t be paused — billing stops only when you delete the deployment — so sizing it correctly (Microsoft ships a capacity calculator) is the core of provisioned cost optimization. For committed, predictable volume, Agent Commit Units apply a 5% discount at entry tiers and up to 15% at higher volumes across tokens, storage, search, and compute.&lt;/p&gt;

&lt;h3&gt;
  
  
  Copilot Cowork — delegated work behind a meter
&lt;/h3&gt;

&lt;p&gt;Cowork is the newest surface and, for FinOps, the most instructive. Released worldwide on 16 June 2026 for eligible Microsoft 365 Copilot customers, it takes on long-running, multi-tool work and returns a finished result rather than a draft — scheduled tasks run in the cloud whether or not a laptop is open, with the Microsoft Graph connection keeping governance in the task flow.&lt;/p&gt;

&lt;p&gt;Autonomy here comes with a meter. Each task consumes Copilot Credits based on model use, retrieved context, tool calls, and runtime — the same four drivers that make agentic spend hard to forecast, now rolled into one variable charge. Credits are $0.01 each under pay-as-you-go, with a prepaid P3 volume plan available; customers in Microsoft’s Frontier early-access program got a grace period before charges began.&lt;/p&gt;

&lt;p&gt;What makes Cowork a useful template rather than a liability is its governance posture: it’s off by default, and admins can restrict access and set budgets, alerts, and usage reports at tenant, group, and user levels. (Microsoft’s claim that more than half the Fortune 500 used the preview is its own figure and isn’t independently corroborated.) The lesson holds beyond Cowork: delegating more work saves time but creates a variable charge someone has to own.&lt;/p&gt;

&lt;h2&gt;
  
  
  A unified Agent FinOps operating model
&lt;/h2&gt;

&lt;p&gt;Cloud FinOps rests on three practices — visibility, accountability, and optimization. Agent FinOps keeps the structure but changes the attribution logic, because the unit of cost is a whole workflow, not a single call. Here’s how each practice maps onto the Microsoft controls above.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Visibility — measure the full workflow&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tag every agent session at the orchestration layer with product, feature, user tier, and session ID — the equivalent of tagging cloud resources. Without it, spend is one undifferentiated number.&lt;/li&gt;
&lt;li&gt;Budget seven lines, not one: model calls, retrieval, tool calls, cloud/orchestration, observability, human review, and failure/retry. The token line is the visible bill, rarely the whole bill.&lt;/li&gt;
&lt;li&gt;Use the native meters: the Copilot Studio usage estimator and Power Platform analytics, Azure Cost Management dashboards and Foundry’s OpenTelemetry tracing, and Cowork’s tenant/group/user usage reports.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Accountability — give every workflow a cost owner&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cap at the right altitude: per-environment and per-agent limits in Copilot Studio; budgets, quotas, and token-per-minute limits per deployment in Foundry; tenant/group/user budgets in Cowork.&lt;/li&gt;
&lt;li&gt;Alert before, not after: fire warnings at 70% and 90% of budget, not at 100% — when the capacity is already gone and users hit an “agent unavailable” error.&lt;/li&gt;
&lt;li&gt;Name an owner per workflow, the way each team owns an Azure budget, so what reads as “innovation” to a product team never reads as uncontrolled burn to finance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Optimization — reduce cost without blocking velocity&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Match the model to the job. Routing to a frontier model when a small one delivers the same quality can be a 100x+ multiplier for zero added value.&lt;/li&gt;
&lt;li&gt;Match the workload to the deployment. Move bulk, non-urgent work to Batch; reserve PTUs for steady, latency-critical paths; keep dev and spillover on pay-as-you-go.&lt;/li&gt;
&lt;li&gt;Prune the inputs. Trim system prompts, compress retrieved context, cache aggressively, and bound retries — input tokens drive most agentic cost.&lt;/li&gt;
&lt;li&gt;Stage the autonomy. Move through observe → advise → act-with-approval → act-autonomously, granting full autonomy only where monitoring, rollback, and accountability are strong enough. Every checkpoint you remove is one that could have caught a runaway loop.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  A practical playbook
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Before you deploy:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Define the workflow as a product unit — trigger, expected output, value signal, cost ceiling, human-review rule, and stop condition — before it reaches production.&lt;/li&gt;
&lt;li&gt;Estimate consumption in a pilot. Use the Copilot Studio usage estimator or the Foundry capacity calculator, and treat the result as an informed starting point, not a guarantee.&lt;/li&gt;
&lt;li&gt;Decide credits vs. licenses. If a cohort will lean heavily on agents, a Microsoft 365 Copilot license that zero-rates employee-facing usage may beat metered credits — and sometimes the reverse is true.&lt;/li&gt;
&lt;li&gt;Turn on caps and alerts from day one. Keep Cowork and new agents scoped, off, or budget-limited until you’ve watched real usage.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;In production:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Review cost per outcome weekly, not just total spend. A rising cost-per-ticket is the earliest sign a workflow is drifting.&lt;/li&gt;
&lt;li&gt;Watch the hidden lines — retries, retrieval, guardrails, long-running sessions — not only the token meter.&lt;/li&gt;
&lt;li&gt;Re-tier and re-deploy quarterly as models and prices change; Foundry pricing in particular moves fast.&lt;/li&gt;
&lt;li&gt;Escalate autonomy only after the monitoring and rollback around a workflow have proven themselves.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Metrics that matter
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;What it tells you&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Cost per outcome&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The P&amp;amp;L-relevant unit — per resolved ticket, reviewed document, or cleared exception. Hardest to get, most important.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Cost per agent session&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The true unit of agentic spend, capturing the retries, retrieval, and runtime that per-token views miss.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Cost per token / per inference&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Useful diagnostics for model and prompt efficiency — never the whole story.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Retry &amp;amp; failure rate&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;A direct driver of hidden cost; small defects become recurring spend when retries are unbounded.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Budget burn vs. forecast&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Tracked per environment, agent, and team, with alerts well before 100%.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Autonomy level&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;How much spend runs without a human checkpoint — the risk multiplier behind every other metric.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Is there a single pane of glass?
&lt;/h2&gt;

&lt;p&gt;Not yet — no single native screen spans all three surfaces. Microsoft is converging on one, and there’s a clear “closest thing” at each layer.&lt;/p&gt;

&lt;p&gt;On the Copilot side, the designated single pane of glass is the Copilot Control System (CCS), surfaced in the Microsoft 365 admin center and built on three pillars: security and governance, management controls, and measurement and reporting. A lifecycle Agent Cost Management approach sits on top of it — estimate, set up billing, track and forecast, then actively control. Because Copilot Studio and Cowork both meter in Copilot Credits, CCS with the Power Platform admin center covers both: per-user and per-agent consumption reports, real-time high-consumption alerts, historical trends, per-user and per-agent limits, departmental chargeback, and the Agent Usage Estimator for forecasting before deployment.&lt;/p&gt;

&lt;p&gt;Where it stops being unified is Foundry. Foundry bills through Azure — tokens, tools, and compute — so its cost lives in Azure Cost Management, a separate plane. CCS integrates with Azure Cost Management for deeper analysis, but you’re still crossing two portals.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Single-pane candidate&lt;/th&gt;
&lt;th&gt;What it covers&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Copilot Studio + Cowork&lt;/td&gt;
&lt;td&gt;Copilot Control System + Power Platform admin center&lt;/td&gt;
&lt;td&gt;Credits, per-agent/per-user usage, limits, alerts, chargeback&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Foundry&lt;/td&gt;
&lt;td&gt;Azure Cost Management&lt;/td&gt;
&lt;td&gt;Tokens, tools, PTU / compute&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Everything, normalized&lt;/td&gt;
&lt;td&gt;FinOps toolkit → FinOps hubs (FOCUS)&lt;/td&gt;
&lt;td&gt;Azure + Microsoft 365 + other-cloud cost and usage in one store&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;For a true view across everything, the practitioner path is Microsoft’s open-source FinOps toolkit — specifically FinOps hubs, which normalize cost and usage through the FOCUS standard (FinOps Open Cost and Usage Specification) into a single Data Explorer or Power BI store, and can even be queried by an AI agent. Commercial FinOps platforms offer the same consolidation. The thread to watch is Copilot Credits becoming the common currency across the Copilot estate — though it does not yet fold the Azure-billed Foundry side into the same screen.&lt;/p&gt;

&lt;h2&gt;
  
  
  The bottom line
&lt;/h2&gt;

&lt;p&gt;Agents change the economics of software from a seat you buy to a meter that runs. Copilot Studio, Microsoft Foundry, and Cowork each expose that meter differently — a credit, a token-and-compute stack, a delegated-work charge — but the discipline is the same: measure the full workflow, give every agent a cost owner and a ceiling, tie spend to outcomes, and grant autonomy only as fast as your controls can keep up.&lt;/p&gt;

&lt;p&gt;The teams that build this layer early — while their agent estates are still small — treat it as an engineering routine. The ones that defer meet it later as a board conversation about a bill nobody forecast, when the spend is large, the patterns are entrenched, and the only lever left is cutting features instead of cost. The tools already exist; it’s mostly a matter of turning them on before you need them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Copilot Studio — Billing and licensing — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/billing-licensing" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/microsoft-copilot-studio/billing-licensing&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio — Billing rates and management — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/microsoft-copilot-studio/requirements-messages-management&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Licensing Guide — August 2026 (harnesses; build-time credit consumption)&lt;/li&gt;
&lt;li&gt;Microsoft Azure — Foundry Agent Service pricing — &lt;a href="https://azure.microsoft.com/en-us/pricing/details/foundry-agent-service/" rel="noopener noreferrer"&gt;https://azure.microsoft.com/en-us/pricing/details/foundry-agent-service/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — Provisioned throughput billing and cost management — &lt;a href="https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/provisioned-throughput-billing" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/provisioned-throughput-billing&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;WinBuzzer — Microsoft’s Copilot Cowork is Now a Metered Agent Consuming Credits (Jul 2026) — &lt;a href="https://winbuzzer.com/2026/07/20/microsoft-made-copilot-cowork-a-metered-agent-in-june-xcxwbn/" rel="noopener noreferrer"&gt;https://winbuzzer.com/2026/07/20/microsoft-made-copilot-cowork-a-metered-agent-in-june-xcxwbn/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;TechRepublic — AI Agent Cloud Costs Are Making Enterprise Budgets Harder to Predict (Jul 2026) — &lt;a href="https://www.techrepublic.com/article/news-ai-agent-cloud-costs/" rel="noopener noreferrer"&gt;https://www.techrepublic.com/article/news-ai-agent-cloud-costs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Institute of AI PM — Agentic FinOps: How to Govern AI Agent Costs (Jun 2026) — &lt;a href="https://www.institutepm.com/knowledge-hub/agentic-finops-guide" rel="noopener noreferrer"&gt;https://www.institutepm.com/knowledge-hub/agentic-finops-guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;CIO — 5 ways for CIOs to avoid AI bill shock (Jul 2026) — &lt;a href="https://www.cio.com/article/4190605/5-ways-for-cios-to-avoid-ai-bill-shock.html" rel="noopener noreferrer"&gt;https://www.cio.com/article/4190605/5-ways-for-cios-to-avoid-ai-bill-shock.html&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft — Take Control of Agent Costs (Power Platform Blog, Jul 2025) — &lt;a href="https://www.microsoft.com/en-us/power-platform/blog/2025/07/21/agent-costs-controls/" rel="noopener noreferrer"&gt;https://www.microsoft.com/en-us/power-platform/blog/2025/07/21/agent-costs-controls/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — Copilot Control System management controls — &lt;a href="https://learn.microsoft.com/en-us/microsoft-365/copilot/copilot-control-system/management-controls" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/microsoft-365/copilot/copilot-control-system/management-controls&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — Configure AI agents for FinOps hubs — &lt;a href="https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/configure-ai" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/configure-ai&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agenticai</category>
      <category>billing</category>
      <category>costmanagement</category>
      <category>governance</category>
    </item>
    <item>
      <title>Creating Skills for Copilot Studio Agents: How to use the SKILL.md and Behavior-as-Code</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 01 Aug 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/creating-skills-for-copilot-studio-agents-how-to-use-the-skillmd-and-behavior-as-code-4emn</link>
      <guid>https://dev.to/holgerimbery/creating-skills-for-copilot-studio-agents-how-to-use-the-skillmd-and-behavior-as-code-4emn</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Summary Lede&lt;/strong&gt; : In the latest Copilot Studio agent experience, a Skill is the place where you include the detailed knowledge of how your organization carries out a task—information that a model cannot work out on its own. Each Skill is a compact unit consisting of a name, a description, and Markdown instructions that the orchestrator loads only when the task matches. If the instructions alone are not sufficient, a Skill may also contain scripts, templates, and reference files.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We explore what a Skill is, how to write a SKILL.md file, how to bundle code and resources, how the orchestrator chooses a Skill, and how Skills should be authored, managed, and governed. It deals exclusively with the new Markdown-based Skills; the earlier Bot Framework ‘skill’ is merely given the same name, with the differences being explained in section 11.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Why read this&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You want to write your first SKILL.md and get it right the first time.&lt;/li&gt;
&lt;li&gt;You have a lot of procedural guidance in one big instruction block and want a better, modular way to organize it.&lt;/li&gt;
&lt;li&gt;You need to bundle scripts and resources with your Skill and want to understand what runs and where.&lt;/li&gt;
&lt;li&gt;The word ‘skill’ is confusing because of the old Bot Framework skill—section 11 explains the difference.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What a Skill is and what it isn’t
&lt;/h2&gt;

&lt;p&gt;A skill shows the agent how to deal with a group of tasks; it is defined by three things: a name, a description, and Markdown instructions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flhwwmbur0l6dslrr4vjw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flhwwmbur0l6dslrr4vjw.png" alt="Where a Skill fits in an agent: Knowledge, Tools and Skills as three roles the orchestrator combines" width="800" height="450"&gt;&lt;/a&gt;&lt;em&gt;Figure 1 — Where a Skill fits. Knowledge supplies the facts, Tools carry out the actions, and a Skill provides the know-how needed to carry out a task. The orchestrator then brings these together when required.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It helps to compare Skills to the other components inside an agent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A tool connects to an external service. A Skill doesn’t.&lt;/li&gt;
&lt;li&gt;Knowledge supplies reference facts. A Skill doesn’t.&lt;/li&gt;
&lt;li&gt;A Skill provides the procedure—the step-by-step way your organization does something that the model can’t figure out on its own.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Knowledge -&amp;gt; facts the agent can look up
Tools -&amp;gt; actions the agent can take
Skills -&amp;gt; the know-how to use both well

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;There are two important things to know. First, the format is not unique to Copilot Studio: Skills use the Agent Skills open format, which started with Anthropic and is now also used by GitHub Copilot and Claude Code. Second, a Skill guides the agent instead of forcing it. The model still looks at the situation and decides whether to follow the Skill exactly or adjust. The Skill just makes sure the right procedure is available when needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why factor behavior into a Skill
&lt;/h2&gt;

&lt;p&gt;A Skill is just a set of instructions, so you might wonder why separate them at all. There are four reasons: two apply almost everywhere, and two depend on your situation.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Manageability.&lt;/strong&gt; Each Skill is a focused unit you can review and version on its own, instead of one instruction blob that keeps growing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context management.&lt;/strong&gt; Skills load only when needed. By default, the agent keeps just the names and descriptions, and brings in the full instructions when a task matches. This means that having ten Skills only adds ten short descriptions per turn, not ten full sets of instructions, so the context window stays small.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accuracy.&lt;/strong&gt; A Skill can include detailed guidance on using tools—such as which tool to use, which parameters are important, how to write a query, what to check before calling, and what to do if a tool returns nothing. This guidance loads only when it’s relevant. With large or overlapping toolsets, this can make tool calls more reliable. However, it depends on your use case, so please test it rather than assuming it will work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speed and cost.&lt;/strong&gt; When you guide the agent to the right approach, it does fewer searches, tool calls, and reasoning steps before answering. This also depends on your use case, so be sure to measure it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Anatomy of a SKILL.md
&lt;/h2&gt;

&lt;p&gt;Every Skill is the same shape: YAML front matter (name and description) followed by a Markdown body (the instructions).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;architecture-review&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Reviews solution designs for compliance with enterprise&lt;/span&gt;
  &lt;span class="s"&gt;architecture standards. Use when the user asks for architecture&lt;/span&gt;
  &lt;span class="s"&gt;validation, design critique, platform fit, or governance review.&lt;/span&gt;
  &lt;span class="s"&gt;Do not use for cost estimation or licensing questions.&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

&lt;span class="c1"&gt;# Objective&lt;/span&gt;
&lt;span class="s"&gt;Review a solution architecture and identify risks, gaps, and recommendations.&lt;/span&gt;

&lt;span class="c1"&gt;# Process&lt;/span&gt;
&lt;span class="s"&gt;1. Identify the business goal.&lt;/span&gt;
&lt;span class="s"&gt;2. Extract the proposed architecture.&lt;/span&gt;
&lt;span class="s"&gt;3. Check integration, security, data, and governance concerns.&lt;/span&gt;
&lt;span class="s"&gt;4. Identify missing decisions.&lt;/span&gt;
&lt;span class="s"&gt;5. Produce a concise review with risks and recommendations.&lt;/span&gt;

&lt;span class="c1"&gt;# Rules&lt;/span&gt;
&lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;Do not assume undocumented requirements.&lt;/span&gt;
&lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;Separate facts from recommendations.&lt;/span&gt;
&lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;Highlight open questions.&lt;/span&gt;
&lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;Prefer enterprise platform standards where applicable.&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxy3o8sxyhce3fx2tta8g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxy3o8sxyhce3fx2tta8g.png" alt="Anatomy of a SKILL.md file: YAML front matter as routing metadata, Markdown body as behavior" width="800" height="450"&gt;&lt;/a&gt;&lt;em&gt;Figure 2 — Anatomy of a SKILL.md file. The YAML front matter acts as routing metadata, and the Markdown body contains the behavior. The front matter (name and description) is what the runtime reads to decide when the Skill applies. The Markdown body is the behavior, and it loads only when the Skill is activated.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Naming.&lt;/strong&gt; Use only lowercase letters, numbers, and hyphens, with no hyphen at the start or end (for example: customer-support-escalation). Choose a clear, descriptive kebab-case name. When you download a Skill, the file uses this name, so a good name makes for a good filename. The open format limits names to 64 characters and descriptions to 1024.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The description is important.&lt;/strong&gt; It acts as routing metadata for the runtime, not just a comment for people. The orchestrator reads it to decide if the Skill fits a request. For example, ‘Helps with architecture’ is too vague and may activate at the wrong times. A good description explains what the Skill does, when to use it, and when not to use it. This helps the orchestrator choose the right Skill at the right time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Adding code: bundling scripts and resources
&lt;/h2&gt;

&lt;p&gt;For many Skills, instructions alone are enough. If you need to include more than just text, package everything as a ZIP file with SKILL.md at the root and any supporting files you need. The open format uses this folder structure, and Copilot Studio supports it now:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;my-skill/
├── SKILL.md # required: metadata + instructions
├── scripts/ # optional executable code (e.g. Python)
├── references/ # optional documentation the Skill can consult
└── assets/ # optional templates and other resources

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two things to know about the code part:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Bundled scripts run in the agent’s sandbox when needed.&lt;/strong&gt; A Skill can include a Python script and reference it in its instructions; the script loads when the Skill is selected. For example, the CAT gallery’s PowerPoint Deck Designer builds decks from a JSON spec using python-pptx in the agent’s Python container, without needing an external Azure Function. Microsoft’s CAT team plans to release a detailed guide on scripts and resources, so check runtime details in Preview as they may change.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skills can also point to the agent’s own tools, not just bundled scripts.&lt;/strong&gt; Instructions can say ‘use the order-lookup action here,’ referring to actions, flows, connectors, or MCP servers the agent already has. This is a soft pointer: the Skill names the capability but does not bind to it or grant access. If the agent does not have that tool, the step cannot be completed. Even if the tool exists, the orchestrator still decides whether to use it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How the orchestrator finds and runs your Skill
&lt;/h2&gt;

&lt;p&gt;You don’t call a Skill directly. The orchestrator selects it from its name and description when the conversation matches, then follows the instructions step by step, including reaching for the right tool at the right moment.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiup58dbrjfd8xnlv456z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiup58dbrjfd8xnlv456z.png" alt="Progressive disclosure: only skill metadata stays in context; full instructions load on a matching prompt" width="800" height="450"&gt;&lt;/a&gt;&lt;em&gt;Figure 3 — Progressive disclosure. Only names and descriptions sit in context by default; on a matching prompt, the orchestrator loads that Skill’s full instructions (and any bundled scripts or resources), then the agent acts on its general instructions plus the Skill plus the knowledge and tools it needs.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This works because Copilot Studio registers knowledge, tools, and Skills in the same way: only their metadata is kept in context by default, and the full content loads on demand when a prompt matches. The agent’s top-level instructions are the exception—they are always loaded in full. This approach is called progressive disclosure, or dynamic loading, and it helps keep large agents manageable.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Agent context (always): general instructions
In view by default: metadata for Knowledge A,B,C · Tools A,B,C · Skills A,B,C
User prompt -&amp;gt; orchestrator evaluates: which Skill matches?
Match: Skill B -&amp;gt; load Skill B's full instructions (+ optional scripts/resources)
Agent acts on: general instructions + Skill B + the knowledge/tools it needs

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;The reasoning view is your main place for debugging.&lt;/strong&gt; You can watch the orchestrator load a matching Skill and see how it follows the instructions. Use this view to adjust when Skills activate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fires too often → the description is too broad.&lt;/li&gt;
&lt;li&gt;Never fires → too narrow, or it doesn’t match the words your users actually use.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Creating a Skill in Copilot Studio: three ways
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Prerequisite for all three:&lt;/strong&gt; an agent created in the new experience. Skills live in the &lt;strong&gt;Skills&lt;/strong&gt; area of the agent’s &lt;strong&gt;Build&lt;/strong&gt; tab.&lt;/p&gt;

&lt;h3&gt;
  
  
  Path A — create from blank
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open your agent and select the &lt;strong&gt;Build&lt;/strong&gt; tab.&lt;/li&gt;
&lt;li&gt;In the components panel, select &lt;strong&gt;Skills&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In &lt;strong&gt;Add skill&lt;/strong&gt; , select &lt;strong&gt;Create from blank&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Fill in the three pieces that matter: &lt;strong&gt;Name&lt;/strong&gt; (kebab-case), &lt;strong&gt;Description&lt;/strong&gt; (what it does, when to activate, and when not to), and &lt;strong&gt;Instructions&lt;/strong&gt; (Markdown: steps, response formats, constraints, edge cases).&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Create&lt;/strong&gt;. The Skill appears in the components panel.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Next, test it in the &lt;strong&gt;Preview&lt;/strong&gt; tab to make sure it activates and works as expected. Skills you create from blank remain editable.&lt;/p&gt;

&lt;h3&gt;
  
  
  Path B — with chat assistance
&lt;/h3&gt;

&lt;p&gt;You can also create a Skill by drafting it in a chat, instead of starting from scratch. The result is the same portable Skill, but the chat helps you shape the name, description, and instructions. You can refine it later in the configuration panel.&lt;/p&gt;

&lt;h3&gt;
  
  
  Path C — author externally and upload
&lt;/h3&gt;

&lt;p&gt;If you prefer your own editor and source control, you can write the Skill as a file and upload it. In the components panel, select &lt;strong&gt;Skills&lt;/strong&gt; , then &lt;strong&gt;Add skill&lt;/strong&gt; and choose &lt;strong&gt;Upload a skill&lt;/strong&gt;. Drag and drop the file onto the upload box or browse to it. The system will check the file and add the Skill.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Accepted upload format&lt;/th&gt;
&lt;th&gt;Contents&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Markdown file (&lt;code&gt;.md&lt;/code&gt;)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Skill name and description in YAML front matter, plus Markdown instructions.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;ZIP package (&lt;code&gt;.zip&lt;/code&gt;)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Must include a SKILL.md (front matter + instructions). May optionally include supporting files: scripts, templates, reference documents.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Current scope.&lt;/strong&gt; Once you add a Skill, it belongs to that agent. If you add the agent to a Power Platform solution, the Skill moves through your ALM lifecycle with it. As of mid-2026, there is no shared, cross-product catalog—distribution is per agent—but a better way to share Skills is being developed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Writing instructions that actually work
&lt;/h2&gt;

&lt;p&gt;Write the body in Markdown and cover at least five things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The task&lt;/strong&gt; the Skill handles, stated up front.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step-by-step guidance&lt;/strong&gt; for how the agent should respond.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Formatting&lt;/strong&gt; for the response — length, structure, what to emphasize.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edge cases&lt;/strong&gt; and how to handle them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tool references&lt;/strong&gt; , where they apply.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Write the description as routing metadata.&lt;/strong&gt; This is the part that makers most often get wrong.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Name specifically:&lt;/strong&gt; HR Leave Eligibility Triage, not HR Help.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Say when to use it — and when not:&lt;/strong&gt; &lt;em&gt;“Use for leave eligibility and required documentation. Do not use for payroll or benefits enrollment.”&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;A good test: if two reasonable makers would disagree about when the Skill applies, the description is not specific enough yet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pick the shape the job needs.&lt;/strong&gt; A Skill can take whatever form fits the task. This menu helps when you’re deciding what to write:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Think of a Skill as a…&lt;/th&gt;
&lt;th&gt;Useful when the job is…&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Reference manual&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Understanding a proprietary data model or schema the model doesn’t know&lt;/td&gt;
&lt;td&gt;Documenting your data model so a data tool returns the right thing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Specialist you call in&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;A narrow area of expertise needed only occasionally&lt;/td&gt;
&lt;td&gt;Region-specific tax rules, applied only when that region comes up&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Playbook&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;There’s a known set of plays for a recurring situation&lt;/td&gt;
&lt;td&gt;Triaging a support request: classify, then route by category&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Standard operating procedure&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;A task must be done the same, compliant way every time&lt;/td&gt;
&lt;td&gt;Handling a refund within policy windows and approval limits&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Briefing pack&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The agent needs background before it can act well&lt;/td&gt;
&lt;td&gt;Onboarding context read before answering HR questions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Checklist&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Certain validations must not be skipped&lt;/td&gt;
&lt;td&gt;Pre-submission validation before a record is created&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Protocol&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;There are firm rules for a sensitive case&lt;/td&gt;
&lt;td&gt;What to do when a user reports a suspected security incident&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Runbook&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;An operational task has defined steps and failure handling&lt;/td&gt;
&lt;td&gt;Run a pipeline: discover, analyze, add an ROI pre-scan, format the result&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Template&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Output must follow a fixed structure or house style&lt;/td&gt;
&lt;td&gt;Generating a standardized report to a fixed format&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Start simple and improve your Skill based on Preview testing. It’s better to have a small, correct Skill than a large, vague one. You can add edge cases after the main process works.&lt;/p&gt;

&lt;h2&gt;
  
  
  A worked example, end to end (illustrative)
&lt;/h2&gt;

&lt;p&gt;This is an example package that follows the documented format. Use it as a pattern, not as official sample text.&lt;/p&gt;

&lt;p&gt;SKILL.md:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;customer-support-escalation&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;&amp;gt;-&lt;/span&gt;
  &lt;span class="s"&gt;Use when a customer reports an issue a previous reply did not resolve,&lt;/span&gt;
  &lt;span class="s"&gt;requests a refund or credit above the standard threshold, or explicitly&lt;/span&gt;
  &lt;span class="s"&gt;asks for a supervisor, manager, or human agent. Do not use for general&lt;/span&gt;
  &lt;span class="s"&gt;product questions or order-status lookups.&lt;/span&gt;
&lt;span class="s"&gt;---&lt;/span&gt;

&lt;span class="gh"&gt;# Customer support escalation&lt;/span&gt;

&lt;span class="gu"&gt;## When to use this skill&lt;/span&gt;
Activate when the user:
&lt;span class="p"&gt;-&lt;/span&gt; Reports an issue a prior response did not resolve
&lt;span class="p"&gt;-&lt;/span&gt; Requests a refund or credit above the standard threshold
&lt;span class="p"&gt;-&lt;/span&gt; Explicitly asks for a supervisor, manager, or human agent

&lt;span class="gu"&gt;## Steps&lt;/span&gt;
&lt;span class="p"&gt;1.&lt;/span&gt; Acknowledge the concern and apologize briefly.
&lt;span class="p"&gt;2.&lt;/span&gt; Collect the order or case number, a one-line summary, and the desired outcome.
&lt;span class="p"&gt;3.&lt;/span&gt; Use the &lt;span class="gs"&gt;**Create Ticket**&lt;/span&gt; action to open a ticket with priority = High.
&lt;span class="p"&gt;4.&lt;/span&gt; Confirm the ticket number and the expected response window.

&lt;span class="gu"&gt;## Response format&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Keep responses under 120 words.
&lt;span class="p"&gt;-&lt;/span&gt; End every response with the ticket number in &lt;span class="gs"&gt;**bold**&lt;/span&gt;.

&lt;span class="gu"&gt;## Edge cases&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; If no order number is available, ask once, then proceed with the email on file.
&lt;span class="p"&gt;-&lt;/span&gt; Never promise a specific refund amount; state that a specialist will confirm.

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Package it as a ZIP with SKILL.md at the root and any resources the instructions refer to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;customer-support-escalation.zip
├── SKILL.md
├── scripts/
│ └── format_ticket.py # optional helper the instructions can reference
├── assets/
│ └── escalation_reply.md # optional response template
└── references/
    └── refund_policy.md # optional reference document

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;There are two code mechanisms here: step 3 points to the agent’s Create Ticket action (a tool the agent must already have), while scripts/format_ticket.py is a bundled script that the Skill includes and references directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Managing Skills across their lifecycle
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;Skills&lt;/strong&gt; section of the &lt;strong&gt;Build&lt;/strong&gt; tab lists every Skill on the agent. From there:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;View&lt;/strong&gt; — the section shows everything you’ve added.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edit&lt;/strong&gt; (blank-created Skills) — select it, update &lt;strong&gt;Name&lt;/strong&gt; , &lt;strong&gt;Description&lt;/strong&gt; , or &lt;strong&gt;Instructions&lt;/strong&gt; , then &lt;strong&gt;Save&lt;/strong&gt; and re-test in Preview.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Download&lt;/strong&gt; — open the Skill’s panel. For a Skill you created from blank, use the &lt;strong&gt;Download&lt;/strong&gt; icon. For an uploaded Skill, use the menu and select &lt;strong&gt;Download&lt;/strong&gt;. The file downloads as Markdown (with name and description in the front matter, plus instructions), and the filename matches the Skill’s name.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Replace&lt;/strong&gt; (uploaded Skills) — edit the file in your editor, then &lt;strong&gt;… → Replace&lt;/strong&gt; and browse to it. You can also swap in a different Skill.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delete&lt;/strong&gt; — select the &lt;strong&gt;X&lt;/strong&gt; and confirm. Deletion is permanent for that agent, so download the Skill first if you might want to keep it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Should it be a Skill, an instruction, or a new agent?
&lt;/h2&gt;

&lt;p&gt;Two decisions come up constantly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsdyhd4vvpowrm02582d2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsdyhd4vvpowrm02582d2.png" alt="Decision flow: can the agent infer it? is it always true? leave it, put it in instructions, or make it a Skill" width="800" height="450"&gt;&lt;/a&gt;&lt;em&gt;Figure 4 — Where a piece of guidance belongs. If the agent can infer it from a good tool or knowledge description, leave it out. If it’s true in every conversation, put it in instructions. If it’s only needed sometimes, make it a Skill.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Instruction, or a Skill?&lt;/strong&gt; By the time you’re weighing this, one thing is settled: the agent can’t infer this on its own. The only question is where it goes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Is it something the agent can infer from tool/knowledge descriptions?
        └─ Yes -&amp;gt; leave it to the agent; don't write it down
        └─ No -&amp;gt; Is it true in EVERY conversation, for every scenario?
                     └─ Yes -&amp;gt; put it in the agent's INSTRUCTIONS
                     └─ No -&amp;gt; make it a SKILL (situational, loaded on demand)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Tone, the agent’s role, and always-on guardrails are always true, so they go in instructions. Anything that applies only in certain situations should go in a Skill.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Skill, or a new agent?&lt;/strong&gt; Before Skills, the instinct for every distinct task was another specialized agent. But three tasks that share the same audience and knowledge boundary are often one agent with three Skills, not three agents. Two things still point to a separate agent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;It would stand on its own.&lt;/strong&gt; An HR assistant and an IT support agent serve different audiences behind different security boundaries — build the agent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;If one agent has too many tools,&lt;/strong&gt; its accuracy can drop as the context gets crowded, and adding more Skills won’t fix it. When this happens, split the work into a separate agent and let it handle that part. Test this with your own agent to see what works best.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The naming trap: this is NOT a Bot Framework skill
&lt;/h2&gt;

&lt;p&gt;Keep this one clean. Copilot Studio has used the word &lt;strong&gt;skill&lt;/strong&gt; before, and the two meanings are unrelated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5adj97lyodw6axmb70a9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5adj97lyodw6axmb70a9.png" alt="Two different things called Skill: the new SKILL.md skill versus the legacy Bot Framework skill" width="800" height="450"&gt;&lt;/a&gt;&lt;em&gt;Figure 5 — The naming trap. There are two different things called Skill: the new SKILL.md Skill and the legacy Bot Framework skill. They only share a name; the format, runtime, and how you use them are different. In this article, ‘Skill’ always means the new Markdown format.&lt;/em&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Term&lt;/th&gt;
&lt;th&gt;Legacy (classic) meaning&lt;/th&gt;
&lt;th&gt;New-experience meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Skill&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;An externally registered bot capability (Bot Framework / Microsoft 365 Agents SDK), added via a &lt;strong&gt;manifest URL&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;A &lt;strong&gt;Markdown-based&lt;/strong&gt; reusable instruction module (SKILL.md)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Format&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Manifest / registration-based; hosted bot endpoint&lt;/td&gt;
&lt;td&gt;SKILL.md — YAML front matter + Markdown package&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Where it runs&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;An external Azure Bot Service bot&lt;/td&gt;
&lt;td&gt;Inside the Copilot Studio agent (new experience)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;How it’s invoked&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Trigger phrases + an allow-listed skill call&lt;/td&gt;
&lt;td&gt;The orchestrator matches the Skill’s description&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Primary value&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Integration with external, pro-code bot logic&lt;/td&gt;
&lt;td&gt;Modular, reusable behavior and instruction reuse&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The classic sense is still real and still documented: you can convert a bot into a skill and register it via a &lt;strong&gt;manifest&lt;/strong&gt; , and Copilot Studio supports skills built on &lt;strong&gt;Bot Framework SDK 4.12.0+&lt;/strong&gt; and &lt;strong&gt;Microsoft 365 Agents SDK v1.0.0+&lt;/strong&gt;. Microsoft’s guidance on using a &lt;em&gt;classic chatbot as a skill&lt;/em&gt; is explicit that it applies to classic chatbots only and isn’t available for Copilot Studio agents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to tell which one a document means:&lt;/strong&gt; a SKILL.md, YAML front matter, or a ZIP package means the new model. A &lt;strong&gt;skill manifest&lt;/strong&gt; , an allow list, an &lt;strong&gt;Azure Bot Service&lt;/strong&gt; bot, or “classic chatbot” means the legacy model — and it doesn’t apply to the agents here. Throughout this article, **skilSkilleans the new Markdown format.&lt;/p&gt;

&lt;h2&gt;
  
  
  Treat Skills as a trust surface — and a governed asset
&lt;/h2&gt;

&lt;p&gt;A Skill affects how the agent behaves, and since it can now include scripts, it is a trust surface. Treat any Skill you did not write—whether it comes from the community, is generated by AI, or reused from another environment—like untrusted code: review it before adding it. Check for prompt injection, instructions that misuse tools, or anything that does not match what the SkilSkillsupposed to do.&lt;/p&gt;

&lt;p&gt;Reuse has pros and cons: one SkilSkill improve many agents, but a bad Skill can spread problems just as widely. Governance needs to keep up with this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Store shared Skills in &lt;strong&gt;version-controlled repositories&lt;/strong&gt; ; use &lt;strong&gt;pull requests&lt;/strong&gt; for changes to the important ones.&lt;/li&gt;
&lt;li&gt;Give each Skill an &lt;strong&gt;owner&lt;/strong&gt; , and keep a &lt;strong&gt;changelog&lt;/strong&gt; for production ones.&lt;/li&gt;
&lt;li&gt;Keep descriptions &lt;strong&gt;precise and testable&lt;/strong&gt; —they are routing metadata (see sections 3 and 7).&lt;/li&gt;
&lt;li&gt;Avoid &lt;strong&gt;broad, overlapping&lt;/strong&gt; Skills that compete for activation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Separate policy knowledge&lt;/strong&gt; (→ Knowledge) from procedure (→ Skill).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Test&lt;/strong&gt; with realistic user requests, and review high-impact Skills with &lt;strong&gt;security, compliance, legal, or architecture&lt;/strong&gt; stakeholders.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because Skills are just Markdown files, they can be version-controlled, used with Git, reviewed through pull requests, and moved between agents. This keeps behavior as a long-lived, inspectable asset. Many call this &lt;strong&gt;Behavior as Code&lt;/strong&gt; : a Center of Excellence maintains approved Skills, an architecture board owns review Skills, legal publishes controlled guidance, and delivery teams own documentation Skills—all reviewed and versioned.&lt;/p&gt;

&lt;h2&gt;
  
  
  You don’t have to start from scratch — the CAT Agent Skills gallery
&lt;/h2&gt;

&lt;p&gt;You don’t have to write every SkilSkillm scratch. Microsoft’s Customer Advisory Team (CAT) publishes &lt;a href="https://microsoft.github.io/cat-agent-skills/" rel="noopener noreferrer"&gt;CAT Agent Skills&lt;/a&gt;, a gallery of skills for your AI agents. These are community-contributed instruction and script bundles you can download as Markdown (and scripts) and add to &lt;strong&gt;Cowork, Copilot Studio, or Scout&lt;/strong&gt;. The gallery lets you filter by platform (Copilot Studio has about 42 entries at the time of writing) and by type—Skills, Plugins, Automations—with tags like &lt;em&gt;productivity, documents, automation, governance,&lt;/em&gt; and &lt;em&gt;presentations&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;A few entries teach authoring as much as they do a job:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Skill&lt;/th&gt;
&lt;th&gt;What it does&lt;/th&gt;
&lt;th&gt;Why it’s a good example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Skill Authoring Coach&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Helps makers design concise, reusable Skills with clear triggers, instructions, resources, and packaging&lt;/td&gt;
&lt;td&gt;A meta-skill — use it to write better Skills&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;PowerPoint Deck Designer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Builds decks from a JSON spec with python-pptx, running natively in the agent’s Python container&lt;/td&gt;
&lt;td&gt;Shows a Skill that &lt;strong&gt;bundles a script and runs code in the sandbox&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Knowledge Source Router&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Routes searches to the right region-specific source so answers stay locally accurate&lt;/td&gt;
&lt;td&gt;A pure &lt;strong&gt;procedural&lt;/strong&gt; Skill — behavior, not data or actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Iterative File Editing&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Version-numbers each edited file so every update actually lands&lt;/td&gt;
&lt;td&gt;A tiny Skill fixing one specific behavior — the ideal narrow scope&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Universal Document Converter&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Converts between Markdown, HTML, PDF, Word, PowerPoint, and Excel offline with sandbox libraries&lt;/td&gt;
&lt;td&gt;Self-contained, no-external-dependency packaging&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Brand Voice Pass&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rewrites drafts to a house style&lt;/td&gt;
&lt;td&gt;A classic Center-of-Excellence governance Skill, reused across agents&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The main idea is not any single entry, but the operating model. Because these are Markdown packages using the open Agent Skills format, a gallery like this works like a &lt;strong&gt;package registry for behavior&lt;/strong&gt; : you can browse, download, add, and adapt them. Treat any imported Skill like a third-party dependency: read it, test it, and version it before using it in production (see section 12).&lt;/p&gt;

&lt;h2&gt;
  
  
  A creating-skills checklist
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Agent created in the &lt;strong&gt;new experience&lt;/strong&gt; ; you’re working in &lt;strong&gt;Build → Skills&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Name is &lt;strong&gt;kebab-case&lt;/strong&gt; , no leading/trailing hyphen, ≤64 characters.&lt;/li&gt;
&lt;li&gt;Description reads as an &lt;strong&gt;activation contract&lt;/strong&gt; — what it does, when to use it, and when not to (≤1024 characters).&lt;/li&gt;
&lt;li&gt;Instructions cover &lt;strong&gt;task, steps, formatting, edge cases, and tool references&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Any &lt;strong&gt;scripts/templates/reference files&lt;/strong&gt; are bundled in a ZIP with SKILL.md at the root; the body references them explicitly.&lt;/li&gt;
&lt;li&gt;Tool usage is via &lt;strong&gt;soft-pointers&lt;/strong&gt; to capabilities the agent actually has.&lt;/li&gt;
&lt;li&gt;Validated in &lt;strong&gt;Preview&lt;/strong&gt; , and checked in the &lt;strong&gt;reasoning view&lt;/strong&gt; for correct activation (not too broad, not too narrow).&lt;/li&gt;
&lt;li&gt;A copy kept in &lt;strong&gt;source control&lt;/strong&gt; for versioning, review, and reuse.&lt;/li&gt;
&lt;li&gt;Confirmed you’re building a &lt;strong&gt;SKILL.md skill&lt;/strong&gt; , not a legacy Bot Framework skill manifest.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Creating a Skill is meant to be simple: write a SKILL.md file, describe when it applies as if you were programming a router, add scripts or resources only if needed, upload it, and watch it work in the reasoning view. The key is to focus on the description and scope—a precise trigger, a narrow job—and to treat each Skill as a reviewable, versioned asset, not just a quick prompt.&lt;/p&gt;

&lt;p&gt;If you follow this approach, you get what the model is designed for: instructions stay lean because situational behavior is kept in modules that the orchestrator loads only when needed. Since Skills use the &lt;strong&gt;open Agent Skills format&lt;/strong&gt; shared with Claude and GitHub Copilot, behavior you write once can be reused elsewhere. That’s why SKILL.md is becoming a building block beyond Copilot Studio.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-overview" rel="noopener noreferrer"&gt;Skills overview for agents (preview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-create" rel="noopener noreferrer"&gt;Create a skill for an agent (preview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-add-existing" rel="noopener noreferrer"&gt;Add an existing skill to an agent (preview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-manage" rel="noopener noreferrer"&gt;Manage and delete skills in an agent (preview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The Custom Engine (Microsoft CAT) — &lt;a href="https://microsoft.github.io/mcscatblog/posts/modern-mcs-agent-skills/" rel="noopener noreferrer"&gt;Modern Agents Have Skills Now — Here’s How They Work in Copilot Studio&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft CAT — &lt;a href="https://microsoft.github.io/cat-agent-skills/" rel="noopener noreferrer"&gt;CAT Agent Skills gallery&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/advanced-use-pva-as-a-skill" rel="noopener noreferrer"&gt;Use a classic chatbot as a skill in a Bot Service bot (legacy Bot Framework skills — classic only)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Anthropic — &lt;a href="https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview" rel="noopener noreferrer"&gt;Agent Skills overview (SKILL.md, YAML front matter, progressive disclosure)&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agents</category>
      <category>agentskills</category>
      <category>behaviorascode</category>
      <category>copilotstudio</category>
    </item>
    <item>
      <title>Copilot Studio Reimagined: The New Agent Experience, the Agentic Orchestrator, and the SKILL.md Revolution</title>
      <dc:creator>Holger Imbery</dc:creator>
      <pubDate>Sat, 25 Jul 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/holgerimbery/copilot-studio-reimagined-the-new-agent-experience-the-agentic-orchestrator-and-the-skillmd-5do3</link>
      <guid>https://dev.to/holgerimbery/copilot-studio-reimagined-the-new-agent-experience-the-agentic-orchestrator-and-the-skillmd-5do3</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Summary lede&lt;/strong&gt; Microsoft’s 2026 rebuild of Copilot Studio is far more than a coat of paint. Beneath the reduced tab count and the natural-language authoring surface sits a fundamental shift in how agents are designed, orchestrated, and maintained.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The classic model centered on &lt;strong&gt;topics, triggers, and conversation paths&lt;/strong&gt;. The rebuilt experience introduces a &lt;strong&gt;new agentic orchestrator&lt;/strong&gt; , reusable &lt;strong&gt;Skills authored in Markdown&lt;/strong&gt; , &lt;strong&gt;Memory&lt;/strong&gt; as a first-class capability, a redesigned workflow experience, and tighter alignment with &lt;strong&gt;Microsoft IQ&lt;/strong&gt; and &lt;strong&gt;Microsoft Foundry&lt;/strong&gt; (formerly Azure AI Foundry).&lt;/p&gt;

&lt;p&gt;The result is a platform that increasingly resembles an &lt;em&gt;agent engineering environment&lt;/em&gt; rather than a chatbot builder.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgosp3bfytlbzlo21ytwj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgosp3bfytlbzlo21ytwj.png" alt="From designing conversations to designing agents" width="799" height="456"&gt;&lt;/a&gt;&lt;em&gt;Figure 1 — The core shift: from predicting every conversation path to describing an agent’s capabilities and letting the orchestrator decide how to combine them.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Why read this&lt;/strong&gt; :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read this if you opened Copilot Studio after &lt;strong&gt;Build 2026&lt;/strong&gt; and wondered where the familiar tabs, topics, and configuration surfaces went.&lt;/li&gt;
&lt;li&gt;Read it if you spent the last year designing agents around generative orchestration, child agents, and topic structures, and want to understand Microsoft’s new direction.&lt;/li&gt;
&lt;li&gt;And read it if the phrase &lt;strong&gt;SKILL.md&lt;/strong&gt; keeps appearing in discussions about Copilot Studio, GitHub Copilot, Claude, and modern agent architectures — because it is now the same idea in all of them.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;This article examines the architecture behind the new experience, explains what the orchestrator changes in practice, and explores why reusable Markdown-based skills may become one of the most important design patterns for enterprise AI agents.&lt;/p&gt;

&lt;h2&gt;
  
  
  What changed, in one paragraph
&lt;/h2&gt;

&lt;p&gt;The rebuilt Copilot Studio replaces the classic, conversation-centric architecture with an agent-centric model. Instead of authoring explicit topics, flows, and branching logic, you &lt;strong&gt;describe the agent in natural language&lt;/strong&gt; and the system generates the underlying configuration. The agent is assembled from a small set of capability components — &lt;strong&gt;Skills, Tools, Knowledge, and Connected Agents&lt;/strong&gt; , complemented by &lt;strong&gt;Memory&lt;/strong&gt; (preview) — and a &lt;strong&gt;new agentic orchestrator&lt;/strong&gt; decides at runtime how to combine them. Reusable &lt;strong&gt;SKILL.md&lt;/strong&gt; files let behavior be modularized and shared across many agents.&lt;/p&gt;

&lt;p&gt;The short version:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Old Copilot Studio: Design the conversation.
New Copilot Studio: Design the agent's capabilities.

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One important nuance the marketing sometimes blurs: the new agent experience runs &lt;strong&gt;alongside&lt;/strong&gt; the classic experience, and the two are &lt;strong&gt;not convertible&lt;/strong&gt; in either direction. This is a parallel platform, not an in-place upgrade.&lt;/p&gt;

&lt;h2&gt;
  
  
  From conversation design to agent design
&lt;/h2&gt;

&lt;p&gt;For years, Copilot Studio inherited concepts from its chatbot origins. A typical implementation included topics, triggers, branching logic, topic transitions, explicit conversation paths, and deterministic fallback behavior. Designing an agent often meant &lt;strong&gt;predicting every possible user journey&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That model worked well for structured support bots, FAQ scenarios, guided intake flows, and transactional assistants. But it became hard to maintain when agents needed to do more complex work — interpret ambiguous goals, work across multiple systems, select tools dynamically, call specialized agents, handle large documents, recover from partial failure, or execute multi-step tasks without a hand-authored branch for every path.&lt;/p&gt;

&lt;p&gt;The new model moves responsibility away from hand-authored conversation paths and toward the orchestrator. Instead of modeling every branch, makers define:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what the agent &lt;strong&gt;knows&lt;/strong&gt; ,&lt;/li&gt;
&lt;li&gt;what &lt;strong&gt;actions&lt;/strong&gt; it can perform,&lt;/li&gt;
&lt;li&gt;what &lt;strong&gt;expertise&lt;/strong&gt; it should apply,&lt;/li&gt;
&lt;li&gt;which &lt;strong&gt;agents&lt;/strong&gt; it can collaborate with,&lt;/li&gt;
&lt;li&gt;and what &lt;strong&gt;constraints&lt;/strong&gt; it must obey.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The orchestrator determines how these components combine to accomplish the user’s objective. This is a different engineering mindset. In the classic model, the maker designs the &lt;strong&gt;dialog&lt;/strong&gt;. In the new model, the maker designs the &lt;strong&gt;operating environment&lt;/strong&gt; of the agent.&lt;/p&gt;

&lt;h2&gt;
  
  
  The new authoring experience
&lt;/h2&gt;

&lt;p&gt;One of the most visible changes is the simplified authoring surface. Microsoft reduced the workspace from &lt;strong&gt;nine configuration tabs to four&lt;/strong&gt; :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Build · Preview · Evaluate · Monitor

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It’s worth being precise here, because it is easy to conflate two different things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;four tabs&lt;/strong&gt; above are the &lt;em&gt;workspace&lt;/em&gt; — where you build, test, evaluate, and monitor an agent.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;five capability components&lt;/strong&gt; below are what you actually assemble &lt;em&gt;inside&lt;/em&gt; the Build tab.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcq2algv0lorykdniq81a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcq2algv0lorykdniq81a.png" alt="Five components, one orchestrated agent" width="800" height="484"&gt;&lt;/a&gt;&lt;em&gt;Figure 2 — The four workspace tabs are distinct from the five capability components. Behavior maps to Skills, actions to Tools, context to Knowledge, delegation to Connected Agents, and continuity to Memory.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Skills — reusable behavior
&lt;/h3&gt;

&lt;p&gt;Skills define &lt;strong&gt;how&lt;/strong&gt; an agent should approach a specific type of task. They are self-contained sets of instructions written in &lt;strong&gt;Markdown&lt;/strong&gt; , and they can be created, uploaded, reused, exported, and shared across agents.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tools — external actions
&lt;/h3&gt;

&lt;p&gt;Tools let the agent do something outside the language model itself: Power Automate flows, connectors, APIs, &lt;strong&gt;MCP servers&lt;/strong&gt; , and Microsoft 365 or business-system actions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Knowledge — grounding
&lt;/h3&gt;

&lt;p&gt;Knowledge gives the agent trusted context: SharePoint, Dataverse, uploaded files, enterprise data, and organizational data through &lt;strong&gt;Microsoft IQ&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Connected Agents — delegation
&lt;/h3&gt;

&lt;p&gt;Specialized agents that can be delegated work. This enables multi-agent patterns where one agent acts as a front door, router, supervisor, or coordinator while others provide domain-specific capabilities.&lt;/p&gt;

&lt;h3&gt;
  
  
  Memory (preview) — continuity
&lt;/h3&gt;

&lt;p&gt;Persistent, per-user context that survives across sessions. Memory is a maker-toggled capability that lets an agent remember details from prior interactions and apply them later. It does not replace durable business state in systems such as Dataverse — more on that distinction in §14.&lt;/p&gt;

&lt;p&gt;The most important architectural consequence: behavior is no longer trapped inside one giant instruction block or hidden across many conversation branches. It can be &lt;strong&gt;factored into reusable, named capabilities&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Behavior -&amp;gt; Skills
Actions -&amp;gt; Tools
Context -&amp;gt; Knowledge
Delegation -&amp;gt; Connected Agents
Continuity -&amp;gt; Memory

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  The agentic orchestrator: the real innovation
&lt;/h2&gt;

&lt;p&gt;The interface redesign is visible. The &lt;strong&gt;orchestrator redesign is transformative.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Microsoft describes the new experience as being built on a &lt;strong&gt;new agentic orchestrator&lt;/strong&gt; — its words: built on &lt;em&gt;“a new coding harness and CLI layer,”&lt;/em&gt; with &lt;em&gt;“stronger instruction adherence and long-horizon task execution.”&lt;/em&gt; It supports &lt;strong&gt;recursive task execution&lt;/strong&gt; , can &lt;em&gt;“process large volumes of content,”&lt;/em&gt; and can &lt;em&gt;“produce rich file outputs.”&lt;/em&gt; Microsoft Learn frames it as an &lt;strong&gt;enhanced orchestration runtime&lt;/strong&gt; that improves reasoning quality and response quality, &lt;em&gt;particularly over Microsoft 365 data&lt;/em&gt; — and, unlike the classic experience, this enhanced model is &lt;strong&gt;not configurable&lt;/strong&gt; ; every agent in the new experience uses it.&lt;/p&gt;

&lt;p&gt;Unlike earlier models that leaned on predefined flows, the new orchestrator behaves like a modern AI agent runtime. Its responsibilities include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;interpreting user intent,&lt;/li&gt;
&lt;li&gt;selecting relevant skills,&lt;/li&gt;
&lt;li&gt;choosing appropriate tools,&lt;/li&gt;
&lt;li&gt;combining grounding sources,&lt;/li&gt;
&lt;li&gt;delegating work to connected agents,&lt;/li&gt;
&lt;li&gt;validating intermediate results,&lt;/li&gt;
&lt;li&gt;and generating the final answer or artifact.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This matters because modern enterprise agents rarely operate as simple question-answering bots. They need to &lt;strong&gt;perform work&lt;/strong&gt; , &lt;strong&gt;plan&lt;/strong&gt; , and decide &lt;em&gt;when&lt;/em&gt; to retrieve information, call a tool, delegate, or ask for what’s missing. The orchestrator is the layer where that decision-making happens.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A note on the model.&lt;/strong&gt; Copilot Studio’s model picker surfaces multiple frontier models (including Claude models). You will see community posts describing the orchestrator as &lt;em&gt;powered by Claude&lt;/em&gt; but there is &lt;strong&gt;no official orchestrator product name&lt;/strong&gt; beyond “the agentic orchestrator”, and the model is &lt;strong&gt;selectable&lt;/strong&gt; rather than a fixed brand. Treat “powered by Claude” as shorthand for &lt;em&gt;Claude models are available&lt;/em&gt; not as an official label.&lt;/p&gt;

&lt;h2&gt;
  
  
  Planning instead of branching
&lt;/h2&gt;

&lt;p&gt;The difference is easiest to see side by side.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5omcj8396qtkf39sttgw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5omcj8396qtkf39sttgw.png" alt="Classic linear flow versus agentic orchestration" width="800" height="512"&gt;&lt;/a&gt;&lt;em&gt;Figure 3 — The classic model walks a predefined path (User → Topic → Branch → Action → Response). The agentic model hands a user goal to an orchestrator that reasons, plans, and assembles the work at runtime.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This seemingly subtle change introduces a completely different way of thinking. The agent is no longer navigating a predefined conversation — &lt;strong&gt;it is executing a plan.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That does not mean deterministic workflows disappear. They remain essential for approvals, state transitions, compliance checks, and business-critical processes. But their &lt;strong&gt;role&lt;/strong&gt; changes. In the classic model, deterministic logic often &lt;em&gt;carried&lt;/em&gt; the conversation. In the new model, deterministic logic becomes the &lt;strong&gt;guardrail, workflow backbone, or execution layer&lt;/strong&gt; around an agentic core.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmzbc8x8jdf4r7wb9c54v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmzbc8x8jdf4r7wb9c54v.png" alt="Agentic core, deterministic guardrails" width="799" height="394"&gt;&lt;/a&gt;&lt;em&gt;Figure 4 — A practical enterprise pattern: an agentic core reasons and adapts, while a deterministic layer (workflows, connected agents, validation) provides the guardrails and executes the controlled steps.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is much closer to how modern agent systems are being built across the wider AI ecosystem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Skills: the most important new capability
&lt;/h2&gt;

&lt;p&gt;Among all the new features, &lt;strong&gt;Skills&lt;/strong&gt; may prove the most strategically important.&lt;/p&gt;

&lt;p&gt;Microsoft defines skills as &lt;em&gt;reusable capabilities that extend what an agent can do&lt;/em&gt;. Crucially:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unlike &lt;strong&gt;tools&lt;/strong&gt; , they do not connect to external services.&lt;/li&gt;
&lt;li&gt;Unlike &lt;strong&gt;knowledge&lt;/strong&gt; , they do not provide reference material.&lt;/li&gt;
&lt;li&gt;Skills provide &lt;strong&gt;procedural expertise and reusable behavior&lt;/strong&gt; — they tell the agent &lt;em&gt;how&lt;/em&gt; to approach a class of tasks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how to review an enterprise architecture proposal,&lt;/li&gt;
&lt;li&gt;how to classify an incoming support request,&lt;/li&gt;
&lt;li&gt;how to write a customer-facing incident summary,&lt;/li&gt;
&lt;li&gt;how to create a governance-compliant project document,&lt;/li&gt;
&lt;li&gt;how to evaluate whether a process should be automated,&lt;/li&gt;
&lt;li&gt;how to prepare a Power Platform solution review.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Previously, this kind of procedural guidance lived in one of three places: the main instruction block, topic-specific prompts, or undocumented maker knowledge. &lt;strong&gt;Skills give it a dedicated, reusable home.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a SKILL.md?
&lt;/h2&gt;

&lt;p&gt;At its simplest, a skill contains a &lt;strong&gt;name&lt;/strong&gt; , a &lt;strong&gt;description&lt;/strong&gt; , and a set of &lt;strong&gt;instructions&lt;/strong&gt; written in Markdown. Copilot Studio’s format is deliberately standard: &lt;strong&gt;YAML front matter (name, description) plus a Markdown body&lt;/strong&gt;, packaged — when you need to ship more than instructions — as a ZIP that contains a &lt;code&gt;SKILL.md&lt;/code&gt; file and optional supporting files such as scripts, templates, and reference documents.&lt;/p&gt;

&lt;p&gt;The orchestrator examines the &lt;strong&gt;description&lt;/strong&gt; to decide whether the skill is relevant to a request. If it is, the instructions are loaded into context. If it is not, they stay out of the active context window. This solves one of the most persistent problems in enterprise agent design: &lt;strong&gt;instruction bloat.&lt;/strong&gt; Instead of thousands of lines of always-active instructions, behavior is separated into focused, reusable modules.&lt;/p&gt;

&lt;p&gt;A typical &lt;code&gt;SKILL.md&lt;/code&gt; looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;architecture-review&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Reviews solution designs for compliance with enterprise&lt;/span&gt;
  &lt;span class="s"&gt;architecture standards. Use this skill when the user asks for architecture&lt;/span&gt;
  &lt;span class="s"&gt;validation, design critique, platform fit, or governance review.&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

&lt;span class="gh"&gt;# Objective&lt;/span&gt;
Review a solution architecture and identify risks, gaps, and recommendations.

&lt;span class="gh"&gt;# Process&lt;/span&gt;
&lt;span class="p"&gt;1.&lt;/span&gt; Identify the business goal.
&lt;span class="p"&gt;2.&lt;/span&gt; Extract the proposed architecture.
&lt;span class="p"&gt;3.&lt;/span&gt; Check integration, security, data, and governance concerns.
&lt;span class="p"&gt;4.&lt;/span&gt; Identify missing decisions.
&lt;span class="p"&gt;5.&lt;/span&gt; Produce a concise review with risks and recommendations.

&lt;span class="gh"&gt;# Rules&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Do not assume undocumented requirements.
&lt;span class="p"&gt;-&lt;/span&gt; Separate facts from recommendations.
&lt;span class="p"&gt;-&lt;/span&gt; Highlight open questions.
&lt;span class="p"&gt;-&lt;/span&gt; Prefer enterprise platform standards where applicable.

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F66oe8stps72sbktxncp3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F66oe8stps72sbktxncp3.png" alt="Anatomy of a SKILL.md file" width="800" height="470"&gt;&lt;/a&gt;&lt;em&gt;Figure 5 — The front matter is not documentation for humans; it is routing metadata for the runtime. The body is the task behavior, loaded only when the skill activates.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The consequence is important: &lt;strong&gt;the description is routing metadata for the agent runtime&lt;/strong&gt; , not a human-facing comment. A vague description produces unpredictable activation. A precise one — stating &lt;em&gt;what&lt;/em&gt; the skill does &lt;em&gt;and when&lt;/em&gt; to use it — helps the orchestrator select the right capability at the right time. (In the wider open format, the practical limits are a &lt;code&gt;name&lt;/code&gt; of ≤64 characters and a &lt;code&gt;description&lt;/code&gt; of ≤1024 characters.)&lt;/p&gt;

&lt;h2&gt;
  
  
  How the orchestrator loads behavior
&lt;/h2&gt;

&lt;p&gt;Skills are only half the story. The other half is &lt;em&gt;how&lt;/em&gt; they reach the model — and this is where the design earns its keep.&lt;/p&gt;

&lt;p&gt;Copilot Studio registers knowledge, tools, and skills the same way: &lt;strong&gt;only their metadata — names and descriptions — sits in context by default.&lt;/strong&gt; The full content is pulled in &lt;strong&gt;on demand&lt;/strong&gt; , when a prompt matches. The agent’s own top-level instructions are the exception: those are always loaded in full.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffc6m2m80zxi9m47o1h2f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffc6m2m80zxi9m47o1h2f.png" alt="Progressive disclosure keeps the context window lean" width="800" height="441"&gt;&lt;/a&gt;&lt;em&gt;Figure 6 — Progressive disclosure: the orchestrator keeps only names and descriptions in view, then loads a skill’s full instructions (and any bundled resources) when its description matches the request.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This pattern — often called &lt;strong&gt;progressive disclosure&lt;/strong&gt; or &lt;strong&gt;dynamic loading&lt;/strong&gt; — is what keeps large agents manageable. As one Microsoft community write-up puts it, &lt;em&gt;ten skills cost you ten short descriptions, not ten full sets of instructions&lt;/em&gt;, in every turn. The practical benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Manageability&lt;/strong&gt; — each skill is a focused unit you can review and version on its own.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context economy&lt;/strong&gt; — the context window stays lean no matter how many skills exist.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accuracy&lt;/strong&gt; — a skill can carry precise tool-use guidance, brought into context only when relevant (validate this per agent rather than assuming it).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speed and cost&lt;/strong&gt; — nudging the agent toward the right approach cuts round-trips (again, measure it).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why SKILL.md changes enterprise architecture
&lt;/h2&gt;

&lt;p&gt;The significance of the format extends beyond Copilot Studio. Because skills are Markdown files, they become &lt;strong&gt;version-controlled, Git-native, reviewable through pull requests, shareable across teams, portable between agents, and maintainable as long-lived enterprise assets.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is what some now call &lt;strong&gt;Behavior as Code.&lt;/strong&gt; Instead of embedding organizational know-how inside prompts, teams maintain curated repositories of reusable capabilities:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/skills
  /architecture-review SKILL.md
  /power-platform-governance SKILL.md
  /customer-incident-summary SKILL.md
  /proposal-quality-check SKILL.md
  /brand-voice SKILL.md

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3i8h4dnfsgixqymctm69.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3i8h4dnfsgixqymctm69.png" alt="Skills as a governed asset" width="800" height="441"&gt;&lt;/a&gt;&lt;em&gt;Figure 7 — A new operating model: a Center of Excellence maintains approved skills, an architecture board owns review skills, legal publishes controlled guidance, marketing owns brand voice, and delivery teams own project-documentation skills — all version-controlled and reviewed.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This enables a new operating model. A Center of Excellence can maintain approved skills. Architecture boards can define review skills. Legal and compliance can publish controlled guidance. Marketing can own brand and tone. Delivery teams can create reusable documentation skills. Once authored, these capabilities are reused across many agents — turning agent behavior into a &lt;strong&gt;governed, reusable, inspectable asset.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  One open format, many runtimes
&lt;/h2&gt;

&lt;p&gt;Here is the part that makes SKILL.md more than a Copilot Studio feature: &lt;strong&gt;it is not a Microsoft invention.&lt;/strong&gt; Microsoft states plainly that Copilot Studio skills are &lt;em&gt;“based on the Agent Skills open format, an open standard originally developed by Anthropic,”&lt;/em&gt; and that you can &lt;em&gt;“import skills you already have, including existing GitHub Copilot or Claude Code skills.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That means the same anatomy now appears across vendors:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Anthropic Claude&lt;/strong&gt; — &lt;em&gt;Agent Skills&lt;/em&gt;: a &lt;code&gt;SKILL.md&lt;/code&gt; with YAML front matter (&lt;code&gt;name&lt;/code&gt;, &lt;code&gt;description&lt;/code&gt;) and a Markdown body, plus optional bundled resources, loaded via three-level progressive disclosure.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Copilot / Visual Studio 2026&lt;/strong&gt; — skills follow the &lt;code&gt;agentskills.io&lt;/code&gt; specification: a directory containing a &lt;code&gt;SKILL.md&lt;/code&gt; with the same required front matter, discovered from paths such as &lt;code&gt;.github/skills/&lt;/code&gt;, &lt;code&gt;.claude/skills/&lt;/code&gt;, and &lt;code&gt;.agents/skills/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Microsoft Copilot Studio&lt;/strong&gt; — the new-experience Skills described throughout this article.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1eblt18n91ci1gqokibq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1eblt18n91ci1gqokibq.png" alt="SKILL.md convergence across vendors" width="800" height="428"&gt;&lt;/a&gt;&lt;em&gt;Figure 8 — The same open format across three runtimes: a directory plus SKILL.md, YAML front matter (name + description), a Markdown body, optional resources, and progressive disclosure. Behavior written once can travel between agents and vendors.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The strategic implication is large. For the first time, a piece of &lt;em&gt;behavior&lt;/em&gt; — not code, not a model, but the procedural know-how of how your organization does something — can be &lt;strong&gt;written once and run across multiple agent runtimes.&lt;/strong&gt; Skills become portable enterprise assets in the same way that container images or OpenAPI specs are.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Reality check.&lt;/strong&gt; Convergence is real, but maturity varies. Visual Studio 2026 ships built-in Microsoft skills but keeps them &lt;strong&gt;off by default&lt;/strong&gt; while it measures whether their token cost is justified — a reminder that “portable” does not mean “free,” and that every skill you load has a context window and cost footprint worth evaluating.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Skills versus tools versus knowledge
&lt;/h2&gt;

&lt;p&gt;The distinction is worth internalizing, because clean separation is one of the most important architecture disciplines in the new model.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Instructions&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Overall identity and behavior&lt;/td&gt;
&lt;td&gt;“You are a procurement support agent.”&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Knowledge&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Information retrieval and grounding&lt;/td&gt;
&lt;td&gt;SharePoint policies, Dataverse records, product docs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Performing actions&lt;/td&gt;
&lt;td&gt;Create ticket, update CRM, send approval request&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Skills&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Task-specific expertise&lt;/td&gt;
&lt;td&gt;“How to review a vendor onboarding request”&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;A &lt;strong&gt;tool&lt;/strong&gt; might create a SharePoint document. A &lt;strong&gt;skill&lt;/strong&gt; explains how that document should be created according to organizational standards. &lt;strong&gt;Knowledge&lt;/strong&gt; provides the policy that should be referenced. &lt;strong&gt;Instructions&lt;/strong&gt; define the agent’s overall role. The &lt;strong&gt;orchestrator&lt;/strong&gt; combines all of these at runtime.&lt;/p&gt;

&lt;p&gt;A mature design therefore does not ask, “Should this be a prompt, a tool, or a knowledge source?” It asks a more precise question:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;General behavior? → &lt;strong&gt;Instructions&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Task-specific procedure? → &lt;strong&gt;Skill&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Reference information? → &lt;strong&gt;Knowledge&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;External action? → &lt;strong&gt;Tool&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Specialist ownership? → &lt;strong&gt;Connected agent&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The naming trap: two different meanings of “skills”
&lt;/h2&gt;

&lt;p&gt;There is one real source of confusion. Copilot Studio has used the word &lt;strong&gt;skills&lt;/strong&gt; before, and the two meanings are unrelated.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Term&lt;/th&gt;
&lt;th&gt;Classic meaning&lt;/th&gt;
&lt;th&gt;New-experience meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Skill&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;An externally registered bot capability (Bot Framework / Microsoft 365 Agents SDK), added via a &lt;strong&gt;manifest URL&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;A &lt;strong&gt;Markdown-based&lt;/strong&gt; reusable instruction module (&lt;code&gt;SKILL.md&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Connect to a pro-code bot capability&lt;/td&gt;
&lt;td&gt;Provide task-specific behavior&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Format&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Manifest / registration-based&lt;/td&gt;
&lt;td&gt;SKILL.md / Markdown package&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Primary value&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Integration with external bot logic&lt;/td&gt;
&lt;td&gt;Modular behavior and instruction reuse&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The classic sense is still documented: you can &lt;em&gt;“convert those bots into a skill and register that skill”&lt;/em&gt; via a manifest, and Copilot Studio supports skills built on &lt;strong&gt;Bot Framework SDK 4.12.0+&lt;/strong&gt; and &lt;strong&gt;Microsoft 365 Agents SDK v1.0.0+&lt;/strong&gt;. When reading documentation or community posts, check which meaning is intended. In this article, &lt;strong&gt;skill&lt;/strong&gt; means the new Markdown-based format unless stated otherwise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connected agents and agent specialization
&lt;/h2&gt;

&lt;p&gt;The new experience also strengthens &lt;strong&gt;agent collaboration.&lt;/strong&gt; An orchestrator can understand a request, select relevant skills, use appropriate tools, and &lt;strong&gt;delegate to connected agents.&lt;/strong&gt; (Support for connecting to other agents — via the open &lt;strong&gt;A2A / Agent2Agent&lt;/strong&gt; protocol, Microsoft Foundry agents, and the Microsoft 365 Agents SDK — actually predates the Build 2026 rebuild, arriving around Ignite in late 2025, and now folds cleanly into the new model.)&lt;/p&gt;

&lt;p&gt;This creates a natural architecture for enterprises with specialized agents: HR, finance, procurement, architecture, IT support, governance, and customer-operations agents. &lt;strong&gt;Skills become the reusable expertise layer shared across those ecosystems.&lt;/strong&gt; Multiple agents might use the same &lt;strong&gt;Executive Summary&lt;/strong&gt; skill, the same &lt;strong&gt;Risk Classification&lt;/strong&gt; skill, or the same &lt;strong&gt;Policy Compliance Review&lt;/strong&gt; skill.&lt;/p&gt;

&lt;p&gt;The separation is clean:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Connected agents&lt;/strong&gt; define ownership boundaries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skills&lt;/strong&gt; define reusable behavioral patterns.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tools&lt;/strong&gt; define system actions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge&lt;/strong&gt; defines grounding.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That separation makes multi-agent architectures easier to reason about and to govern.&lt;/p&gt;

&lt;h2&gt;
  
  
  Memory and Microsoft IQ
&lt;/h2&gt;

&lt;p&gt;Memory adds another dimension. Classic agents required makers to explicitly persist every piece of state that needed to survive a conversation. For &lt;strong&gt;business state&lt;/strong&gt; , that is still the right approach: a case status, approval decision, contract value, or onboarding step should live in a durable business system such as &lt;strong&gt;Dataverse&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;But not every form of continuity is business state. Some context is about &lt;strong&gt;preferences, patterns, and how work tends to happen.&lt;/strong&gt; That is where Memory becomes interesting. Microsoft’s Memory (preview) maintains a &lt;strong&gt;separate memory store for each user&lt;/strong&gt; , per agent, in a &lt;strong&gt;tenant-scoped&lt;/strong&gt; store; it captures useful signals, saves them, and applies them on future interactions. (Notably, a user’s memories for an agent are &lt;strong&gt;deleted after 28 days of inactivity&lt;/strong&gt; — Memory is a continuity aid, not a system of record.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcd7uihtelp27470368fo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcd7uihtelp27470368fo.png" alt="Where should continuity live?" width="800" height="415"&gt;&lt;/a&gt;&lt;em&gt;Figure 9 — A simple routing rule: durable business records belong in Dataverse or a business system; learned, contextual continuity belongs in Memory (per-user, per-agent, tenant-scoped).&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;A useful rule of thumb:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Structured process state -&amp;gt; Dataverse or business system
Learned contextual continuity -&amp;gt; Memory

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Accuracy note.&lt;/strong&gt; The official Memory documentation describes a &lt;strong&gt;per-user, per-agent, tenant-scoped file store&lt;/strong&gt;. It does &lt;strong&gt;not&lt;/strong&gt; describe Memory as being backed by Dataverse. Dataverse remains the place for durable business records and is reachable as a knowledge/tool source — but it is &lt;em&gt;not&lt;/em&gt; the Memory backing store. Keep the two mentally separate.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Microsoft IQ&lt;/strong&gt; then provides the broader grounding layer. It is best understood as an &lt;strong&gt;umbrella&lt;/strong&gt; : a set of capabilities — &lt;strong&gt;Work IQ&lt;/strong&gt; (how people work), &lt;strong&gt;Foundry IQ&lt;/strong&gt; (an organization’s policies and authoritative documents), &lt;strong&gt;Web IQ&lt;/strong&gt; (context from the web), and &lt;strong&gt;Fabric IQ&lt;/strong&gt; (business entities and data) — that form the enterprise intelligence layer of the Microsoft stack. Copilot Studio consumes Microsoft IQ as a grounding source. The design center moves from individual bots to &lt;strong&gt;shared agent infrastructure&lt;/strong&gt; :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;From: One bot with its own topics and data
To: Many agents · shared governance · shared knowledge ·
       shared tools · shared skills · shared protocols

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Convergence with Microsoft IQ and Microsoft Foundry
&lt;/h2&gt;

&lt;p&gt;Perhaps the most strategic development is neither the orchestrator nor the UI. &lt;strong&gt;It is platform convergence.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Microsoft is aligning Copilot Studio, &lt;strong&gt;Microsoft Foundry&lt;/strong&gt; (the rebranded Azure AI Foundry, positioned at Build 2026 as &lt;em&gt;“the platform for building, hosting, and governing long-running AI agents”&lt;/em&gt;), &lt;strong&gt;Microsoft IQ&lt;/strong&gt; , &lt;strong&gt;MCP&lt;/strong&gt; , &lt;strong&gt;A2A&lt;/strong&gt; , &lt;strong&gt;Microsoft 365 Copilot&lt;/strong&gt; , and multi-agent architectures around a common foundation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhg72azsxwdouawk17hxo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhg72azsxwdouawk17hxo.png" alt="Standardize on the architecture, not the authoring tool" width="800" height="481"&gt;&lt;/a&gt;&lt;em&gt;Figure 10 — Low-code and pro-code remain distinct entry points, but they increasingly share a runtime (orchestration, tools, skills, MCP, A2A), a grounding layer (Microsoft IQ), and a governance layer (Microsoft 365, Entra, Purview, Defender, Agent 365).&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This does not mean low-code and pro-code become the same thing. They remain different entry points for different audiences. But the gap narrows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Low-code makers -&amp;gt; Copilot Studio
Pro-code teams -&amp;gt; Microsoft Foundry
Shared runtime -&amp;gt; Orchestration, tools, skills, MCP, A2A
Shared grounding -&amp;gt; Microsoft IQ (Work / Foundry / Web / Fabric IQ)
Shared governance -&amp;gt; Microsoft 365, Entra, Purview, Defender, Agent 365

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;On governance, the pieces are real and named. &lt;strong&gt;Microsoft Defender, Entra, and Intune&lt;/strong&gt; provide visibility and runtime protection for agents; &lt;strong&gt;Microsoft Purview&lt;/strong&gt; logs agent activity for traceability; and &lt;strong&gt;Agent 365&lt;/strong&gt; introduces agent-management capabilities — including an agent registry that surfaces unmanaged local agents. (Precision matters: the &lt;strong&gt;Agent 365 SDK is generally available&lt;/strong&gt; , but several surrounding capabilities are still in preview — don’t blanket-label all of Agent 365 as GA.)&lt;/p&gt;

&lt;p&gt;The instruction for platform teams is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Do not standardize only on the authoring tool. Standardize on the architecture.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Organizations don’t have to choose between low-code and pro-code. They can pick the most appropriate authoring environment while sharing common principles: governed access, reusable skills, clear ownership, connected agents, auditable tool use, and enterprise grounding.&lt;/p&gt;

&lt;h2&gt;
  
  
  Governance implications
&lt;/h2&gt;

&lt;p&gt;The new model increases flexibility — which increases the need for discipline. &lt;strong&gt;Skills especially need governance.&lt;/strong&gt; If a skill can define how an agent behaves, it should be treated as an enterprise asset.&lt;/p&gt;

&lt;p&gt;Recommended practices:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Store shared skills in &lt;strong&gt;version-controlled repositories.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;pull requests&lt;/strong&gt; for changes to important skills.&lt;/li&gt;
&lt;li&gt;Define &lt;strong&gt;owners&lt;/strong&gt; for each skill.&lt;/li&gt;
&lt;li&gt;Keep skill &lt;strong&gt;descriptions precise and testable&lt;/strong&gt; (they are routing metadata — see §7).&lt;/li&gt;
&lt;li&gt;Avoid broad, overlapping skills that &lt;strong&gt;compete for activation.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Separate policy knowledge&lt;/strong&gt; from procedural skill guidance.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Test skills&lt;/strong&gt; with realistic user requests.&lt;/li&gt;
&lt;li&gt;Maintain a &lt;strong&gt;changelog&lt;/strong&gt; for production-relevant skills.&lt;/li&gt;
&lt;li&gt;Review high-impact skills with &lt;strong&gt;security, compliance, legal, or architecture&lt;/strong&gt; stakeholders.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The same skill may influence many agents. That makes reuse powerful — but it also means a &lt;strong&gt;poorly written skill can propagate flawed behavior across many agents.&lt;/strong&gt; In the classic world, bad logic was often trapped inside one topic or one bot. In the new world, reusable behavior scales quickly — so review and governance must scale with it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What architects should do now
&lt;/h2&gt;

&lt;p&gt;The rebuild does not mean every classic agent should migrate immediately. A more nuanced approach:&lt;/p&gt;

&lt;h3&gt;
  
  
  For new agents
&lt;/h3&gt;

&lt;p&gt;Start with the new experience where the required capabilities are available. Design around &lt;strong&gt;Skills&lt;/strong&gt; (task-specific behavior), &lt;strong&gt;Tools&lt;/strong&gt; (actions), &lt;strong&gt;Knowledge&lt;/strong&gt; (grounding), &lt;strong&gt;Connected Agents&lt;/strong&gt; (delegation), &lt;strong&gt;Memory&lt;/strong&gt; (continuity), and &lt;strong&gt;Workflows&lt;/strong&gt; (deterministic process control). Remember that agents built here &lt;strong&gt;cannot be converted back&lt;/strong&gt; to the classic experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  For existing classic agents
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Do not migrate reflexively.&lt;/strong&gt; Classic agents still matter, especially where topic structures are stable, tested, and operationally reliable. Consider migration when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the agent needs a significant redesign,&lt;/li&gt;
&lt;li&gt;instruction complexity has grown too large,&lt;/li&gt;
&lt;li&gt;topic branching has become hard to maintain,&lt;/li&gt;
&lt;li&gt;multi-agent delegation is required,&lt;/li&gt;
&lt;li&gt;or reusable skills would clearly simplify the design.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  For platform teams
&lt;/h3&gt;

&lt;p&gt;Begin building a &lt;strong&gt;skills strategy&lt;/strong&gt; now. Ask:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which procedural behaviors are repeated across agents?&lt;/li&gt;
&lt;li&gt;Which review processes should be standardized?&lt;/li&gt;
&lt;li&gt;Which skills require central ownership, and which can be team-owned?&lt;/li&gt;
&lt;li&gt;How should skills be tested?&lt;/li&gt;
&lt;li&gt;Where should &lt;code&gt;SKILL.md&lt;/code&gt; files live, and how are they versioned and released?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The earlier this discipline is established, the easier it will be to scale agent development responsibly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Choosing between the new experience and classic — a decision guide
&lt;/h2&gt;

&lt;p&gt;Because the two experiences run in parallel and are &lt;strong&gt;not convertible&lt;/strong&gt; , the practical question isn’t “when do I migrate everything?” — it’s “which experience fits &lt;em&gt;this&lt;/em&gt; workload?” Here is a concrete way to decide.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ff5xi04q1ndy68muq3y8c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ff5xi04q1ndy68muq3y8c.png" alt="New agent experience (preview) versus Classic — when to use which" width="800" height="495"&gt;&lt;/a&gt;&lt;em&gt;Figure 11 — A side-by-side decision guide: choose the new experience when the value comes from reasoning and adaptivity; keep classic when it comes from predictability and a fixed script.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reach for the new agent experience (production-ready preview) when:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You are building a &lt;strong&gt;brand-new agent&lt;/strong&gt; and can design it natively.&lt;/li&gt;
&lt;li&gt;The work is &lt;strong&gt;open-ended and multi-step&lt;/strong&gt; — the agent must reason, plan, and adapt rather than follow a script.&lt;/li&gt;
&lt;li&gt;You want &lt;strong&gt;reusable Skills&lt;/strong&gt; shared across several agents.&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;multi-agent delegation&lt;/strong&gt; to specialists (connected agents).&lt;/li&gt;
&lt;li&gt;A single agent’s &lt;strong&gt;instructions have grown large and tangled&lt;/strong&gt; , and modular Skills would simplify it.&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;Memory&lt;/strong&gt; , large-content processing, or &lt;strong&gt;rich file outputs&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Good fits:&lt;/em&gt; a cross-system service agent that triages a request and acts across CRM, ticketing, and SharePoint; a document-heavy analysis-and-drafting agent; a front-door agent that orchestrates HR, finance, and procurement specialists.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stay on (or keep building in) the classic experience when:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Existing &lt;strong&gt;topic structures are stable, tested, and operationally reliable&lt;/strong&gt; — don’t fix what isn’t broken.&lt;/li&gt;
&lt;li&gt;The interaction is &lt;strong&gt;deterministic, transactional, and single-turn&lt;/strong&gt; (place an order, check status).&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;strict, auditable, compliance-locked dialog&lt;/strong&gt; where every path is scripted on purpose.&lt;/li&gt;
&lt;li&gt;A capability you depend on &lt;strong&gt;isn’t available in the new experience yet&lt;/strong&gt; — some classic features haven’t carried over.&lt;/li&gt;
&lt;li&gt;You have &lt;strong&gt;no appetite to re-test&lt;/strong&gt; a working production agent right now.&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;workflows in production today&lt;/strong&gt; — the new &lt;em&gt;workflows&lt;/em&gt; experience is &lt;strong&gt;public preview&lt;/strong&gt; , which Microsoft says is &lt;em&gt;not&lt;/em&gt; for production, even though the new &lt;em&gt;agent&lt;/em&gt; experience is a production-ready preview.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Good fits:&lt;/em&gt; an FAQ or guided-intake bot; a regulated, scripted process where deviation is a defect; a simple order-status lookup.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The rule of thumb:&lt;/strong&gt; choose the new experience when the value comes from &lt;strong&gt;reasoning and adaptivity&lt;/strong&gt; ; keep classic when it comes from &lt;strong&gt;predictability and a fixed script&lt;/strong&gt;. And when you do move an agent, &lt;strong&gt;plan the redesign — don’t port&lt;/strong&gt; the old topic tree one-for-one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ready-made behavior — the CAT Agent Skills gallery
&lt;/h2&gt;

&lt;p&gt;You don’t have to author every skill from scratch. Microsoft’s Customer Advisory Team (CAT) publishes &lt;strong&gt;&lt;a href="https://microsoft.github.io/cat-agent-skills/" rel="noopener noreferrer"&gt;CAT Agent Skills&lt;/a&gt;&lt;/strong&gt;, described as &lt;em&gt;“the gallery of skills for your AI agents”&lt;/em&gt;: community-contributed, drop-in instruction and script bundles you can &lt;strong&gt;download as Markdown (and scripts) and add to Cowork, Copilot Studio, or Scout.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The gallery filters by platform (Copilot Studio, Cowork, Scout) and by content type (Skills, Plugins, Automations), with tags such as &lt;em&gt;productivity, content, documents, automation,&lt;/em&gt; and &lt;em&gt;marketing&lt;/em&gt;. A few representative entries — useful both as ready-made building blocks and as &lt;strong&gt;worked examples for authoring your own&lt;/strong&gt; :&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Skill&lt;/th&gt;
&lt;th&gt;What it does&lt;/th&gt;
&lt;th&gt;Why it’s a useful example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Iterative File Editing&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Gives each edited file a version-numbered name (&lt;code&gt;report_v1.docx&lt;/code&gt;, &lt;code&gt;report_v2.docx&lt;/code&gt;…) so every update actually lands in the chat&lt;/td&gt;
&lt;td&gt;A tiny skill that fixes one specific, real Copilot Studio behavior — the ideal narrow scope&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;PowerPoint Deck Designer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Builds polished decks from a JSON spec with &lt;code&gt;python-pptx&lt;/code&gt;, running natively in the agent’s Python container (no Azure Function needed)&lt;/td&gt;
&lt;td&gt;Shows a skill that bundles a script and runs code in the sandbox&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Knowledge Source Router&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Routes knowledge searches to the right region-specific source (Americas, EMEA, APAC, Global) so answers stay locally accurate&lt;/td&gt;
&lt;td&gt;A pure &lt;em&gt;procedural&lt;/em&gt; skill — behavior, not data or actions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;Brand Voice Pass&lt;/strong&gt; / &lt;strong&gt;Brand Template Enforcer&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Rewrites drafts to a house style; ensures decks and docs start from the approved brand template&lt;/td&gt;
&lt;td&gt;Classic center-of-excellence governance skills, reused across agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Meeting Analyzer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Extracts decisions, action items, persona profiles, and &lt;em&gt;hidden&lt;/em&gt; insights (unspoken tensions, implicit risks) from a transcript&lt;/td&gt;
&lt;td&gt;A rich, opinionated skill with a clear output contract&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Universal Document Converter&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Converts between Markdown, HTML, PDF, Word, PowerPoint, Excel/CSV, and text — fully offline, using only sandbox libraries&lt;/td&gt;
&lt;td&gt;Demonstrates self-contained, no-external-dependency packaging&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Microsoft AI Platform Advisor&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Interviews a customer and recommends the right platform (M365 Copilot, Agent Builder, Copilot Studio, Foundry, or Agent 365 as the governance layer)&lt;/td&gt;
&lt;td&gt;A decision-framework skill — a good template for advisory agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Skill Authoring Coach&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Helps makers design concise, reusable skills with clear triggers, instructions, resources, and packaging&lt;/td&gt;
&lt;td&gt;A meta-skill: use it to write better skills&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The point isn’t the individual entries — it’s the &lt;strong&gt;operating model.&lt;/strong&gt; Because these are just Markdown packages on the open Agent Skills format (§7, §10), a gallery like this behaves like a &lt;strong&gt;package registry for behavior&lt;/strong&gt; : browse, download, drop in, and adapt. Treat an imported skill the way you’d treat any third-party dependency — read it, test it, and version it before trusting it in production (§16).&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting started — CAT’s three on-ramps
&lt;/h2&gt;

&lt;p&gt;Moving to modern agents is &lt;em&gt;“a different mental model, not just a new UI,”&lt;/em&gt; and Microsoft’s CAT team packaged the on-ramp into three resources, each answering a different question.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fis84mx7wkvsndkh6szxu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fis84mx7wkvsndkh6szxu.png" alt="Three on-ramps to modern agents: understand, see it run, upgrade" width="799" height="394"&gt;&lt;/a&gt;&lt;em&gt;Figure 12 — CAT’s three resources: a deep-dive deck to grasp the concepts, a deployable mini-site to see them run, and a migration plugin to try them on a real agent.&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Understand it — the Technical Deep Dive deck.&lt;/strong&gt; Built for builders and architects as a &lt;strong&gt;decision framework, not a feature tour.&lt;/strong&gt; It covers &lt;em&gt;where to build what&lt;/em&gt; (agent vs. workflow, and which piece belongs where), how to build modern agents and workflows, how to &lt;strong&gt;upgrade without simply porting the old design&lt;/strong&gt; , and an honest read on &lt;em&gt;what’s improved and what isn’t supported yet.&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;See it run — the mini-site and sample.&lt;/strong&gt; A &lt;strong&gt;real, deployable&lt;/strong&gt; Power Platform solution (not screenshots with a story), built around &lt;strong&gt;BlastBox Omega&lt;/strong&gt; , a retro-future game store “run by agents.” Two scenarios make it concrete: 

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Self-Serve Card Reissue&lt;/strong&gt; — an agent handles a member request end to end, &lt;strong&gt;gating a real write action behind an identity check&lt;/strong&gt; and handing back a generated file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Block Party Trade-Up&lt;/strong&gt; — the flagship, where a &lt;strong&gt;parent agent coordinates specialist agents&lt;/strong&gt; to untangle a messy, multi-part request and settle it with a downloadable document.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upgrade it — the migration plugin.&lt;/strong&gt; Install the Copilot Studio plugin for AI coding agents and send &lt;code&gt;/migrate&lt;/code&gt; with your agent’s environment, tenant, and URL. It &lt;strong&gt;pulls the classic agent, analyzes its structure, proposes a modern architecture, and builds an upgraded agent to test:&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/mcs-assistant:migrate Upgrade this agent to modern orchestration:
https://copilotstudio.microsoft.com/environments/&amp;lt;ENV_ID&amp;gt;/bots/&amp;lt;BOT_ID&amp;gt;
from tenant &amp;lt;TENANT_ID&amp;gt;. Use a capable AI model.

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;The guiding principle behind all three&lt;/strong&gt; is worth pinning above your desk:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Every behavior belongs in the smallest component that makes it reliable and inspectable.&lt;/strong&gt; Instructions carry what’s always true, Knowledge the searchable facts, Tools the system actions, Memory the persistent context, Skills the situational procedures, and connected agents the real specialist domains.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Or, as the CAT team puts it more bluntly: &lt;em&gt;“a modern agent shouldn’t be one instruction blob with 43 tools and a prayer.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On migration, mind the word &lt;em&gt;propose&lt;/em&gt;.&lt;/strong&gt; The plugin is &lt;em&gt;“a fast assistant, not a ‘make my architecture correct’ button.”&lt;/em&gt; The anti-pattern to avoid is turning &lt;em&gt;“every topic into a Skill and every variable into memory just because they existed — that’s archaeology with YAML.”&lt;/em&gt; Instead: understand the task, keep the outcomes that must work, map each responsibility to the smallest right component, then &lt;strong&gt;run evals against the core journeys&lt;/strong&gt; and treat the generated agent as a &lt;strong&gt;first draft&lt;/strong&gt; to inspect and compare against your old tests.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The new Copilot Studio is not simply a modernized interface. It represents a transition &lt;strong&gt;from conversation design to agent engineering.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The combination of an &lt;strong&gt;agentic orchestrator&lt;/strong&gt; , &lt;strong&gt;modular Skills&lt;/strong&gt; , &lt;strong&gt;SKILL.md portability&lt;/strong&gt; , &lt;strong&gt;Connected Agents&lt;/strong&gt; , &lt;strong&gt;Memory&lt;/strong&gt; , &lt;strong&gt;Microsoft IQ&lt;/strong&gt; , and stronger alignment with &lt;strong&gt;Microsoft Foundry&lt;/strong&gt; creates a fundamentally different development model than the one that defined Copilot Studio for the last several years.&lt;/p&gt;

&lt;p&gt;For architects, the most important takeaway is not the reduced tab count. It is the emergence of &lt;strong&gt;reusable behavioral assets&lt;/strong&gt; — versioned, shared, governed, and loaded dynamically by an increasingly capable orchestrator. The long-term significance of Build 2026 may be summarized in a single sentence:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Microsoft is transforming Copilot Studio from a chatbot builder into an enterprise agent engineering platform.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And because it rests on an &lt;strong&gt;open&lt;/strong&gt; Agent Skills format shared with Claude and GitHub Copilot, &lt;strong&gt;SKILL.md&lt;/strong&gt; may become one of the key building blocks of that transition — not just inside Copilot Studio, but across the industry.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/overview" rel="noopener noreferrer"&gt;Agents overview (preview): Microsoft Copilot Studio (new experience)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/skills-overview" rel="noopener noreferrer"&gt;Skills overview for agents (preview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/memory-overview" rel="noopener noreferrer"&gt;Memory (preview) for agents&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/configuration-add-skills" rel="noopener noreferrer"&gt;Configure skills for use in Copilot Studio agents (classic Bot Framework / M365 Agents SDK skills)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/add-agent-agent-to-agent" rel="noopener noreferrer"&gt;Connect to another agent over A2A&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/authoring-add-other-agents" rel="noopener noreferrer"&gt;Add other agents to an agent (overview)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/fabric/iq/overview" rel="noopener noreferrer"&gt;Fabric IQ overview (Microsoft IQ: Work IQ, Foundry IQ, Web IQ, Fabric IQ)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Learn — &lt;a href="https://learn.microsoft.com/en-us/visualstudio/ide/copilot-agent-skills?view=visualstudio" rel="noopener noreferrer"&gt;Agent Skills in Visual Studio (agentskills.io spec)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Copilot Studio Blog — &lt;a href="https://techcommunity.microsoft.com/blog/copilot-studio-blog/meet-the-new-copilot-studio-rebuilt-for-more-complex-multi-step-work/4526488" rel="noopener noreferrer"&gt;Meet the new Copilot Studio: rebuilt for more complex, multi-step work&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The Custom Engine (Microsoft) — &lt;a href="https://microsoft.github.io/mcscatblog/posts/modern-mcs-agent-skills/" rel="noopener noreferrer"&gt;Modern Agents Have Skills Now — How They Work in Copilot Studio&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The Custom Engine (Microsoft) — &lt;a href="https://microsoft.github.io/mcscatblog/posts/new-orchestrator-resources/" rel="noopener noreferrer"&gt;New Orchestrator, New Rules? CAT’s Got You (migration, samples, deep-dive deck)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft CAT — &lt;a href="https://microsoft.github.io/cat-agent-skills/" rel="noopener noreferrer"&gt;CAT Agent Skills gallery&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Security Blog — &lt;a href="https://www.microsoft.com/en-us/security/blog/2026/06/02/microsoft-build-2026-securing-code-agents-and-models-across-the-development-lifecycle/" rel="noopener noreferrer"&gt;Microsoft Build 2026: securing code, agents, and models (Agent 365, Entra, Purview, Defender)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Anthropic — &lt;a href="https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview" rel="noopener noreferrer"&gt;Agent Skills overview (SKILL.md, YAML frontmatter, progressive disclosure)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;GitHub Docs — &lt;a href="https://docs.github.com/en/copilot/how-tos/copilot-sdk/features/skills" rel="noopener noreferrer"&gt;Custom skills in the Copilot SDK&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Build 2026 — &lt;a href="https://build.microsoft.com/en-US/home" rel="noopener noreferrer"&gt;Event dates (June 2–3, 2026)&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>agents</category>
      <category>agentskills</category>
      <category>build2026</category>
      <category>copilotstudio</category>
    </item>
  </channel>
</rss>
