Welcome to my blog! Be inspired and keep inspiring. Sharing is Caring
Recent posts
Embedding Copilot Studio Agent in a SharePoint Page
Introduction Embedding a Copilot Studio Agent within a SharePoint page can significantly enhance user experience by providing seamless access to AI-powered assistance directly within the context of a SharePoint site. While there are examples of achieving this using SPFx (SharePoint Framework), I wanted to explore whether this could be done using out-of-the-box (OOB) features without custom development.
In this blog post, I will walk you through the steps to embed a Copilot Studio Agent into a SharePoint page using the Embed Webpart and site settings.
read moreSharePoint Agent and Responsible AI in Mental Health Support
Introduction Balancing AI safety measures and practical functionality for SharePoint Agents is key for some use cases due to the lack of customisation of the inbuilt content safety against the four categories: harm, self-harm, sex, and hate. A particular use case we wanted to explore was its use for mental health support agents in the form of virtual mental health first aiders. My partner in crime Lee Ford and I explored what we could do without tripping the Responsible AI principles and flagging Content Safety categories.
read moreExploring Ways to Access SharePoint Agent
Introduction SharePoint Agent is the easiest way to get started with building your own grounded Agents from your SharePoint data. The possibilities are vast, from HR agents to legal agents. If more configuration and features are required, the Copilot Studio or Azure AI Foundry could help.
Each SharePoint site comes with its own default Agent scoped to data within the site. As of today (i.e. March 2025), the default SharePoint agent can’t be modified.
read moreMVP Preparing for Renewal
Introduction Since January 2024, I have had the honor of being a Microsoft MVP. Now, it’s time to renew my MVP status, which requires gathering all my contributions to submit within the renewal application. I must admit, I haven’t been great at keeping track of my contributions every time I raise a Pull Request or write a blog post. But here’s what I’ve managed to pull together.
Pull Requests within Github I’ve successfully merged nearly 70 Pull Requests (PRs) in open-source PnP repositories, along with over 50 blog posts spanning areas like PowerShell, SharePoint, Azure DevOps, Power Automate, and M365 Copilot.
read moreIssues with Default Sensitivity Labels in SharePoint Document Libraries
Introduction Default sensitivity labels can be set at the document library level in SharePoint to help manage and protect your data.
However, there are some limitations and issues that you should be aware of like the default sensitivity label does not automatically update existing files within SharePoint and there might be delay in applying the sensitivity label within M365 app. This is described in the documentation for Configuring a default sensitivity label for a SharePoint document library.
read moreInheritance of Sharing Settings in Channel Associated SharePoint Sites
Inheritance of Sharing Settings in Channel Associated SharePoint Sites Channel associated SharePoint sites inherit the external and default sharing settings of the parent team except when the parent team default sharing link is set to “People with Existing Access” only during creation.
The two sections highlight the testing I have done by first updating the parent team sharing setting before creating a private or shared channel which creates the corresponding site in the background.
read moreAssigning Cognitive Services Roles in Azure AI Foundry to use Content Safety
Introduction Azure AI Foundry comes with built-in Safety + Security features, also known as Azure AI Services. However, you may encounter the following error message:
Your account does not have access to this resource, please contact your resource owner to get access
The Learn More link directs you to a possible fix: ensuring your account is assigned the role of Cognitive Services User for the Content Safety resource or Azure AI Services resource you’re using.
read moreConfiguring Default Sharing Links in SharePoint: Ensuring 'Specific People' Access
Introduction Updating the default sharing link from the User Interface at both the site level and tenant level to Specific People (only the people the user specifies) might not work always as expected. This issue could be due to the outdated setting DefaultSharingLinkType being updated behind the scenes.
I tested this on a Team site by updating the default sharing setting from the SharePoint Admin Centre to “People you choose”. However, the default sharing link for new sharing links did not reflect this setting.
read moreEliminating the Need for PATs in Azure DevOps for Power Platform CI/CD
Introduction The PAT(Personal Access Token) is the Azure DevOps personal access token which can be generated from your account settings and used for authentication when performing Git operations.
Cons using PATs Not conducive for teamwork: If the PAT belongs to a team member who leaves the organization, the release manager or another team member will have to generate their own PAT and update the pipeline. Security risks: Similar to a password, a PAT poses risks if leaked.
read moreHow to Delete App Users in Power Platform Admin Center
In the Power Platform Admin Center, you may have added app users that you no longer need. To view the list of app users added to an environment, navigate to the following URL https://admin.powerplatform.microsoft.com/manage/environments/c1725b9e-0000-0000-0000-000d3ad0000/appusers, replacing c1725b9e-0000-0000-0000-000d3ad0000 with your environment ID:
To delete an app user, click on the ellipsis (…) next to the app user and select the Delete button.
However, you may encounter a misleading error message:
✖ Failed to delete app user: User with SystemUserId= is not disabled.
read more