De 87 referansefilene bar en plain-text `| Verified: <dato>`-hale på **Last updated:**-linjen i 500B-header-vinduet — usynlig for den bold-only kontrakt-stacken (kb-headers.mjs / audit RE_VERIFIED), og claimet en verifisering judgen aldri gjorde (samme poison-klasse som de 14 bold **Verified:** MCP Spor 1 fjernet). Uhåndtert springer den også dual-Verified-fellen: R7s insertVerifiedFields ville stemplet en bold-verdi ved siden av den plain → to motstridende provenance-claims per fil. - ny driver strip-stale-verified-pipe.mjs: frosset 87-manifest (18 advisor + 45 eng + 8 gov + 16 sec), pure verdi-bevarende strip (kun ` | Verified: …`-halen; **Last updated:**-dato byte-eksakt), hard per-fil-invariant (linjeantall uendret, body byte-identisk, dato bevart), idempotent, atomicWriteSync (RX-OPS2 recovery-kontrakt). - audit-corpus-headers.mjs: ny plain-Verified-deteksjon (RE_PLAIN_VERIFIED + plainVerifiedPipe) — gjør M4-blindheten synlig så en stale plain-hale ikke kan gjenoppstå stille (non-advisor scope). - 87 filer strippet; plain Verified i vinduet 0/389; live-audit plainVerifiedPipe 0. Mekanisme: +15 tester (12 strip + 3 audit). Suite 875→890 exit 0. validate-plugin.sh 250/0. Utsatt → RX-KB1b: footer-dato-avvik + label-whitelist (annen dialekt, flag-to-human).
449 lines
21 KiB
Markdown
449 lines
21 KiB
Markdown
# M365 Copilot Plugins - Ecosystem and Distribution
|
|
|
|
**Last updated:** 2026-06-19
|
|
**Status:** GA
|
|
**Category:** Copilot Extensibility & Integration
|
|
|
|
---
|
|
|
|
## Introduksjon
|
|
|
|
Microsoft 365 Copilot plugins (også kalt "agents") opererer innenfor et omfattende økosystem som spenner over hele Microsoft 365-plattformen. Plugins er ikke bare isolerte tillegg, men integrerte komponenter som kan nå over 350 millioner daglige brukere på tvers av Teams, Outlook, Word, Excel, PowerPoint og Microsoft 365 Copilot-appen.
|
|
|
|
Det sentrale prinsippet er **"write once, run anywhere"** — utviklere bygger én gang og plugins distribueres automatisk på tvers av alle Microsoft 365 host-applikasjoner. Microsoft 365 Copilot orkestrerer integrasjon av plugins med sine eksisterende ferdigheter og kunnskapsbase, uten at utviklere må integrere direkte med individuelle Microsoft 365-apper.
|
|
|
|
Plugins pakkes, distribueres og administreres gjennom en **unified app model** som bruker samme manifest-skjema og pakkeformat som Teams-apper, Outlook Add-ins og SharePoint Framework-løsninger. Dette gir enhetlig distribusjon via Microsoft 365 admin center, Teams admin center og Microsoft Commercial Marketplace (Partner Center).
|
|
|
|
## Kjernekomponenter
|
|
|
|
### 1. App Package (Pakkeformat)
|
|
|
|
M365 Copilot plugins distribueres som en `.zip`-fil som inneholder:
|
|
|
|
| Komponent | Fil | Krav |
|
|
|-----------|-----|------|
|
|
| **App manifest** | `manifest.json` | Beskriver konfigurasjon, capabilities, ressurser og attributter |
|
|
| **Color icon** | `color.png` | 192x192 px, full-color ikon (120x120 px safe region) |
|
|
| **Outline icon** | `outline.png` | 32x32 px, hvit med transparent bakgrunn (kreves for validering) |
|
|
| **Declarative agent** | `declarativeAgent.json` | (Valgfri) Agent-definisjon med instruksjoner og actions |
|
|
| **API plugin** | `plugin.json` | (Valgfri) API-capabilities og OpenAPI-referanse |
|
|
| **Localization files** | `en.json`, `nb.json` etc. | (Valgfri) Språkfiler for internasjonalisering |
|
|
|
|
**Eksempel: App manifest (forenklet)**
|
|
|
|
```json
|
|
{
|
|
"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.28/MicrosoftTeams.schema.json",
|
|
"manifestVersion": "1.28" // Verified 2026-06: v1.28 er seneste GA (mai 2026); v1.29 dokumentert (juni 2026),
|
|
"version": "1.0.0",
|
|
"id": "00000000-0000-0000-0000-000000000000",
|
|
"developer": {
|
|
"name": "Northwind Traders",
|
|
"websiteUrl": "https://www.example.com",
|
|
"privacyUrl": "https://www.example.com/privacy",
|
|
"termsOfUseUrl": "https://www.example.com/terms"
|
|
},
|
|
"name": {
|
|
"short": "Northwind Inventory",
|
|
"full": "Northwind Inventory App"
|
|
},
|
|
"description": {
|
|
"short": "Find and update product inventory",
|
|
"full": "Northwind Inventory is the ultimate tool for managing your product inventory..."
|
|
},
|
|
"icons": {
|
|
"color": "color.png",
|
|
"outline": "outline.png"
|
|
},
|
|
"accentColor": "#3690E9",
|
|
"copilotAgents": {
|
|
"declarativeAgents": [
|
|
{
|
|
"id": "agent1",
|
|
"file": "declarativeAgent.json"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
```
|
|
|
|
### 2. Plugin-typer og tilgjengelighet
|
|
|
|
| Plugin-type | Microsoft 365-produkter | Ekstra tilgjengelighet |
|
|
|-------------|------------------------|------------------------|
|
|
| **Copilot connectors** | M365 Copilot, Power Automate, Power Apps, Azure Logic Apps | Microsoft Search, Context IQ (Outlook/web) |
|
|
| **Microsoft 365 Copilot connectors** (Graph) | M365 Copilot, Microsoft Search | M365 Copilot app (microsoft365.com) |
|
|
| **Declarative agents** | M365 Copilot, Teams, Outlook, Word, Excel, PowerPoint | M365 Copilot app |
|
|
| **Custom engine agents** | M365 Copilot, Teams | M365 Copilot app |
|
|
|
|
### 3. In-context vs. Immersive Experience
|
|
|
|
| Opplevelse | Beskrivelse | Brukerinteraksjon |
|
|
|------------|-------------|-------------------|
|
|
| **In-context** | Plugin tilgjengelig i eksisterende Copilot Chat-kontekst | Brukere `@`-mention plugin i Teams-chat eller Word-dokument |
|
|
| **Immersive** | Full plugin-opplevelse i M365 Copilot-appen | 1:1 samtale med plugin, skreddersydd til dens capabilities |
|
|
|
|
Declarative agents støtter begge moduser. Actions (API plugins) er kun tilgjengelig in-context og må legges til en declarative agent.
|
|
|
|
## Arkitekturmønstre
|
|
|
|
### Mønster 1: Declarative Agent med API Plugin (Anbefalt)
|
|
|
|
**Fordeler:**
|
|
- Low-code / no-code tilnærming
|
|
- Rask time-to-market
|
|
- Microsoft 365 Copilot håndterer orchestration
|
|
- Automatisk tilgjengelighet på tvers av M365-apper
|
|
|
|
**Ulemper:**
|
|
- Begrenset til forhåndsdefinerte capabilities
|
|
- Mindre kontroll over conversation flow
|
|
- Avhengig av Microsofts orchestration-logikk
|
|
|
|
**Bruksområder:**
|
|
- LOB-applikasjoner med REST API
|
|
- Enterprise data-integration
|
|
- Standardiserte workflows
|
|
|
|
**Arkitektur:**
|
|
|
|
```
|
|
App Manifest (manifest.json)
|
|
├─> Declarative Agent (declarativeAgent.json)
|
|
│ ├─> Instructions (system prompt)
|
|
│ ├─> Conversation starters
|
|
│ ├─> Capabilities (WebSearch, OneDrive, CodeInterpreter)
|
|
│ └─> Actions
|
|
│ └─> API Plugin (plugin.json)
|
|
│ ├─> OpenAPI definition
|
|
│ └─> Authentication config
|
|
└─> Icons (color.png, outline.png)
|
|
```
|
|
|
|
### Mønster 2: Custom Engine Agent (Bot Framework)
|
|
|
|
**Fordeler:**
|
|
- Full kontroll over conversational AI
|
|
- Egendefinert reasoning og orchestration
|
|
- Integrasjon med eksisterende bot-infrastruktur
|
|
- Avanserte dialog management-capabilities
|
|
|
|
**Ulemper:**
|
|
- Høyere utviklingskompleksitet
|
|
- Krever hosting-infrastruktur
|
|
- Mer vedlikeholdskrevende
|
|
- Må implementere egen sikkerhet og compliance
|
|
|
|
**Bruksområder:**
|
|
- Komplekse multi-turn samtaler
|
|
- Domene-spesifikk reasoning
|
|
- Legacy bot migration
|
|
- Spesialiserte LLM-workflows
|
|
|
|
**Arkitektur:**
|
|
|
|
```
|
|
App Manifest (manifest.json)
|
|
├─> Bot registration (Azure Bot Service)
|
|
│ ├─> Bot endpoint (HTTPS)
|
|
│ ├─> Messaging endpoint
|
|
│ └─> Authentication (OAuth 2.0)
|
|
├─> copilotAgents.customEngineAgents
|
|
│ └─> Bot ID reference
|
|
└─> Bot Framework SDK (C#, TypeScript, Python)
|
|
```
|
|
|
|
### Mønster 3: Graph Connector for Microsoft 365 Copilot
|
|
|
|
**Fordeler:**
|
|
- Indeksering av ekstern data i Microsoft Graph
|
|
- Automatisk grounding i Copilot
|
|
- Ingen custom code nødvendig (low-code)
|
|
- Security-trimmed search results
|
|
|
|
**Ulemper:**
|
|
- Kun data retrieval (ikke actions)
|
|
- Krever crawling-infrastruktur
|
|
- Schema mapping-overhead
|
|
- Latency i indeksering
|
|
|
|
**Bruksområder:**
|
|
- Enterprise document repositories
|
|
- Tredjepartssystemer med bulk data
|
|
- Knowledge bases og wikis
|
|
- CRM/ERP-data grounding
|
|
|
|
## Beslutningsveiledning
|
|
|
|
### Når velge hvilken plugin-type?
|
|
|
|
| Scenario | Anbefalt type | Begrunnelse |
|
|
|----------|--------------|-------------|
|
|
| Integrasjon med REST API | Declarative agent + API plugin | Rask utvikling, ingen hosting, auto-orchestration |
|
|
| Kompleks dialog management | Custom engine agent | Full kontroll over conversation flow |
|
|
| Ekstern dataindeksering | Graph connector | Automatisk grounding uten custom code |
|
|
| Teams bot migration | Custom engine agent | Gjenbruk eksisterende bot-kode |
|
|
| Low-code requirement | Declarative agent i Copilot Studio | Grafisk designer, ingen kode |
|
|
|
|
### Vanlige feil
|
|
|
|
| Feil | Konsekvens | Løsning |
|
|
|------|------------|---------|
|
|
| API plugin uten declarative agent | Plugin fungerer ikke i M365 Copilot | API plugins må wrappes i declarative agent |
|
|
| Manglende beskrivelser i manifest | Dårlig LLM skill-selection | Inkluder detaljerte `shortDescription` og `longDescription` |
|
|
| Ikon-feil (feil størrelse) | Validering feiler i Partner Center | Color: 192x192px, Outline: 32x32px |
|
|
| Hardkodet localhost i produksjon | Plugin feiler utenfor dev-miljø | Bruk miljøvariabler for URLs |
|
|
| Manglende Responsible AI-compliance | Avvist i store submission | Test med RAI validation checks før innsending |
|
|
|
|
### Røde flagg
|
|
|
|
- **Secrets i manifest:** Aldri inkluder API keys eller secrets i `manifest.json` — bruk Azure Key Vault eller miljøvariabler
|
|
- **Overly broad permissions:** Be kun om nødvendige Microsoft Graph-permissions — overly broad scope gir compliance-problemer
|
|
- **Ingen error handling:** Plugin må håndtere API-feil gracefully — Copilot viser feilmeldinger til brukere
|
|
- **Manglende localization:** Plugins uten lokalisering har dårlig user experience i internasjonale org
|
|
|
|
## Integrasjon med Microsoft-stakken
|
|
|
|
### 1. Microsoft 365 Admin Center
|
|
|
|
**Rolle:** Sentral hub for plugin-administrasjon i enterprise
|
|
|
|
| Funksjon | Beskrivelse |
|
|
|----------|-------------|
|
|
| **Integrated Apps** | Godkjenn, deploy og administrer plugins på org-nivå |
|
|
| **App governance** | Kontroller hvilke plugins er enabled per bruker/gruppe |
|
|
| **Usage analytics** | Overvåk plugin-bruk og performance |
|
|
| **Policy enforcement** | Implementer data loss prevention (DLP) policies |
|
|
|
|
**Workflow:**
|
|
1. Admin mottar plugin submission fra ISV eller LOB-utvikler
|
|
2. Review permissions og compliance status
|
|
3. Approve/reject via Integrated Apps-seksjonen
|
|
4. Assign til security groups eller organization-wide
|
|
5. Plugin blir tilgjengelig i M365 Copilot, Teams, Outlook etc.
|
|
|
|
### 2. Teams Admin Center
|
|
|
|
**Rolle:** Kontroll av Teams-spesifikke plugin-capabilities
|
|
|
|
| Funksjon | Beskrivelse |
|
|
|----------|-------------|
|
|
| **App permission policies** | Definer hvilke plugins som er tillatt per bruker-gruppe |
|
|
| **App setup policies** | Pin plugins til Teams-appen for spesifikke brukere |
|
|
| **App centric management** | GA (fra 2025) — forenklet org-wide app-management |
|
|
| **Custom app upload** | Sideload plugins til organisasjonens app catalog |
|
|
|
|
### 3. Microsoft Partner Center (Microsoft 365 and Copilot Program)
|
|
|
|
**Rolle:** Distribusjon til Microsoft Commercial Marketplace
|
|
|
|
**Sertifiseringskrav (viktige "Must fix"-krav):**
|
|
- [Microsoft Commercial Marketplace certification policies](https://learn.microsoft.com/legal/marketplace/certification-policies)
|
|
- [Microsoft 365 store validation guidelines for agents](https://learn.microsoft.com/microsoftteams/platform/concepts/deploy-and-publish/appsource/prepare/review-copilot-validation-guidelines)
|
|
- [Responsible AI validation checks](https://learn.microsoft.com/microsoft-365-copilot/extensibility/rai-validation)
|
|
- (Valgfri) [Microsoft 365 App Compliance Program certification](https://learn.microsoft.com/microsoft-365-app-certification/docs/certification)
|
|
|
|
**Tekniske minstekrav (Must fix — ISV store submission):**
|
|
|
|
| Krav | Verdi |
|
|
|------|-------|
|
|
| **Manifest-versjon** | 1.13 eller nyere (seneste GA: v1.28, mai 2026; v1.29 dokumentert juni 2026) (Verified 2026-06) |
|
|
| **Responstid** | ≤9 sek (99%), ≤5 sek (75%), ≤2 sek (50%) |
|
|
| **Tilgjengelighet** | 99.9% uptime |
|
|
| **TLS** | 1.2 eller høyere (alle serverkall) |
|
|
| **Prompt starters** | Minst 3 (declarative og custom engine agents) |
|
|
| **Navn-konsistens** | `name` i manifest.json, declarativeAgent.json og plugin.json MÅ være identiske |
|
|
| **Screenshot** | Minst 1 relatert til M365 Copilot-funksjonalitet |
|
|
| **Action disclosure** | Bruker MÅ bekrefte konsekvente operasjoner (Create/Update/Delete) |
|
|
| **MCP-servere** | `enable_dynamic_discovery` og `enable_dynamic_client_registration` MÅ settes til false |
|
|
|
|
**Distribusjonsflyt:**
|
|
1. ISV registrerer seg i Partner Center
|
|
2. Laster opp app package (.zip med manifest + icons)
|
|
3. Microsoft validerer plugin (teknisk + RAI + compliance)
|
|
4. Ved godkjenning → publisert i Microsoft AppSource
|
|
5. IT-admins enabler plugin i Microsoft 365 admin center
|
|
6. Plugin vises i App Store (M365 Copilot, Teams, Outlook etc.)
|
|
|
|
### 4. Utviklerverktøy
|
|
|
|
| Verktøy | Type | Bruksområde |
|
|
|---------|------|-------------|
|
|
| **Microsoft 365 Agents Toolkit** | Pro-code (VS Code / Visual Studio) | Declarative agents, custom engine agents, debugging |
|
|
| **Copilot Studio** | Low-code (web app / Teams app) | Grafisk designer for agents og actions |
|
|
| **Copilot Developer Mode** | Testing | Debug plugin selection og orchestration |
|
|
| **TypeSpec** | Pro-code | Type-safe API plugin definitions |
|
|
|
|
## Offentlig sektor (Norge)
|
|
|
|
### GDPR og AI Act
|
|
|
|
| Krav | Implikasjon for M365 Copilot Plugins |
|
|
|------|--------------------------------------|
|
|
| **GDPR Art. 5** (Data minimization) | Plugins må kun be om nødvendige Microsoft Graph-permissions. Overly broad scope er non-compliant. |
|
|
| **GDPR Art. 32** (Security of processing) | Plugins må implementere encryption at rest/transit. Azure Key Vault anbefales for secrets. |
|
|
| **EU AI Act** (Transparency) | Plugins klassifisert som "high-risk AI" må dokumentere decision-making-logikk. |
|
|
| **AI Act Art. 52** (Transparency obligations) | Brukere må informeres om at de samhandler med AI. M365 Copilot håndterer dette, men custom engine agents må selv implementere. |
|
|
|
|
### Schrems II og datasuverenitet
|
|
|
|
**Utfordring:** EU Court of Justice-avgjørelsen (Schrems II) krever at persondata ikke overføres til USA uten adequate safeguards.
|
|
|
|
**Løsning for norske org:**
|
|
- **EU Data Boundary:** Microsoft 365 Copilot respekterer EU Data Boundary — data processing skjer i EU-regionen hvis konfigurert
|
|
- **Azure Norway regions:** Host custom engine agents i Norway East / Norway West for full datasuverenitet
|
|
- **Graph Connectors:** Indeksert data i Graph lagres i tenant region (EU for norske org)
|
|
|
|
**Checklist:**
|
|
- [ ] Verifiser at tenant er konfigurert med EU Data Boundary
|
|
- [ ] Custom engine agents deployed i Azure Norway regions
|
|
- [ ] API plugin endpoints hosted i EU/EEA
|
|
- [ ] Data Processing Agreement (DPA) på plass med Microsoft
|
|
- [ ] Sub-processor list reviewed (tredjepartstjenester)
|
|
|
|
### Forvaltningsloven § 11 (automatiserte avgjørelser)
|
|
|
|
Hvis plugin brukes til å fatte avgjørelser som påvirker individers rettigheter:
|
|
- **§ 11a:** Varsling om automatisert saksbehandling
|
|
- **§ 11b:** Rett til manuell vurdering hvis ønskelig
|
|
- **§ 11c:** Krav til transparens i beslutningsgrunnlag
|
|
|
|
**Anbefaling:** Declarative agents bør dokumentere hvilke data-kilder og API calls som brukes i decision-making.
|
|
|
|
## Kostnad og lisensiering
|
|
|
|
### Lisenskrav for plugin-bruk
|
|
|
|
| Plugin-type | Lisenskrav (brukere) | Lisenskrav (utviklere) |
|
|
|-------------|---------------------|------------------------|
|
|
| **Declarative agents** | M365 Copilot license ELLER metered usage tenant | Microsoft 365 Copilot developer license (testing) |
|
|
| **Custom engine agents** | M365 Copilot license ELLER metered usage tenant | Microsoft 365 Copilot developer license |
|
|
| **Graph connectors** | Ingen Copilot-lisens påkrevd (men anbefalt) | Graph API permissions |
|
|
| **API plugins** | M365 Copilot license (må brukes i declarative agent) | Microsoft 365 Copilot developer license |
|
|
|
|
**Viktig:**
|
|
- Noen agent capabilities kun tilgjengelig for tenants med **metered usage** eller brukere med **M365 Copilot license**
|
|
- **Developer licenses:** Gratis for testing, men krever production licenses for deployment
|
|
|
|
### Kostnadsmodell for distribusjon
|
|
|
|
| Distribusjonsmetode | Kostnad | Bemerkninger |
|
|
|---------------------|---------|--------------|
|
|
| **Sideload (personal use)** | Gratis | Kun for testing/utvikling |
|
|
| **Organizational catalog** | Gratis | Intern distribusjon (LOB apps) |
|
|
| **Microsoft Commercial Marketplace** | **$99 USD per year** (Partner Center membership) + **Revenue share** (hvis paid app) | ISV-lisens, Microsoft tar 20% revenue share |
|
|
|
|
### Optimaliseringstips
|
|
|
|
1. **Start med organizational catalog:** Test intern før Commercial Marketplace submission
|
|
2. **Bruk metered usage tenants for testing:** Unngå å kjøpe Copilot-lisenser for alle testbrukere
|
|
3. **Leverage Graph connector for read-only scenarios:** Billigere enn custom engine agents (ingen hosting cost)
|
|
4. **Microsoft 365 Agents Toolkit over Copilot Studio:** Toolkit er gratis, Copilot Studio krever Power Platform-lisens for produksjon
|
|
|
|
## For arkitekten (Cosmo)
|
|
|
|
### Spørsmål å stille kunden
|
|
|
|
1. **Hvem er målgruppen for plugin?**
|
|
- Intern (LOB) eller ekstern (ISV)?
|
|
- Antall brukere? (påvirker distribusjonsmetode)
|
|
|
|
2. **Hvilken data skal plugin tilgang til?**
|
|
- Ekstern API (REST) → Declarative agent + API plugin
|
|
- Microsoft Graph data → Graph connector
|
|
- Egendefinert conversational logic → Custom engine agent
|
|
|
|
3. **Hva er customer's modenhetsnivå på AI/Copilot?**
|
|
- **Early adopter:** Start med declarative agent (rask POC)
|
|
- **Mature org:** Vurder custom engine agent for kontroll
|
|
|
|
4. **Finnes det compliance-krav?**
|
|
- GDPR, AI Act, Forvaltningsloven?
|
|
- Data residency requirements (Norge/EU)?
|
|
|
|
5. **Hva er distribusjonskanalen?**
|
|
- Intern → Organizational catalog (gratis)
|
|
- Ekstern → Microsoft Commercial Marketplace (Partner Center)
|
|
|
|
6. **Skal plugin utføre actions eller kun retrieval?**
|
|
- Actions → API plugin (mutating operations)
|
|
- Retrieval → Graph connector (read-only, indeksert data)
|
|
|
|
7. **Finnes det eksisterende bot-infrastruktur?**
|
|
- Ja → Vurder custom engine agent (gjenbruk)
|
|
- Nei → Start med declarative agent
|
|
|
|
8. **Hva er tidslinje og budsjett?**
|
|
- Kort tidslinje + lite budsjett → Declarative agent (low-code)
|
|
- Lengre tidslinje + høyere budsjett → Custom engine agent (full kontroll)
|
|
|
|
### Fallgruver å unngå
|
|
|
|
1. **Overly complex manifest:**
|
|
- Hold manifest minimal — ikke inkluder unødvendige capabilities
|
|
- LLM-orchestrator blir forvirret av for mange valg
|
|
|
|
2. **Manglende plugin description quality:**
|
|
- Dårlige beskrivelser → plugin velges sjelden av orchestrator
|
|
- Test med Copilot Developer Mode for å se selection rate
|
|
|
|
3. **Ignoring Responsible AI validation:**
|
|
- RAI checks kjører automatisk ved sideload/publish
|
|
- Plugins med problematic content blir avvist
|
|
|
|
4. **Sideloading uten plan for production distribution:**
|
|
- Sideload er kun for testing — ikke production-ready
|
|
- Plan for organizational catalog eller Marketplace early
|
|
|
|
5. **Hard dependencies on preview features:**
|
|
- Preview manifest versions (`devPreview`) ikke tillatt i production
|
|
- Bruk GA manifest versioner (`1.18` eller senere)
|
|
|
|
6. **Neglisjering av icon design:**
|
|
- Ikoner er første inntrykk for brukere i App Store
|
|
- Følg [design guidelines](https://learn.microsoft.com/microsoft-365-copilot/extensibility/agent-icon-management)
|
|
|
|
7. **Manglende error handling i API plugins:**
|
|
- API failures vises direkte til brukere
|
|
- Implementer graceful degradation
|
|
|
|
8. **Ingen testing med real users:**
|
|
- LLM orchestration er non-deterministic
|
|
- Test med ulike prompt-formuleringer og user personas
|
|
|
|
### Anbefalinger per modenhetsnivå
|
|
|
|
| Modenhetsnivå | Anbefaling | Reasoning |
|
|
|---------------|------------|-----------|
|
|
| **Pilot (PoC)** | Declarative agent i Copilot Studio | Raskeste time-to-value, ingen kode, grafisk designer |
|
|
| **Production (LOB)** | Declarative agent med API plugin (M365 Agents Toolkit) | Balance mellom kontroll og utviklingshastighet |
|
|
| **Advanced (Enterprise)** | Custom engine agent (Bot Framework) | Full kontroll, custom reasoning, egendefinert orchestration |
|
|
| **ISV (Marketplace)** | Declarative agent + Commercial Marketplace submission | Skalerbart, Responsible AI-compliant, global distribusjon |
|
|
|
|
**Best practice for alle nivåer:**
|
|
- Start med sideload (testing)
|
|
- Promoter til organizational catalog (intern pilot)
|
|
- Vurder Commercial Marketplace (ekstern distribusjon) hvis relevant
|
|
|
|
## Kilder og verifisering
|
|
|
|
| Seksjon | Kilde | Konfidensnivå |
|
|
|---------|-------|---------------|
|
|
| **Ecosystem Overview** | [Copilot extensibility in the Microsoft 365 ecosystem](https://learn.microsoft.com/microsoft-365-copilot/extensibility/ecosystem) | ✅ Documented (MCP) |
|
|
| **App Package Structure** | [Agents are apps for Microsoft 365](https://learn.microsoft.com/microsoft-365-copilot/extensibility/agents-are-apps) | ✅ Documented (MCP) |
|
|
| **Distribution Methods** | [Publish agents for Microsoft 365 Copilot](https://learn.microsoft.com/microsoft-365-copilot/extensibility/publish) | ✅ Documented (MCP) |
|
|
| **Manifest Schema** | [Microsoft 365 app manifest schema reference](https://learn.microsoft.com/microsoft-365/extensibility/schema) — seneste GA: v1.28 (mai 2026); v1.29 dokumentert (juni 2026) | ✅ Documented (MCP 2026-06) |
|
|
| **Plugin Types** | [Adopt, extend and build Copilot experiences](https://learn.microsoft.com/copilot/roadmap/overview) | ✅ Documented (MCP) |
|
|
| **Teams Admin Center** | [Manage apps in Teams admin center](https://learn.microsoft.com/microsoftteams/manage-apps) | ✅ Documented (MCP) |
|
|
| **Partner Center** | [Microsoft 365 and Copilot program](https://learn.microsoft.com/partner-center/marketplace/why-publish) | ✅ Documented (MCP) |
|
|
| **GDPR Compliance** | EU GDPR Articles 5, 32 | ⚠️ Baseline (legal text) |
|
|
| **Schrems II** | CJEU Case C-311/18 | ⚠️ Baseline (legal text) |
|
|
| **AI Act** | EU AI Act Articles 52, Annex III | ⚠️ Baseline (legal text) |
|
|
| **Forvaltningsloven** | Forvaltningsloven §§ 11a-11c (Norge) | ⚠️ Baseline (legal text) |
|
|
| **Licensing** | [Microsoft 365 Copilot developer licenses](https://learn.microsoft.com/microsoft-365-copilot/extensibility/prerequisites) | ✅ Documented (MCP) |
|
|
|
|
**Konfidensnivå-definisjon:**
|
|
- ✅ **Documented:** Hentet direkte fra Microsoft Learn via MCP (oppdatert per januar 2026)
|
|
- ⚠️ **Baseline:** Basert på modellkunnskap (legal/regulatory tekster, ikke Microsoft-dokumentasjon)
|
|
|
|
**Siste oppdatering av Microsoft-dokumentasjon:** Juni 2026 (reflektert i MCP-kall 2026-06-19) — Manifest v1.28 seneste GA, v1.29 dokumentert
|