@raishin/vanguard-frontier-agentic 2.10.0 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +47 -1
- package/.cursor-plugin/plugin.json +47 -1
- package/.github/plugin/marketplace.json +1 -1
- package/README.md +35 -14
- package/agents/databricks/README.md +84 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/AGENT.md +54 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/copilot.agent.md +51 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/cursor.agent.md +40 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/gemini.agent.md +39 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/databricks/databricks-lakehouse-engineering-at-azure-agent/metadata.json +40 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/AGENT.md +72 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/PERMISSIONS.md +53 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/PREFLIGHT.md +76 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/ROLLBACK.md +42 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/claude-code.agent.md +61 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/copilot.agent.md +60 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/cursor.agent.md +61 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/gemini.agent.md +61 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/harnesses/kiro-ide.agent.md +61 -0
- package/agents/databricks/databricks-live-unity-catalog-grant-guard-at-azure-agent/metadata.json +61 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/AGENT.md +54 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/copilot.agent.md +51 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/cursor.agent.md +40 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/gemini.agent.md +39 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/databricks/databricks-unity-catalog-governance-at-azure-agent/metadata.json +40 -0
- package/agents/microsoft/copilot-governance-maestro-agent/AGENT.md +55 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/codex.toml +34 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/copilot-governance-maestro-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/copilot-governance-maestro-agent/metadata.json +39 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/AGENT.md +63 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/copilot-studio-agent-governance-alm-agent/metadata.json +42 -0
- package/agents/microsoft/d365-commerce-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-commerce-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-commerce-agent/metadata.json +39 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-customer-insights-journeys-agent/metadata.json +41 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-customer-service-contact-center-agent/metadata.json +39 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-data-migration-cutover-agent/metadata.json +41 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-field-service-to-cash-agent/metadata.json +39 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-finance-close-to-report-agent/metadata.json +39 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/d365-fno-developer-extension-agent/metadata.json +40 -0
- package/agents/microsoft/d365-integration-dual-write-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-integration-dual-write-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-integration-dual-write-agent/metadata.json +40 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/AGENT.md +78 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/PERMISSIONS.md +67 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/PREFLIGHT.md +81 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/ROLLBACK.md +76 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/claude-code.agent.md +59 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/copilot.agent.md +68 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/cursor.agent.md +59 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/gemini.agent.md +59 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/harnesses/kiro-ide.agent.md +59 -0
- package/agents/microsoft/d365-live-record-field-update-guard-agent/metadata.json +62 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/AGENT.md +61 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/PERMISSIONS.md +45 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/PREFLIGHT.md +44 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/ROLLBACK.md +39 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/claude-code.agent.md +60 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/copilot.agent.md +69 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/cursor.agent.md +60 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/gemini.agent.md +60 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/harnesses/kiro-ide.agent.md +60 -0
- package/agents/microsoft/d365-live-security-role-guard-agent/metadata.json +60 -0
- package/agents/microsoft/d365-maestro-agent/AGENT.md +56 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/codex.toml +35 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-maestro-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/d365-maestro-agent/metadata.json +38 -0
- package/agents/microsoft/d365-project-operations-agent/AGENT.md +63 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-project-operations-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-project-operations-agent/metadata.json +39 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-sales-revenue-operations-agent/metadata.json +39 -0
- package/agents/microsoft/d365-security-sod-governance-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-security-sod-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-security-sod-governance-agent/metadata.json +39 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-success-by-design-governance-agent/metadata.json +41 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/AGENT.md +64 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/d365-supply-chain-plan-to-produce-agent/metadata.json +39 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/AGENT.md +63 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/fabric-analytics-engineering-agent/metadata.json +39 -0
- package/agents/microsoft/fabric-data-engineering-agent/AGENT.md +63 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/fabric-data-engineering-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/fabric-data-engineering-agent/metadata.json +39 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/AGENT.md +63 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/fabric-power-bi-business-insights-governance-agent/metadata.json +39 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-backup-bcdr-data-resilience-agent/metadata.json +39 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/AGENT.md +64 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-copilot-readiness-governance-agent/metadata.json +39 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-defender-xdr-security-operations-agent/metadata.json +41 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-exchange-sharepoint-information-governance-agent/metadata.json +41 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/AGENT.md +64 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-identity-zero-trust-agent/metadata.json +39 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-intune-endpoint-management-agent/metadata.json +41 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-licensing-ea-optimization-agent/metadata.json +39 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/AGENT.md +60 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/PERMISSIONS.md +45 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/PREFLIGHT.md +39 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/ROLLBACK.md +38 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/claude-code.agent.md +59 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/copilot.agent.md +68 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/cursor.agent.md +59 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/gemini.agent.md +59 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/harnesses/kiro-ide.agent.md +59 -0
- package/agents/microsoft/m365-live-identity-posture-guard-agent/metadata.json +66 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/AGENT.md +79 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/PERMISSIONS.md +68 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/PREFLIGHT.md +76 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/ROLLBACK.md +86 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/claude-code.agent.md +60 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/copilot.agent.md +69 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/cursor.agent.md +60 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/gemini.agent.md +60 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/harnesses/kiro-ide.agent.md +60 -0
- package/agents/microsoft/m365-live-sensitivity-label-apply-guard-agent/metadata.json +67 -0
- package/agents/microsoft/m365-maestro-agent/AGENT.md +55 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/codex.toml +34 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-maestro-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-maestro-agent/metadata.json +38 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-purview-data-security-compliance-agent/metadata.json +41 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-teams-collaboration-governance-agent/metadata.json +40 -0
- package/agents/microsoft/m365-tenant-governance-agent/AGENT.md +63 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/m365-tenant-governance-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/m365-tenant-governance-agent/metadata.json +39 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/AGENT.md +64 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/microsoft-business-impact-value-realization-agent/metadata.json +39 -0
- package/agents/microsoft/microsoft-maestro-agent/AGENT.md +56 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/codex.toml +35 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/microsoft-maestro-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/microsoft-maestro-agent/metadata.json +38 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/AGENT.md +64 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/power-automate-automation-risk-review-agent/metadata.json +39 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/AGENT.md +64 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/claude-code.agent.md +39 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/copilot.agent.md +52 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/cursor.agent.md +41 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/gemini.agent.md +40 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/harnesses/kiro-ide.agent.md +39 -0
- package/agents/microsoft/power-platform-alm-pipelines-agent/metadata.json +41 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/AGENT.md +64 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/codex.toml +14 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/power-platform-governance-dataverse-security-agent/metadata.json +40 -0
- package/agents/microsoft/power-platform-maestro-agent/AGENT.md +55 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/codex.toml +34 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/copilot.agent.md +51 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/cursor.agent.md +40 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/gemini.agent.md +39 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/microsoft/power-platform-maestro-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/microsoft/power-platform-maestro-agent/metadata.json +39 -0
- package/agents/snowflake/README.md +87 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/AGENT.md +55 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/copilot.agent.md +51 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/cursor.agent.md +40 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/gemini.agent.md +39 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/snowflake/snowflake-data-platform-engineering-at-azure-agent/metadata.json +39 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/AGENT.md +72 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/PERMISSIONS.md +54 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/PREFLIGHT.md +82 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/ROLLBACK.md +45 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/claude-code.agent.md +61 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/copilot.agent.md +60 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/cursor.agent.md +61 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/gemini.agent.md +61 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/harnesses/kiro-ide.agent.md +61 -0
- package/agents/snowflake/snowflake-live-rbac-grant-guard-at-azure-agent/metadata.json +60 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/AGENT.md +55 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/claude-code.agent.md +38 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/codex.toml +14 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/copilot.agent.md +51 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/cursor.agent.md +40 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/gemini.agent.md +39 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/kiro-cli.agent.json +5 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/harnesses/kiro-ide.agent.md +38 -0
- package/agents/snowflake/snowflake-rbac-access-governance-at-azure-agent/metadata.json +39 -0
- package/catalog/agents.json +3829 -2566
- package/catalog/asset-integrity.json +9395 -6775
- package/catalog/install-roles.json +179 -7
- package/catalog/skill-manifest.json +2004 -227
- package/catalog/skills.json +3613 -1900
- package/package.json +2 -2
- package/plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json +1 -1
- package/powers/README.md +5 -2
- package/powers/vanguard-databricks/POWER.md +42 -0
- package/powers/vanguard-microsoft/POWER.md +45 -0
- package/powers/vanguard-snowflake/POWER.md +42 -0
- package/schemas/agent.schema.json +4 -1
- package/schemas/mcp-reference.schema.json +4 -1
- package/schemas/rule.schema.json +4 -1
- package/schemas/skill.schema.json +4 -1
- package/scripts/generate-docs-data.mjs +2 -0
- package/scripts/generate-kiro-powers.mjs +36 -0
- package/scripts/release-prepare.mjs +40 -0
- package/skills/cross-functional/audit-evidence-mapping-protocol/SKILL.md +92 -0
- package/skills/cross-functional/audit-evidence-mapping-protocol/metadata.json +20 -0
- package/skills/cross-functional/audit-evidence-mapping-protocol/references/workflow-and-output.md +194 -0
- package/skills/cross-functional/case-to-resolution-protocol/SKILL.md +120 -0
- package/skills/cross-functional/case-to-resolution-protocol/metadata.json +21 -0
- package/skills/cross-functional/case-to-resolution-protocol/references/workflow-and-output.md +197 -0
- package/skills/cross-functional/change-request-to-go-live-protocol/SKILL.md +101 -0
- package/skills/cross-functional/change-request-to-go-live-protocol/metadata.json +21 -0
- package/skills/cross-functional/close-to-report-protocol/SKILL.md +99 -0
- package/skills/cross-functional/close-to-report-protocol/metadata.json +19 -0
- package/skills/cross-functional/close-to-report-protocol/references/workflow-and-output.md +185 -0
- package/skills/cross-functional/copilot-data-readiness-protocol/SKILL.md +142 -0
- package/skills/cross-functional/copilot-data-readiness-protocol/metadata.json +21 -0
- package/skills/cross-functional/copilot-data-readiness-protocol/references/workflow-and-output.md +264 -0
- package/skills/cross-functional/data-classification-to-dlp-protocol/SKILL.md +95 -0
- package/skills/cross-functional/data-classification-to-dlp-protocol/metadata.json +20 -0
- package/skills/cross-functional/data-classification-to-dlp-protocol/references/workflow-and-output.md +211 -0
- package/skills/cross-functional/environment-to-production-release-protocol/SKILL.md +95 -0
- package/skills/cross-functional/environment-to-production-release-protocol/metadata.json +20 -0
- package/skills/cross-functional/environment-to-production-release-protocol/references/workflow-and-output.md +214 -0
- package/skills/cross-functional/erp-crm-cutover-protocol/SKILL.md +142 -0
- package/skills/cross-functional/erp-crm-cutover-protocol/metadata.json +21 -0
- package/skills/cross-functional/erp-crm-cutover-protocol/references/workflow-and-output.md +270 -0
- package/skills/cross-functional/field-service-to-cash-protocol/SKILL.md +99 -0
- package/skills/cross-functional/field-service-to-cash-protocol/metadata.json +19 -0
- package/skills/cross-functional/field-service-to-cash-protocol/references/workflow-and-output.md +206 -0
- package/skills/cross-functional/identity-to-data-access-protocol/SKILL.md +132 -0
- package/skills/cross-functional/identity-to-data-access-protocol/metadata.json +21 -0
- package/skills/cross-functional/identity-to-data-access-protocol/references/workflow-and-output.md +224 -0
- package/skills/cross-functional/incident-to-remediation-protocol/SKILL.md +94 -0
- package/skills/cross-functional/incident-to-remediation-protocol/metadata.json +20 -0
- package/skills/cross-functional/incident-to-remediation-protocol/references/workflow-and-output.md +200 -0
- package/skills/cross-functional/lead-to-cash-protocol/SKILL.md +96 -0
- package/skills/cross-functional/lead-to-cash-protocol/metadata.json +19 -0
- package/skills/cross-functional/lead-to-cash-protocol/references/workflow-and-output.md +166 -0
- package/skills/cross-functional/license-to-value-protocol/SKILL.md +142 -0
- package/skills/cross-functional/license-to-value-protocol/metadata.json +21 -0
- package/skills/cross-functional/license-to-value-protocol/references/workflow-and-output.md +283 -0
- package/skills/cross-functional/order-to-cash-protocol/SKILL.md +95 -0
- package/skills/cross-functional/order-to-cash-protocol/metadata.json +19 -0
- package/skills/cross-functional/order-to-cash-protocol/references/workflow-and-output.md +140 -0
- package/skills/cross-functional/procure-to-pay-protocol/SKILL.md +98 -0
- package/skills/cross-functional/procure-to-pay-protocol/metadata.json +19 -0
- package/skills/cross-functional/procure-to-pay-protocol/references/workflow-and-output.md +155 -0
- package/skills/databricks/databricks-lakehouse-engineering-at-azure/SKILL.md +56 -0
- package/skills/databricks/databricks-lakehouse-engineering-at-azure/metadata.json +28 -0
- package/skills/databricks/databricks-lakehouse-engineering-at-azure/references/official-sources.md +40 -0
- package/skills/databricks/databricks-lakehouse-engineering-at-azure/references/safety-checklist.md +26 -0
- package/skills/databricks/databricks-lakehouse-engineering-at-azure/references/workflow-and-output.md +64 -0
- package/skills/databricks/databricks-live-unity-catalog-grant-guard-at-azure/SKILL.md +144 -0
- package/skills/databricks/databricks-live-unity-catalog-grant-guard-at-azure/metadata.json +22 -0
- package/skills/databricks/databricks-unity-catalog-governance-at-azure/SKILL.md +56 -0
- package/skills/databricks/databricks-unity-catalog-governance-at-azure/metadata.json +28 -0
- package/skills/databricks/databricks-unity-catalog-governance-at-azure/references/official-sources.md +41 -0
- package/skills/databricks/databricks-unity-catalog-governance-at-azure/references/safety-checklist.md +26 -0
- package/skills/databricks/databricks-unity-catalog-governance-at-azure/references/workflow-and-output.md +64 -0
- package/skills/microsoft/copilot-governance-maestro/SKILL.md +65 -0
- package/skills/microsoft/copilot-governance-maestro/metadata.json +30 -0
- package/skills/microsoft/copilot-governance-maestro/references/official-sources.md +32 -0
- package/skills/microsoft/copilot-governance-maestro/references/routing-quality-and-safety.md +62 -0
- package/skills/microsoft/copilot-governance-maestro/references/safety-checklist.md +42 -0
- package/skills/microsoft/copilot-governance-maestro/references/workflow-and-output.md +78 -0
- package/skills/microsoft/copilot-studio-agent-governance-alm/SKILL.md +65 -0
- package/skills/microsoft/copilot-studio-agent-governance-alm/metadata.json +32 -0
- package/skills/microsoft/copilot-studio-agent-governance-alm/references/official-sources.md +21 -0
- package/skills/microsoft/copilot-studio-agent-governance-alm/references/safety-checklist.md +41 -0
- package/skills/microsoft/copilot-studio-agent-governance-alm/references/workflow-and-output.md +68 -0
- package/skills/microsoft/d365-commerce/SKILL.md +63 -0
- package/skills/microsoft/d365-commerce/metadata.json +30 -0
- package/skills/microsoft/d365-commerce/references/official-sources.md +25 -0
- package/skills/microsoft/d365-commerce/references/safety-checklist.md +35 -0
- package/skills/microsoft/d365-commerce/references/workflow-and-output.md +67 -0
- package/skills/microsoft/d365-customer-insights-journeys/SKILL.md +57 -0
- package/skills/microsoft/d365-customer-insights-journeys/metadata.json +32 -0
- package/skills/microsoft/d365-customer-insights-journeys/references/official-sources.md +46 -0
- package/skills/microsoft/d365-customer-insights-journeys/references/safety-checklist.md +41 -0
- package/skills/microsoft/d365-customer-insights-journeys/references/workflow-and-output.md +74 -0
- package/skills/microsoft/d365-customer-service-contact-center/SKILL.md +62 -0
- package/skills/microsoft/d365-customer-service-contact-center/metadata.json +30 -0
- package/skills/microsoft/d365-customer-service-contact-center/references/official-sources.md +25 -0
- package/skills/microsoft/d365-customer-service-contact-center/references/safety-checklist.md +34 -0
- package/skills/microsoft/d365-customer-service-contact-center/references/workflow-and-output.md +66 -0
- package/skills/microsoft/d365-data-migration-cutover/SKILL.md +58 -0
- package/skills/microsoft/d365-data-migration-cutover/metadata.json +32 -0
- package/skills/microsoft/d365-data-migration-cutover/references/data-migration-cutover-guide.md +76 -0
- package/skills/microsoft/d365-data-migration-cutover/references/official-sources.md +51 -0
- package/skills/microsoft/d365-data-migration-cutover/references/safety-checklist.md +40 -0
- package/skills/microsoft/d365-data-migration-cutover/references/workflow-and-output.md +72 -0
- package/skills/microsoft/d365-field-service-to-cash/SKILL.md +63 -0
- package/skills/microsoft/d365-field-service-to-cash/metadata.json +30 -0
- package/skills/microsoft/d365-field-service-to-cash/references/official-sources.md +21 -0
- package/skills/microsoft/d365-field-service-to-cash/references/safety-checklist.md +35 -0
- package/skills/microsoft/d365-field-service-to-cash/references/workflow-and-output.md +66 -0
- package/skills/microsoft/d365-finance-close-to-report/SKILL.md +59 -0
- package/skills/microsoft/d365-finance-close-to-report/metadata.json +30 -0
- package/skills/microsoft/d365-finance-close-to-report/references/financial-close-controls-guide.md +79 -0
- package/skills/microsoft/d365-finance-close-to-report/references/official-sources.md +45 -0
- package/skills/microsoft/d365-finance-close-to-report/references/safety-checklist.md +39 -0
- package/skills/microsoft/d365-finance-close-to-report/references/workflow-and-output.md +71 -0
- package/skills/microsoft/d365-fno-developer-extension/SKILL.md +58 -0
- package/skills/microsoft/d365-fno-developer-extension/metadata.json +31 -0
- package/skills/microsoft/d365-fno-developer-extension/references/official-sources.md +44 -0
- package/skills/microsoft/d365-fno-developer-extension/references/safety-checklist.md +42 -0
- package/skills/microsoft/d365-fno-developer-extension/references/workflow-and-output.md +74 -0
- package/skills/microsoft/d365-integration-dual-write/SKILL.md +58 -0
- package/skills/microsoft/d365-integration-dual-write/metadata.json +31 -0
- package/skills/microsoft/d365-integration-dual-write/references/official-sources.md +48 -0
- package/skills/microsoft/d365-integration-dual-write/references/safety-checklist.md +41 -0
- package/skills/microsoft/d365-integration-dual-write/references/workflow-and-output.md +75 -0
- package/skills/microsoft/d365-live-record-field-update-guard/SKILL.md +170 -0
- package/skills/microsoft/d365-live-record-field-update-guard/metadata.json +22 -0
- package/skills/microsoft/d365-live-security-role-guard/SKILL.md +100 -0
- package/skills/microsoft/d365-live-security-role-guard/metadata.json +22 -0
- package/skills/microsoft/d365-maestro/SKILL.md +52 -0
- package/skills/microsoft/d365-maestro/metadata.json +30 -0
- package/skills/microsoft/d365-maestro/references/official-sources.md +29 -0
- package/skills/microsoft/d365-maestro/references/routing-quality-and-safety.md +73 -0
- package/skills/microsoft/d365-maestro/references/safety-checklist.md +65 -0
- package/skills/microsoft/d365-maestro/references/workflow-and-output.md +95 -0
- package/skills/microsoft/d365-project-operations/SKILL.md +63 -0
- package/skills/microsoft/d365-project-operations/metadata.json +30 -0
- package/skills/microsoft/d365-project-operations/references/official-sources.md +25 -0
- package/skills/microsoft/d365-project-operations/references/safety-checklist.md +35 -0
- package/skills/microsoft/d365-project-operations/references/workflow-and-output.md +67 -0
- package/skills/microsoft/d365-sales-revenue-operations/SKILL.md +59 -0
- package/skills/microsoft/d365-sales-revenue-operations/metadata.json +30 -0
- package/skills/microsoft/d365-sales-revenue-operations/references/official-sources.md +47 -0
- package/skills/microsoft/d365-sales-revenue-operations/references/revenue-operations-domain-guide.md +71 -0
- package/skills/microsoft/d365-sales-revenue-operations/references/safety-checklist.md +37 -0
- package/skills/microsoft/d365-sales-revenue-operations/references/workflow-and-output.md +67 -0
- package/skills/microsoft/d365-security-sod-governance/SKILL.md +57 -0
- package/skills/microsoft/d365-security-sod-governance/metadata.json +30 -0
- package/skills/microsoft/d365-security-sod-governance/references/official-sources.md +43 -0
- package/skills/microsoft/d365-security-sod-governance/references/safety-checklist.md +36 -0
- package/skills/microsoft/d365-security-sod-governance/references/sod-role-design-guide.md +72 -0
- package/skills/microsoft/d365-security-sod-governance/references/workflow-and-output.md +67 -0
- package/skills/microsoft/d365-success-by-design-governance/SKILL.md +58 -0
- package/skills/microsoft/d365-success-by-design-governance/metadata.json +32 -0
- package/skills/microsoft/d365-success-by-design-governance/references/implementation-governance-guide.md +77 -0
- package/skills/microsoft/d365-success-by-design-governance/references/official-sources.md +51 -0
- package/skills/microsoft/d365-success-by-design-governance/references/safety-checklist.md +38 -0
- package/skills/microsoft/d365-success-by-design-governance/references/workflow-and-output.md +70 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/SKILL.md +59 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/metadata.json +30 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/references/official-sources.md +46 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/references/planning-and-production-guide.md +80 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/references/safety-checklist.md +38 -0
- package/skills/microsoft/d365-supply-chain-plan-to-produce/references/workflow-and-output.md +71 -0
- package/skills/microsoft/fabric-analytics-engineering/SKILL.md +60 -0
- package/skills/microsoft/fabric-analytics-engineering/metadata.json +30 -0
- package/skills/microsoft/fabric-analytics-engineering/references/official-sources.md +17 -0
- package/skills/microsoft/fabric-analytics-engineering/references/safety-checklist.md +35 -0
- package/skills/microsoft/fabric-analytics-engineering/references/workflow-and-output.md +65 -0
- package/skills/microsoft/fabric-data-engineering/SKILL.md +63 -0
- package/skills/microsoft/fabric-data-engineering/metadata.json +30 -0
- package/skills/microsoft/fabric-data-engineering/references/official-sources.md +17 -0
- package/skills/microsoft/fabric-data-engineering/references/safety-checklist.md +37 -0
- package/skills/microsoft/fabric-data-engineering/references/workflow-and-output.md +67 -0
- package/skills/microsoft/fabric-power-bi-business-insights-governance/SKILL.md +61 -0
- package/skills/microsoft/fabric-power-bi-business-insights-governance/metadata.json +30 -0
- package/skills/microsoft/fabric-power-bi-business-insights-governance/references/official-sources.md +17 -0
- package/skills/microsoft/fabric-power-bi-business-insights-governance/references/safety-checklist.md +35 -0
- package/skills/microsoft/fabric-power-bi-business-insights-governance/references/workflow-and-output.md +65 -0
- package/skills/microsoft/m365-backup-bcdr-data-resilience/SKILL.md +57 -0
- package/skills/microsoft/m365-backup-bcdr-data-resilience/metadata.json +30 -0
- package/skills/microsoft/m365-backup-bcdr-data-resilience/references/official-sources.md +66 -0
- package/skills/microsoft/m365-backup-bcdr-data-resilience/references/safety-checklist.md +38 -0
- package/skills/microsoft/m365-backup-bcdr-data-resilience/references/workflow-and-output.md +66 -0
- package/skills/microsoft/m365-copilot-readiness-governance/SKILL.md +58 -0
- package/skills/microsoft/m365-copilot-readiness-governance/metadata.json +30 -0
- package/skills/microsoft/m365-copilot-readiness-governance/references/copilot-governance-domain.md +66 -0
- package/skills/microsoft/m365-copilot-readiness-governance/references/official-sources.md +59 -0
- package/skills/microsoft/m365-copilot-readiness-governance/references/safety-checklist.md +38 -0
- package/skills/microsoft/m365-copilot-readiness-governance/references/workflow-and-output.md +67 -0
- package/skills/microsoft/m365-defender-xdr-security-operations/SKILL.md +62 -0
- package/skills/microsoft/m365-defender-xdr-security-operations/metadata.json +32 -0
- package/skills/microsoft/m365-defender-xdr-security-operations/references/official-sources.md +79 -0
- package/skills/microsoft/m365-defender-xdr-security-operations/references/safety-checklist.md +44 -0
- package/skills/microsoft/m365-defender-xdr-security-operations/references/workflow-and-output.md +66 -0
- package/skills/microsoft/m365-exchange-sharepoint-information-governance/SKILL.md +57 -0
- package/skills/microsoft/m365-exchange-sharepoint-information-governance/metadata.json +32 -0
- package/skills/microsoft/m365-exchange-sharepoint-information-governance/references/official-sources.md +64 -0
- package/skills/microsoft/m365-exchange-sharepoint-information-governance/references/safety-checklist.md +40 -0
- package/skills/microsoft/m365-exchange-sharepoint-information-governance/references/workflow-and-output.md +66 -0
- package/skills/microsoft/m365-identity-zero-trust/SKILL.md +58 -0
- package/skills/microsoft/m365-identity-zero-trust/metadata.json +30 -0
- package/skills/microsoft/m365-identity-zero-trust/references/identity-zero-trust-domain.md +67 -0
- package/skills/microsoft/m365-identity-zero-trust/references/official-sources.md +64 -0
- package/skills/microsoft/m365-identity-zero-trust/references/safety-checklist.md +38 -0
- package/skills/microsoft/m365-identity-zero-trust/references/workflow-and-output.md +65 -0
- package/skills/microsoft/m365-intune-endpoint-management/SKILL.md +59 -0
- package/skills/microsoft/m365-intune-endpoint-management/metadata.json +32 -0
- package/skills/microsoft/m365-intune-endpoint-management/references/official-sources.md +66 -0
- package/skills/microsoft/m365-intune-endpoint-management/references/safety-checklist.md +39 -0
- package/skills/microsoft/m365-intune-endpoint-management/references/workflow-and-output.md +67 -0
- package/skills/microsoft/m365-licensing-ea-optimization/SKILL.md +57 -0
- package/skills/microsoft/m365-licensing-ea-optimization/metadata.json +30 -0
- package/skills/microsoft/m365-licensing-ea-optimization/references/official-sources.md +67 -0
- package/skills/microsoft/m365-licensing-ea-optimization/references/safety-checklist.md +39 -0
- package/skills/microsoft/m365-licensing-ea-optimization/references/workflow-and-output.md +68 -0
- package/skills/microsoft/m365-live-identity-posture-guard/SKILL.md +101 -0
- package/skills/microsoft/m365-live-identity-posture-guard/metadata.json +22 -0
- package/skills/microsoft/m365-live-sensitivity-label-apply-guard/SKILL.md +181 -0
- package/skills/microsoft/m365-live-sensitivity-label-apply-guard/metadata.json +22 -0
- package/skills/microsoft/m365-maestro/SKILL.md +51 -0
- package/skills/microsoft/m365-maestro/metadata.json +30 -0
- package/skills/microsoft/m365-maestro/references/official-sources.md +28 -0
- package/skills/microsoft/m365-maestro/references/routing-quality-and-safety.md +66 -0
- package/skills/microsoft/m365-maestro/references/safety-checklist.md +43 -0
- package/skills/microsoft/m365-maestro/references/workflow-and-output.md +78 -0
- package/skills/microsoft/m365-purview-data-security-compliance/SKILL.md +57 -0
- package/skills/microsoft/m365-purview-data-security-compliance/metadata.json +32 -0
- package/skills/microsoft/m365-purview-data-security-compliance/references/official-sources.md +81 -0
- package/skills/microsoft/m365-purview-data-security-compliance/references/safety-checklist.md +42 -0
- package/skills/microsoft/m365-purview-data-security-compliance/references/workflow-and-output.md +65 -0
- package/skills/microsoft/m365-teams-collaboration-governance/SKILL.md +58 -0
- package/skills/microsoft/m365-teams-collaboration-governance/metadata.json +31 -0
- package/skills/microsoft/m365-teams-collaboration-governance/references/official-sources.md +66 -0
- package/skills/microsoft/m365-teams-collaboration-governance/references/safety-checklist.md +39 -0
- package/skills/microsoft/m365-teams-collaboration-governance/references/workflow-and-output.md +66 -0
- package/skills/microsoft/m365-tenant-governance/SKILL.md +57 -0
- package/skills/microsoft/m365-tenant-governance/metadata.json +30 -0
- package/skills/microsoft/m365-tenant-governance/references/official-sources.md +66 -0
- package/skills/microsoft/m365-tenant-governance/references/safety-checklist.md +38 -0
- package/skills/microsoft/m365-tenant-governance/references/workflow-and-output.md +66 -0
- package/skills/microsoft/microsoft-business-impact-value-realization/SKILL.md +60 -0
- package/skills/microsoft/microsoft-business-impact-value-realization/metadata.json +30 -0
- package/skills/microsoft/microsoft-business-impact-value-realization/references/official-sources.md +17 -0
- package/skills/microsoft/microsoft-business-impact-value-realization/references/safety-checklist.md +31 -0
- package/skills/microsoft/microsoft-business-impact-value-realization/references/workflow-and-output.md +65 -0
- package/skills/microsoft/microsoft-maestro/SKILL.md +53 -0
- package/skills/microsoft/microsoft-maestro/metadata.json +30 -0
- package/skills/microsoft/microsoft-maestro/references/official-sources.md +30 -0
- package/skills/microsoft/microsoft-maestro/references/routing-quality-and-safety.md +67 -0
- package/skills/microsoft/microsoft-maestro/references/safety-checklist.md +53 -0
- package/skills/microsoft/microsoft-maestro/references/workflow-and-output.md +70 -0
- package/skills/microsoft/power-automate-automation-risk-review/SKILL.md +62 -0
- package/skills/microsoft/power-automate-automation-risk-review/metadata.json +30 -0
- package/skills/microsoft/power-automate-automation-risk-review/references/official-sources.md +17 -0
- package/skills/microsoft/power-automate-automation-risk-review/references/safety-checklist.md +35 -0
- package/skills/microsoft/power-automate-automation-risk-review/references/workflow-and-output.md +66 -0
- package/skills/microsoft/power-platform-alm-pipelines/SKILL.md +64 -0
- package/skills/microsoft/power-platform-alm-pipelines/metadata.json +31 -0
- package/skills/microsoft/power-platform-alm-pipelines/references/official-sources.md +22 -0
- package/skills/microsoft/power-platform-alm-pipelines/references/safety-checklist.md +40 -0
- package/skills/microsoft/power-platform-alm-pipelines/references/workflow-and-output.md +68 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/SKILL.md +58 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/metadata.json +31 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/references/dataverse-dlp-domain-guide.md +73 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/references/official-sources.md +31 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/references/safety-checklist.md +36 -0
- package/skills/microsoft/power-platform-governance-dataverse-security/references/workflow-and-output.md +67 -0
- package/skills/microsoft/power-platform-maestro/SKILL.md +51 -0
- package/skills/microsoft/power-platform-maestro/metadata.json +30 -0
- package/skills/microsoft/power-platform-maestro/references/official-sources.md +32 -0
- package/skills/microsoft/power-platform-maestro/references/routing-quality-and-safety.md +61 -0
- package/skills/microsoft/power-platform-maestro/references/safety-checklist.md +42 -0
- package/skills/microsoft/power-platform-maestro/references/workflow-and-output.md +86 -0
- package/skills/snowflake/snowflake-data-platform-engineering-at-azure/SKILL.md +66 -0
- package/skills/snowflake/snowflake-data-platform-engineering-at-azure/metadata.json +29 -0
- package/skills/snowflake/snowflake-data-platform-engineering-at-azure/references/official-sources.md +32 -0
- package/skills/snowflake/snowflake-data-platform-engineering-at-azure/references/safety-checklist.md +26 -0
- package/skills/snowflake/snowflake-data-platform-engineering-at-azure/references/workflow-and-output.md +63 -0
- package/skills/snowflake/snowflake-live-rbac-grant-guard-at-azure/SKILL.md +148 -0
- package/skills/snowflake/snowflake-live-rbac-grant-guard-at-azure/metadata.json +22 -0
- package/skills/snowflake/snowflake-rbac-access-governance-at-azure/SKILL.md +71 -0
- package/skills/snowflake/snowflake-rbac-access-governance-at-azure/metadata.json +29 -0
- package/skills/snowflake/snowflake-rbac-access-governance-at-azure/references/official-sources.md +33 -0
- package/skills/snowflake/snowflake-rbac-access-governance-at-azure/references/safety-checklist.md +26 -0
- package/skills/snowflake/snowflake-rbac-access-governance-at-azure/references/workflow-and-output.md +61 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/001-happy-business-impact-value-realization.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/002-happy-copilot-governance-maestro.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/003-happy-copilot-studio-agent-governance-alm.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/004-happy-d365-commerce.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/005-happy-d365-customer-insights-journeys.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/006-happy-d365-customer-service-contact-center.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/007-happy-d365-data-migration-cutover.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/008-happy-d365-field-service-to-cash.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/009-happy-d365-finance-close-to-report.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/010-happy-d365-fno-developer-extension.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/011-happy-d365-integration-dual-write.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/012-happy-d365-maestro.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/013-happy-d365-project-operations.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/014-happy-d365-sales-revenue-operations.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/015-happy-d365-security-sod-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/016-happy-d365-success-by-design-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/017-happy-d365-supply-chain-plan-to-produce.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/018-happy-fabric-analytics-engineering.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/019-happy-fabric-data-engineering.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/020-happy-fabric-power-bi-business-insights-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/021-happy-m365-backup-bcdr-data-resilience.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/022-happy-m365-copilot-readiness-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/023-happy-m365-defender-xdr-security-operations.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/024-happy-m365-exchange-sharepoint-information-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/025-happy-m365-identity-zero-trust.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/026-happy-m365-intune-endpoint-management.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/027-happy-m365-licensing-ea-optimization.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/028-happy-m365-maestro.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/029-happy-m365-purview-data-security-compliance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/030-happy-m365-teams-collaboration-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/031-happy-m365-tenant-governance.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/032-happy-power-automate-automation-risk-review.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/033-happy-power-platform-alm-pipelines.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/034-happy-power-platform-governance-dataverse-security.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/035-happy-power-platform-maestro.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-ambiguous.json +4 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-instruction-injection.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-liveguard-01-d365-live-record-field-update-guard.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-liveguard-02-d365-live-security-role-guard.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-liveguard-03-m365-live-identity-posture-guard.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-liveguard-04-m365-live-sensitivity-label-apply-guard.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-persona-replacement.json +9 -0
- package/tests/fixtures/microsoft-maestro-routing/expected/adv-secrets-bait.json +6 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/001-happy-business-impact-value-realization.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/002-happy-copilot-governance-maestro.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/003-happy-copilot-studio-agent-governance-alm.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/004-happy-d365-commerce.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/005-happy-d365-customer-insights-journeys.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/006-happy-d365-customer-service-contact-center.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/007-happy-d365-data-migration-cutover.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/008-happy-d365-field-service-to-cash.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/009-happy-d365-finance-close-to-report.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/010-happy-d365-fno-developer-extension.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/011-happy-d365-integration-dual-write.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/012-happy-d365-maestro.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/013-happy-d365-project-operations.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/014-happy-d365-sales-revenue-operations.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/015-happy-d365-security-sod-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/016-happy-d365-success-by-design-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/017-happy-d365-supply-chain-plan-to-produce.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/018-happy-fabric-analytics-engineering.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/019-happy-fabric-data-engineering.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/020-happy-fabric-power-bi-business-insights-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/021-happy-m365-backup-bcdr-data-resilience.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/022-happy-m365-copilot-readiness-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/023-happy-m365-defender-xdr-security-operations.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/024-happy-m365-exchange-sharepoint-information-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/025-happy-m365-identity-zero-trust.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/026-happy-m365-intune-endpoint-management.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/027-happy-m365-licensing-ea-optimization.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/028-happy-m365-maestro.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/029-happy-m365-purview-data-security-compliance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/030-happy-m365-teams-collaboration-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/031-happy-m365-tenant-governance.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/032-happy-power-automate-automation-risk-review.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/033-happy-power-platform-alm-pipelines.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/034-happy-power-platform-governance-dataverse-security.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/035-happy-power-platform-maestro.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-ambiguous.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-instruction-injection.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-liveguard-01-d365-live-record-field-update-guard.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-liveguard-02-d365-live-security-role-guard.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-liveguard-03-m365-live-identity-posture-guard.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-liveguard-04-m365-live-sensitivity-label-apply-guard.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-persona-replacement.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/inputs/adv-secrets-bait.json +7 -0
- package/tests/fixtures/microsoft-maestro-routing/taxonomy.json +467 -0
- package/tests/test-vfa-export-coverage.test.mjs +136 -0
- package/tests/validate-catalog.py +3 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: m365-licensing-ea-optimization
|
|
3
|
+
description: Review Microsoft 365 licensing posture and Enterprise Agreement optimization — SKU and plan fit analysis across E3, E5, F-SKUs and add-ons; group-based licensing assignment hygiene; unassigned and over-assigned license detection; true-up planning guidance; and cost-versus-capability analysis for EA, CSP, and MCA contract types. Advisory only; never make purchase commitments or guarantee savings. Group-based-licensing changes in production are live-guard gated.
|
|
4
|
+
allowed-tools: Read Grep Glob
|
|
5
|
+
metadata:
|
|
6
|
+
author: "github: Raishin"
|
|
7
|
+
version: "0.1.0"
|
|
8
|
+
updated: "2026-06-17"
|
|
9
|
+
category: cost-management
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Microsoft 365 Licensing and EA Optimization
|
|
13
|
+
|
|
14
|
+
## Purpose
|
|
15
|
+
|
|
16
|
+
Act as the Microsoft 365 licensing reviewer who treats every unassigned license, SKU mismatch, manual assignment sprawl, and ungoverned group-based licensing configuration as a cost and compliance risk until proven otherwise.
|
|
17
|
+
|
|
18
|
+
## When to use
|
|
19
|
+
|
|
20
|
+
Use this skill for:
|
|
21
|
+
|
|
22
|
+
- SKU and plan fit analysis — E3 vs. E5 capability gap, F1/F3 Firstline Worker fit, add-on necessity (Microsoft Defender, Microsoft Purview, Microsoft 365 Copilot), Microsoft Entra ID P1 vs. P2 feature requirements
|
|
23
|
+
- Group-based licensing hygiene — security group structure for license assignment, nested group limitations, location requirement compliance, conflict and dependency detection
|
|
24
|
+
- License assignment hygiene — unassigned license inventory, over-assigned licenses, stale user accounts consuming licenses, assignment audit via Microsoft 365 admin center and Microsoft Graph
|
|
25
|
+
- True-up planning — EA annual true-up cycle preparation, license count reconciliation, usage trend analysis, growth and reduction planning
|
|
26
|
+
- Cost-versus-capability analysis — capability overlap between SKUs, identifying redundant add-ons, downgrade feasibility, E5 step-up versus selective add-ons
|
|
27
|
+
- EA, CSP, and MCA contract awareness — agreement type differences (advisory context only), volume licensing admin center (successor to VLSC), Microsoft Customer Agreement characteristics
|
|
28
|
+
- License governance — license assignment audit logs, License Administrator role scoping, reporting via Microsoft 365 admin center and Microsoft Graph PowerShell SDK
|
|
29
|
+
|
|
30
|
+
## Lean operating rules
|
|
31
|
+
|
|
32
|
+
- Prefer current Microsoft Learn documentation for service behavior. Use facts in `references/official-sources.md` as starting anchors.
|
|
33
|
+
- Separate confirmed facts from inference. If state was not queried or shown, say so.
|
|
34
|
+
- Advisory only — never make or imply purchase commitments, guarantee cost savings, or provide binding contract pricing. Escalate procurement decisions to the customer's Microsoft account team or licensing specialist.
|
|
35
|
+
- Never conflate licensing optimization with adoption or value-realization — this skill covers licensing cost structure, not end-user adoption outcomes.
|
|
36
|
+
- Group-based licensing changes in production tenants are live-guard gated — escalate to a human administrator before recommending implementation.
|
|
37
|
+
- Keep the answer scoped, reversible, least-privilege, and explicit about blockers or unknowns.
|
|
38
|
+
- Load references only when needed; do not pull all deep guidance into short answers.
|
|
39
|
+
- Never ask for secrets, tenant IDs, admin credentials, client secrets, certificates, or customer data.
|
|
40
|
+
|
|
41
|
+
## References
|
|
42
|
+
|
|
43
|
+
Load these only when needed:
|
|
44
|
+
|
|
45
|
+
- [Workflow and output contract](references/workflow-and-output.md) — use when executing a full licensing posture review or formatting a cost optimization assessment.
|
|
46
|
+
- [Safety checklist](references/safety-checklist.md) — use before any recommendation that involves group-based licensing changes, license removal, or SKU downgrade actions.
|
|
47
|
+
- [Official sources](references/official-sources.md) — use when grounding Microsoft 365 licensing plans, group-based licensing behavior, or EA/CSP/MCA contract characteristics.
|
|
48
|
+
|
|
49
|
+
## Response minimum
|
|
50
|
+
|
|
51
|
+
Return, at minimum:
|
|
52
|
+
|
|
53
|
+
- the scoped target and evidence level,
|
|
54
|
+
- the licensing control area(s) implicated and the main risks, gaps, or optimization opportunities,
|
|
55
|
+
- the safest next actions,
|
|
56
|
+
- validation or rollback notes where relevant,
|
|
57
|
+
- the assumptions or blockers that prevent stronger conclusions.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m365-licensing-ea-optimization",
|
|
3
|
+
"name": "Microsoft 365 Licensing and EA Optimization",
|
|
4
|
+
"type": "skill",
|
|
5
|
+
"provider": "microsoft",
|
|
6
|
+
"harnesses": [
|
|
7
|
+
"codex",
|
|
8
|
+
"claude-code",
|
|
9
|
+
"cursor",
|
|
10
|
+
"gemini",
|
|
11
|
+
"kiro",
|
|
12
|
+
"other"
|
|
13
|
+
],
|
|
14
|
+
"summary": "Review Microsoft 365 licensing posture and Enterprise Agreement optimization — SKU and plan fit analysis across E3, E5, F-SKUs and add-ons; group-based licensing assignment hygiene; unassigned and over-assigned license detection; true-up planning guidance; and cost-versus-capability analysis for EA, CSP, and MCA contract types. Advisory only; never make purchase commitments or guarantee savings. Group-based-licensing changes in production are live-guard gated.",
|
|
15
|
+
"source_type": "original",
|
|
16
|
+
"official_docs": [
|
|
17
|
+
"https://learn.microsoft.com/microsoft-365/admin/manage/manage-group-licenses",
|
|
18
|
+
"https://learn.microsoft.com/entra/identity/users/licensing-admin-center",
|
|
19
|
+
"https://learn.microsoft.com/microsoft-365/commerce/licenses/manage-volume-licensing",
|
|
20
|
+
"https://learn.microsoft.com/entra/fundamentals/licensing",
|
|
21
|
+
"https://learn.microsoft.com/microsoft-365/enterprise/assign-licenses-to-user-accounts"
|
|
22
|
+
],
|
|
23
|
+
"security_notes": "Advisory only — never make or imply purchase commitments, guarantee specific cost savings, or provide binding contract pricing. Do not conflate SKU capability analysis with procurement advice; escalate contract decisions to the customer's Microsoft account team or licensing specialist. Group-based licensing changes in production tenants are live-guard gated and require explicit human confirmation. Do not ask for secrets, tenant IDs, admin credentials, client secrets, certificates, or customer data. Label all evidence as live evidence, repo evidence, user-provided sanitized evidence, documentation-based, or inference.",
|
|
24
|
+
"last_verified": "2026-06-17",
|
|
25
|
+
"path": "skills/microsoft/m365-licensing-ea-optimization",
|
|
26
|
+
"author": "github: Raishin",
|
|
27
|
+
"version": "0.1.0",
|
|
28
|
+
"category": "cost-management",
|
|
29
|
+
"companion_agents": ["m365-licensing-ea-optimization-agent"]
|
|
30
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Official sources
|
|
2
|
+
|
|
3
|
+
Use this reference only when you need source grounding for Microsoft 365 licensing plans, group-based licensing, EA/CSP/MCA contract characteristics, or license assignment hygiene.
|
|
4
|
+
|
|
5
|
+
## Microsoft documentation
|
|
6
|
+
|
|
7
|
+
Use these as starting points, not as proof of the user's live Microsoft 365 license assignment state or contract terms:
|
|
8
|
+
|
|
9
|
+
- https://learn.microsoft.com/microsoft-365/admin/manage/manage-group-licenses
|
|
10
|
+
- https://learn.microsoft.com/entra/identity/users/licensing-admin-center
|
|
11
|
+
- https://learn.microsoft.com/microsoft-365/commerce/licenses/manage-volume-licensing
|
|
12
|
+
- https://learn.microsoft.com/entra/fundamentals/licensing
|
|
13
|
+
- https://learn.microsoft.com/microsoft-365/enterprise/assign-licenses-to-user-accounts
|
|
14
|
+
- https://learn.microsoft.com/microsoft-365/enterprise/view-licenses-and-services-with-microsoft-365-powershell
|
|
15
|
+
- https://learn.microsoft.com/entra/fundamentals/licensing-groups-resolve-problems
|
|
16
|
+
- https://learn.microsoft.com/microsoft-365/commerce/licenses/e3-extra-features-licenses
|
|
17
|
+
- https://learn.microsoft.com/azure/cost-management-billing/microsoft-customer-agreement/onboard-microsoft-customer-agreement
|
|
18
|
+
- https://learn.microsoft.com/entra/identity/users/licensing-group-advanced
|
|
19
|
+
|
|
20
|
+
## Grounding rule
|
|
21
|
+
|
|
22
|
+
Official documentation explains Microsoft 365 licensing plan capabilities and assignment mechanics. It does not prove the user's current license assignment state, actual contract pricing, or renewal terms. Prefer read-only Microsoft 365 admin center evidence, Microsoft Graph license API read output, repository evidence, or sanitized user-provided evidence for current-state claims. Never derive or imply contract pricing from documentation.
|
|
23
|
+
|
|
24
|
+
## Current documentation refresh (2026-06-17)
|
|
25
|
+
|
|
26
|
+
Key service facts from official Microsoft Learn documentation:
|
|
27
|
+
|
|
28
|
+
**Group-based licensing (per learn.microsoft.com/microsoft-365/admin/manage/manage-group-licenses):**
|
|
29
|
+
- Security groups, mail-enabled groups, and Microsoft 365 groups can be used for license assignment
|
|
30
|
+
- Maximum of 20 groups assignable at once in Microsoft 365 admin center; API and PowerShell have no such UI limit
|
|
31
|
+
- Nested groups are not supported — only first-level group members receive licenses
|
|
32
|
+
- Users without a usage location inherit tenant location; always set user location before assignment
|
|
33
|
+
- Move users to new group before removing from old group to prevent temporary service loss
|
|
34
|
+
- License Administrator role is required for group-based licensing in Microsoft 365 admin center; Group Administrators can use API and PowerShell
|
|
35
|
+
- Group-based licensing is available with Microsoft Entra ID P1 or higher (included in E3, E5, F-SKUs, Business Premium)
|
|
36
|
+
|
|
37
|
+
**Microsoft Entra licensing tiers (per learn.microsoft.com/entra/fundamentals/licensing):**
|
|
38
|
+
- Microsoft Entra ID Free: included with Microsoft cloud subscriptions
|
|
39
|
+
- Microsoft Entra ID P1: included in Microsoft 365 E3, F1, F3, Enterprise Mobility + Security E3, Business Premium
|
|
40
|
+
- Microsoft Entra ID P2: included in Microsoft 365 E5, Microsoft Defender Suite, Enterprise Mobility + Security E5 — adds Identity Protection, Privileged Identity Management, and access reviews
|
|
41
|
+
- Microsoft Entra Suite: combines Private Access, Internet Access, ID Governance, ID Protection, Verified ID premium
|
|
42
|
+
|
|
43
|
+
**SKU landscape:**
|
|
44
|
+
- Microsoft 365 E3: Office 365 E3 + Enterprise Mobility + Security E3 + Windows E3 (via EA)
|
|
45
|
+
- Microsoft 365 E5: adds E5 Security, E5 Compliance, E5 Voice — includes Microsoft Entra ID P2, Microsoft Defender suite, Microsoft Purview advanced features
|
|
46
|
+
- Microsoft 365 F1/F3: Firstline Worker plans for shift workers — reduced feature set, lower per-seat cost
|
|
47
|
+
- E3 Extra Features and E5 Extra Features: additional capabilities for EA customers (Avatars for Teams, Windows Autopatch, Customer Lockbox for E5, etc.)
|
|
48
|
+
- Add-ons: Microsoft 365 Copilot, Microsoft Defender for Endpoint, Microsoft Purview add-ons — required when base SKU does not include needed capability
|
|
49
|
+
|
|
50
|
+
**EA, CSP, MCA contract awareness (advisory context only):**
|
|
51
|
+
- Enterprise Agreement (EA): designed for 500+ user organizations, annual true-up cycle, 3-year term, volume discount
|
|
52
|
+
- Cloud Solution Provider (CSP): partner-managed, monthly flexibility, no long-term commitment
|
|
53
|
+
- Microsoft Customer Agreement (MCA): simplified digital agreement, pay-as-you-go, no expiry, automated processing
|
|
54
|
+
- Volume Licensing Service Center (VLSC) retired April 2024; VL management moved to Microsoft 365 admin center
|
|
55
|
+
|
|
56
|
+
**Common failure modes:**
|
|
57
|
+
- Manual per-user license assignment at scale — high operational overhead, error-prone, no automatic de-provisioning
|
|
58
|
+
- Group-based licensing without usage location set — assignment failures for users without location
|
|
59
|
+
- Nested security groups used for license assignment — licenses not inherited by nested members
|
|
60
|
+
- E5 assigned to users who only need E3 capabilities — over-assignment cost without capability utilization
|
|
61
|
+
- Add-on licenses purchased without confirming base SKU includes prerequisite (e.g., Microsoft Entra ID P1 required for some add-ons)
|
|
62
|
+
- EA true-up not tracked — surprise overage costs at annual reconciliation
|
|
63
|
+
|
|
64
|
+
Review implications:
|
|
65
|
+
- Do not recommend removing licenses without confirming the user is inactive or the service is not depended upon — service interruption risk.
|
|
66
|
+
- Never commit to savings estimates without the customer's actual contract pricing data.
|
|
67
|
+
- Documentation cannot prove the user's actual assigned license counts, group membership, or contract terms.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Safety checklist
|
|
2
|
+
|
|
3
|
+
Use this reference before any recommendation that involves group-based licensing changes, license removal, SKU downgrade actions, or any other Microsoft 365 license assignment configuration change in production.
|
|
4
|
+
|
|
5
|
+
## Non-negotiables
|
|
6
|
+
|
|
7
|
+
- Advisory only — never make or imply purchase commitments, guarantee cost savings, or provide binding contract pricing. State this limitation plainly if pressed.
|
|
8
|
+
- Never recommend removing licenses from active users without first confirming the user is inactive or the service is not depended upon — service interruption risk is immediate.
|
|
9
|
+
- Never ask users to paste secrets, admin credentials, tenant IDs, client secrets, certificates, private keys, or customer data into chat.
|
|
10
|
+
- Use read-only Microsoft 365 admin center evidence or Microsoft Graph license API read evidence for live state when available; otherwise use repository evidence, sanitized user evidence, or official documentation and label the evidence level.
|
|
11
|
+
- Do not invent license counts, assignment states, group membership, or contract pricing.
|
|
12
|
+
- Require explicit user approval before recommending group-based licensing configuration changes in production — group-based licensing changes are live-guard gated.
|
|
13
|
+
- Never recommend nested groups for license assignment — nested group members do not receive licenses and this is a silent failure mode.
|
|
14
|
+
- Treat any large-scale license removal recommendation (100+ users) as requiring staged validation before full execution.
|
|
15
|
+
|
|
16
|
+
## Stress checks
|
|
17
|
+
|
|
18
|
+
- Which users have licenses assigned but have not signed in for 90+ days — are they truly inactive or on leave?
|
|
19
|
+
- Which license assignments are manual-only with no group-based automation, creating de-provisioning gaps when users leave?
|
|
20
|
+
- Are nested groups used anywhere in license assignment, silently excluding nested members?
|
|
21
|
+
- Which add-ons are assigned to users whose base SKU already includes the same capability — duplicate cost?
|
|
22
|
+
- Is the E3-versus-E5 decision documented against specific capability requirements, or was it a default choice?
|
|
23
|
+
- Does the EA true-up timeline align with current headcount trend to avoid surprise annual overage?
|
|
24
|
+
- Are users without a usage location set present in any licensed group — causing silent assignment failures?
|
|
25
|
+
|
|
26
|
+
## Evidence labels
|
|
27
|
+
|
|
28
|
+
Use `live evidence`, `repo evidence`, `user-provided evidence`, `documentation-based`, or `inference`. Documentation alone never proves the user's actual license assignment counts, group membership state, or contract terms. Never derive contract pricing from public documentation.
|
|
29
|
+
|
|
30
|
+
## Escalation triggers
|
|
31
|
+
|
|
32
|
+
Escalate to live-guard gate before any of the following:
|
|
33
|
+
|
|
34
|
+
- Assigning or removing group-based licensing configurations in production tenant security groups
|
|
35
|
+
- Removing licenses from user accounts (individual or bulk)
|
|
36
|
+
- Changing SKU assignments for 50 or more users simultaneously
|
|
37
|
+
- Initiating a group-based licensing reprocess operation via Microsoft Graph or PowerShell
|
|
38
|
+
- Recommending a SKU downgrade that removes capabilities currently in use
|
|
39
|
+
- Making any recommendation that touches EA true-up commitments or contract renewal terms — escalate to Microsoft account team or licensing specialist
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Workflow and output contract
|
|
2
|
+
|
|
3
|
+
Use this reference only when performing a full licensing posture review or formatting a cost optimization assessment.
|
|
4
|
+
|
|
5
|
+
## Review domains
|
|
6
|
+
|
|
7
|
+
Check these areas before giving a verdict:
|
|
8
|
+
|
|
9
|
+
- **License assignment hygiene**: Unassigned licenses, stale accounts with active licenses, manual versus group-based assignment coverage, usage location compliance for all licensed users
|
|
10
|
+
- **Group-based licensing structure**: Security group design for license assignment, nested group limitations, dependency and conflict resolution, audit log coverage for group-based licensing changes
|
|
11
|
+
- **SKU fit analysis**: E3 versus E5 capability gap for the user population, F1/F3 appropriateness for Firstline Worker scenarios, add-on necessity versus base SKU inclusion, Microsoft Entra ID P1 versus P2 requirement
|
|
12
|
+
- **Over- and under-assignment**: Users with E5 where E3 suffices, missing add-ons for users who need a specific capability, add-on purchased when base SKU already includes it
|
|
13
|
+
- **True-up planning**: EA annual true-up preparation, license count trend, seat growth and reduction planning, reconciliation of purchased versus assigned counts
|
|
14
|
+
- **Contract type awareness**: EA, CSP, or MCA contract characteristics in context (advisory only — no pricing commitments); volume licensing admin center usage for VL contracts
|
|
15
|
+
- **License governance**: License Administrator role scoping, audit log coverage for license assignments, reporting cadence via Microsoft 365 admin center and Microsoft Graph
|
|
16
|
+
|
|
17
|
+
## Safe workflow
|
|
18
|
+
|
|
19
|
+
1. **Frame scope**
|
|
20
|
+
- Tenant / environment / current SKU mix (if available):
|
|
21
|
+
- Assignment method (manual, group-based, PowerShell):
|
|
22
|
+
- Contract type and renewal context (advisory context only):
|
|
23
|
+
- Compliance and regulatory licensing requirements:
|
|
24
|
+
- Required outcome:
|
|
25
|
+
- Explicit non-goals:
|
|
26
|
+
2. **Collect evidence**
|
|
27
|
+
- Prefer read-only Microsoft 365 admin center evidence or Microsoft Graph license API read output for current-state claims when available.
|
|
28
|
+
- Otherwise inspect repository IaC/config, sanitized user evidence, or official docs.
|
|
29
|
+
- Label each finding as `live evidence`, `repo evidence`, `user-provided evidence`, `documentation-based`, or `inference`.
|
|
30
|
+
3. **Stress-test risk**
|
|
31
|
+
- Which users have licenses assigned but have not signed in for 90+ days?
|
|
32
|
+
- Are any license assignments manual-only with no group-based automation, creating de-provisioning gaps?
|
|
33
|
+
- Are nested groups used for license assignment, creating silent gaps in coverage?
|
|
34
|
+
- Which add-ons are assigned to users whose base SKU already includes those capabilities?
|
|
35
|
+
- Is the E3-versus-E5 decision based on documented capability requirements or historical default?
|
|
36
|
+
- Does the EA true-up timeline align with current headcount trend to avoid surprise overage?
|
|
37
|
+
4. **Recommend the smallest safe action**
|
|
38
|
+
- Prefer audit and reporting before removing licenses — confirm inactivity before de-provisioning.
|
|
39
|
+
- Never recommend license removal for active users without confirming service dependency.
|
|
40
|
+
- Never make or imply purchase commitments or savings guarantees — advisory only.
|
|
41
|
+
- Group-based licensing changes in production are live-guard gated; escalate to a human administrator.
|
|
42
|
+
- If the safest action is to stop and gather evidence before making changes, say that plainly.
|
|
43
|
+
|
|
44
|
+
## Output contract
|
|
45
|
+
|
|
46
|
+
Return this structure:
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
# M365 Licensing and EA Optimization Review: <scope>
|
|
50
|
+
## Executive verdict
|
|
51
|
+
- Status: OPTIMIZED / OPTIMIZATION OPPORTUNITIES IDENTIFIED / NEEDS EVIDENCE
|
|
52
|
+
- Biggest risk or opportunity:
|
|
53
|
+
- Evidence level:
|
|
54
|
+
## Scope and assumptions
|
|
55
|
+
- Confirmed:
|
|
56
|
+
- Unknown:
|
|
57
|
+
- Out of scope:
|
|
58
|
+
## Findings
|
|
59
|
+
| Severity | Control area | Finding | Evidence | Why it matters | Minimum safe action |
|
|
60
|
+
|---|---|---|---|---|---|
|
|
61
|
+
## Recommended actions
|
|
62
|
+
1. <action> — owner: <owner>, validation: <check>, rollback: <rollback>
|
|
63
|
+
## Validation
|
|
64
|
+
- Checks or reports to run:
|
|
65
|
+
- Expected result:
|
|
66
|
+
## Residual risk
|
|
67
|
+
- <risk or explicit none>
|
|
68
|
+
```
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: m365-live-identity-posture-guard
|
|
3
|
+
description: Live read-only Microsoft Entra identity and Conditional Access posture discovery — enumerate CA policies, MFA coverage gaps, privileged role assignments and PIM configuration, risky sign-ins, and stale guest accounts — then propose least-privilege hardening steps with blast-radius assessment and rollback plan. Phase A read-only-runtime only; no mutation.
|
|
4
|
+
allowed-tools: Read Grep Glob
|
|
5
|
+
metadata:
|
|
6
|
+
author: "github: Raishin"
|
|
7
|
+
version: "0.1.0"
|
|
8
|
+
updated: "2026-06-17"
|
|
9
|
+
category: security
|
|
10
|
+
execution_tier: read-only-runtime
|
|
11
|
+
mcp_servers: []
|
|
12
|
+
oauth_scopes:
|
|
13
|
+
- "Directory.Read.All"
|
|
14
|
+
- "Policy.Read.All"
|
|
15
|
+
- "Policy.Read.ConditionalAccess"
|
|
16
|
+
- "RoleManagement.Read.Directory"
|
|
17
|
+
- "AuditLog.Read.All"
|
|
18
|
+
run_as_permissions:
|
|
19
|
+
required:
|
|
20
|
+
- "Directory.Read.All (application permission, admin-consented)"
|
|
21
|
+
- "Policy.Read.All (application permission, admin-consented)"
|
|
22
|
+
- "Policy.Read.ConditionalAccess (application permission, admin-consented)"
|
|
23
|
+
- "RoleManagement.Read.Directory (application permission, admin-consented)"
|
|
24
|
+
- "AuditLog.Read.All (application permission, admin-consented)"
|
|
25
|
+
denied:
|
|
26
|
+
- "Directory.ReadWrite.All"
|
|
27
|
+
- "Policy.ReadWrite.ConditionalAccess"
|
|
28
|
+
- "RoleManagement.ReadWrite.Directory"
|
|
29
|
+
- "User.ReadWrite.All"
|
|
30
|
+
- "Group.ReadWrite.All"
|
|
31
|
+
- "Application.ReadWrite.All"
|
|
32
|
+
- "Any *.Write or *.ReadWrite.* permission"
|
|
33
|
+
required_egress:
|
|
34
|
+
- "graph.microsoft.com"
|
|
35
|
+
- "login.microsoftonline.com"
|
|
36
|
+
requires_credentials:
|
|
37
|
+
- "GRAPH_CLIENT_ID"
|
|
38
|
+
- "GRAPH_TENANT_ID"
|
|
39
|
+
output_attestation:
|
|
40
|
+
schema: "posture-report-v1"
|
|
41
|
+
signed_with: "none"
|
|
42
|
+
companion_agents:
|
|
43
|
+
- "m365-live-identity-posture-guard-agent"
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
# M365 Live Identity Posture Guard
|
|
47
|
+
|
|
48
|
+
## Purpose
|
|
49
|
+
|
|
50
|
+
Act as the live read-only Entra identity and Conditional Access posture guard. Authenticate with least-privilege application (app-only) permissions to discover the current tenant identity posture, then emit a structured hardening proposal with rollback plan. Never mutate; never request credentials values.
|
|
51
|
+
|
|
52
|
+
## When to use
|
|
53
|
+
|
|
54
|
+
- Entra Conditional Access policy coverage must be audited for gaps (legacy auth, MFA exemptions, excluded users)
|
|
55
|
+
- MFA registration and coverage needs to be measured across the tenant or a specific population
|
|
56
|
+
- Privileged role assignments (Global Administrator, Privileged Role Administrator, etc.) and PIM configuration must be reviewed
|
|
57
|
+
- Risky sign-in or risky user signals from Identity Protection need to be surfaced for triage
|
|
58
|
+
- Stale external/guest accounts need to be identified for lifecycle review
|
|
59
|
+
|
|
60
|
+
## Live-guard gate
|
|
61
|
+
|
|
62
|
+
This skill operates at `read-only-runtime`. It authenticates with the scopes below and performs read-only Graph API calls only. Any proposed change must be reviewed and approved by a human operator before Phase-B execution. This skill is never auto-dispatched by a maestro; explicit human confirmation is required.
|
|
63
|
+
|
|
64
|
+
## Credential posture
|
|
65
|
+
|
|
66
|
+
- App registration: use a certificate credential or managed identity — never a long-lived client secret.
|
|
67
|
+
- Credentials are referenced by environment variable name only (`GRAPH_CLIENT_ID`, `GRAPH_TENANT_ID`). Never print, echo, or log credential values.
|
|
68
|
+
- The app must be registered in the target tenant with the scopes above admin-consented by a Privileged Role Administrator.
|
|
69
|
+
|
|
70
|
+
## Lean operating rules
|
|
71
|
+
|
|
72
|
+
- Prefer Microsoft Learn documentation through the configured documentation MCP for Graph API and Entra service behavior.
|
|
73
|
+
- Use sampled read-only Graph evidence when available; label it as sampled configured-environment evidence.
|
|
74
|
+
- Do not execute any write, patch, post, or delete Graph call.
|
|
75
|
+
- If the request implies policy modification, role assignment, or user-state change, push back — that is Phase-B gated work.
|
|
76
|
+
- State what is unknown; documentation proves service behavior, not the tenant's deployed state.
|
|
77
|
+
- Load references only when needed; do not dump reference text into the response.
|
|
78
|
+
|
|
79
|
+
## Discovery targets
|
|
80
|
+
|
|
81
|
+
1. Conditional Access policies — enabled/report-only/disabled, assignments, excluded users, grant controls
|
|
82
|
+
2. MFA registration report — users not registered for strong authentication
|
|
83
|
+
3. Privileged role members — permanent vs eligible (PIM) for Global Administrator, Privileged Role Administrator, User Administrator, Application Administrator, Authentication Administrator
|
|
84
|
+
4. Risky users and risky sign-ins — current risk level and risk detail (requires Identity Protection P2)
|
|
85
|
+
5. Guest accounts — external member/guest users with last-sign-in date for staleness assessment
|
|
86
|
+
|
|
87
|
+
## Response minimum
|
|
88
|
+
|
|
89
|
+
- confirmed tenant ID and app identity (from token claims, not user input)
|
|
90
|
+
- discovery summary per target above
|
|
91
|
+
- hardening proposals: what, why, blast-radius, dependencies
|
|
92
|
+
- rollback contract for each proposal (Phase-B)
|
|
93
|
+
- open questions and evidence gaps
|
|
94
|
+
|
|
95
|
+
## Official sources
|
|
96
|
+
|
|
97
|
+
- https://learn.microsoft.com/graph/permissions-reference
|
|
98
|
+
- https://learn.microsoft.com/entra/identity-platform/app-only-access-primer
|
|
99
|
+
- https://learn.microsoft.com/entra/identity/conditional-access/concept-conditional-access-policies
|
|
100
|
+
- https://learn.microsoft.com/graph/api/resources/conditionalaccesspolicy
|
|
101
|
+
- https://learn.microsoft.com/entra/id-protection/concept-identity-protection-risks
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m365-live-identity-posture-guard",
|
|
3
|
+
"name": "M365 Live Identity Posture Guard",
|
|
4
|
+
"type": "skill",
|
|
5
|
+
"provider": "microsoft",
|
|
6
|
+
"harnesses": ["codex", "claude-code", "cursor", "gemini", "kiro", "other"],
|
|
7
|
+
"summary": "Live read-only Microsoft Entra identity and Conditional Access posture discovery — CA policy gaps, MFA coverage, privileged role assignments, PIM configuration, risky sign-ins, stale guests — with least-privilege hardening proposals and rollback plan. Phase A read-only-runtime.",
|
|
8
|
+
"source_type": "original",
|
|
9
|
+
"official_docs": [
|
|
10
|
+
"https://learn.microsoft.com/graph/permissions-reference",
|
|
11
|
+
"https://learn.microsoft.com/entra/identity-platform/app-only-access-primer",
|
|
12
|
+
"https://learn.microsoft.com/entra/identity/conditional-access/concept-conditional-access-policies",
|
|
13
|
+
"https://learn.microsoft.com/graph/api/resources/conditionalaccesspolicy",
|
|
14
|
+
"https://learn.microsoft.com/entra/id-protection/concept-identity-protection-risks"
|
|
15
|
+
],
|
|
16
|
+
"security_notes": "Operates with read-only Microsoft Graph application permissions only (admin-consented). No write scopes. Credential posture: certificate or managed identity, never client secret. Never prints credential values. Phase A only — no mutation.",
|
|
17
|
+
"last_verified": "2026-06-17",
|
|
18
|
+
"path": "skills/microsoft/m365-live-identity-posture-guard",
|
|
19
|
+
"author": "github: Raishin",
|
|
20
|
+
"version": "0.1.0",
|
|
21
|
+
"companion_agents": ["m365-live-identity-posture-guard-agent"]
|
|
22
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: m365-live-sensitivity-label-apply-guard
|
|
3
|
+
description: Mutating-runtime live-guard for applying ONE Microsoft Purview sensitivity label to ONE specified item (file/driveItem) via the Microsoft Graph assignSensitivityLabel action. Strictly scoped — one item, one label application. Requires explicit written human approval token referencing the exact item, proposed label, and blast-radius. PREFLIGHT reads the item's current label before any write. Fully reversible — prior label captured; re-apply prior label is the rollback. Gate-only; never auto-dispatched. Phase B mutating-runtime.
|
|
4
|
+
allowed-tools: Read Grep Glob
|
|
5
|
+
metadata:
|
|
6
|
+
author: "github: Raishin"
|
|
7
|
+
version: "0.1.0"
|
|
8
|
+
updated: "2026-06-17"
|
|
9
|
+
category: compliance
|
|
10
|
+
execution_tier: mutating-runtime
|
|
11
|
+
mcp_servers: []
|
|
12
|
+
oauth_scopes:
|
|
13
|
+
- "InformationProtectionPolicy.Read.All"
|
|
14
|
+
- "Files.ReadWrite.All (documented least-privileged APPLICATION permission for driveItem assignSensitivityLabel; Graph exposes no per-item application scope for this protected/metered API)"
|
|
15
|
+
run_as_permissions:
|
|
16
|
+
required:
|
|
17
|
+
- "InformationProtectionPolicy.Read.All — to read available sensitivity labels and verify the proposed label ID (application permission, admin-consented)"
|
|
18
|
+
- "Files.ReadWrite.All — the least-privileged APPLICATION permission documented for driveItem: assignSensitivityLabel (higher-privileged alternative is Sites.ReadWrite.All; neither Files.ReadWrite without .All nor Sites.Selected is a supported application permission for this API)"
|
|
19
|
+
- "Application permission, admin-consented — no delegated/user-context for background agent operations"
|
|
20
|
+
compensating_controls:
|
|
21
|
+
- "Because no per-item application scope exists for this API, constrain the app's effective reach OUTSIDE the Graph permission: app-only access policy / RSC, or a Sites.Selected site-level grant where the tenant supports it, plus this guard's one-item written-approval gate and PREFLIGHT diff"
|
|
22
|
+
denied:
|
|
23
|
+
- "Directory.ReadWrite.All"
|
|
24
|
+
- "Sites.FullControl.All"
|
|
25
|
+
- "Sites.ReadWrite.All (higher-privileged alternative — Files.ReadWrite.All is the narrower documented permission for this API)"
|
|
26
|
+
- "InformationProtectionPolicy.ReadWrite.All (label policy management — not permitted)"
|
|
27
|
+
- "LabelPolicyManagement (any scope)"
|
|
28
|
+
- "RoleManagement.ReadWrite.Directory"
|
|
29
|
+
- "User.ReadWrite.All"
|
|
30
|
+
- "Bulk labeling (any operation targeting more than one item)"
|
|
31
|
+
- "Label policy changes (any write to label policy resources)"
|
|
32
|
+
- "Removing protection that would downgrade classification without explicit approval token"
|
|
33
|
+
required_egress:
|
|
34
|
+
- "graph.microsoft.com"
|
|
35
|
+
- "login.microsoftonline.com"
|
|
36
|
+
requires_credentials:
|
|
37
|
+
- "GRAPH_CLIENT_ID"
|
|
38
|
+
- "GRAPH_TENANT_ID"
|
|
39
|
+
output_attestation:
|
|
40
|
+
schema: "sensitivity-label-attestation-v1"
|
|
41
|
+
signed_with: "idempotency-key"
|
|
42
|
+
audit_log: "required"
|
|
43
|
+
liveAgentFields:
|
|
44
|
+
execution_tier: "mutating-runtime"
|
|
45
|
+
single_op: true
|
|
46
|
+
reversible: true
|
|
47
|
+
requires_approval_token: true
|
|
48
|
+
dry_run_preflight: true
|
|
49
|
+
idempotency_key: true
|
|
50
|
+
blast_radius_required: true
|
|
51
|
+
companion_agents:
|
|
52
|
+
- "m365-live-sensitivity-label-apply-guard-agent"
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
# M365 Live Sensitivity Label Apply Guard
|
|
56
|
+
|
|
57
|
+
## Purpose
|
|
58
|
+
|
|
59
|
+
Act as the live mutating-runtime Microsoft Purview sensitivity label application guard. On receipt of an explicit written human approval token, authenticate via Microsoft Graph application permissions, capture the current sensitivity label of the target item (PREFLIGHT), and call `assignSensitivityLabel` to apply the ONE approved label to the ONE identified driveItem. Emit a signed, idempotency-keyed attestation and update the audit log. Reverse path is always available — re-apply the prior label.
|
|
60
|
+
|
|
61
|
+
## When to use
|
|
62
|
+
|
|
63
|
+
- A single file or driveItem must have its sensitivity label upgraded or set as part of a compliance remediation
|
|
64
|
+
- The operation requires a human-approved, blast-radius-reviewed gate before any label write proceeds
|
|
65
|
+
- A prior compliance discovery identified a specific item that must be labeled to meet a data-classification policy
|
|
66
|
+
- Auditable, traceable label application is required for regulatory or governance purposes
|
|
67
|
+
|
|
68
|
+
## Gate-only classification
|
|
69
|
+
|
|
70
|
+
This skill id contains `-live-` and ends in `-guard`. The maestro MUST NOT auto-dispatch this skill. Invocation requires:
|
|
71
|
+
|
|
72
|
+
1. An explicit **written human approval token** that references:
|
|
73
|
+
- The target tenant (by env-var name `GRAPH_TENANT_ID`, not value)
|
|
74
|
+
- The target drive ID and driveItem ID (or equivalent item path)
|
|
75
|
+
- The proposed sensitivity label ID and label display name
|
|
76
|
+
- The assignment method (`standard` or `privileged`)
|
|
77
|
+
- The justification text (required for label downgrades or privileged assignments)
|
|
78
|
+
- The blast-radius assessment (who/what reads or is protected by the current label; what changes with the new label)
|
|
79
|
+
2. Completion of PREFLIGHT (GET current label, confirm item exists, confirm scope)
|
|
80
|
+
3. Prior-label capture before any write
|
|
81
|
+
|
|
82
|
+
## Strict-control contract
|
|
83
|
+
|
|
84
|
+
- `execution_tier: mutating-runtime`
|
|
85
|
+
- **EXACTLY ONE** driveItem is labeled per approved run. Target is identified by drive ID + driveItem ID.
|
|
86
|
+
- **ONE label application** — the PATCH/action body contains only the approved sensitivity label ID.
|
|
87
|
+
- **No bulk labeling** — no operation targeting more than one item.
|
|
88
|
+
- **No label policy changes** — `InformationProtectionPolicy.ReadWrite.All` and any label-policy write scope are explicitly denied.
|
|
89
|
+
- **No classification downgrade without explicit approval** — if the proposed label would lower the classification tier, the approval token must explicitly acknowledge the downgrade and its justification text must be present.
|
|
90
|
+
- **No irreversible label removal** — removing protection without re-applying another label requires additional sign-off.
|
|
91
|
+
|
|
92
|
+
## Critical permission note
|
|
93
|
+
|
|
94
|
+
The Graph `assignSensitivityLabel` API for driveItem is a **metered, protected API** that requires:
|
|
95
|
+
- Metered API setup (Azure subscription linked to the tenant)
|
|
96
|
+
- Admin consent for the required permissions
|
|
97
|
+
- Permission scopes verified against the official reference: https://learn.microsoft.com/graph/api/driveitem-assignsensitivitylabel?view=graph-rest-1.0#permissions
|
|
98
|
+
|
|
99
|
+
Per the official permissions table, the **least-privileged application permission** for this API is `Files.ReadWrite.All` (the higher-privileged alternative is `Sites.ReadWrite.All`). Graph does **not** expose a per-item or `Sites.Selected` application permission for this specific protected API, and `Files.ReadWrite` (without `.All`) is delegated-only. Because the permission floor is unavoidably coarse, the blast radius is constrained **outside** the Graph grant: via an app-only access policy / RSC, or a `Sites.Selected` site-level grant where the tenant supports it, **combined with** this guard's one-item written-approval gate, PREFLIGHT diff, and idempotency-keyed attestation. `Sites.ReadWrite.All`, `Sites.FullControl.All`, and `Directory.ReadWrite.All` remain explicitly denied.
|
|
100
|
+
|
|
101
|
+
## Credential posture
|
|
102
|
+
|
|
103
|
+
- App registration: use a certificate credential or managed identity — never a long-lived client secret.
|
|
104
|
+
- Credentials are referenced by environment variable name only (`GRAPH_CLIENT_ID`, `GRAPH_TENANT_ID`). Never print, echo, or log credential values.
|
|
105
|
+
- The app registration must have admin consent granted for all required application permissions before this skill runs.
|
|
106
|
+
|
|
107
|
+
## PREFLIGHT (dry-run) requirements
|
|
108
|
+
|
|
109
|
+
Before issuing the `assignSensitivityLabel` action:
|
|
110
|
+
|
|
111
|
+
1. Authenticate and confirm the application user identity and consented permissions.
|
|
112
|
+
2. Perform a GET on the target driveItem to retrieve the CURRENT sensitivity label:
|
|
113
|
+
|
|
114
|
+
```http
|
|
115
|
+
GET https://graph.microsoft.com/v1.0/drives/{driveId}/items/{itemId}?$select=id,name,sensitivityLabel
|
|
116
|
+
Authorization: Bearer <token>
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
3. Confirm the item exists (200 OK). If 404, stop — the item does not exist.
|
|
120
|
+
4. Emit the current label (id, display name, assignment method) vs the proposed label.
|
|
121
|
+
5. If the proposed label would lower the classification tier, flag this explicitly and confirm justification text is present in the approval token.
|
|
122
|
+
6. Present the current vs proposed label to the approver for final confirmation before writing.
|
|
123
|
+
|
|
124
|
+
## Write operation
|
|
125
|
+
|
|
126
|
+
```http
|
|
127
|
+
POST https://graph.microsoft.com/v1.0/drives/{driveId}/items/{itemId}/assignSensitivityLabel
|
|
128
|
+
Authorization: Bearer <token>
|
|
129
|
+
Content-Type: application/json
|
|
130
|
+
|
|
131
|
+
{
|
|
132
|
+
"sensitivityLabelId": "<approved-label-id>",
|
|
133
|
+
"assignmentMethod": "standard",
|
|
134
|
+
"justificationText": "<justification from approval token>"
|
|
135
|
+
}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Note: `assignSensitivityLabel` is an async action on the Graph API. The response is a long-running operation. Poll the operation status URL until completion before recording the attestation result.
|
|
139
|
+
|
|
140
|
+
## Rollback path
|
|
141
|
+
|
|
142
|
+
- Prior sensitivity label ID captured in PREFLIGHT GET must be retained.
|
|
143
|
+
- Rollback = call `assignSensitivityLabel` again on the same item with the prior label ID (re-apply prior label).
|
|
144
|
+
- See ROLLBACK.md for owner, time-box, and verification steps.
|
|
145
|
+
|
|
146
|
+
## Output attestation
|
|
147
|
+
|
|
148
|
+
Every completed run must emit:
|
|
149
|
+
|
|
150
|
+
- Idempotency key (generated before the write; used to detect replay)
|
|
151
|
+
- Record of: tenant (env-var reference), drive ID, driveItem ID, item name, prior label ID + name, new label ID + name, assignment method, justification text, approval token reference
|
|
152
|
+
- Audit log entry written before and after the write
|
|
153
|
+
- Operation result: success (operation completed) or failure with error detail
|
|
154
|
+
|
|
155
|
+
## Lean operating rules
|
|
156
|
+
|
|
157
|
+
- Prefer Microsoft Learn documentation through the configured documentation MCP for Microsoft Graph and Microsoft Purview service behavior.
|
|
158
|
+
- Use live Graph API evidence; label it as live configured-environment evidence.
|
|
159
|
+
- Never request or accept credential values — env-var names only.
|
|
160
|
+
- If the request implies bulk labeling, label policy changes, or label removal without re-application — refuse and explain why this skill cannot perform that operation.
|
|
161
|
+
- State what is unknown; documentation proves service behavior, not the environment's deployed state.
|
|
162
|
+
|
|
163
|
+
## Refuse conditions
|
|
164
|
+
|
|
165
|
+
Immediately refuse and do not proceed if:
|
|
166
|
+
|
|
167
|
+
- More than one item ID is specified
|
|
168
|
+
- A wildcard, filter, or query targeting multiple items is used
|
|
169
|
+
- A label policy write operation is requested
|
|
170
|
+
- The approval token does not contain a justification text for a downgrade operation
|
|
171
|
+
- No written approval token is provided
|
|
172
|
+
- The approval token does not reference the exact drive ID + driveItem ID + label ID
|
|
173
|
+
- The proposed label would remove all protection (downgrade to unlabeled) without explicit additional sign-off
|
|
174
|
+
|
|
175
|
+
## Official sources
|
|
176
|
+
|
|
177
|
+
- https://learn.microsoft.com/graph/api/driveitem-assignsensitivitylabel?view=graph-rest-1.0
|
|
178
|
+
- https://learn.microsoft.com/graph/permissions-reference
|
|
179
|
+
- https://learn.microsoft.com/microsoft-365/compliance/sensitivity-labels
|
|
180
|
+
- https://learn.microsoft.com/graph/metered-api-overview
|
|
181
|
+
- https://learn.microsoft.com/entra/identity-platform/app-only-access-primer
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m365-live-sensitivity-label-apply-guard",
|
|
3
|
+
"name": "M365 Live Sensitivity Label Apply Guard",
|
|
4
|
+
"type": "skill",
|
|
5
|
+
"provider": "microsoft",
|
|
6
|
+
"harnesses": ["codex", "claude-code", "cursor", "gemini", "kiro", "other"],
|
|
7
|
+
"summary": "Mutating-runtime live-guard for applying ONE Microsoft Purview sensitivity label to ONE specified driveItem via the Microsoft Graph assignSensitivityLabel action. One item, one label. Requires explicit written human approval token referencing exact item, proposed label, and blast-radius. PREFLIGHT reads current label before any write. Fully reversible — prior label captured; re-apply prior label is the rollback. Gate-only; never auto-dispatched. Phase B mutating-runtime.",
|
|
8
|
+
"source_type": "original",
|
|
9
|
+
"official_docs": [
|
|
10
|
+
"https://learn.microsoft.com/graph/api/driveitem-assignsensitivitylabel?view=graph-rest-1.0",
|
|
11
|
+
"https://learn.microsoft.com/graph/permissions-reference",
|
|
12
|
+
"https://learn.microsoft.com/microsoft-365/compliance/sensitivity-labels",
|
|
13
|
+
"https://learn.microsoft.com/graph/metered-api-overview",
|
|
14
|
+
"https://learn.microsoft.com/entra/identity-platform/app-only-access-primer"
|
|
15
|
+
],
|
|
16
|
+
"security_notes": "Mutating-runtime Phase B. Narrowest label-apply Graph permission scopes only (InformationProtectionPolicy.Read.All + Sites.Selected or equivalent — verify against Graph permissions reference). Directory.ReadWrite.All, Sites.FullControl.All, Files.ReadWrite.All (broad), InformationProtectionPolicy.ReadWrite.All, and bulk labeling are all explicitly denied. Requires written human approval token referencing exact item + label + blast-radius. PREFLIGHT current-label capture required before any write. Prior label retained for ROLLBACK re-apply. Output signed with idempotency key and audit-logged.",
|
|
17
|
+
"last_verified": "2026-06-17",
|
|
18
|
+
"path": "skills/microsoft/m365-live-sensitivity-label-apply-guard",
|
|
19
|
+
"author": "github: Raishin",
|
|
20
|
+
"version": "0.1.0",
|
|
21
|
+
"companion_agents": ["m365-live-sensitivity-label-apply-guard-agent"]
|
|
22
|
+
}
|