Wat is Copilot Studio, en voor wie?
▼Wat is Copilot Studio?
Microsoft Copilot Studio is het Low-Code-platform van Microsoft voor het bouwen van Custom Copilots en AI-agents op basis van het Power Platform. Je ontwerpt er conversationele en autonome agents, van eenvoudige FAQ-bots tot agents die zelfstandig afspraken plannen, tickets verwerken of documenten bewerken.
Technisch zit Studio in de Power Platform-stack, naast Power Apps en Power Automate. Het maakt gebruik van 1.400+ connectors, Dataverse, Microsoft 365 Graph en sinds 2025 van MCP-servers. Studio is de directe tegenhanger van LangDock Workflows of Zapier met LLM's, maar dan diep geïntegreerd in de Microsoft-tenant.
Uitlevering gebeurt in Teams, Microsoft 365 Copilot Chat, op het web, in Power Apps, in eigen kanalen via de Direct Line API of als Voice Agent in Dynamics 365 Contact Center.
Licentieroutes (stand augustus 2026)
Microsoft heeft in september 2025 het oude "per bericht"-model vervangen door een Credit-model:
| Licentieroute | Prijs | Wanneer gebruiken? |
|---|---|---|
| Microsoft 365 Copilot-licentie | $30/gebruiker/maand | Gebruikers kunnen bestaande Copilot Studio-agents in M365 Copilot Chat gebruiken. Bouwen loopt via Agent Builder (beperkt). B2E-gebruik van de Studio-agents is inbegrepen in de M365 Copilot USL (Fair Use). |
| Copilot Studio Standalone (Capacity Pack) | $200/maand voor 25.000 Credits ($0,008/Credit) | Als je agents bouwt en uitrolt en planbare Credit-volumes wilt (~25% goedkoper dan PAYG). |
| Copilot Studio Pay-as-you-go (Azure) | $0,01/Credit, tenant-breed gepoold | Variabele workloads, geen Capacity-commitment. |
| Pre-Purchase Plan (P3), sinds 2026 | Vooruitbetaling voor 1 jaar, tot 20% korting | Planbare jaarvolumes. Koopt een pool aan Copilot Credits Commit Units (CCCU), bruikbaar in Copilot Studio, Dynamics 365 First-Party Agents en Copilot Chat. |
| Trial | 30 dagen, gratis | Voor PoC's en trainingen. |
Credits worden tenant-breed gepoold, niet per gebruiker. Een eenvoudige scripted FAQ-bot kost ongeveer 1 Credit per conversatie ($0,01). Een agent met Generative Orchestration, Tenant Grounding en Deep Reasoning kan $0,25 tot $2,00 of meer per conversatie kosten.
Voor Power Automate-flows als Tools geldt: klassieke Cloud-flows blijven Power Automate-licenties nodig hebben. Agent Flows (in Studio gebouwde flows) worden volledig via Copilot Credits afgerekend, dus geen apart PA-gebruikersplan nodig.
Microsoft biedt sinds april 2026 een Agent Usage Estimator (microsoft.github.io/copilot-studio-estimator) voor Credit-prognoses op basis van agent-type, verkeer, orchestration, Knowledge en Tools. Gebruik die voor elke pilot.
Platforms en kanalen
- Web Studio (
copilotstudio.microsoft.com), authoring - Microsoft Teams (persoonlijke chat, met toolkit ook kanalen en groepschats)
- Microsoft 365 Copilot Chat (M365 Copilot-app)
- Web Chat / Custom Web (React Web Chat of WebChat JS)
- Direct Line API voor eigen apps en kanalen
- SharePoint (ingebed op pagina's)
- Power Apps (als agent-component)
- Power Pages (publieke sites)
- Voice Channel in Dynamics 365 Contact Center (IVR, Real-time Voice Agents)
- Facebook, Slack en meer via Azure Bot Service Adapter
Feature-tijdlijn 2025/2026
| Moment | Release |
|---|---|
| Maart 2025 | GA van autonome agents (event-triggers in plaats van alleen gebruikersinitiatie) |
| Maart 2025 | GA van Agent Flows (AI-uitgebreide Power Automate-achtige flows, afgerekend in Credits) |
| Mei/juni 2025 | MCP (Model Context Protocol) Preview. SSE in augustus 2025 uitgefaseerd (Streamable HTTP is de standaard) |
| Sept 2025 | Overstap van "Messages" naar Credits als afrekeningsgrootheid. Computer-Using Agents (CUA) Preview voor Windows-desktop |
| Okt 2025 | MCP-servers GA als Tool-bron. GPT-4o retired, GPT-4.1 is de nieuwe default. Agent Evaluations met Test Sets als Preview, ROI-analytics, Copilot Studio Kit (Power CAT Tooling) |
| Nov 2025 | GPT-5 Chat GA voor US/EU. Microsoft Entra Agent ID Preview (identity-governance per agent). Multi-Agent Orchestration (agents onderling verbinden). Work IQ voor SharePoint-Knowledge, SP-metadata-filters, Request for Information in Agent Flows, Tool Groups Preview, HITL Approval-gates per toolstap |
| Dec 2025 | Side-by-side vergelijking van meerdere agent-versies in Evaluations |
| Jan 2026 | VS Code Extension GA voor Pro Code-authoring. Cloud PC Pooling voor Computer Use, eval Activity Maps |
| Feb 2026 | Claude Sonnet 4.5 voor Computer Use (Anthropic via External Models). xAI Grok 4.1 Fast als experimental model, content moderation per prompt |
| Maart 2026 | Agent Evaluations GA met multi-turn tests en Custom Graders. ChatGPT-5 GA wereldwijd, Claude Sonnet 4.5/4.6 + Opus 4.6 GA (Cross-Geo), Bing Custom Search als Knowledge Source, Work IQ Tools Preview, Post-Call Action Topics voor Voice, Prompt Assistant, Agent-Node in Flows |
| April 2026 | Agent-to-Agent (A2A) GA. Real-time Voice Agents Preview (D365 Contact Center, alleen North America), Voice Hold/Resume, Agent Usage Estimator, Custom Metrics in Analytics, GPT-5.5 Reasoning Deep (Experimental). Microsoft Agent 365 aangekondigd als centrale governance- en control plane |
| Mei 2026 | Microsoft Agent 365 GA (1 mei, commercieel segment, per-user licentie). Computer Use GA (web- en desktopautomatisering, alleen US). Prompt-Node en Microsoft 365 Copilot-Node in de nieuwe workflow-editor. Asynchronous Responses in Agent Flows (voorbij de 2-min limiet). Agent Inventory Schema (organisatiebrede agent-audit via Admin Center, API en Azure Resource Graph). Consent-based Recording voor Voice, File Groups met instructies, Code Interpreter op SharePoint-bronnen, sentimentanalyse in Analytics, SharePoint-lijsten als Knowledge Source (Preview), Conditional Access voor Entra Agent IDs |
| Juni 2026 | Nieuwe Copilot Studio-ervaring (9 juni) in wereldwijde Public Preview: 9 tabs teruggebracht naar 4, Enhanced Orchestration Runtime, Skills (herbruikbare instructie-bouwstenen, exporteerbaar als Markdown), Memory (persistente gebruikerscontext over sessies heen, per gebruiker opgeslagen) en Microsoft IQ (koppeling aan organisatiedata: mail, agenda, bestanden, Teams-berichten, personen). Bestaat naast Classic, zonder migratiepad. Additional Threat Protection voor agents GA, unified view voor errors, warnings en governance-signalen (GA), volledige evaluatie van multi-turn conversaties (GA), realtime-evaluatieresultaten (GA, 31 mei). Nieuwe modellen GPT-5.5 Chat en Claude Opus 4.8 in early release cycle (Preview), Mistral Medium 3.5 als experimental model, voor M365 Copilot-gebruikers geoptimaliseerde agents (Preview). Frontier Tuning (2 juni, Build 2026) aangekondigd als Private Preview via Forward Deployed Engineers, in Copilot Studio nog niet beschikbaar voor makers. Claude Sonnet 4.5 wordt uitgefaseerd (auto-migratie naar Sonnet 4.6, uitstel tot 30-06-2026 mogelijk). Condition Groups GA (17 juni, meerdere condities gebundeld in één node, table- en graph-view). Windows 365 for Agents MCP-server GA (25 juni, volledige cloud-pc-controle: desktop, Edge browser automation, UI Automation) |
| Juli / augustus 2026 | Microsoft documenteert voor het eerst het Harness-model (28 juli) als eigen architectuurlaag: GitHub Copilot Harness, Standard Harness en Copilot Chat Harness, elk met eigen functionaliteit en eigen afrekening. Voor de GitHub Copilot Harness geldt usage-based billing in Copilot Credits vanaf de eerste bouwstap (niet pas vanaf Publish). Memory gepreciseerd als productiewaardige Preview (verwijdering na 28 dagen inactiviteit, eigen Memory-portal voor gebruikers, uitgeschakeld in groepschats en Teams-kanalen). Foundry IQ als tool voor koppeling aan bestaande Azure AI Foundry Knowledge Bases (Preview, één verbinding per agent). Teams Phone Agent als voice-kanaal (Preview, tenant-vrijgave via Microsoft Support vereist). De Copilot Studio Kit heet nu Copilot Agent Kit en krijgt Agent Debugger, Agent Library, Agent Insights Hub, Power Shield en Agent Review Pipeline. Nieuwe architectuurrichtlijn voor Rate Provisioning (doorvoerplanning gescheiden van licentieplanning) |
| Eind juni 2026 | Platform-builds 2026.6.1 tot 6.3: Dataverse Search standaard actief. Content Safety Grading (Hate, Self-harm, Sexual, Violence, met configureerbare drempels) in maker-evaluations. Prompt-text override per environment variable (agent-prompt aanpassen zonder redeploy). Streaming-antwoorden met resume na verbindingsverlies (Last-Event-Id-header speelt gemiste events na). Consent-cards per agent voor AI-prompts (los van connector- en flow-consent). Nieuwe Power Platform API-endpoints voor het aanmaken, bijwerken, oplijsten en verwijderen van agents en voor het opvragen van agent-componenten. GPT-5 Mini Fine-tuned standaard geactiveerd en selecteerbaar in de UI. Agent Inventory standaard in GCC- en High Sovereign-clouds. Breaking change: Skill-agents blokkeren nu niet-ondersteunde referentie-bestandstypen |
| Juli 2026 | Agent 365-licentieplicht voor agent security (1 juli, zie hoofdstuk 7): Agent Discovery en Posture, Threat Detection en Advanced Hunting Investigation voor Copilot Studio-agents vereisen nu een Microsoft Agent 365-licentie. Advanced Hunting-tabel AIAgentsInfo wordt vervangen door AgentsInfo. Release Planner uitgefaseerd (2 juli): feature-informatie voor Copilot Studio, Sales-, Finance- en Service Agent loopt nu alleen nog via de Microsoft 365-roadmap, niet meer via de Power Platform Release Planner. Agent Store-inzending vanuit Agent Builder GA (15 juli, sectie "Built by your org", admin-goedkeuring in M365 Admin Center). MCP-agents in Word, Excel, PowerPoint en Outlook GA. Federated Copilot Connectors beheerbaar in M365 Admin Center (user-level auth op runtime, geen organisatie-indexering). Geneste rechten voor Confluence- en ServiceNow-connectors. Entra Agent ID wordt verplicht: elke nieuwe agent krijgt automatisch een agent-identiteit, de environment opt-out vervalt, bestaande agents blijven voorlopig op App Registrations. MCP-certificering als Preview via het Partner Center-aanbodtype Apps and Agents for M365 and Copilot (17 juli, oud pad alleen nog tot eind juli). Environment-level telemetrie naar Azure Application Insights als Preview (28 juli, alleen Managed Environments, OpenTelemetry-spans in dependencies). Real-time Agents op digitale messaging-kanalen (Preview) met het nieuwe model GPT-5 Chat (Preview), dat in-region processing in de EU toestaat, plus monitoring via Application Insights. Workflow en MCP-server als tool-typen voor agents op de GitHub Copilot Harness (Preview). Bestandsbijlagen en door de agent gegenereerde bestanden in conversaties (Preview, GitHub Copilot Harness) |
| Augustus 2026 | Geen nieuwe feature-aankondigingen in de What's New-lijst, maar diverse documentatie-precisering met projectrelevantie: het governance-overzicht (4 aug) noemt Microsoft Entra-netwerkcontroles via Agent 365 als algemeen beschikbaar en beschrijft twee gedocumenteerde Customer Lockbox-lacunes (Copilot Studio security audit logging en Agent 365-governance-events). De billing-pagina (3 aug) verscherpt Agent Flow enforcement en maandelijkse verbruikslimieten per agent. De quotas-pagina (4 aug) voegt pagina-precieze PDF-citaten toe voor het pad "Bestanden uploaden, SharePoint" plus harde rijlimieten voor SharePoint-lijsten. De Purview Audit-documentatie (28 aug) stelt duidelijk dat het registreren van administratieve activiteiten niet uit te zetten is en dat de audit-oplossing geen gespreksteksten bevat, alleen de transcript-thread-ID. De harness-documentatie (27 aug) bevestigt het drie-harness-model ongewijzigd |
| September 2026 | GitHub Copilot Harness GA (2 sep): de runtime is uit Preview en volgens Microsoft de aanbevolen basis voor meerstaps agents en workflows. In dezelfde blog worden workflows en MCP-servers als tools genoemd als algemeen beschikbaar, terwijl de bijbehorende how-to-pagina's nog steeds de Preview-banner tonen. Memory, Connected Agents, Work IQ, Foundry IQ, bijlagen en gegenereerde bestanden, environment-level telemetrie en MCP-certificering blijven Preview. Uitbreiding van Agent Evaluations (RM569607) als GA met reasoning traces, geciteerde Knowledge Sources, run-vergelijking, grotere datasets, configureerbare testcase-generatie en testdata uit Knowledge Sources. Copilot Tuning start na de verhuizing uit de M365 Agent Builder (MC1454393, tuning-stop op 20 aug) als Public Preview in Copilot Studio op skill-based architectuur, GA aangekondigd voor december 2026. Nieuwe guidance-artikelen over de model lifecycle (zeven-stappen-cyclus, Inventory API-query per model, valkuil use-categorie) en over contextverdeling in de Standard Harness (oorzakenmodel voor dubbele en ontbrekende antwoorden, Adaptive Card-buttons bereiken de context niet). Modellenlijst ongewijzigd ten opzichte van augustus. App-building in Copilot Studio (10 sep) aangekondigd als Public Preview en "in de loop van de komende week" uitgerold: full-stack apps op open standaarden vanuit een beschrijving in natuurlijke taal, met Git-gebaseerd versiebeheer, deployment stages en version isolation, Entra-identiteit en connector-policies standaard, koppeling van bedrijfsdata via connectors en Work IQ, inventaris in het Microsoft 365 Admin Center en gebruikerstoegang via managedapps.cloud.microsoft.com. In Copilot Cowork bestaat dezelfde mogelijkheid al als App-skill, maar alleen via het Microsoft Frontier-programma. De Power Apps vibe experience wordt daarmee vervangen (documentatiehint van 8 sep verwijst naar Cowork en Copilot Studio). Het productoverzicht (9 sep) ordent de bouwstenen opnieuw naar agents, workflows en Agent Flows en voert Build with natural language in als Preview: een bedrijfsdoel beschrijven, Studio kiest de combinatie van assets en genereert er meerdere in één sessie. In de tweede helft van de maand draait het modelroster (18/19 sep): GPT-5.5 Chat vervangt GPT-4.1 als default, Claude Opus 4.7 komt er als deep-model GA bij, en de GitHub Copilot Harness krijgt een eigen beschikbaarheidspagina met een eigen roster (GPT-6 Astra, Claude Sonnet 5, Claude Fable 5 en 5.1, Claude Opus 4.8 en Opus 5, GPT-5.6 Reasoning als Experimental) – twee aparte modellijsten in plaats van één. De Computer-Use-modellen (18 sep) worden als eigen lijst uitgewezen (Claude Opus 4.6 als premium-model met 15 credits per stap). Bij Foundry IQ verdwijnt het Preview-label zonder aankondiging (16 sep). De environment-level telemetrie (17 sep) geldt nu voor beide harnesses en zendt root-aanroepen uit als dependencies in plaats van als requests. Drie roadmap-items over kostentransparantie (15 sep, RM571194 tot RM571196) brengen creditverbruik in preview-chat, evaluations en Monitor-tab. De auth-documentatie (17 sep) documenteert voor het eerst dat agents met Microsoft-authenticatie niet via iframe in Power BI-rapporten zijn in te bedden; aan het einde van de maand (25-9) start de Copilot Managed Runtime als public preview: de door Microsoft beheerde runtime waarop apps uit Copilot Studio, Copilot Cowork en de CLI draaien, met gescheiden facturering voor het bouwen (per environment in het Power Platform-beheercentrum) en het gebruik (per gebruiker in het Microsoft 365-beheercentrum); nieuwe guidance-artikelen over het vergelijken van harnesses en over governance van het creditverbruik op de GitHub Copilot Harness (17-9), en developer- en trial-environments vallen sinds 1-9 onder usage-based billing |
Wanneer loont Copilot Studio?
Loont, als:
- Je diep in M365, Teams, SharePoint of Dataverse zit en Azure AD-login met permissions wilt "erven".
- Je autonome agents nodig hebt op SharePoint-, Outlook- of Forms-events (bijvoorbeeld "auto-triage van nieuwe tickets").
- Je een conversationele UI in Teams wilt in plaats van CLI of custom web-app.
- Je compliance en audit via Microsoft Purview nodig hebt (bijvoorbeeld AVG- of AZAV-context).
- Je Voice-IVR in een Dynamics 365 Contact Center nodig hebt.
- Je bestaande Power Automate-flows als Tools wilt blijven gebruiken.
Loont NIET als vervanging voor:
- Puur API-orkestreren zonder conversatie. Daar volstaat Power Automate (Cloud Flow) of Logic Apps.
- Maximale LLM-controle over prompts, modellen, providers. Daar ben je beter af in Azure AI Foundry, LangDock of direct met OpenAI/Anthropic.
- Self-hosted of on-prem LLM's. Studio is cloud-only.
- Een volwaardig customer service-platform. Studio is alleen de bot-frontend. De human handoff, ticketing en routing komt van Dynamics 365 Customer Service (of een derde systeem via Generic Handoff).
- Pixel-perfect web-UI's. Adaptive Cards zijn de grens. Alles daarboven is Power Apps of Custom Web.
Architectuur en bouwstenen
▼Het conceptmodel
Een Studio-agent is de top-level-eenheid. Hij bestaat uit Persona, Instructions, Topics, Tools, Knowledge en Channels, en leeft in een Power Platform-environment met eigen DLP- en audit-configuratie.
┌──────────────────────────────────────┐
│ AGENT (= "Copilot") │
│ │
│ ┌─────────────┐ ┌──────────────┐ │
│ │ INSTRUCTIONS│ │ ORCHESTRATION│ │
│ │ (System │ │ (Classic vs │ │
│ │ Prompt) │ │ Generative) │ │
│ └─────────────┘ └──────────────┘ │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────┐ │
│ │ TOPICS │ │ TOOLS / │ │KNOW- │ │
│ │ (Dialog) │ │ ACTIONS │ │LEDGE │ │
│ └──────────┘ └──────────┘ └──────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ Nodes: Connector Web/SP/ │
│ - Message Action Dataverse/│
│ - Question PA-Flow Files/ │
│ - Condition Agent-Flow Graph/ │
│ - Variable Prompt MCP/ │
│ - Action REST/HTTP Azure AI │
│ - Adaptive MCP-Tool Search │
│ Card │
│ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ TRIGGERS │ │ CHANNELS │ │
│ │ user / event │ │ Teams / Web /│ │
│ │ /schedule │ │ Voice / ... │ │
│ └──────────────┘ └──────────────┘ │
└──────────────────────────────────────┘
│
▼
┌────────────────────┐
│ POWER PLATFORM ENV │
│ (DLP, Solutions, │
│ Audit via Purview)│
└────────────────────┘
Wat je in Copilot Studio bouwt
Microsoft heeft het productoverzicht in september 2026 opnieuw ingedeeld en benoemt sindsdien uitdrukkelijk meerdere bouwstenen die je los gebruikt of tot een doorlopende oplossing combineert. Een workflow mag bijvoorbeeld een agent aanroepen voor één stap. Voor de projectpraktijk is dat meer dan cosmetica: wie "Copilot Studio" in een klantworkshop nog steeds vertaalt met "chatbot-bouwdoos", verkoopt het platform sinds deze indeling onder de waarde.
| Bouwsteen | Wat het is | Status (stand 14-09-2026) |
|---|---|---|
| Agent | AI-assistent die conversaties voert en taken uitvoert: Instructions, Knowledge Sources, Tools. Sommige agents krijgen een eigen account en werken proactief mee in gedeelde bedrijfsprocessen. | GA |
| Workflow | Automatisering uit de drag-and-drop-designer waarbij elke stap zelf mag redeneren en handelen: agents, tools en logica in één flow. Met ingebouwd testen en human-in-the-loop-controles. | GA-aankondiging, documentatie nog Preview |
| Agent Flow | Het gevestigde flow-format in Studio: authoring vergelijkbaar met Power Automate, maar native. Draait zelfstandig of hangt als tool aan een agent en levert het resultaat aan hem terug. | GA |
| App, nieuw | Volledige applicatie, beschreven en gegenereerd in natuurlijke taal. Zie hieronder. | Public Preview sinds september 2026 |
Apps als nieuwe bouwsteen (Public Preview sinds september 2026)
Op 10 september 2026 heeft Microsoft aangekondigd dat je in Copilot Studio niet langer alleen agents en workflows bouwt, maar ook apps. Je beschrijft het bedrijfsresultaat, de gebruikersgroep, de data en de gewenste acties in natuurlijke taal, itereert in het gesprek, ziet een preview en publiceert pas daarna. Wie dieper wil ingrijpen, kan de gegenereerde code inzien.
Technisch zijn dat volgens Microsoft full-stack apps op open standaarden, geen canvas apps in de klassieke Power Apps-zin. Ze ondersteunen Git-gebaseerd versiebeheer, deployment stages en version isolation, zodat teams aan de volgende versie kunnen doorbouwen zonder de lopende te verstoren. Identiteit via Microsoft Entra en organisatie- en connector-policies gelden standaard. Bedrijfsdata wordt gekoppeld via connectors en Work IQ.
Voor de IT-kant: gepubliceerde apps verschijnen als inventaris met operationele sturing in het Microsoft 365 Admin Center. Gebruikers vinden vrijgegeven, bedrijfswaardige apps onder managedapps.cloud.microsoft.com.
In Copilot Studio rolt app-building volgens de aankondiging "in de loop van de komende week" uit als Public Preview, dus vanaf half september 2026 en niet overal tegelijk. In Copilot Cowork bestaat de mogelijkheid al als App-skill, maar alleen via het Microsoft Frontier-programma, dat apart moet worden aangevraagd. Afgerekend wordt volgens het usage-based billing-model in Copilot Credits: de billing-documentatie rekent sinds 27 augustus 2026 uitdrukkelijk "agents, workflows, and apps" tot het toepassingsgebied. Dat betekent dat al het bouwen van een app Credits kost, niet pas het gebruik (zie hoofdstuk 10).
Voor het Cowork-pad documenteert Microsoft delen via een link, zoals je dat kent van Word of PowerPoint: wie de link heeft en Microsoft 365 Copilot mag gebruiken, kan de app openen en gebruiken, inclusief alle data erin. Bij een app met gekoppelde bedrijfsdata is dat een heel ander verhaal dan bij een document. Neem apps daarom op in dezelfde deel-governance als agents, in plaats van ze als "maar een prototype" te laten draaien.
Copilot Managed Runtime: waar de apps draaien (public preview sinds 25 september 2026)
Sinds 25 september 2026 heeft de infrastructuur onder de apps een naam: Copilot Managed Runtime (in de Licensing Guide voorheen "Microsoft-managed host"). Het is gestart als public preview en host apps uit Copilot Studio, Copilot Cowork en de CLI; via de Copilot Managed Runtime SDK kunnen ook apps uit tools van derden zoals GitHub Copilot of Claude Code in je eigen tenant draaien. Elke app krijgt Entra-authenticatie, toegang tot meer dan 1.500 connectors en een Git-repository, en erft automatisch Conditional Access, DLP, advanced connector policies en deellimieten. Gegevenstoegang loopt altijd via de identiteit van de aangemelde gebruiker.
Voor admins: het maken van apps in Copilot Studio staat standaard aan. Je beheert dit in het Microsoft 365-beheercentrum onder Apps > Overview > Set up app creation spaces (of via PowerShell met de tenantinstelling enableManagedAppsMcsPreview), en je kunt het met een beveiligingsgroep beperken tot geselecteerde makers. Het CLI-pad staat standaard uit, Cowork hangt af van de Frontier-onboarding. Global admins en Power Platform-admins mogen dit beheren.
Het bouwen van een app in Copilot Studio loopt via de bestaande Copilot Studio-facturering per environment in het Power Platform-beheercentrum. Het gebruik rekent Microsoft daarentegen per gebruiker af via spending policies in het Microsoft 365-beheercentrum (Copilot > Cost management); het environment-model van de agent-runtime geldt uitdrukkelijk niet voor apps. Uitzondering: gebruikers met Power Apps Premium verbruiken bij het uitvoeren geen credits, zolang de app geen apart gefactureerde diensten zoals Work IQ API's gebruikt. Wie geen dekking heeft, ziet in de preview eerst een waarschuwing en wordt na 20 app-bewerkingen of vijf minuten gebruik geblokkeerd. Plan de runtime-dekking voor de latere gebruikers daarom vóór de uitrol, niet erna.
Begrippenkader
| Begrip | Wat het is |
|---|---|
| Agent (voorheen Copilot) | De top-level eenheid: Persona, Instructions, Topics, Tools, Knowledge en Channels. Microsoft noemt sinds 2025 vrijwel alles "Agent" in plaats van "Copilot". |
| Topic | Een dialoogblok met trigger-phrases (Classic) of Description (Generative). Bevat Nodes. Vergelijkbaar met een "intent-flow"-eenheid in oudere bot-frameworks. |
| Node | Losse stap binnen een Topic: Send Message, Ask Question, Condition, Set Variable, Call an Action, Adaptive Card, Redirect, End Conversation. |
| Action / Tool | Iets wat de agent kan "doen": Connector Action, Power Automate-flow, Agent Flow, Prompt (AI Builder), HTTP-request, Bot Framework Skill, MCP-tool, Computer Use, Other Agent (A2A/Foundry/Fabric/M365 Agent SDK). |
| Knowledge Source | Wat de agent "weet": Files (upload), SharePoint, websites (public/Bing), Dataverse, Microsoft Graph (met M365 Copilot), Azure AI Search, externe federated knowledge. |
| Variable | Data-drager tussen Nodes en Topics. Scopes: Topic, Global, System of Environment Variable. |
| Trigger | Hoe een Topic start: user-phrase, event (autonome trigger), Adaptive Card-submit, conversation start, inactivity, escalate, error. |
| Channel | Waar de agent live is: Teams, M365 Copilot, Web, Custom (Direct Line), Voice, Slack, Facebook, SharePoint, Power Pages. |
| Environment | Power Platform-omgeving (Dev/Test/Prod) met eigen Dataverse-DB, eigen connectors en eigen DLP-policies. |
| Solution | Power Platform-container voor agents, flows en variables. Basis voor ALM (managed solutions verplaatsen tussen environments). |
| App (Preview sinds sept 2026) | In natuurlijke taal gegenereerde full-stack applicatie op open standaarden, met Git-versiebeheer, deployment stages en version isolation. Gepubliceerde apps staan in het M365 Admin Center in de inventaris en voor gebruikers onder managedapps.cloud.microsoft.com. |
Triggers en instappunten
▼Een Studio-agent kan op twee fundamenteel verschillende manieren starten:
- (a) Een gebruiker stelt een vraag of stuurt een bericht, de agent matcht een Topic.
- (b) Ergens gebeurt een event, de agent start autonoom (geen gebruiker in de loop).
Gebruikersgeïnitieerde triggers
| Trigger | Waar loopt dat? | Toepassing | Limieten / valkuilen |
|---|---|---|---|
| Phrase Trigger (Classic) | Topic-match op basis van trigger-phrases | Klassieke FAQ- of Q&A-bot | 5 tot 10 goede phrases zijn genoeg. Meer verwart de NLU. |
| Description Trigger (Generative) | Generative Orchestration gebruikt Topic-description in plaats van phrases | Complexere agents met veel topics | De description moet precies zijn. De agent kiest het Topic via het LLM. |
| Adaptive Card Submit | Als de gebruiker op een Adaptive Card-button klikt | Formulier-gerichte dialogen | Card-schema netjes bijhouden, anders krijg je stille fouten. |
| Inactivity | Als de gebruiker X seconden niet antwoordt | "Ben je er nog?"-reminder | Default 5 minuten, configureerbaar. |
| Conversation Start | Welkomsttopic | Begroeting en intent-inventarisatie | Moet kort zijn, anders is het irritant. |
| Escalate | Gebruiker zegt "medewerker alstublieft" of iets soortgelijks | Handoff naar mens | Triggert Generic Handoff of D365 Omnichannel. |
| End of Conversation | Conversation End Topic | CSAT-enquête, logging | Optioneel maar nuttig voor telemetrie. |
| Error | Systeemfout in het Topic | Graceful fallback | Custom error-topic in plaats van standaardantwoord. |
Autonome triggers en event-triggers (sinds 2025 GA)
Voorwaarde: Generative Orchestration moet actief zijn op de agent. Anders toont de UI de event-triggers niet.
| Trigger-connector | Voorbeeld | Latentie / limieten |
|---|---|---|
| Outlook, nieuwe mail | "Nieuwe mail met onderwerp XYZ komt binnen, triage" | Vrijwel realtime. Maker-auth nodig. |
| SharePoint, nieuw bestand of item-update | "Nieuw contract in SP-library, naar legal reviewer" | Polling-based (enkele minuten). |
| Dataverse, Row Created/Updated | "Nieuwe lead in CRM, verrijkt en gekwalificeerd" | Realtime via Dataverse-events. |
| Microsoft Forms, nieuwe inzending | "Nieuwe helpdesk-aanvraag, bot routeert" | Realtime. |
| Teams, channel-bericht of @mention | Reactie op @-mention | Geen polling, push. |
| Schedule (Recurrence) | "Elke maandag 08:00 wekelijkse briefing" | Cron-achtig. |
| Custom Connector / HTTP | Webhook van derde systeem | Maker moet auth zelf regelen. |
| MCP-server Resource Update | Extern systeem pusht update | Nieuw sinds 2026. |
Wat event-triggers kosten, vereisen en stilzwijgend meebrengen
Microsoft heeft de trigger-documentatie in september 2026 flink uitgebreid. Vier punten daaruit bepalen in projecten vaker succes of ergernis dan de vraag welke connector je kiest:
- Elke payload is een message. Microsoft telt elke trigger-payload als een bericht aan de agent – ook als niemand met hem praat. Het voorbeeld in de documentatie is ondubbelzinnig: een recurrence-trigger op een ritme van 10 minuten stuurt elke 10 minuten een payload en verbruikt dienovereenkomstig. Een autonome agent die in de leegloop "even kijkt of er iets is", wordt zo snel de duurste agent in de tenant.
- Minder dan 15 actions of topics achter elkaar. Microsoft raadt uitdrukkelijk aan minder dan 15 actions of topics achter elkaar aan te roepen: complexe agents die veel stappen als één sequentie draaien, lopen onbetrouwbaar. Ligt je blueprint daarboven, splits hem dan in Agent Flows of child agents in plaats van aan de instructions te sleutelen.
- Triggers draaien altijd op maker-credentials. Event-triggers kunnen uitsluitend de inloggegevens van de agent-auteur gebruiken, en voor een autonome run moet ook elke geauthenticeerde action daarover lopen. Gebruikers van een gepubliceerde agent kunnen daarmee bij data en systemen komen die met de rechten van de maker worden geopend. Copilot Studio toont hierover vóór het publiceren een waarschuwing – dat is geen formaliteit, maar de kernvraag van de vrijgave.
- Zonder solution-aware cloud flow sharing zijn er helemaal geen triggers. Makers kunnen event-triggers alleen aanmaken in environments waar deze instelling aanstaat. Lukt het niet een trigger toe te voegen terwijl de data policies triggers wel toestaan, dan is dat vrijwel altijd de oorzaak. Los daarvan kunnen admins event-triggers via data policy volledig blokkeren voor een environment.
Bouwstenen in detail: Topics, Tools, Knowledge, variabelen, auth
▼Topics
Een Topic is de kleinste zinvolle "conversatielus". Het heeft (1) een trigger, (2) een reeks Nodes en (3) optioneel input- en output-variabelen.
Topic-typen:
- Custom Topics, zelf gebouwd.
- System Topics, Microsoft-defaults (Greeting, Goodbye, Escalate, Confused, Reset Conversation, On Error, Multiple Topics Matched, ...).
- Generative Answer Topic, fallback die bij geen match Knowledge Sources doorzoekt.
Nodes binnen een Topic
| Node | Wat hij doet | Voorbeeld | Valkuil |
|---|---|---|---|
| Send a Message | Bot zegt iets | "Hallo, ik ben de HR-bot." | Variabelen in {x} insluiten, geen markdown-HTML. |
| Ask a Question | Vraagt gebruikersinput, slaat op in variabele | "Hoe heet je?" naar Topic.Name | Entity-type kiezen (string, number, date, email, multiple choice, enz.). |
| Condition | If/else-vertakking | If isMember = true, ... | Slechts 1 variabele per condition-branch native, anders Power Fx-expressie. |
| Condition Group (GA sinds juni 2026) | Meerdere condities gebundeld in ÉÉN node (voor Message-, Question- of Prompt-nodes) in plaats van veel losse Condition-nodes. Vermindert vertakkingen en houdt Topic-flows overzichtelijk | "Add node, Advanced, Add a condition group" | Twee views: Table view (drag-and-drop reorder) en Graph view (klassieke vertakking). Wisselen verandert het gedrag niet. Bestaande Condition-nodes en Voice-flows blijven ongewijzigd. |
| Set Variable | Variabele zetten (literal, andere var, Power Fx) | Set Topic.Total = price * 1.19 | Power Fx gebruikt het US-formaat (komma als param-separator, punt als decimaalteken). |
| Call an Action | Action of Tool aanroepen | "PA-flow 'ApproveExpense' starten" | Inputs/outputs mappen, anders draait de action wel maar verdwijnt het resultaat. |
| Adaptive Card | Gestructureerde card sturen | Formulier met buttons | Card-JSON in de card-editor onderhouden. Submit komt terug als variabele. |
| Question with Adaptive Card | Card plus wachten op submit | "Kies een datum" | Validatie gebeurt niet automatisch, zelf bouwen. |
| Redirect to Topic | Naar ander Topic springen | "Order Status, Returns" | Met input-vars meegeven, anders zijn de data weg. |
| Transfer Conversation | Handoff naar human of andere bot | Naar D365-queue | Vereist Engagement Hub in het kanaal. |
| End Conversation / End Current Topic | Afsluiten | "Tot ziens" | "End Topic" springt terug, "End Conversation" sluit volledig af. |
| HTTP Request | Directe REST-call | API zonder connector | Auth en throttling zelf regelen. |
| Search / Generative Answers | Knowledge doorzoeken | "Wat staat er in het onboarding-document?" | Bronnen vooraf configureren. |
| Parse Value | JSON of string parsen | API-respons ontleden | Power Fx of schemadefinitie. |
Actions / Tools
Een action is een "werktuig" dat de agent aanroept. Sinds 2025 spreekt Microsoft primair van Tools.
| Tool-type | Wanneer gebruiken? |
|---|---|
| Connector Action | Standaardoperatie uit een van de 1.400+ Power Platform-connectors (bijvoorbeeld "SP, Create Item" of "Outlook, Send Mail"). Inputs en outputs zijn door de connector gedefinieerd. |
| Cloud Flow (Power Automate) | Bestaande PA-flow, in Studio als tool ingebonden. Vraagt nog steeds een PA-licentie. |
| Agent Flow | Studio-eigen flow (PA-achtig, maar credit-billed), inclusief HITL-actions zoals "Request for Information". |
| Prompt (AI Builder) | LLM-prompt-action: gerichte sub-prompt voor een concrete taak ("Classificeer mail in categorieën"). |
| REST / HTTP | Directe API-call zonder connector, voor interne API's. |
| MCP-tool | Tool uit een geregistreerde MCP-server. Wordt automatisch gesynchroniseerd (naam, inputs, outputs). |
| Bot Framework Skill | Klassieke BF Composer-skill uit het oude PVA-universum. |
| Computer Use (GA sinds mei 2026, alleen US) | De agent bestuurt via Computer Using Agent (CUA) virtueel muis en toetsenbord op web- en desktop-apps. Computer Use voert een eigen modellijst, los van het orchestration-roster (documentatiestand 18 september 2026): OpenAI CUA (Standard, GA, 5 credits per stap), Claude Sonnet 4.5 (Standard, GA, 5 credits per stap – als orchestration-model is Sonnet 4.5 allang retired, voor Computer Use staat hij in de documentatie nog steeds als algemeen beschikbaar), Claude Sonnet 4.6 (Standard, Experimental, 5 credits per stap) en Claude Opus 4.6 (Premium, Experimental, 15 credits per stap). De Anthropic-modellen vereisen de admin-vrijgave voor externe modellen. Sinds januari 2026 met Cloud PC Pooling, built-in credentials (Power Platform Internal of Azure Key Vault), access control lists en session replay audit. Sinds mei 2026 ook als herbruikbare standalone tools (Preview). |
| Windows 365 for Agents MCP-server (GA sinds juni 2026) | Door Microsoft gehoste MCP-server (mcp_W365ComputerUse) die de agent volledige operationele controle geeft over een Windows 365 Cloud PC: desktopbesturing (muis, toetsenbord, screenshots, OCR), browserautomatisering via Microsoft Edge (DOM-clicks, formulieren, accessibility-snapshots) en semantische UI-inspectie via Windows UI Automation. Plus sandbox-uitvoering van shell- en Python-code (allow-list, 30 seconden timeout). Verschil met Computer Use: Computer Use is de CUA-reasoning-laag, de Windows 365-server levert de deterministische werktuigen op een echte Cloud PC. Loopt via de Standard Harness (standaardbilling). Session idle eviction na 30 minuten zonder request. |
| Other Agents (Child / Connected / A2A / Foundry / Fabric / M365 Agent SDK) | Sinds november 2025 / GA april 2026: hang sub-agents onder (Child) of verbind met zelfstandige agents (Connected), ook via het A2A-protocol, met Microsoft Foundry-agents (Preview), Fabric Data Agents (Preview) of M365 Agent SDK-agents (Preview). Vuistregel: vanaf 30 tot 40 tools/topics splitsen. |
| Tool Groups (Preview) | Samengestelde sets Outlook- of SharePoint-connector-tools in één stap inbinden, wat setupfouten reduceert. |
| Workflow (Preview sinds juli 2026, alleen GitHub Copilot Harness) | Meerstaps deterministisch proces uit de flow-designer van de nieuwe ervaring, dat de agent bij behoefte aanroept: goedkeuringen, datatransformaties, businesslogica. Aan te maken direct via Build, Tools, Add, Workflow. De flow heeft de nodes When an agent calls the flow en Respond to the agent nodig en moet gepubliceerd zijn. Daarna is hij ook beschikbaar voor andere agents op de Workflows-pagina. |
| MCP-server (Preview sinds juli 2026, alleen GitHub Copilot Harness) | Volledige MCP-server als tool in de nieuwe ervaring: Build, Tools, Add, Model Context Protocol (MCP), dan naam, beschrijving, HTTPS-server-URL en auth-methode. Copilot Studio onderhandelt de handshake en toont de tools van de server. Belangrijk: naam en beschrijving zijn wat de agent ziet. Een tool zonder heldere beschrijving wordt onbetrouwbaar aangeroepen. Verandert de URL, auth of tool-lijst, dan moet je de entry opnieuw inlezen. |
Een agent mag meerdere MCP-servers koppelen, maar het aantal gelijktijdig actieve server-instanties in één conversatie is begrensd. Hang je er meer aan dan de cap toelaat en wil de agent ze allemaal in dezelfde turn gebruiken, dan worden de overtollige servers en hun tools stilzwijgend overgeslagen. Er komt geen foutmelding, de antwoordkwaliteit gaat gewoon omlaag. Microsoft noemt het concrete getal niet publiekelijk. Houd de lijst bewust kort en gooi ongebruikte servers eruit. Elke MCP-server telt bovendien mee voor de totale tool-limiet van de agent.
Knowledge Sources
Knowledge is "wat de agent weet", niet "wat de agent doet".
| Source | Wat het is | Limieten |
|---|---|---|
| Uploaded Files | PDF, DOCX, PPTX, TXT of XLSX uploaden. Ook File Groups (meerdere bestanden als één source, GA aug 2025). Sinds mei 2026 met instructies per groep die de antwoorden van de agent aansturen | 500 files per source in het web-app-limiet, 512 MB per file. Dataverse-storage als pool. |
| Public Website / URL | Bing-gebaseerde crawl | Generative Mode: 25 websites. Classic Mode: 4 URL's. Inhoud is niet "live". |
| Bing Custom Search (maart 2026) | Samengestelde websearch via Custom Configuration ID. Grounding with Bing Custom Search. | Classic Mode: max 2 configuration IDs. In Generative Orchestration alleen via Classic data-optie in de Generative Answers-node. Overschrijft alle public websites. |
| SharePoint | SP-sites of specifieke document libraries. Sinds nov 2025 met metadata-filters (filename, owner, modified). Sinds mei 2026 Code Interpreter op SharePoint-bronnen in conversaties | Met M365 Copilot en Work IQ: tot 200 MB per bestand (PDF/DOCX/PPTX tot 512 MB). Zonder M365 Copilot: alleen 7 MB per bestand. Generative Mode: 25 URL's. |
| SharePoint-lijsten (Preview, mei 2026) | SharePoint-lijsten direct als Knowledge Source zonder custom connector | Max 15 lijsten in totaal, tot 35.000 rijen per lijst en 120.000 rijen over alle lijsten. Per add-sessie max 15 selecteerbaar. Queries leveren alleen de eerste 2.048 rijen. Maximaal 12 lookup-kolommen in de standaardweergave. Lijstweergaven zijn niet selecteerbaar, documentbibliotheken worden niet als lijsten ondersteund, woordenlijsten en synoniemen bestaan niet. De kolom Bijlagen wordt zonder foutmelding geïndexeerd, maar levert geen antwoorden uit de bijlagen. |
| OneDrive (Unstructured Data) | OneDrive-files en folders | 1.000 files, 50 folders, 10 subfolder-lagen. 512 MB per file. Sync van 4 tot 6 uur. |
| Dataverse | Tables (met row-level security) | Max 2 sources per agent, elk 15 tables. Erft permissions van de aanroepende gebruiker. Synoniemen en woordenlijsten ondersteund. |
| Microsoft Graph (Tenant Graph Grounding) | M365-content via Semantic Index of Work IQ | Vereist M365 Copilot-licentie. 10 Credits per bericht voor gebruikers zonder M365 Copilot. |
| Azure AI Search | Eigen vector-index | Volledige controle, maar self-service. |
| Foundry IQ (Preview-label in september 2026 vervallen) | Koppeling aan een bestaande Knowledge Base in Azure AI Foundry, die een of meerdere bedrijfsbronnen inclusief retrieval- en relevantie-instellingen bundelt tot een herbruikbaar asset. Wordt niet als Knowledge Source ingebonden, maar via Tools in de Build-tab. Vier auth-varianten: API Key, Client Certificate, Service Principal, Entra ID Integrated. Statuswijziging: de documentatiepagina droeg tot augustus 2026 de prerelease-banner; in de stand van 16 september 2026 is die verdwenen, samen met de Preview-toevoeging in de titel. Microsoft heeft de wijziging nergens aangekondigd. | Alleen op de GitHub Copilot Harness. Maximaal één Foundry IQ-verbinding per agent. Er verschijnen alleen Knowledge Bases waar je in Azure AI Foundry toegang toe hebt. Tunen gebeurt in Foundry, niet in Copilot Studio. |
| Federated Knowledge (Connector) | Salesforce, Confluence, ServiceNow, Zendesk en meer | Geen limiet op article-grootte of aantal. Sync 4 tot 6 uur. |
| MCP Resources | "File-like" data uit MCP-server (API-responses, file-contents) | GA sinds okt 2025. Tools en resources worden dynamisch gesynchroniseerd. Generative Orchestration is verplicht. |
Belangrijk om te weten: Files met sensitivity labels confidential of highly confidential worden wel als "ready" getoond, maar leveren geen antwoorden. Sensitivity labels (MIP) zijn sinds juli 2025 zichtbaar in connectors, Test Chat, Teams en M365 Copilot.
Pagina-precieze citaten voor PDF's
Antwoordt de agent vanuit een PDF, dan verwijst het citaat normaal naar het hele document. Bij een collectieve arbeidsovereenkomst van 200 pagina's helpt dat niemand. Voor één pad wordt het preciezer: PDF's die zijn ingebonden via Bestanden uploaden, SharePoint (dus opgeslagen en geïndexeerd in Dataverse) leveren pagina-precieze citaten. Een klik op de bronvermelding opent de PDF in een nieuw tabblad direct op de geciteerde pagina, en de gebruiker kan het antwoord controleren zonder het document te doorzoeken.
De grenzen daarbij, omdat ze in projecten regelmatig verwarring geven: het geldt alleen voor PDF's, alle andere bestandstypen vallen terug op citaten op documentniveau. Het geldt alleen voor dat ene inbindpad: de volledig geïntegreerde SharePoint Knowledge Source en losse geüploade bestanden citeren nog steeds op documentniveau. En het bestand moet de indexerings-drempel van ongeveer 4 KB halen, kleinere PDF's vallen ook terug. Als pagina-precieze traceerbaarheid een compliance-argument in je project is, bepaalt dus de keuze van het inbindpad of je die krijgt.
Attachments en gegenereerde bestanden (Preview sinds juli 2026)
Sinds juli 2026 kunnen gebruikers bestanden aan een bericht koppelen, en kan de agent tijdens het gesprek zelf bestanden genereren. Beide gelden voor agents op de GitHub Copilot Harness en lopen via Copilot Credits, dus ook bij testen in het Preview-tab.
Het belangrijkste punt eerst, omdat het in projecten regelmatig verward wordt: Een attachment is geen Knowledge Source.
| Attachment | Knowledge Source | |
|---|---|---|
| Wie levert het? | De eindgebruiker, per bericht | De maker, op design-tijd |
| Reikwijdte | Eén conversatie | Elke conversatie met de agent |
| Typisch geval | "Vat dit contract samen", "Wat staat er op deze screenshot?" | Richtlijnen, productcatalogus, help-artikelen |
Wat mag worden gekoppeld: afbeeldingen (.png, .jpg, .gif, .webp, de agent gebruikt vision-modellen), PDF's (tekst wordt geëxtraheerd), tekstdocumenten (.txt, .csv, .html, .md) en URL's. Bij een URL downloadt de agent het bestand voor die turn. De download moet binnen 30 seconden klaar zijn en de URL moet publiek bereikbaar zijn. Links achter login of firewall werken niet. Mislukt een bijlage, dan slaat de agent hem over en verwerkt de rest van het bericht. Het bericht gaat toch door.
Gegenereerde bestanden configureer je niet, ze ontstaan als de taak een bestand vraagt: een rapport, een tabel, een grafiek, een codesnippet of de bewerkte versie van een gekoppeld bestand. De agent hangt een Created File Card met bestandsnaam, preview en download-actie onder het antwoord. Gebruikers kunnen er in een volgende turn naar verwijzen ("maak de grafiek hoger"), de agent leest het bestand terug en genereert een nieuwe versie.
| Grens | Waarde |
|---|---|
| Bijlage-grootte per bestand | 16 MiB |
| Grootte per gegenereerd bestand | 10 MB. Wordt het groter, dan verschijnt het niet in het antwoord, de turn loopt door en de agent legt dat meestal zelf uit. Oplossing: output opdelen (bijvoorbeeld één hoofdstuk per bestand). |
| URL-download-timeout | 30 seconden |
| Bewaartermijn (bijlagen en gegenereerde bestanden) | 28 dagen na de laatste activiteit in de conversatie, daarna verwijderd en voor de agent niet meer refereerbaar |
Bijlagen leven dus niet alleen voor één turn: binnen de bewaartermijn kan de agent terugvallen op een eerder gestuurd bestand ("vergelijk dat met het bestand van eerder"). Beide functies zijn beschikbaar op alle plekken waar de agent draait: Preview-tab, Microsoft Teams, Microsoft 365 Copilot, Web Chat, mits het kanaal bijlagen ondersteunt.
Variables / Slots
- Topic Variable, alleen in dat Topic zichtbaar. Default voor
User.Name-achtige vars. - Global Variable, overal in de agent, persistent over topic-wissels heen.
- System Variable, beheerd door Studio (bijvoorbeeld
System.User.Id,System.Conversation.Id,System.LastMessage,System.Activity.Channel). - Environment Variable, solution-level, ALM-vriendelijk, bijvoorbeeld API-URL's per environment.
Slot Filling: als de gebruiker de vraag van de agent "proactief" beantwoordt (bijvoorbeeld: gebruiker zegt direct "boek Amsterdam naar Berlijn op vrijdag", de agent extraheert City, City, Date in één keer), spreekt Microsoft van slot filling. Entities (prebuilt of custom) zijn de voorwaarde.
Authenticatie-bouwstenen
- No Authentication, anoniem. Alleen zinvol voor public Web Chat of Power Pages.
- Authenticate manually met Microsoft Entra ID v2, de standaard voor enterprise. Federated credentials aanbevolen (geen opgeslagen client secret).
- Authenticate with Microsoft (SSO), user-token wordt doorgegeven. Tools en knowledge draaien in de context van de gebruiker (permissies erven!).
- Microsoft Entra External ID, voor B2C-scenario's (klantlogin).
- Generic OAuth 2.0, voor eigen identity providers.
Datastromen en variabelen
▼Hoe stromen data?
Data stroomt via variabelen tussen Nodes en Topics. Power Fx is de formuletaal.
Ask Question ─► Topic.Name (string)
│
▼
Set Variable ─► Global.Customer = Topic.Name
│
▼
Condition ─► If Global.Customer in adminList
│
▼
Call Action ─► Input: Global.Customer, Output: Action.Result
│
▼
Send Message ─► "Status: {Action.Result.status}"
Variable scopes
| Scope | Levensduur | Use case |
|---|---|---|
| Topic | alleen binnen Topic | Temp-data, user-input voor verwerking |
| Global | hele conversatie | Userprofiel, winkelmandje, langlevende context-waarden |
| System | beheerd door Studio | System.User.DisplayName, System.Conversation.Id, System.Activity.Channel |
| Environment | tenant- of env-breed | API-endpoint-URL per env (Dev/Test/Prod) |
Power Fx in Studio
Power Fx is de Excel-achtige formuletaal van het Power Platform. In Studio gebruik je die voor Set Variable, condition-expressies, string-manipulatie en datum- en getallen-logica.
// Set Variable: brutobedrag berekenen
Set(Topic.Bruto, Topic.Netto * 1.19)
// Condition: gebruiker is admin EN bedrag > 1000
Topic.IsAdmin = true And Topic.Amount > 1000
// String-manipulatie: mail-domein extraheren
Last(Split(System.User.Email, "@"))
// Datum: 7 dagen in de toekomst
DateAdd(Now(), 7, Days)
Valkuil: Power Fx gebruikt US-formatting, komma als parameter-scheider, punt als decimaalteken. Wie uit een Nederlandstalige Excel komt, struikelt hier regelmatig over.
LangDock-modi gemapt
In LangDock kun je velden vullen als auto, manual of AI prompt. Studio mapt dat zo:
| LangDock-modus | Copilot Studio-tegenhanger |
|---|---|
| Manual | Klassiek Topic met phrase-trigger en vast bedrade Nodes ("Classic Orchestration"). |
| Auto / deterministisch | Set Variable met literal-waarde en Condition-node. Power Fx voor mappings. |
| AI prompt | (a) Generative Orchestration op agent-niveau activeren, agent kiest Topic/Tool/Knowledge zelf. (b) AI Builder Prompt als action voor een gerichte sub-prompt. (c) Generative Answers Node voor vrije kennissuche. |
Orkestratiemodi: Classic vs. Generative
▼De belangrijkste architectuur-switch in Studio: kies je Topics via vastgeschroefde trigger-phrases (Classic) of laat je het LLM kiezen op basis van Topic-descriptions (Generative)?
Vergelijkingstabel
| Aspect | Classic Orchestration | Generative Orchestration |
|---|---|---|
| Topic-selectie | Trigger-phrase-match (NLU) | LLM leest Topic-description, action-description en knowledge-description en kiest zelf. |
| Stuurbaar | Hoog (jij bepaalt welke trigger wat triggert) | Middel (jij bepaalt beschrijving en instructions, LLM beslist) |
| Voorspelbaar | Zeer hoog | Minder (dezelfde input kan soms Topic A, soms B triggeren) |
| Uitbreidbaar | Meer Topics = meer trigger-onderhoud | Meer tools = werkt "gewoon". Vanaf 30 tot 40 tools/topics in sub-agents splitsen |
| Custom Data Source (eigen KB) | Wordt ondersteund | Alleen via Classic data-optie in de Generative Answers-node |
| Bing Custom Search | Wordt ondersteund (max 2 configuration IDs) | Alleen via Classic data-optie in de Generative Answers-node |
| Autonome event-triggers | nee | ja (voorwaarde) |
| Multi-tool reasoning / chaining | nee | ja |
| Multi-agent (Child / Connected / A2A) | nee | ja (voorwaarde) |
| MCP-server | nee | ja (voorwaarde) |
| Meertalige antwoorden | Per taal configureren | Alle ondersteunde talen GA sinds juni 2025 |
| Multiple Topics Matched | Systeem-topic regelt het | Disambiguation is momenteel uitgeschakeld. Zet Multiple-Topics-Matched uit tijdens testen |
Primair model kiezen – sinds september 2026 twee aparte lijsten: welke modellen je überhaupt ziet, hangt inmiddels af van de harness en niet meer van het product. Microsoft onderhoudt sinds september 2026 twee eigen beschikbaarheidspagina's: een voor de Standard Harness en een voor de GitHub Copilot Harness. De twee rosters overlappen maar deels, en een defaultmodel wijst Microsoft uitsluitend voor de Standard Harness aan. De belangrijkste wijziging in september: GPT-5.5 Chat heeft GPT-4.1 als default vervangen, in alle regio's tegelijk (documentatiestand 18 september 2026).
| Model | Categorie | Standard Harness | GitHub Copilot Harness |
|---|---|---|---|
| GPT-5.5 Chat | General | Default in alle regio's | GA |
| GPT-5 Chat | General | GA (EU, UK, US, Australië in-region; elders Cross-Geo) | GA |
| GPT-4.1 | General | GA – tot september 2026 de default | – |
| GPT-6 Astra – nieuw | General | – | GA (EU in-region, elders Cross-Geo) |
| GPT-5 Reasoning | Deep | Preview | – |
| GPT-5 Auto | Auto | Preview | – |
| GPT-5.3 Chat, GPT-5.4 Reasoning, GPT-5.5 Reasoning | General / Deep | Experimental, alleen US-early-access | – |
| GPT-5.6 Reasoning – nieuw | Deep | – | Experimental, alleen US-early-access |
| Claude Sonnet 4.6 | General | GA (Cross-Geo, US in-region) | GA (Cross-Geo, US in-region) |
| Claude Sonnet 5 | General | – | GA (Cross-Geo); niet in Australië en Saoedi-Arabië, in de VS alleen in de early-access-environment |
| Claude Fable 5 en Fable 5.1 – nieuw | General | – | GA (Cross-Geo); dezelfde regiogrenzen als Claude Sonnet 5 |
| Claude Opus 4.6 | Deep | GA (Cross-Geo, US in-region) | – |
| Claude Opus 4.7 – nieuw | Deep | GA (Cross-Geo, US in-region) | – |
| Claude Opus 4.8 | Deep | – | GA (Cross-Geo, US in-region) |
| Claude Opus 5 – nieuw | Deep | – | GA (Cross-Geo, US in-region) |
| Grok 4.1 Fast (Non-reasoning) | General | Experimental, alleen US-early-access – met expliciete veiligheidswaarschuwing, niet voor productie | – |
| Mistral Medium 3.5 | General | Experimental | Experimental |
| GPT-4o, Claude Sonnet 4.5 | General | Retired. GPT-4o blijft default in GCC, GCC High en DoD | – |
Een uitgefaseerd model blijft na het retirement nog tot een maand bruikbaar. Externe modellen zijn na admin-vrijgave als primair model toe te voegen, en hier wijken de twee documentatiepagina's van elkaar af: de Standard-Harness-pagina noemt Anthropic, xAI en Mistral, terwijl de pagina van de GitHub Copilot Harness in de lopende tekst alleen nog Anthropic en Mistral voert en xAI uitsluitend in de admin-controls noemt. Wie Grok voor de nieuwe ervaring heeft ingepland, controleert dat beter in de eigen tenant voordat hij het toezegt.
Hoe de modelkeuze hier kwam: sinds okt 2025 kies je in de agent-settings het Generative Orchestration-model. De categorie Auto (dynamisch routeren per conversatiestap tussen snelle en diepe modellen) kwam er in het voorjaar van 2026 bij. GPT-4o werd in oktober 2025 uitgefaseerd, Claude Sonnet 4.5 na afloop van de migratietermijn op 30-06-2026.
Als je een reasoning-model (tag: Deep) kiest, komt naast de feature-rate ook de Text and Generative AI Tools (premium)-heffing van 100 Credits per 10 responses erbij. Een Generative Answer met deep-model = feature-rate + premium-tools-rate.
Harnesses: de runtime-laag tussen agent en model
Sinds eind juli 2026 documenteert Microsoft een laag die eerder impliciet was: de Harness. Jij bouwt de agent, het model levert reasoning en tekst, en daartussen zit de harness als runtime. Die bepaalt wanneer het model wordt aangeroepen, welke componenten meegaan, hoe het antwoord wordt geïnterpreteerd en welke tools draaien. In de praktijk betekent dat: de harness bepaalt welke features je überhaupt krijgt en hoe er wordt afgerekend. Dat is inmiddels een belangrijkere keuze dan de oude vraag "Classic of Generative Orchestration".
| Criterium | GitHub Copilot Harness | Standard Harness | Copilot Chat Harness |
|---|---|---|---|
| Waarvoor gemaakt | Complexe, meerstaps bedrijfsprocessen | Regelgebaseerde agents, gestructureerde conversaties en Agent Flows | Microsoft 365 Copilot Chat uitbreiden met eigen bedrijfskennis |
| Werkwijze | Ontleedt een doel zelfstandig in stappen en past zich onderweg aan | Volgt de Topics, regels en paden die jij definieert | Verbindt kennis met de chat-interface, geen eigen proceslogica |
| Foutafhandeling | Herhaalt stappen en zoekt automatisch alternatieve wegen | Precies de fallbacks die jij hebt gebouwd | Geen zwaartepunt |
| Bestanden | Genereert en bewerkt Word, Excel, PowerPoint en PDF native. Elke taak draait in een door Copilot Studio beheerde sandbox | Geen zwaartepunt | Geen zwaartepunt |
| Skills en Memory | Ja | Nee | Nee |
| Afrekening | Copilot Credits, usage-based vanaf het bouwen (zie hoofdstuk 10) | Klassieke Copilot Studio-licentiëring en Credit-capaciteit | Verbruikgebaseerd of inbegrepen in de M365 Copilot-licentie |
De "nieuwe ervaring" op de Copilot Studio-homepage is precies de omschakelaar tussen GitHub Copilot Harness en Standard Harness. Via de toggle New experience op de homepage (of Other ways to build) kom je terug bij klassieke agents en Agent Flows. Beide werelden bestaan naast elkaar.
GitHub Copilot Harness: sinds september 2026 algemeen beschikbaar
Op 2 september 2026 heeft Microsoft de GitHub Copilot Harness algemeen beschikbaar verklaard. De runtime zelf is daarmee uit Preview en volgens Microsoft de aanbevolen basis voor agents en workflows die meerstaps werken, bestanden genereren en een proces van begin tot eind moeten automatiseren. Voor projectpraktijk verandert dat vooral de argumentatie: een GA-feature laat zich anders verkopen in gesprek met ondernemingsraad, privacy en inkoop dan een Preview.
De harness is GA, veel bouwstenen erop zijn dat niet. De aankondigingsblog noemt Workflows en MCP-servers als tools algemeen beschikbaar, maar de bijbehorende how-to-pagina's in de documentatie dragen (opnieuw gecontroleerd op 21 september 2026, paginastand 16 september) nog steeds de Preview-banner "This article is prerelease documentation". Expliciet Preview blijven volgens blog en documentatie: Memory, Connected Agents, Work IQ, bijlagen en gegenereerde bestanden, environment-level telemetrie en de MCP-certificering. Bij Foundry IQ is het label in september gedraaid: in de stand van 16 september 2026 draagt de pagina noch de prerelease-banner noch de Preview-toevoeging in de titel. Controleer voor elke bouwsteen die je productief inplant het label op de eigen documentatiepagina, niet dat van de harness – en controleer het opnieuw vóór de vrijgave, want Microsoft verschuift deze labels zonder aankondiging.
Oplossingen in natuurlijke taal beschrijven (Preview)
Het productoverzicht bevat sinds 9 september 2026 een eigen sectie Build with natural language als Preview: je beschrijft het bedrijfsdoel en Copilot Studio beslist zelf welke combinatie van agents en workflows dat oplost. Verfijnen gebeurt via vervolgvragen en correcties in hetzelfde gesprek, en er kunnen meerdere assets in één sessie ontstaan, zonder dat je vooraf het type vastlegt of tussen designers wisselt.
Voor workshops is dat een echte winst: de vraag "Hebben we hier een agent of een flow nodig?" mag aan het begin open blijven in plaats van de discussie te blokkeren. Voor de kostenplanning geldt het omgekeerde: precies dit genereren per prompt is op de GitHub Copilot Harness credit-plichtig, en wel vanaf de eerste poging (zie hoofdstuk 10).
De nieuwe en de klassieke ervaring lopen parallel, je kunt op elk moment wisselen. Maar: er is geen migratiepad in beide richtingen, omdat de architectuur en de orchestration-runtime verschillen. Bestaande classic-agents blijven werken zoals eerst. Plan nieuwbouw bewust, voordat je in de nieuwe ervaring investeert.
Skills: herbruikbare instructie-bouwstenen
Een Skill is een zelfstandige vaardigheid uit naam, beschrijving en instructies in markdown. Hij is daarmee duidelijk afgebakend van de andere bouwstenen: Instructions beschrijven het generieke gedrag, Knowledge is kennis, Tools zijn acties via externe diensten en een Skill is een taakspecifieke werkwijze die de orchestration bij behoefte activeert. De beschrijving is de trigger, daaraan beslist de runtime of de skill grijpt. Zorgvuldigheid loont dus juist daar.
Het format is bewust portabel: een bestand SKILL.md met YAML-frontmatter (naam, beschrijving) plus markdown-instructies. Als skill-pakket komt het geheel als ZIP met optionele begeleidende bestanden zoals scripts, templates en referentiedocumenten. Je kunt Skills in Copilot Studio schrijven, in een willekeurige editor bouwen en uploaden of bestaande GitHub Copilot- en Claude Code-skills overnemen. Een Skill wordt één keer gebouwd en in meerdere agents gebruikt.
Memory: persistente context per gebruiker
Memory is een productiewaardige Preview en draait alleen op de GitHub Copilot Harness. De agent houdt voor elke gebruiker een eigen geheugen in door Microsoft beheerde storage: hij vangt voorkeuren en relevante context (Capture), legt ze als bestanden vast in de gebruikerseigen map (Store) en leest ze bij latere interacties opnieuw in (Apply). In- en uitschakelen gebeurt per agent via de toggle in de Build-tab.
Voor privacy-gesprekken zijn vooral deze punten relevant:
- De herinneringen van een gebruiker zijn privé. Noch de maker, noch andere gebruikers kunnen ze inzien.
- Na 28 dagen zonder interactie verwijdert het systeem automatisch de herinneringen van die gebruiker voor die agent.
- In groepschats en Teams-kanalen is Memory uitgeschakeld.
- Elke gebruiker kan in het Memory-portal alles wat opgeslagen is inzien en volledig verwijderen, of de agent in de chat vragen om iets aan te passen of te vergeten. Bij het eerste contact in een nieuw kanaal laat de agent de portal-link zelf zien.
De toggle zorgt er alleen voor dat de agent opgeslagen herinneringen niet meer gebruikt. De data blijft staan tot de 28-dagen-termijn ingaat of de gebruiker ze in het portal verwijdert. Wie Memory voor een pilot activeert en daarna weer uitzet, heeft dus nog geen schone toestand hersteld.
Wanneer wat?
Classic Orchestration is je default voor:
- Sterk gereguleerde customer-facing bots waarbij elk antwoord voorspelbaar moet zijn
- FAQ- en routing-scenario's met helder gedefinieerde intents
- Bots die custom data sources of Bing Custom Search nodig hebben
- Compliance-cases waarbij het audit-verhaal "de user zei X, dus Topic Y wordt getriggerd" beslissend is
Generative Orchestration is je default voor:
- Interne productiviteitsagents met veel tools (10+)
- Autonome agents op event-triggers (voorwaarde!)
- Multi-tool chaining, waarbij een tool de input voor het volgende levert
- Scenario's waarin Topics vergelijkbaar klinken, maar in detail andere acties nodig hebben
AI Builder Prompts als sub-prompt
Binnen beide modi kun je gerichte LLM sub-prompts inbinden als AI Builder-actions, bijvoorbeeld voor "Classificeer mail" of "Extraheer datum uit deze tekst". Dat geeft je punctuele LLM-inzet, zonder de agent in de volle Generative-modus te dwingen.
Beveiliging en governance
▼DLP-policies (Data Loss Prevention)
DLP-policies komen uit het Power Platform en gelden ook voor Copilot Studio. Je categoriseert connectors in drie klassen:
| Klasse | Gedrag |
|---|---|
| Business | Mag met andere Business-connectors praten. |
| Non-Business | Mag met andere Non-Business-connectors praten. |
| Blocked | Helemaal niet bruikbaar. |
Tenant-brede policies hebben voorrang op env-policies en zijn niet overschrijfbaar. Sinds begin 2025 is DLP-enforcement actief voor alle agents. Eerdere uitzonderingen (exemption) zijn afgeschaft.
Aanvullend kun je via policy sturen:
- Welke Tools of Actions zijn toegestaan (bijvoorbeeld "geen HTTP-request").
- Welke Knowledge Sources zijn toegestaan (bijvoorbeeld "geen public web").
- Welke Channels gepubliceerd mogen worden.
- Of agents No Authentication mogen gebruiken.
Sturen gebeurt in de praktijk via connector-namen, en die heten in het Power Platform Admin Center anders dan je ze zoekt. Daarom hier de vertaaltabel:
| Je wilt voorkomen dat makers ... | Connector-naam in Admin Center |
|---|---|
| ... agents zonder authenticatie publiceren | Chat without Microsoft Entra ID authentication in Copilot Studio |
| ... SharePoint of OneDrive als Knowledge gebruiken | Knowledge source with SharePoint and OneDrive in Copilot Studio (endpoint-filtering mogelijk) |
| ... publieke websites als Knowledge gebruiken | Knowledge source with public websites and data in Copilot Studio (endpoint-filtering mogelijk) |
| ... documenten als Knowledge uploaden | Knowledge source with documents in Copilot Studio |
| ... HTTP-requests bouwen | HTTP (endpoint-filtering mogelijk) |
| ... Skills gebruiken | Skills with Copilot Studio |
| ... event-triggers aanmaken of automated evaluations met geauthenticeerd account draaien | Microsoft Copilot Studio |
| ... agents aan Application Insights koppelen | Application Insights in Copilot Studio |
| ... in bepaalde kanalen publiceren | Microsoft Teams + Microsoft 365 Channel, Direct Line channels, Omnichannel, SharePoint channel, WhatsApp channel, Facebook channel, telkens "in Copilot Studio" |
| ... Power Platform-connectors als tools gebruiken | De betreffende voorgefabriceerde of custom connectors |
Blokkeer je Power Platform-connectors, dan blokkeer je daarmee ook de tools van gekoppelde MCP-servers, want hun connectiviteit loopt via precies die connectors. Wie MCP breed wil toestaan en connectors strak wil sturen, heeft hier een doelconflict dat bewust opgelost moet worden.
Twee mechanismen die projecten vaak over het hoofd zien: in plaats van een connector volledig te blokkeren, kun je voor SharePoint, publieke websites en HTTP endpoint-filtering gebruiken en individuele doelen toestaan of verbieden. En bij een overtreding wordt de Publish-button uitgeschakeld. Via Details, Download op de Channels-pagina krijgt de maker een bestand met één regel per overtreding, dat hij direct kan doorsturen naar de admin. Met Set-PowerAppDlpErrorSettings leg je in die foutmeldingen tenantbreed een admin-mailadres en een "Learn more"-link vast, een van de effectiefste kleine ingrepen tegen ticket-pingpong.
Environment-strategie
Aanbevolen zijn minimaal 3 Power Platform-environments:
| Env | Type | Doel |
|---|---|---|
| Dev | Sandbox | Bouwen en lokaal testen |
| Test / UAT | Sandbox | Solution-deploy, QA, pilot |
| Prod | Production | Live, managed solutions |
Optioneel: persoonlijke dev-envs per developer. Elke env heeft eigen DLP-policies, eigen connectors en eigen audit-trails. Entra security groups beperken de toegang.
Authenticatie (recap)
- No Authentication, pas op: externe kanalen (Direct Line) breken als intern "No Auth" staat.
- Entra ID v2 met federated credentials is de aanbevolen default, geen client secret-rotatie-stress.
- SSO met Entra in Teams, user-identiteit wordt automatisch doorgegeven.
- Entra External ID, voor klant- of partnerlogins (B2C).
- Teams en Microsoft 365 verdragen maar één optie. De kanalen Teams + Microsoft 365 ondersteunen uitsluitend Authenticate with Microsoft. Kies je een andere optie, dan gaan deze kanalen in blocked status. Omgekeerd is Authenticate with Microsoft niet beschikbaar voor agents die met Dynamics 365 Customer Service zijn geïntegreerd. Wie beide nodig heeft, heeft twee agents nodig.
- Het variabelenverschil kost je de publish. Onder Authenticate with Microsoft bestaan alleen
User.IDenUser.DisplayName;User.AccessTokenenUser.IsLoggedInontbreken. Schakel je van handmatige auth over naar Microsoft, dan verschijnen die variabelen in alle topics als Unknown en moeten ze vóór het publiceren worden gecorrigeerd. Voor een access token heb je Authenticate manually nodig. De providerlijst daar telt inmiddels vijf items: Entra ID V2 met federated credentials, met certificaten of met client secrets, plus Entra ID (V1) en Generic OAuth 2. - Nieuw gedocumenteerd (stand 17-09-2026): Power BI en Entra-auth sluiten elkaar uit. Agents met Microsoft-authenticatie zijn niet via iframe-gebaseerde visuals in Power BI-rapporten in te bedden. En bij Generic OAuth2 kan iedereen die inlogt met de agent praten – afzonderlijke gebruikers zijn dan via agent sharing niet meer te sturen. Beide komen pas tijdens de uitrol aan het licht als niemand het vooraf heeft gecontroleerd.
Microsoft Entra Agent ID (verplicht, rollout mei tot juli 2026)
Copilot Studio integreert met Microsoft Entra Agent ID: per agent wordt automatisch een eigen identity in Entra aangemaakt, vergelijkbaar met service principals, maar met eigen audit-story en lifecycle. Voordelen:
- Audit log in Microsoft Entra (sign-in events per agent).
- Connector-permissies verschijnen als API Permissions op de agent-identiteit. Entra- en M365-admins zien zonder Power Platform-login wat een agent kan.
- Conditional Access voor connector-scopes (network location, device compliance, risk conditions).
- Integratie met Entra ID Governance.
Wat dat concreet in de tenant triggert: met de eerste agent na de rollout legt Copilot Studio een blueprint aan met de naam Microsoft Copilot Studio agent identity blueprint plus bijbehorende blueprint principal in de tenant (blueprint-ID 25664c89-cea5-4ab6-b924-a54fd8a19ae0). Elke afzonderlijke agent-identiteit hangt als kind onder dit globale blueprint. Schrik dus niet als er in Entra plotseling een principal opduikt die niemand bewust heeft aangemaakt. Dat is het verwachte pad, geen audit-bevinding.
Bestaande agents: agents die voor de rollout zijn ontstaan, blijven via App Registrations draaien. Microsoft migreert ze op een later moment naar Agent IDs. In de overgangstijd werken de governance-functies voor beide varianten. Je hoeft dus niet zelf te migreren, maar je inventarislijst bevat een tijdje twee identiteitstypen naast elkaar. Wie niet wil wachten, kan bestaande agents ook zelf omzetten: via het Power Platform Admin Center, met PowerShell-scripts of via de Power Platform-API's. Bij het verwijderen van een agent verwijdert Copilot Studio de bijbehorende Entra Agent ID mee.
Hoe de connector-scopes echt werken: bij het publish-moment hangt Copilot Studio voor elke geconfigureerde Power Platform-connector API-permissions aan de agent-identity. Deze scopes worden uitsluitend door de Power Platform-connector-runtime gehonoreerd en op runtime opnieuw gecheckt tegen Advanced Connector Policies (ACP) en DLP. Ze zijn dus een zichtbaarheids- en conditional-access-werktuig, geen manier om je governance-policies te omzeilen. En omgekeerd vervangt hun aanwezigheid ook geen DLP-policy.
GUID opzoeken: in Copilot Studio onder Settings, Advanced, Metadata staat de GUID van de agent-identity als Entra Agent ID. Daarmee kun je in het Entra Admin Center controleren of de identities daadwerkelijk zijn gevuld.
Microsoft Agent 365 (GA 1 mei 2026)
Sinds 1 mei 2026 is Microsoft Agent 365 algemeen beschikbaar voor het commerciële segment (per-user licentiëring, Microsoft E5 als aanbevolen basis). Het is de centrale governance- en control plane voor enterprise-agents tenant-breed, niet alleen voor Copilot Studio-agents, maar ook M365-, Foundry- en partner-agents. Je ziet inventory, permissies, gedrag en activiteit op één plek en kunt gedeelde policies, security controls en lifecycle-oversight toepassen. In Copilot Studio verschijnen admin-statusinfo's nu direct in het authoring (security posture per agent, auth gaps, policy impact).
Sinds 1 juli 2026 vereisen de agent-security-functies voor Copilot Studio- en Foundry-agents een Microsoft Agent 365-licentie. Ze worden niet meer gedekt door bestaande licenties voor Defender for Cloud Apps of Defender for Cloud. Betrokken zijn Agent Discovery en Posture, Agent Threat Detection en het onderzoeken van agent-activiteit in Advanced Hunting (loopt nu via Agent 365 observability logs). Tenants zonder passende licentie hebben op die dag de toegang tot deze functies verloren. Uitzondering: real-time protection voor Copilot Studio via Defender for Cloud Apps blijft ongewijzigd. Wie via dat pad werkt, hoeft niets te doen.
Wat je concreet in de tenant moet controleren
- Advanced Hunting: de tabel
AIAgentsInfowordt vervangen door de nieuwe tabelAgentsInfo(Agent 365 is nu single source of truth voor de agent-inventaris).AIAgentsInfois uitgefaseerd, maar nog niet verwijderd. Opgeslagen queries, custom detections en workbooks moeten worden gemigreerd. - Block-regels: tenants die op de oude Agent 365-regels op Block stonden, blokkeren sinds 1 juli 2026 niet meer. Regels opnieuw definiëren onder Settings, Security for AI, Policies & rules, Real-time protection. Dit betreft uitsluitend Agent 365 real-time protection, niet het Defender for Cloud Apps-pad.
- Defender-portal: de subtab AI Agents onder Cloud Assets is voor alle klanten verwijderd, onafhankelijk van de licentie. Alle Security for AI-functies zitten nu onder de gemeenschappelijke schakelaar Security for AI Agents.
- Third-party agents zijn niet meer via Defender for Cloud connectors vindbaar. Gebruik in plaats daarvan Registry Sync in de Microsoft 365 Agent Registry (Preview).
- Customer Lockbox dekt de governance-, telemetrie- en audit-events niet die via Agent 365 lopen, en evenmin het security audit logging van Copilot Studio zelf (details verderop).
MCP-certificering (Preview sinds juli 2026)
Een MCP-server is vanuit governance-perspectief een vreemde dienst waar je tool-aanroepen en daarmee vaak data aan toevertrouwt. Sinds juli 2026 bestaat daar een officieel keurmerk voor: de Microsoft MCP server certification. Microsoft valideert pakket en runtimegedrag van een ingediende server voordat hij breed beschikbaar wordt, en de publisher blijft daarna verantwoordelijk voor het onderhoud van de gecertificeerde ervaring.
Inzending gebeurt via het Partner Center-aanbodtype Apps and Agents for M365 and Copilot. Het oude inzendpad was nog tot eind juli 2026 bruikbaar. Reeds gecertificeerde MCP-servers hoeven vanwege de omschakeling niets te doen, Microsoft brengt ze zelf over. Voorwaarde is een verified publisher met afgeronde business-verificatie in Partner Center, enrollment in het Microsoft 365 en Copilot-programma en eigendom of controle over de ingediende endpoint. Independent publishers zonder eigen dienst mogen niet inzenden.
| Stap | Wat er gebeurt |
|---|---|
| 1. Pakket bouwen | Manifest, tool-definities, auth-configuratie, metadata, publieke documentatie, iconen. Nieuw verplicht: intro.md en Azure Key Vault-authenticatie (secrets ClientId, ClientSecret, TokenUrl, afhankelijk van IdP ook AuthorizationUrl, RefreshUrl, Scopes, AzureActiveDirectoryResourceId. Namen zijn case-sensitive). |
| 2. Indienen | Nieuw aanbod in Partner Center met type Apps and Agents for M365 and Copilot. |
| 3. Automatische validatie | Pakketstructuur, verplichte velden, schema, metadata, basis-policy-check. Blockers moeten voor de review eruit. |
| 4. Functional en safety review | Functie, endpoint-gedrag, authenticatie, security, compliance, telemetrie-readiness, responsible AI. Meegeleverde evaluations-bewijzen versnellen de review. |
| 5. Vrijgave en publishing | De gecertificeerde server verschijnt in Copilot Studio en in Azure Foundry, waar van toepassing ook in de M365 admin governance-interfaces. |
| 6. Onderhouden | Implementatie in lijn houden met het gecertificeerde pakket. Bij nieuwe tools of relevante gedragswijzigingen opnieuw indienen. |
Wat je er als klant aan hebt: de lijst met gecertificeerde MCP-servers staat in de connector-referentie en is bruikbaar als whitelist-basis. Voor de beoordeling van een niet-gecertificeerde server verandert niets: hij blijft toegestaan, maar de toetsing doe je zelf. Een zinvolle governance-zin luidt daarom niet "alleen gecertificeerde MCP-servers", maar "gecertificeerd of eigen gedocumenteerde vrijgave". Terzijde: Microsoft ondersteunt in manifest- en tool-bestanden alleen ASCII-headernamen en -waarden. Diakritische tekens in het manifest laten de validatie mislukken.
Knowledge Source-permissies
Als SSO actief is en je SharePoint, Graph of Dataverse als Knowledge inbindt, erft de agent de permissies van de gebruiker. Dat is een van de belangrijkste security-features: een medewerker ziet alleen kennis die hij toch al mag zien.
Zonder SSO draait alles in de context van een maker- of service-account, en dat is meestal NIET wat je wilt, maar juist de bron van veel data-lekken.
Protection Status: het veiligheidsstoplicht per agent
Governance faalt zelden op ontbrekende policies, maar op het feit dat niemand ziet welke agent er tegen ingaat. Precies daarvoor bestaat op de Agents-pagina in Copilot Studio de kolom Protection status. Voor elke gepubliceerde agent toont die één van drie toestanden: Protected (groen schild, geen actie nodig volgens gedetecteerde signalen), Needs review (policy-overtreding of onvoldoende authenticatie) of Unknown. De clou voor maker-enablement: het stoplicht staat waar de maker toch al werkt, niet in het Admin Center.
Een klik op de status opent een samenvatting die het beveiligingsprofiel in drie categorieën uiteenlegt, elk weer met Protected, Needs review of Unknown:
| Categorie | Wat wordt gecontroleerd | Waar je het repareert |
|---|---|---|
| Authentication | Vraagt de agent eindgebruikers-authenticatie of is hij publiek? Een publieke autonome agent is een aanvalsvector, geen cosmetisch mankement. | Settings, Security, Authentication |
| Policies | Overtredingen van de data policies die admins in het Power Platform Admin Center hebben gezet, bijvoorbeeld een geblokkeerde connector die de agent wil gebruiken. | Agent aanpassen (Review errors) of, met admin-rechten, de policy in het Admin Center |
| Content moderation | Telt mee in de statistiek, maar niet in de totaalstatus. Laat zien of het moderatieniveau bij het gewenste gevoeligheidsniveau past. | Settings, Generative AI, Moderation |
Staat Authentication of Policies op Needs review, dan slaat dat door naar de totaalstatus in de agents-lijst. Content moderation doet dat bewust niet.
Security analytics: wat er daadwerkelijk werd geblokkeerd
Via See details kom je in de dialog Security analytics met statistieken en trends over de laatste 7, 14 of 30 dagen (perioden zonder data verschijnen niet in de picker). Twee weergaven zijn praktijkrelevant: het gestapelde staafdiagram Reason for block splitst alle geblokkeerde berichten uit naar blokkeergrond: potentiële bedreigingen, policy-overtredingen, content moderation. De grafiek Session block rate trend toont per categorie het aandeel sessies met een geblokkeerde aanvraag over de tijd, dus of een uitschieter een incident is of een patroon.
Automatische security-scan voor het publish
Agents zijn bij uitlevering veilig geconfigureerd. Omdat makers deze defaults om begrijpelijke redenen versoepelen zonder het risico te kennen, loopt voor het publiceren een automatische security-scan die de maker waarschuwt. Drie afwijkingen triggeren de waarschuwing:
- Authenticatie op No authentication gezet. Default is Authenticate with Microsoft. Met No Auth kan iedereen met de link met de agent praten.
- Bij connectors en flows omgezet naar Maker-provided credentials. Default zijn end user credentials, dus de rechten van de betreffende gebruiker. De wissel betekent: iedereen ziet wat de maker mag zien.
- Agent met iedereen in de organisatie gedeeld. Default is "met niemand gedeeld".
De scan is een waarschuwing, geen gate: hij blokkeert het publiceren niet, maar dwingt een bewuste beslissing af. Voor een governance-concept betekent dat, dat je deze drie punten toch hard via data policies moet afdekken als ze in je organisatie niet onderhandelbaar zijn. Aanvullend beoordeelt Copilot Studio knowledge, tools en actions al tijdens de configuratie doorlopend op mogelijke data-uitstroom en security-risico's, zodat bevindingen voor het publish zichtbaar worden in plaats van erna.
Audit-logs via Microsoft Purview
Studio-agents loggen in het Purview Audit Log. Het loggen gebeurt op SDK-niveau, dus één actie triggert vaak meerdere events. Ruwweg drie klassen:
- Admin- en maker-acties op de agent zelf:
BotCreate,BotDelete,BotDeleteCleanupplus deBotUpdateOperation-varianten voor naam, icoon, authenticatie, Publish en Share. - Component-wijzigingen:
BotComponentCreate,-Update,-Deletevoor Topics, Skills en Entities, plus Component Collections,AIPluginOperation*voor AI Plugins,EnvironmentVariable*voor environment variables enBotAppInsightsUpdatevoor wijzigingen aan de Application Insights-configuratie. - Gebruik:
CopilotInteractionvoor elke interactie van een gebruiker met een agent.
Compliance-admins werken in de Purview-portal onder Solutions, Audit. Developers komen via de Office 365 Management API aan dezelfde data.
De Audit-oplossing logt bij een CopilotInteraction alleen metadata: tijdstip, organisatie, gebruikers- en resource-IDs en de transcript-thread-ID. De eigenlijke chat-tekst zit apart en wordt via DSPM for AI (Data Security Posture Management) nagetrokken, samen met links naar de in het event gebruikte resources. Wie in een OR- of privacy-gesprek zegt "we loggen geen gespreksinhoud", bedoelt dus de audit-oplossing, niet de totaalstand. Zeg het precies, anders valt het je later op je voeten.
Uitzetten gaat maar half. Het loggen van administratieve activiteiten is op alle tenants standaard actief en kan niet worden uitgezet. Wat je wel kunt doen: het audit log in Purview tenantbreed uitzetten en via een data lifecycle management-richtlijn met bewaring 0 dagen voor "Copilot Experiences" voorkomen dat gebruikers- en antwoordtekst wordt bewaard. Twee voorwaarden zijn makkelijk over het hoofd te zien: gebruikers hebben een toegewezen Microsoft 365-licentie nodig om überhaupt events en transcripts te laten schrijven, en in FedRAMP-tenants werkt het geheel niet.
Twee extra details voor de praktijk: bij agents met Entra Agent ID landt de authenticatie-activiteit ook in Microsoft Entra ID en is zichtbaar in het Entra Admin Center. De governance-story ligt dus op twee portalen. En losse kanalen zijn uitgesloten van logging. Welk kanaal een event heeft gegenereerd, staat in de audit-oplossing in het JSON-veld CopilotEventData als AppHost, in DSPM for AI als App accessed in. Ontbreken er events, dan is het kanaal de eerste verdachte, niet de policy.
Overige governance-controls in het kort
Microsoft noemt in het governance-overzicht een reeks controls die in projecten zelden allemaal bekend zijn. De relevantste naast DLP, Entra Agent ID en Purview:
| Control | Wat het levert |
|---|---|
| Microsoft Entra-netwerkcontroles via Agent 365 | Entra egress- en ingress-controles zijn toepasbaar op Copilot Studio-agents. Volgens Microsoft algemeen beschikbaar. Voorwaarde is een Agent 365-onboarding. |
| Audit-alerts in Microsoft Sentinel | Admins kunnen agent-activiteit in Sentinel monitoren en zich laten alerten. Microsoft noemt dit als een eigen control, maar de gelinkte detailpagina beschrijft alleen het Purview-pad. Voor een SOC-setup dus verstandig om vooraf te overleggen met je Microsoft-contactpersoon, voordat je het inplant. |
| Connector dependency insights | Admins zien voor deployment welke connectors een agent daadwerkelijk trekt, en kunnen het data-uitstroomrisico beoordelen in plaats van gokken. |
| Handmatige Entra-authenticatie met certificaat | In plaats van een client secret is de certificaat-provider te configureren. Relevant overal waar secret rotation organisatorisch niet netjes af te bouwen is. |
| Tools met gebruikers-credentials | Tools draaien standaard onder de credentials van de eindgebruiker. Dat is de default die de security-scan verdedigt (zie hierboven). |
| Deploy-from-Git met audit-trail | GitHub-ondersteunde versiecontrole met traceerbare deployment-historie, aanvullend op de solution-based ALM uit hoofdstuk 9. |
| CMK (Customer-managed Keys) | Eigen encryptiesleutels voor Copilot Studio-environments. |
Customer Lockbox dekt niet alle uitgaande data. Uitgesloten zijn ten eerste het security audit logging van Copilot Studio: agent-aanroepen, tool- en action-calls, policy-beslissingen en runtime-signalen lopen via de Purview audit pipeline en niet via de Copilot Studio-dienst. En ten tweede bepaalde governance-, telemetrie- en audit-events uit Microsoft Agent 365. Wie Lockbox als argument in een DPIA voert, moet deze twee categorieën expliciet uitzonderen.
MIP-labels en Sensitivity (Preview sinds juli 2025)
Microsoft Information Protection (MIP) sensitivity labels worden sinds juli 2025 in Copilot Studio doorgegeven: connectors, Test Chat, Teams en M365 Copilot tonen het label van het brondocument. Files met label confidential of highly confidential leveren in Generative Answers geen inhoud, goed voor oversharing prevention, maar kan wel knowledge-gaten geven. Purview-integratie met Dataverse classificeert gevoelige data automatisch.
Responsible AI-guardrails
- Topics deactiveren, single-click, zonder te verwijderen.
- Allowed of Disallowed Topics definiëren, wat de agent principieel wel of niet mag beantwoorden.
- Content Moderation op Generative Answers, standaard toxiciteits- of PII-filter.
- Restrict to defined topics toggle, generatieve antwoorden alleen als een Topic is gematcht.
- Conversation Boosting Off, geen vrije LLM-praat buiten de Topics om.
- Citations verplicht voor Generative Answers, gebruiker ziet de bron.
Human in the Loop
▼Studio biedt vier manieren om een mens in de workflow te halen, plus sinds nov 2025 approval-gates per toolstap voor autonome agents.
1. Adaptive Card met approval-button
Je stuurt met "Ask with Adaptive Card" een card ("Approve / Reject"). De agent wacht op de submit, parseert het antwoord in een variabele en gaat verder.
- Geschikt voor: snelle inline-bevestigingen in de chat.
- Limiet: alleen in de actieve chatcontext.
2. Power Automate "Approvals" action
Klassieke PA approval-action (Teams- of Outlook-approval-card): de agent roept een flow aan die de approval blokkeert en wacht op antwoord.
- Geschikt voor: asynchrone goedkeuringen (uren of dagen).
- Limiet: PA-licentie kost extra.
3. Agent Flow "Request for Information"
In Agent Flow bestaat sinds 2025 een specifieke HITL-action: de flow pauzeert, stuurt een gestructureerde mail (via Outlook) met invulvelden, verzamelt het antwoord direct uit de mail en gaat verder.
- Geschikt voor: gestructureerde off-system reviews.
- Limiet: momenteel alleen Outlook als kanaal.
4. Handoff naar live agent
| Variant | Waarvoor |
|---|---|
| Dynamics 365 Customer Service / Omnichannel | Volledig geïntegreerde handoff met skill-based routing, volledige conversation context, voice en chat |
| Generic Engagement Hub Handoff | Generieke API-handoff naar derde systemen zoals Genesys, ServiceNow, enz. |
Bij een handoff gaat de volledige conversatiecontext mee (variabelen en transcript), zodat de menselijke agent niet "vanaf nul" hoeft te beginnen.
Approval-gates per toolstap (nov 2025)
Sinds nov 2025 kun je in autonome agents per tool of action een approval-gate zetten: de agent zet de stap pas als een gedefinieerde approver akkoord geeft.
Belangrijk voor: kostendrempels, policy-validation, gevoelige data-operaties.
Human supervision voor Computer Use
Computer Use-tools hebben een eigen human supervision-veld: bij herkende "potentieel schadelijke instructions" (bijvoorbeeld prompt injection op een website) wordt een gedefinieerde reviewer via Outlook op de hoogte gesteld. Belangrijk om te weten: de reviewer ziet de run-context alleen als hij hem zelf heeft geïnitieerd, anders ontbreekt het zicht op wat er gebeurt. Een response time limit-configuratie bepaalt of de run wacht of afbreekt.
Smart approval met condities
Combineer condities met HITL om alleen bij behoefte om goedkeuring te vragen:
Agent Flow: factuurbedrag extraheren
Condition: bedrag > 1.000 €?
├─ Ja → Request for Information (manager-goedkeuring per mail)
│ → SAP-connector: betaling boeken
└─ Nee → SAP-connector: betaling direct boeken
Zo heb je automatisering voor routinegevallen en controle voor uitzonderingen.
Versiebeheer en deployment
▼Draft vs. Published
- Draft, de in Studio bewerkbare versie. Tests in het test-pane draaien tegen draft.
- Published, de live uitgezette versie die gebruikers op kanalen zien.
- Elke "Publish"-klik maakt een nieuwe published version. Studio bewaart de historie (restore mogelijk).
Solutions (ALM-container)
Best practice: altijd in een solution werken met eigen publisher en prefix. Een solution kan bevatten:
- Agents
- Topics
- Agent Flows / Cloud Flows
- Connection References (in plaats van vaste verbindingen)
- Environment Variables (in plaats van vaste waarden)
- Dataverse-tabellen, AI-prompts, custom connectors
Dev, Test, Prod
Vier deploy-mechanismen:
| Mechanisme | Beschrijving |
|---|---|
| Power Platform Pipelines | UI-gedreven, geschikt voor citizen developers. Klik "Deploy" verplaatst de solution. |
| VS Code Extension (GA jan 2026) | Pro Code-authoring: agents in VS Code bewerken, versiebeheer met Git, lokaal testen. |
| Azure DevOps met Power Platform Build Tasks | Enterprise-grade CI/CD. |
| GitHub Actions for Power Platform | Analoog op GitHub. |
Component Collections (nov 2025): quick export en import van Topic-, tool- en knowledge-bundles via de sidebar, ook voor child-agents en MCP-connector-types. Handig voor hergebruik over meerdere agents heen.
Agent Evaluations als CI/CD-gate (GA maart 2026, REST API als Preview april 2026): verplichte test sets voor prod-deploy, custom graders voor domeinspecifieke pass/fail-criteria, multi-turn conversatietests. Testresultaten 89 dagen zichtbaar in Studio, exporteerbaar als CSV.
Uitbreiding van de Evaluations in september 2026: Microsoft rolt via het Message Center (RM569607) een uitgebreide evaluations-ervaring uit als algemeen beschikbaar. Nieuw zijn uitgebreidere onderbouwing per resultaat, reasoning traces van de agent, de geciteerde Knowledge Sources per testcase, het vergelijken van twee evaluations-runs, ondersteuning voor grotere datasets, configureerbare testcase-generatie en het genereren van testdata direct uit Knowledge Sources. Daarnaast een preflight-validatie die configuratiefouten meldt voordat een run start.
Twee details uit de evaluations-documentatie die in projecten vaak worden gezocht: Copilot Studio meet per interactie de Response Time in seconden, end-to-end inclusief reasoning-, tool-, connector- en workflow-stappen. Een pure meetgrootheid zonder pass/fail-werking, goed geschikt voor voor-na-vergelijkingen. En er is een eigen deel-rol Agent Viewer: wie die krijgt, mag test sets van andere makers zien, starten, hernoemen, afbreken en verwijderen, maar de agent zelf niet wijzigen, niet publiceren en geen deelinstellingen beheren. Status en kengetallen van een run zien alle makers, de agent-antwoorden en resultaat-onderbouwing alleen degene die de run heeft gestart.
Best practices:
- Managed solution in Test en Prod, unmanaged alleen in Dev.
- Environment variables voor API-URL's, connector-endpoints enz.
- Connection references voor connector-verbindingen (solution kan zonder hardgecodeerde credentials verhuizen).
- Na deploy: post-deploy config voor Application Insights-koppeling en handmatige auth-settings (die zijn env-specifiek).
Model lifecycle: het deploy-geval dat bijna iedereen vergeet
Microsoft heeft in augustus 2026 een eigen guidance-reeks over de model lifecycle gepubliceerd. Die dicht een gat dat in bijna elk project bestaat: een modelwissel wordt behandeld als een dropdown-wijziging, maar gedraagt zich als een migratie. Een nieuwer model interpreteert instructies letterlijker, kiest tools anders, antwoordt met andere lengte en opmaak en heeft andere latentie. De kernboodschap van de documentatie: flexibel bouwen, conservatief opereren, elke upgrade via een evaluation onderbouwen.
De gedocumenteerde cyclus voor productie-agents heeft zeven stappen: Discover (nieuwe, gewijzigde, nieuwe default- en aflopende modellen vinden), Inventory (welke agents, environments, owners en bedrijfsprocessen zitten eraan vast), Evaluate (kandidaat meten tegen een vastgestelde baseline), Approve (op basis van gedocumenteerde kwaliteits- en operationele criteria), Deploy (via het reguliere ALM-pad), Monitor (productie observeren, nieuw ontdekte gevallen in de regressie-suite opnemen) en Repeat. Je stoot bovendien een review aan als een model in jouw regio beschikbaar wordt, als de default verandert, als een uitfasering of automatische upgrade wordt aangekondigd, of als monitoring kwaliteits-, latentie- of verbruiksproblemen laat zien.
Microsoft noemt de klassieker uitdrukkelijk: een FAQ-agent met hoog volume wordt van een General- naar een Deep-model getild, omdat het deep-model in de test beter presteert. De antwoordkwaliteit stijgt marginaal, latentie en credit-verbruik stijgen sterk. Onderaan de streep een verslechtering voor gebruikers en budget. Tweede valkuil: een agent die op het default-model staat, migreert bij elke default-wisseling automatisch mee. Kies voor kritische en hoog-volume agents daarom een concreet model, zodat elke wisseling door je migratieproces loopt.
Wat je per agent moet vastleggen, zodat een aangekondigde uitfasering geen brandweer-inzet wordt: naam, agent-ID, environment en environment-type, businesskritikaliteit, functioneel en technisch owner plus tester en fiatteur, het geconfigureerde model met release-tag, of de agent aan de default hangt of een vast model gebruikt, Cross-Geo-behoefte en regionale eisen, de gebruikte harness (die bepaalt welke evaluations-methoden überhaupt beschikbaar zijn), de opslaglocatie van de regressie-test set met de datum van de laatste baseline-run, plus de vraag of het retired-model-window wordt gebruikt, wanneer dat afloopt en wie het heeft vrijgegeven.
Inventariseren hoef je niet met de hand te doen. In het Power Platform Admin Center toont Manage, Copilot Studio een kolom Model over alle agents van de tenant, filterbaar en exporteerbaar. Onder Licensing, Copilot Studio, Environment, Message consumption details staat aanvullend de kolom LLM Model plus verbruik. Programmatisch levert de Inventory API naam, weergavenaam, environment en model in één tenantbrede query. Voorwaarden: de rol Power Platform- of Dynamics 365-administrator, een access token voor https://api.powerplatform.com/ en een voor de tenant geactiveerd Agent Inventory.
POST https://api.powerplatform.com/resourcequery/resources/query?api-version=2024-10-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"TableName": "PowerPlatformResources",
"Clauses": [
{ "$type": "where", "FieldName": "type", "Operator": "in~",
"Values": ["'microsoft.copilotstudio/agents'"] },
{ "$type": "project", "FieldList": [
"name",
"properties.displayName",
"properties.model",
"environmentId = tostring(properties.environmentId)"
] }
],
"Options": { "Top": 200 }
}
// Antwoord: properties.model komt terug als properties_model.
// Bij meer treffers dan Top: skipToken uit het antwoord als
// Options.SkipToken terugsturen en herhalen.
Groepeer je het resultaat op properties_model, dan zie je in één oogopslag waar welk model in de tenant zit. Bij een uitfasering filter je dezelfde lijst op het aflopende model en heb je de betrokken agents met environment-ID voor de owner-uitvraag. Voor een enkele omgeving volstaat pac copilot list --environment <id> uit de Power Platform CLI. Dat commando levert echter geen model, daarvoor heb je de Inventory API nodig.
Channel-publishing
Per kanaal een aparte publish-pipeline:
- Teams / M365 Copilot, Studio genereert een app-manifest. Dat moet door de Teams-admin worden goedgekeurd voordat gebruikers het kunnen installeren. Eerst personal scope, daarna team/channel scope optioneel via manifest-tweak.
- Web, embed-code voor eigen sites.
- Custom (Direct Line), geheime Direct Line-token, te gebruiken in een eigen app.
- Voice, D365 Contact Center-provisioning.
- Teams Phone Agent (Preview sinds juni 2026), de Copilot Studio Voice Agent hangt zich aan een Teams Phone Agent en neemt gespecialiseerde vragen over zoals facturatie, bestelstatus of receptenherhaling. Overdracht en teruggave verlopen naadloos, transfer-doelen komen als tags uit een tag-template in het Teams Admin Center, in plaats van hardgecodeerd in de agent. Het kanaal is gated: de tenant moet via Microsoft Support worden vrijgeschakeld, anders verschijnt de optie niet.
- SharePoint / Power Pages, embed webpart.
Microsoft ondersteunt in dit kanaal uitsluitend Basic Voice Agents, geen Real-time Agents. De wisseling van voice-type is niet omkeerbaar. Generative Orchestration wordt niet ondersteund en veroorzaakt vertragingen van 5 tot 6 seconden. Zet dus onder Settings, Generative AI, Orchestration op Classic. De authenticatie moet op No Authentication staan, zodat willekeurige bellers doorkomen. Environment-voorwaarden: "Get new features early" op Nee, Dataverse op Ja. Belangrijk: Copilot Studio Voice Agents worden in Duitsland, Frankrijk, India, Japan en Zuid-Afrika niet gehost. Ze zijn wel bruikbaar, maar de environment moet dan in een ondersteunde regio liggen, voor NL typisch Europe of Switzerland.
Environment-level telemetrie met Application Insights (Preview sinds juli 2026, in september herzien)
Tot juli 2026 moest je Application Insights per agent koppelen. Sinds juli 2026 kun je de export in het Power Platform Admin Center aanzetten voor een hele managed environment: één export-package met type Copilot Studio, en alle agents in de omgeving leveren traces. Voor beheer is dat de echte sprong: je ziet agent-runs, node- en tool-executies, kunt alerts bouwen en eigen dashboards en queries schrijven, zonder dat elke maker eraan hoeft te denken. Sinds de documentatiestand van 17 september 2026 geldt dat uitdrukkelijk voor agents op beide harnesses, de Standard Harness zowel als de GitHub Copilot Harness.
Twee details die bestaande dashboards breken: na afloop van de private preview zendt Microsoft de root-aanroepen van een agent (invoke_agent) als dependencies uit in plaats van zoals eerder als requests. Oudere root-traces kunnen daarom nog in de requests-tabel opduiken – wie over beide periodes analyseert, moet dat in de query opvangen. En de levering duurt bij een nieuw ingerichte configuratie tot 24 uur: komt er na het inschakelen niets binnen, dan is dat eerst een kwestie van geduld en pas daarna een storing. Wie uitsluitend op environment-niveau wil analyseren, kan de agent-level telemetrie volgens de documentatie gericht uitschakelen.
| Punt | Wat geldt |
|---|---|
| Voorwaarde | Alleen managed environments. De prerequisites van Export data to Application Insights moeten vervuld zijn en op de doelresource moet Local Authentication actief zijn. |
| Geldt voor | Agents op de Standard Harness en de GitHub Copilot Harness. Declarative agents zijn uitgesloten, die verschijnen er niet. |
| Waar landen de data? | In de tabel dependencies, als spans in OpenTelemetry-format. Drie events: InvokeAgent, ExecuteTool, OutputMessages. De agent-semantiek zit in customDimensions onder de gen_ai.*-keys, niet in de native kolommen. |
| Hoe hangt dat samen? | Elke turn is een eigen trace met een gedeelde operation_Id. InvokeAgent is de root, de andere spans hangen daaronder via operation_ParentId. Een conversatie over meerdere turns rijg je aaneen via gen_ai.conversation.id. Sub-agents erven dat ID met een _-suffix. |
| Zonder Kusto | Application Insights levert de blades Agents (Preview): Agent Runs (uit de InvokeAgent-spans), Tools (welke tools hoe vaak en hoe snel) en Models (modelgebruik over de runs). |
| Hoe lang tot er data komt? | Bij nieuwe configuraties tot 24 uur. Pas daarna is een leeg dashboard een bevinding, geen geduldsprobleem. |
Topic-events ontbreken volledig: TopicStart, TopicAction en TopicEnd worden op environment-niveau niet vastgelegd. Wie topic-verlopen wil analyseren, heeft nog steeds agent-level telemetrie nodig. Overige gedocumenteerde grenzen (stand 17 september 2026): duration is voor traces van de Standard Harness niet gevuld, bij bepaalde connected-agent-scenario's is de ouder-kindrelatie tussen traces verkeerd gemapt, trace- en span-IDs zijn GUIDs in plaats van OTel-conforme hex-IDs, ongeauthenticeerde en multi-tenant-scenario's worden helemaal niet gelogd, de functie draait alleen in de Microsoft Public Cloud, en de export is niet transactioneel: bij storingen kunnen kleine hoeveelheden data verloren gaan, en tijdens schema-updates zijn inconsistenties mogelijk. Microsoft wijst er bovendien op dat de telemetrie tussen de twee harnesses kan verschillen, en dat je configuratie zelf aan je eisen rond dataresidentie, privacy en RBAC moet voldoen – de preview brengt daarvoor geen toezegging mee. Stuur bovendien niet agent-level- en environment-level telemetrie naar dezelfde Application Insights-instantie, anders worden analyses dubbel geteld.
Rollback / Restore
Studio bewaart published versies, je kunt terugkeren naar een eerdere. Maar: solution-deployments zijn "forward-only". Rollback tussen environments loopt via een re-deploy van een eerdere solution-versie.
Kosten en limieten
▼Prijsmodellen in detail
Sinds sept 2025 is de eenheid Copilot Credit, niet meer "Message".
| Plan | Credits | Prijs/Credit |
|---|---|---|
| PAYG (Azure) | onbeperkt, on-demand | $0,01 |
| Capacity Pack | 25.000/maand | $0,008 |
| M365 Copilot-licentie | beperkte credits voor agent-gebruik inbegrepen | n/a |
| Trial | 30 dagen, gelimiteerde credits | $0 |
Microsoft is per 1 september 2025 overgestapt van "Messages" naar "Copilot Credits". Wie uit oude contracten komt, moet zijn kostenraming volledig opnieuw opzetten. Een enkele conversatie kan nu van 1 tot 100+ credits kosten, afhankelijk van orchestration en tool-calls.
Credits worden tenant-breed gepoold. Microsoft publiceert sinds maart 2026 officiële billing rates:
| Agent-feature | Billing rate | M365 Copilot-user (B2E) |
|---|---|---|
| Classic Answer (handmatig geautoriseerd Topic) | 1 Credit | Gratis (Fair Use) |
| Generative Answer | 2 Credits | Gratis |
| Agent Action (trigger, deep reasoning, topic transition, Computer Use) | 5 Credits | Gratis |
| Tenant Graph Grounding (Work IQ) | 10 Credits | Gratis |
| Agent Flow Actions | 13 Credits / 100 actions | Gratis |
| AI Tools (basic), eenvoudige LLM-prompts | 1 Credit / 10 responses | Gratis |
| AI Tools (standard) | 15 Credits / 10 responses | Gratis |
| AI Tools (premium), reasoning-modellen en premium tier | 100 Credits / 10 responses | Gratis |
| Content Processing Tools (docs/images) | 8 Credits / pagina | Gratis |
| Computer Use Step (standaardmodel) | 5 Credits / step | Gratis |
| Computer Use Step (premium-model, bijvoorbeeld Claude Opus 4.6) | 15 Credits / step | Gratis |
Reasoning-modellen worden dubbel afgerekend: feature-rate + AI-Tools-Premium-rate (bijvoorbeeld Generative Answer met deep-model = 2 Credits + 100 Credits / 10 responses).
Voice-afrekening per minuut: Classic Voice (klassieke orchestration) 10 Credits/min, GenAI Voice 35 Credits/min, Premium GenAI Voice 75 Credits/min. De core-agent-activiteit (Classic- of Generative Answer, Agent Action) is in de minuten-rate al inbegrepen.
Vuistregel: een conversationele sales lead qualifier kost $0,15 tot $0,80 per conversatie. Een autonome mail-triage-agent $0,30 tot $2,00 per mail. Een Computer Use-run met 10 stappen ongeveer $0,50 (standard) tot $1,50 (premium).
Usage-based billing van de GitHub Copilot Harness
Alles hierboven geldt voor de Standard Harness: vaste billing rates per feature, afrekening vanaf publicatie. Agents, workflows en apps op de GitHub Copilot Harness rekenen anders af, en dat is momenteel de duurste denkfout in projecten.
De billing-documentatie (stand 27 augustus 2026) noemt als toepassingsgebied letterlijk agents, workflows, and apps. Met de start van app-building in september 2026 valt daarmee ook elke gegenereerde app onder dit model. Reken ze in pilots vanaf het begin mee, in plaats van ze als gratis bijproduct te behandelen.
| Vraag | Standard Harness | GitHub Copilot Harness |
|---|---|---|
| Wanneer begint de afrekening? | Na het publish, in productie | Vanaf het moment dat je begint te bouwen |
| Wat kost Credits? | Gedefinieerde feature-rates per antwoord, action of flow-stap | LLM-tokens, tools (ook knowledge en MCP) en de harness zelf |
| Ook bij ontwikkelen? | Nee | Ja: oplossingen genereren via natural language, preview en test, evaluations genereren en uitvoeren |
| Waar zichtbaar? | Power Platform Admin Center | Monitor-tab per agent, tenant- en environmentbreed onder Licensing, Copilot Studio in het Admin Center |
Op de GitHub Copilot Harness verbruikt al het bouwproces zelf Copilot Credits: elke preview-chat, elke evaluations-run, elke via prompt gegenereerde oplossing. Reserveer voor champions-enablement en pilots een eigen credit-budget, anders reken je met beheerkosten en betaal je ontwikkelkosten. Plan het budget bovendien per environment: credits worden in het Power Platform Admin Center toegewezen aan environments.
Wat er in september bij komt: Microsoft publiceerde op 15 september 2026 drie roadmap-items over kostentransparantie, alle met GA-doel september 2026 en status In development: RM571194 toont de kosten voortaan direct in de preview-chat en de agent-historie, RM571195 splitst ze in de Agent Evaluations uit naar eval-generatie, testruns en model-grading, en RM571196 brengt ze per agent in de Monitor-tab, inclusief geschatte verdeling over de levenscyclus van authoring via testing en evaluations tot productie. Precies dat ontbreekt vandaag: het bouwbudget is op, maar niemand kan zeggen waaraan. Tot dit is uitgerold blijft de verbruiksweergave in het Power Platform Admin Center het enige betrouwbare zicht.
Enforcement is hier harder dan de 125-procent-regel: heeft een environment geen toegewezen credits meer of zijn ze allemaal opgemaakt, dan stopt elke functie die credits nodig heeft. Eindgebruikers krijgen geen antwoorden meer, makers kunnen niet meer via natural language authoren, niet meer in preview testen en geen evaluations meer genereren. Beide groepen zien dezelfde melding dat credits ontbreken. Microsoft staat wat overage toe als coulance-buffer zodat bedrijfsprocessen niet abrupt afbreken, maar garandeert geen bedrag. De drie uitwegen: capaciteit vanuit tenant of andere environment herverdelen, capaciteit bijkopen, of een PAYG-meter voor de overage inrichten.
Credit-governance: de environment is de eenheid
Sinds 17 september 2026 is hier een eigen guidance-artikel over. De kernboodschap: omdat de GitHub Copilot Harness al credits verbruikt tijdens het bouwen, testen en evalueren, is het niet genoeg om alleen gepubliceerde agents te sturen. Governance begint vanaf dag één op environment-niveau. Belangrijk daarbij: developer- en trial-environments vallen sinds 1 september 2026 onder usage-based billing. Verbruiksgegevens van daarvoor zijn alleen een richtwaarde, geen kostenprognose.
| Niveau | Wat je daar stuurt |
|---|---|
| Tenant | Gekochte en beschikbare capaciteit; wie überhaupt capaciteit mag toewijzen |
| Environment | Prepaid-toewijzing, gebruik van vrije tenantcapaciteit, PAYG-koppeling |
| Agent | Maandlimiet, meldingsdrempel, harde stop bij het bereiken van de limiet, expliciete stopstatus |
| Operationeel proces | Kostenverantwoordelijke, alert-triage, goedkeuring van uitzonderingen, melding aan de owners |
Microsoft raadt aan elke environment in te delen in een van drie klassen: exploratie en prototyping (vaste grens, ontwikkellimiet per agent, gedocumenteerde weg naar meer capaciteit), test en validatie (tijdelijke capaciteit voor representatieve evaluaties) en gefinancierde productie (duidelijke kostenverantwoordelijke, limieten op basis van kritikaliteit). Voor een harde prepaid-grens wijs je een vaste hoeveelheid toe, zet je Draw from the available capacity in my tenant uit en koppel je geen PAYG. De betreffende agents vind je via Power Platform Inventory: het veld properties.harness met de waarde GitHub Copilot filtert ze eruit.
Ten eerste is er geen tenantbrede standaardlimiet per agent: wie nieuwe agents wil begrenzen, moet dat zelf instellen via een terugkerend proces of automatisering. Ten tweede kunnen nieuwe environments ontstaan met het gebruik van tenantcapaciteit ingeschakeld, dus regelmatig afstemmen is verplicht. Ten derde: wie environment-admins toestaat add-on-capaciteit toe te wijzen, geeft ze die zeggenschap over alle environments in de tenant, niet alleen over hun eigen. En Azure-budgetten bij PAYG melden alleen, ze stoppen geen verbruik.
Overage enforcement van de Standard Harness (125%-regel)
Als de tenant 125% van zijn prepaid capacity bereikt, deactiveert Microsoft alle custom agents (conversation-end wordt afgewacht). Notificatie aan admin per mail en in het Power Platform Admin Center. Workaround: PAYG-meter activeren of capacity herallokeren. Agent Flow enforcement is apart: bij volle capacity worden nieuwe flow-runs geblokkeerd, andere agent-features blijven doorlopen. Tip: monthly spend limit per agent in het Admin Center instellen, voor het escaleert.
Bekende limieten (stand augustus 2026)
| Limiet | Waarde |
|---|---|
| Topics per agent | 1.000 in Dataverse-environments (250 in Dataverse for Teams) |
| Skills per agent | 100 |
| Trigger-phrases per Topic | 200 (aanbevolen 5 tot 10) |
| Instructions / system prompt | 8.000 tekens |
| File upload grootte | 512 MB per file |
| Files per source (web-app) | 500 |
| SharePoint-bestandsgrootte als knowledge | 7 MB zonder M365 Copilot. 200 MB met Work IQ (PDF/PPTX/DOCX tot 512 MB) |
| Knowledge Sources per agent | 500 over alle typen heen |
| SharePoint site-URL's per agent | Max 25 bij Generative Orchestration |
| Dataverse Knowledge Sources | Max 2 per agent, elk 15 tables |
| Attachments en gegenereerde bestanden (GitHub Copilot Harness, Preview) | Bijlage 16 MiB per bestand. Gegenereerd bestand 10 MB. URL-download-timeout 30 sec. Bewaartermijn 28 dagen na laatste conversatie-activiteit |
| Connectors | 1.400+ |
| Connector payload | 5 MB (Public Cloud). 450 KB (GCC) |
| Tools per agent (tool-decision-sweet-spot) | 30 tot 40 (daarboven: splitsen in sub-agents) |
| Throttling: messages naar agent (Dataverse env) | 8.000 RPM (paid plan) |
| Throttling: Generative AI messages | 50 tot 100 RPM, 1.000 tot 2.000 RPH afhankelijk van plan-tier. PAYG = 100 RPM |
| Power Platform requests | 250.000 / 24 uur (standard). 6.000 / 24 uur (Teams-plan) |
| Adaptive Card grootte | Ongeveer 28 KB (Teams/Omnichannel ACS-limiet) |
| Computer Use | GA sinds mei 2026, alleen US-regio environments. Generative Orchestration verplicht |
| Real-time Agents (voorheen Real-time Voice Agents) | Het Preview-label geldt sinds juli 2026 alleen nog voor digitale messaging-kanalen. Voor voice-kanalen documenteert Microsoft geen expliciete GA-status (Preview-vermelding daar vervallen). Beperkingen in de messaging-Preview: alleen No Authentication (OAuth en Microsoft-auth niet ondersteund), conversaties boven de 60 minuten escaleren automatisch naar een menselijke agent, analytics-rapporten mogelijk onvolledig. Sinds juli 2026 drie modellen: GPT-Realtime (gehost in North America), GPT-Realtime-Mini (Preview) (gehost in Australië) en nieuw GPT-5-Chat (Preview). Belangrijke correctie voor NL/EU: GPT-5-Chat ondersteunt in-region processing in de USA, de EU, UK en Australië. EU Data Boundary-klanten kunnen Real-time Agents daarmee sinds juli 2026 gebruiken, wat met GPT-Realtime en GPT-Realtime-Mini nog steeds niet gaat (die hebben Cross-Geo-processing nodig). GPT-5-Chat draait via een Text-LLM-Voice-architectuur: spraak naar tekst, GPT-5-Chat voor intent en antwoord, dan Microsoft Neural TTS terug naar spraak, inclusief custom voice models. Prijs daarvoor: de transcript-logging is bij Text-LLM-Voice beperkt. Enkele turns en agent-antwoorden ontbreken mogelijk in het call-transcript, wat analytics en monitoring raakt. Data-opslag blijft in elk geval in de Azure-geo van de AI-resource. |
Rate Provisioning: doorvoer is niet licentie
Sinds juni 2026 scheidt Microsoft in de architectuur-guidance twee dingen netjes die in projecten vaak worden verward. License Provisioning is de commerciële vraag: licenties, credits, prepaid capacity, PAYG. Rate Provisioning is de technische vraag: hoe snel aanvragen mogen binnenkomen voordat throttling grijpt. Je kunt genoeg credits hebben en toch worden afgeknepen.
De limieten in de tabel hierboven gelden per dienst op agent-, environment-, tool-, connector- of kanaal-niveau. En het laagste limiet in het runtimepad bepaalt de gebruikerservaring. De agent kan binnen zijn grenzen blijven, terwijl een flow, een connector, een Dataverse-aanroep of een downstream-API al afknijpt. Messages naar een agent worden bijvoorbeeld per Dataverse environment geteld, dus inclusief alle andere agents en autonome workloads erin.
Reken daarom niet in maandvolumes, maar in piekvensters: aanvragen per minuut en per uur. Een campagne-piek van een uur kantelt een setup dat op weekgemiddelde onschuldig oogt. Als eerste reactie zijn ontwerp-optimalisaties nodig, geen limiet-aanvraag: externe aanroepen bewust plaatsen, agents met hoog volume over eigen environments verdelen, autonome runs via queues, batches en trigger-filters spreiden, reporting en telemetrie uit het interactieve pad trekken. Pas als dat staat, loont het support-verzoek in het Power Platform Admin Center. Dat is nodig voor UAT en loadtest, niet na de eerste productiefout, en een verhoging is nooit gegarandeerd.
Nieuw sinds september 2026: de guidance beschrijft nu hoe je een verhogingsaanvraag onderbouwt: draai een representatieve pilotfase, meet de piekbelasting, extrapoleer naar het volledige aantal gebruikers en voeg precies die cijfers bij de aanvraag. Zonder pilotdata blijft de aanvraag een schatting.
Kostendrijvers
- Generative Orchestration, elke user-turn = minimaal 1 LLM-aanroep voor topic/tool-picking.
- Knowledge Querying, elke Generative Answer = embedding + retrieve + synthesis = meerdere credits.
- Autonome agents met hoog event-volume, bijvoorbeeld mail-triage op 10.000 mails/dag = vierstellige credits per dag.
- Deep Reasoning, multi-step planning is duidelijk duurder dan single-shot.
- Tool chaining, elke tool-call kan opnieuw LLM-reasoning uitlokken.
Een autonome mail-triage-agent op een postbus met 10.000 mails per dag en Deep Reasoning kan snel $5.000 of meer aan credits per maand verbruiken. Voor activering van autonome triggers altijd volume x credit-schatting x 30 uitrekenen, en een workspace-spend-limit instellen.
Vuistregel: schat credits = (conversaties per maand x gemiddelde user-turns x ongeveer 5 credits per turn) plus knowledge-hits.
8 praktijk-blueprints
▼Blueprint 1: IT-helpdesk-bot
- Question-Node "Wat is het probleem?" plus Adaptive Card met categorie-dropdown (VPN / WLAN / Outlook / Overig).
- Generative Answer in IT-SharePoint-Knowledge-Base.
- Als er geen antwoord is, Condition: aanmaken van een ServiceNow-ticket via Connector Action.
- Agent Flow stuurt een Adaptive Card naar het helpdesk-kanaal met een "Overnemen"-button.
- Bij "Overnemen"-klik: Transfer Conversation naar de live-agent.
Output: ticketnummer in DM naar de gebruiker, conversation-log in SP.
Case: agentschap van 80 medewerkers ontlast 1 IT-FTE. Standaardvragen (wachtwoord-reset, printerproblemen) lopen 24/7 in het Nederlands.
Blueprint 2: HR-onboarding-bot
- Uit SP-lijst: naam, startdatum, afdeling, manager.
- AI Prompt Action: genereer gepersonaliseerde welkomstmail.
- Outlook-connector: mail sturen naar nieuwe medewerker plus cc manager.
- Power Automate Flow: Teams-onboarding-kanaal aanmaken, manager en medewerker toevoegen.
- Approval Card in het HR Teams-kanaal: "Toegang toevoegen voor [Tools]?", bij approve leiden Connector Actions naar Entra-groepen.
- Op dag 1: Schedule Trigger start de welkomstchat in Teams DM.
Output: onboarding-setup zonder HR-klik, audit-trail in Purview.
Case: mkb-agentschap van 25 medewerkers doet onboarding zonder aparte HR-afdeling.
Blueprint 3: Sales-lead-qualification-bot
- HTTP Action / Apollo-MCP: verrijk lead-data (bedrijfsgrootte, branche).
- AI Prompt: classificeer fit (A/B/C) tegen ICP.
- Condition: A leidt tot sales round-robin (Dataverse-lookup) en calendar-hold.
- Outlook: gepersonaliseerde antwoordmail uit template.
- HubSpot- of Dynamics-connector: lead aanmaken met score en notes.
- Teams-notificatie naar de toegewezen sales rep met lead-context.
Output: voorgekwalificeerde lead in CRM in minder dan 2 minuten.
Case: B2B-SaaS-agentschap met 5 sales reps bespaart 30% voorkwalificatietijd.
Blueprint 4: Customer support FAQ-bot met handoff
- SSO met Entra External ID (klant-login).
- Generative Answer op de knowledge base (publieke help center plus interne KB).
- Bij "Mijn contract ..."-thema's: Dataverse-lookup met user-ID naar contractdata.
- Als niet opgelost na 2 turns: Escalate System Topic.
- Transfer Conversation naar D365 Customer Service Queue incl. conversation-history.
Output: 60% first-contact-resolution zonder mens, nette handoff voor de rest.
Case: SaaS-startup met 3-persoons support dekt automatisch 70% standaardvragen af.
Blueprint 5: Onkosten-approval-bot
- Adaptive Card: datum, bedrag, categorie, bon-upload.
- Power Fx-validatie: bedrag plausibel? Verplichte velden gevuld?
- AI Prompt: OCR op de bon, plausibility check.
- Condition op bedrag: kleiner dan 100 €, auto-approve. Groter of gelijk aan 100 €, Agent Flow Request for Information naar manager via Outlook.
- Bij approve: Connector Action SAP of DATEV, boeking.
- Outlook-mail ter bevestiging aan de indiener.
Output: workflow in minuten in plaats van dagen, audit via Purview.
Case: middelgroot agentschap met 60 medewerkers bespaart dubbele invoer.
Blueprint 6: Knowledge search over SharePoint
- Question-Node "Waar zoek je naar?"
- Generative Answer over alle vrijgegeven SP-sites (met SSO, dus user-permissions).
- Citations verplicht in de output.
- Optioneel: AI Builder Prompt "Vat de top-3 hits samen, je-vorm, max 100 woorden".
- Adaptive Card met "Was dit nuttig?", telemetrie.
Output: kennissuche die SP-permissies respecteert.
Case: consultancy-boutique met 5.000 projectdocumenten vindt eindelijk templates terug.
Blueprint 7: Meeting-briefing-agent
- M365 Calendar-connector: haal de meetings van vandaag op (alle calls met externen).
- Per meeting: Graph Knowledge, laatste mails, files, OneNote-notes met de deelnemers.
- AI Prompt: maak een briefing van 5 bullets per meeting (context, laatste touchpoints, openstaande vragen).
- Outlook: mail met daily briefing aan de gebruiker.
Output: briefing-mail om 07:30 zonder klik.
Case: account manager bij een B2B-agentschap start voorbereid aan de dag.
Blueprint 8: Compliance-triage voor inkomende mails
- AI Prompt: classificeer mail (contract / privacy / klacht / spam / overig).
- Condition:
- Contract, naar SP-library "Contracten in behandeling" plus Adaptive Card aan legal lead.
- AVG-verzoek, escalatie naar de functionaris gegevensbescherming via Outlook, met 30 dagen deadline-reminder als Schedule Trigger.
- Klacht, naar het ticketsysteem.
- Spam, naar archief.
- Power Automate Flow: schrijf een ontvangstbevestiging aan de afzender (met AI-personalisatie).
- Audit log in een aparte Dataverse-tabel.
Output: de postbus loopt niet meer vol, kritieke thema's worden herkend.
Case: agentschap met AVG-plichten en handmatig beheerde compliance-postbus.
Best practices
▼- Start met Classic Orchestration voor gereguleerde use cases. Generative is krachtig maar minder voorspelbaar, en compliance houdt van deterministische paden.
- Elke agent in een eigen solution. Anders krijg je bij ALM-deploy een verzamelchaos en onbedoelde co-deployments.
- Environment variables voor alles wat env-specifiek is. API-endpoints, group-IDs, SP-URL's. Zo verhuist een solution netjes tussen environments.
- Activeer SSO zodra je Knowledge koppelt aan SharePoint, Graph of Dataverse. Anders draait alles in maker-context en zien gebruikers dingen die ze niet mogen zien.
- Topic-descriptions zijn in Generative Orchestration net zo belangrijk als hun inhoud. Beschrijf precies wanneer een Topic gekozen moet worden, niet wat het doet.
- Per tool maximaal 1 heldere taak. Een "hulp-tool dat ook nog X kan" wordt door Generative Orchestration verward. Splits het op.
- HITL vanaf de eerste stap inbouwen als de agent autonoom is. Liever te veel approval-gates aan het begin, wegwerken is makkelijker dan achteraf incidenten opvangen.
- Conversation Boosting Off plus Generative Answers alleen uit geconfigureerde Knowledge Sources. Anders hallucineert de agent "creatief" over thema's die je niet controleert.
- Power Fx is je vriend voor logica, maar overdrijf het niet. Complexere logica in Agent Flow uitplaatsen (beter testbaar).
- Test in multi-channel modus, niet alleen in het Studio-pane. Adaptive Cards, SSO en auth-tokens gedragen zich in Teams, Web en Direct Line anders dan in de test-bot.
Troubleshooting en valkuilen
▼Top 5 foutbeelden
| # | Foutbeeld | Vermoedelijke oorzaak | Oplossing |
|---|---|---|---|
| 1 | "Agent unavailable, try later" | Tenant throttling of capacity uitgeput | Purview/Admin Center: credit-verbruik checken. Eventueel PAYG-backup opzetten. |
| 2 | "Authentication failed" in Direct Line / custom channel | "No Authentication" in Studio, maar het kanaal wil een auth-token | Studio, Security, Authentication instellen op Entra v2, en Direct Line-secret opnieuw genereren. |
| 3 | Knowledge geeft "I don't know" terug, terwijl de documentatie er is | (a) SharePoint groter dan 7 MB zonder M365 Copilot. (b) SSO niet actief, maker-account heeft geen SP-toegang. (c) Indexing nog niet klaar. | Licentie controleren, SSO aan, na configuratie 30 tot 60 min index-wachttijd. |
| 4 | Generative Orchestration kiest verkeerd Topic | Topic-descriptions te vergelijkbaar, te veel topics | Descriptions aanscherpen, aantal topics verminderen, eventueel topics tot één tool consolideren. |
| 5 | Solution-deploy Test naar Prod faalt met "missing dependency" | Connection references of environment variables niet aanwezig in doel-env | Connection in doel-env vooraf aanmaken, env-vars in de deploy-stap zetten. |
Veelvoorkomende valkuilen
Valkuil 1: "Topic gevonden, maar er gebeurt niets"
Meestal connector-auth: connection references met kapotte credential geven stille fouten. Eerst de connection controleren, dan het topic.
Valkuil 2: Adaptive Card ziet er goed uit in Studio, maar kapot in Teams
Teams heeft een oudere card-schema-versie en een 28 KB-limiet. Altijd in Teams testen, niet alleen in Studio.
Valkuil 3: Generative Orchestration "verliest" topics
Bij 50+ topics gaan de descriptions te veel op elkaar lijken en pakt het LLM de verkeerde. Oplossing: scherpere descriptions of terug naar Classic.
Valkuil 4: SharePoint Knowledge toont alleen snippets, geen heel bestand
Als je alleen een M365-E3-licentie hebt (geen M365 Copilot) geldt de 7 MB-limiet. Grotere files? Opsplitsen of licentie upgraden.
Valkuil 5: "Why is my agent answering things it shouldn't?"
Conversation Boosting staat aan (default). Toggle uit en "Restrict to defined topics" aan.
Valkuil 6: Publicatie in Teams blijft wekenlang hangen
De Teams-admin moet de app catalog-entry goedkeuren. Vaak is dat approval-proces niet ingericht. Eerst het proces oplossen, dan deployen.
Valkuil 7: Power Automate-flow doet niets in het run-log
Als je een oude PA cloud flow als tool gebruikt, draait die onder een ander service-account. Permissies kunnen ontbreken waar ze in je eigen test wel werkten.
Valkuil 8: MCP via SSE breekt na augustus 2025
SSE is in augustus 2025 uitgefaseerd. Streamable HTTP is nu verplicht voor MCP-server-koppeling.
Valkuil 9: "Mijn autonome agent vuurt niet."
Generative Orchestration moet aan staan, anders zijn event-triggers niet zichtbaar in de UI.
Valkuil 10: "Agent disabled, billing issue"
Je hebt 125% van de prepaid capacity overschreden, overage enforcement grijpt in. Bevestig in het Power Platform Admin Center of je capacity herallokeert of PAYG activeert. Bij Agent Flows: aparte enforcement, blokkeert alleen nieuwe runs.
Valkuil 11: Real-time Voice werkt niet in EU-tenant
Real-time Agents zijn alleen gehost in Noord-Amerika (GPT-Realtime) en sinds juni 2026 in Australië (GPT-Realtime-Mini). EU Data Boundary-tenants kunnen die feature niet gebruiken, want het Cross-Geo-processing dat daarvoor nodig is, is in de EU verboden. Buiten NA/Australië moet Cross-Geo-processing expliciet toegestaan zijn.
Valkuil 12: "Generative Answer levert geen antwoord ondanks aanwezig SP-bestand"
Vermoedelijke oorzaak: het document draagt een MIP sensitivity label confidential of highly confidential. Deze bestanden worden wel als "ready" getoond, maar leveren geen inhoud.
Valkuil 13: Generative Orchestration negeert Conversational Boosting-systeem-topic
Bekende limitatie: in Generative Orchestration worden aanpassingen aan het Conversational Boosting-systeem-topic niet meegenomen. Custom data sources en Bing Custom Search werken ook alleen via de Classic data-optie in de Generative Answers-node.
Valkuil 14: Multiple Topics Matched-systeem-topic disambigueert niet
Generative Orchestration roept het Multiple Topics Matched-systeem-topic momenteel niet aan. Tijdens testen het topic uitschakelen. Weer inschakelen wanneer Microsoft de disambiguation-fix uitlevert.
Valkuil 15: De agent antwoordt dubbel, of helemaal niet
Microsoft heeft eind augustus 2026 gedocumenteerd waarom dat gebeurt, en de oorzaak is structureel, geen bug. De Standard Harness verdeelt de context over de betrokken componenten. Elke component werkt vanuit zijn eigen context, en de orchestration-laag stemt de context niet op het hoogste niveau af. Zolang een component draait, ziet de orchestration-laag de berichten die die component aan de gebruiker stuurt niet. Gevolg: een aanvraag lijkt onbeantwoord, dus beantwoordt iemand hem een tweede keer.
Context stroomt op twee manieren naar binnen (expliciete inputs plus impliciet meegestuurde conversatiecontext) en op twee manieren terug (expliciete outputs plus impliciete context). Wat een component alleen aan de gebruiker toont of alleen in eigen variabelen houdt, bereikt de orchestration-laag nooit. Volgens Microsoft gaat ongeveer de helft van de gevallen met dubbele of ontbrekende antwoorden terug op dit impliciete doorgeven.
| Perspectief | Heeft in de actieve context | Mag in de chat schrijven | Geeft als context terug |
|---|---|---|---|
| Orchestration-laag | Gebruikersvraag, conversatiecontext, component-, input- en output-beschrijvingen, plan-status, impliciete antwoorden, maar niet of de gebruiker ze heeft gezien | Ja, eigen vragen en antwoorden | Eigen vragen, antwoorden, reasoning en plan |
| Topic | Topic-variabelen, actuele node-status | Ja, via Message-nodes, Question-nodes en Ask with Adaptive Card | Topic-outputs en impliciete berichten, die dubbelingen kunnen blijven veroorzaken |
| Tool / Flow | Alleen de door de orchestration gegenereerde inputs | Nee | Tool- of flow-outputs |
| Knowledge-stap | Gebruikersvraag plus actieve context van zijn agent | Nee, schrijft naar zijn agent, niet in de chat | Zijn antwoord |
| Generative Answers-node (in het Topic) | Wat in de input zit plus agent-context | Ja, direct of in een Topic-variabele | Niet expliciet, kan herhaald worden |
| Sub-agent (Child of Connected) | Initiële aanvraag, inputs van de parent en eventueel doorgegeven parent-context, in eigen orchestration-context | Ja, indien geconfigureerd of geïnstrueerd | Antwoord en outputs |
Adaptive Cards zijn de meest voorkomende trigger. Uit topics komt alleen platte tekst impliciet terug (Message-nodes, Question-nodes, card-inhoud, getypte gebruikersantwoorden), en zonder de info of de gebruiker het heeft gezien. Action buttons op een Adaptive Card en de klikken daarop bereiken de context van de Standard Harness helemaal niet. Vertrouw daarom nooit op card-inhoud als context. Geef alles wat een latere stap nodig heeft terug als Topic Output, en zet daarnaast een output die de "beantwoord"-status vastlegt.
Sub-agents zijn de tweede trigger. Een Child Agent draait in de parent en krijgt de conversatiecontext altijd mee, zonder mogelijkheid om dat uit te zetten. Bij de Connected Agent stuur je dat via een instelling. Staat in de doorgegeven context een aanvraag die er onbeantwoord uitziet, dan probeert de sub-agent te compenseren, en antwoordt een tweede keer.
Valkuil 16: Activity.Text is leeg terwijl de gebruiker wel iets heeft geschreven
Wie Activity.Text gebruikt om te loggen, krijgt in productie gaten, en de oorzaak is geen bug. Roept de agent bij gebrek aan context een knowledge source aan, dan blijft Activity.Text voor die beurt leeg: de agent formuleert geen eigen antwoord omdat hij de beslissing aan de kennisbron overlaat. Hetzelfde gebeurt bij tools die technisch als activity zijn uitgevoerd. De variabele pikt namelijk elke activity op die bij de agent binnenkomt, niet het vorige gebruikersbericht. De gedocumenteerde oplossing is simpel: gebruik LastMessage.Text als je het laatste gebruikersbericht nodig hebt, en Activity.Text alleen daar waar je echt de activity bedoelt.
Twee verscherpingen daarbij. De trigger OnPlanComplete draait pas als het tool klaar is. Is er een knowledge source gebruikt, dan schrijft de output daarvan rechtstreeks in de activity – en omdat Activity.Text vooraf leeg was, staat er uiteindelijk de tool-gebruiksinformatie in plaats van een gespreksbericht. Bij intent- of taalgebaseerde triggers gebeurt dat niet, omdat die eerder afgaan en de activity dan al een opgebouwd bericht bevat. En in Teams valt het sterker op dan in Copilot Studio, omdat Teams activity-objecten direct doorgeeft terwijl Copilot Studio ze normaliseert. Dezelfde agent gedraagt zich dus zichtbaar anders per kanaal, zonder dat er iets aan zijn logica is veranderd.
Woordenlijst
▼| Begrip | Definitie |
|---|---|
| Copilot / Agent | De top-level eenheid in Studio: Persona, Instructions, Topics, Tools, Knowledge en Channels. Microsoft heeft "Copilot" grotendeels vervangen door "Agent". |
| Topic | Een dialoogblok met trigger (phrase of description) en een reeks Nodes. Vergelijkbaar met een intent-flow-unit. |
| Action / Tool | Iets wat de agent doet: Connector Action, Power Automate- of Agent-Flow, AI-prompt, REST-call, MCP-tool. |
| Connector | Power Platform-wrapper rond een API (1.400+ beschikbaar), standaard- en custom-connectors. |
| Knowledge Source | Wat de agent "weet": Files, SharePoint, websites, Dataverse, Graph, Azure AI Search, MCP Resources. |
| Slot / Entity | Gestructureerde info die de agent uit user-input extraheert (datum, e-mail, city, custom entity). |
| Variable | Data-drager met scope Topic, Global, System of Environment. |
| Generative Orchestration | Modus waarin de agent LLM-gestuurd het passende Topic/Tool/Knowledge kiest, op basis van descriptions in plaats van trigger-phrases. |
| Classic Orchestration | Modus waarin een Topic wordt gekozen via trigger-phrase-match (klassieke NLU). |
| Generative Answer | Antwoord op een user-vraag, door de agent gebouwd via search plus synthesis uit Knowledge Sources. |
| Power Automate Flow | Klassieke cloud-flow. Kan als tool in Studio worden ingebonden. Vereist een eigen PA-licentie. |
| Agent Flow | Studio-eigen flow, technisch vergelijkbaar met PA, maar credit-billed en met native HITL-actions. |
| Adaptive Card | JSON-gebaseerde gestructureerde UI-kaart met buttons, inputs en layouts. |
| Power Fx | Excel-achtige formuletaal van het Power Platform. In Studio gebruikt voor variable-logica, condition-expressies en Set Variable. |
| Channel | Endpoint waar de agent draait: Teams, M365 Copilot, Web, Custom (Direct Line), Voice, Slack, enz. |
| Direct Line | REST-API voor custom channel-integratie. |
| Environment | Power Platform-omgeving (Dev/Test/Prod). Elk heeft eigen DLP, connectors en Dataverse. |
| Solution | Container voor agents, flows en vars. Basis voor ALM-transport tussen environments. |
| DLP-policy | Data Loss Prevention-regel: categoriseert connectors in Business, Non-Business of Blocked. |
| Microsoft Entra ID | Microsofts identity provider (voorheen Azure AD). V2 = OAuth2/OIDC. |
| Microsoft Purview | Microsofts compliance- en audit-platform. Logt Studio-agent-activiteit. |
| MCP (Model Context Protocol) | Open standaard voor AI-apps voor tool- en resource-koppeling. In Studio sinds 2025 GA. |
| Deep Reasoning | Multi-step planning-vaardigheid voor complexe taken (Preview of GA, per feature). |
| HITL (Human in the Loop) | Patroon waarbij een mens op een gedefinieerd punt de agent bevestigt of corrigeert. |
| Handoff | Overdracht van de conversatie aan een menselijke agent (D365 Omnichannel of Generic Hub). |
| Computer Use / CUA | Computer Using Agent-vaardigheid (Windows-desktop en browser, alleen US). Vision plus reasoning plus virtuele muis/toetsenbord. Modellen: OpenAI CUA, Claude Sonnet 4.5/4.6, Claude Opus 4.6. |
| Cloud PC Pool | Pool dedicated Windows-machines voor Computer Use-runs (jan 2026). Schaalt background-automation. |
| A2A (Agent-to-Agent Protocol) | Open protocol voor agent-communicatie. In Copilot Studio GA sinds april 2026. |
| Child Agent / Connected Agent | Sub-agents binnen een main-agent (Child) of verbonden standalone agents (Connected). Maakt multi-agent-architecturen mogelijk. |
| Microsoft Agent 365 | Centrale governance- en control plane voor enterprise-agents tenant-breed (GA 1 mei 2026, commercieel segment). Sinds 1 juli 2026 licentievoorwaarde voor de agent-security-functies van Copilot Studio. |
| Entra Agent ID | Microsoft Entra Identity per agent. Maakt Conditional Access, audit log en API permissions-zichtbaarheid mogelijk. Sinds juli 2026 verplicht voor elke nieuwe agent, geen environment opt-out meer. Bestaande agents draaien tijdelijk verder via App Registrations. |
| Blueprint Principal | Tenantbrede parent principal waaronder alle Copilot Studio agent-identiteiten als kinderen hangen (Microsoft Copilot Studio agent identity blueprint, ID 25664c89-cea5-4ab6-b924-a54fd8a19ae0). Wordt bij de eerste agent na de juli-2026-rollout automatisch aangemaakt. |
| MCP-certificering | Microsofts keurmerkprogramma voor MCP-servers (Preview sinds juli 2026). Verified publisher levert een pakket in via het Partner Center-aanbodtype Apps and Agents for M365 and Copilot, Microsoft toetst pakket en runtimegedrag. Gecertificeerde servers verschijnen in Copilot Studio en Azure Foundry. |
| Environment-level telemetrie | Export van de agent-traces van een hele managed environment naar Azure Application Insights (Preview sinds juli 2026). Spans InvokeAgent, ExecuteTool, OutputMessages in tabel dependencies, OpenTelemetry-semantiek via gen_ai.*-keys. |
| Created File | Bestand dat de agent tijdens het gesprek zelf genereert (rapport, tabel, grafiek, code) en als download-card onder het antwoord hangt. Max 10 MB, 28 dagen bewaartermijn. Alleen op de GitHub Copilot Harness. |
| Work IQ | Semantic Index-gebaseerd knowledge retrieval van M365 Copilot. Voorwaarde voor SP-files groter dan 7 MB (tot 200 MB / 512 MB voor PDF/DOCX/PPTX). Vereist een M365 Copilot-licentie in dezelfde tenant plus SSO. |
| Tenant Graph Grounding | RAG over de tenantbrede Microsoft Graph inclusief via connectors gesyncte externe data. Kost 10 credits per bericht voor gebruikers zonder M365 Copilot. |
| Tool Groups | Samengestelde tool-sets (Outlook, SharePoint) in één stap inbindbaar (Preview nov 2025). |
| Bing Custom Search | Samengestelde web-search via Custom Configuration ID. Als Knowledge Source sinds maart 2026. |
| Fabric Data Agent / Foundry Agent / M365 Agent SDK | Externe agents die als Connected Agents kunnen worden verbonden (Preview). |
| Agent Evaluations | Test-set-gebaseerde automated QA voor agents (GA maart 2026). Custom graders, multi-turn tests, REST API (Preview april 2026) voor CI/CD. |
| Custom Graders | Zelf gedefinieerde pass/fail-criteria in evaluation test cases. |
| Copilot Agent Kit (tot juli 2026 Copilot Studio Kit) | Power CAT-tooling voor test, validation, governance en CSAT-KPI's (sinds okt 2025). Sinds juli 2026 hernoemd en uitgebreid met Agent Debugger (stap-voor-stap diagnose van opgenomen conversaties), Agent Library (catalogus van kant-en-klare agent-templates en componenten), Agent Insights Hub (centrale analytics uit App Insights en transcripten), Power Shield (approval-workflow voor connector-toegang in DLP-policies) en Agent Review Pipeline. Geen onderdeel van het product, maar community-tooling van het Power CAT-team. |
| Harness | De runtime tussen agent en model. Bepaalt wanneer het model wordt aangeroepen, welke componenten meegaan en welke tools draaien. Drie varianten: GitHub Copilot Harness (agentisch, Skills en Memory, Copilot Credits), Standard Harness (regelgebaseerd, klassieke licentiëring) en Copilot Chat Harness (kennis voor M365 Copilot Chat). |
| Foundry IQ | Kant-en-klaar geconfigureerde Knowledge Base uit Azure AI Foundry, die als tool wordt ingebonden in een agent op de GitHub Copilot Harness. Eén verbinding per agent, tunen gebeurt in Foundry. Het Preview-label is in september 2026 zonder aankondiging vervallen. |
| Skill (nieuwe ervaring) | Herbruikbare instructie-bouwsteen uit SKILL.md met YAML-frontmatter en markdown-instructies, optioneel als ZIP-pakket met scripts en templates. Niet te verwarren met de klassieke Bot Framework Skill. |
| Real-time Agent | Voice-first conversationele agent in D365 Contact Center. Sinds juli 2026 geldt het Preview-label alleen nog voor digitale messaging-kanalen. Alleen North America en Australië gehost. EU Data Boundary blokkeert de feature. |
| Agent Viewer | Deel-rol voor Evaluations: mag test sets van andere makers zien, starten, hernoemen, afbreken en verwijderen, maar de agent niet wijzigen, niet publiceren en geen deelinstellingen beheren. Niet verwarren met de rol Analytics Viewer. |
| Copilot Tuning | Finetunen van een model op bedrijfsinhoud. Tot 20-08-2026 via Agent Builder-templates in M365 Copilot, daarna gepauzeerd en verhuisd naar Copilot Studio op een skill-based architectuur (Public Preview vanaf september 2026, GA aangekondigd voor december 2026). |
| App (Copilot Studio) | Sinds september 2026 als Public Preview: een in natuurlijke taal beschreven full-stack applicatie op open standaarden, met Git-versiebeheer, deployment stages en version isolation. Draait op de GitHub Copilot Harness en wordt dus naar verbruik in Copilot Credits afgerekend. Niet te verwarren met een Power Apps canvas app. |
| Copilot Managed Runtime | Door Microsoft beheerde runtime voor apps uit Copilot Studio, Copilot Cowork en de CLI (public preview sinds 25-09-2026), voorheen "Microsoft-managed host". Biedt Entra-aanmelding, connectors, een Git-repository, automatische handhaving van policies en een app-inventaris in het Microsoft 365-beheercentrum. Het gebruik wordt per gebruiker in Copilot Credits gefactureerd. |
| Copilot Cowork | Eigen Microsoft 365-omgeving waarin Copilot taken zelfstandig uitvoert en via Skills werkt. De App-skill bouwt daar dezelfde apps als Copilot Studio, maar is gebonden aan het Frontier-programma. |
| Microsoft Frontier-programma | Early-access-programma voor de nieuwste Copilot-functies. Apart aan te vragen. Beschikbaarheid en functieomvang van de Frontier-previews kunnen op elk moment veranderen. Voorwaarde voor de App-skill in Copilot Cowork. |
| Power Apps vibe experience | AI-native app-bouwomgeving onder vibe.powerapps.com (Preview). Sinds 8 september 2026 raadt Microsoft in de documentatie in plaats daarvan Copilot Cowork en Copilot Studio aan. Was alleen in de regio's VS, Australië, Azië en India, alleen in het Engels en niet in de default environment te gebruiken. |
| MIP-label | Microsoft Information Protection sensitivity label. Confidential en Highly Confidential files leveren geen Generative Answers-inhoud. |