SharePoint Skills

At the Microsoft 365 Community Conference this month, Microsoft announced that SharePoint skills are now available in Public Preview.

One of the fundamental issues encountered since the advent of generative AI several years ago is the fact that AI is inherently random. In fact, that’s what makes AI feel human and not robotic. However, businesses are fundamentally built on processes, which need to be the same every time. So, you constantly have this push and pull of using AI (that produces random results) in a repeatable, non-random way.

Because of this, we are now seeing repeatable steps that encapsulate AI “micro-steps.” One of the benefits of agents is that we can dictate which steps are repeatable and which use AI and natural language. For example, you may have a rule that says, “Every time a file is uploaded, append the date when it was uploaded to the name of the file.” This is a rule that has to be repeated every time, but you want to use natural language to describe what you want to happen.

This is where SharePoint “skills” come in. SharePoint skills allow you to use natural language to describe a process. However, that process is saved to your SharePoint site as a file, allowing both you – and colleagues – to all execute the same AI-driven actions in a repeatable way.

Enabling SharePoint Skills

Before you can create SharePoint skills, you need to opt into “AI in SharePoint” at the tenant level. At the tenant level, you can either allow it to be applied to every site in your tenant, or you can add individual SharePoint sites to the list of sites where it’s enabled. Read more at https://learn.microsoft.com/en-us/sharepoint/ai-in-sharepoint-get-started.   To enable SharePoint skills, you need to navigate to the Site Settings page for your site, click on Site Collection Features, and enable the Agent Assets feature. (Don’t let your jaw hit the floor – SharePoint hasn’t generally utilized features since SharePoint was an on-premises product.) That being said, that’s it, that’s all you have to do to enable this functionality.

Article content

Creating a Skill

Open up the agent pane in SharePoint and explicitly tell it you want to create a skill, then describe what the skill should do.

For example, say you have an intranet site to publish Human Resource documents to employees. Each policy has an applicable state. For each policy that gets uploaded, an Autofill column extracts the applicable state and puts that value in a column. But you want to ensure the applicable state name gets appended to the actual file name. So, you open the AI in SharePoint and tell it:

“Create a new skill called ‘Update File Name with applicable state.’ When an applicable state column value is added to the document, append the applicable state column value to the name of the file.”

Article content

The SharePoint agent will use your prompt to repeat back to you what it thinks you want, to verify that it has properly understood the requirements. For example, using the aforementioned prompt, SharePoint responds with this:

_____________________________________

Before I create this skill, let me confirm the details with you. Here’s what I have in mind:

Skill Name: update-file-name-with-applicable-state

Description: Appends the Applicable State column value to a document’s file name when that column is updated. Use when a user reports that an Applicable State value has been added or changed on a document.

Instructions (draft): Update File Name with Applicable State

Purpose: When a user indicates that an “Applicable State” column value has been added or changed on a document, append the state value to the file name.

Steps:

  1. Identify the document and its current file name.
  2. Retrieve the current value of the Applicable State column for that document.
  3. If the Applicable State value is not already part of the file name, append it to the file name before the file extension (e.g., Policy.docx → Policy – CA.docx).
  4. If the Applicable State value is already in the file name, inform the user — no rename is needed.

Example:

  • User says: “I just set the Applicable State to ‘TX’ on the Benefits Guide document.”
  • Action: Rename Benefits Guide.docx → Benefits Guide – TX.docx

Constraints:

  • Do not remove or alter the file extension.
  • If multiple state values exist (multi-value field), join them with commas (e.g., Policy – CA, TX.docx).
  • Always confirm the rename with the user before executing.
  • Do not rename if the state value is empty or blank.

Does this look good, or would you like to adjust anything before I create it?

_____________

Once you confirm the requirements are correct and tell the agent to go ahead and create the skill, the agent will tell you what the skill was named:

“The skill update-file-name-with-applicable-state has been created and saved. It’s now available for use — whenever you mention updating a file name with an Applicable State value, I’ll load and follow those instructions.”

Using the Skill

You can now call the skill from the prompt pane. Additionally, you can tell the agent just to run the skill on a single selected file or multiple selected files (i.e., you don’t have to run the skill on every file in your library.) Note that you don’t necessarily have to use the exact skill name, but as the agent noted when you created it, it’s letting you know what you need to mention in the chat for the skill to be called.

For example, if you tell the agent, “The applicable state for the Bereavement policy has changed, so update its file name”, it should know to retrieve that skill.

Once a skill is called, be sure you see the “call out” to know the actual skill was called. Since whatever you described in the skill is itself a prompt, you want to be sure AI is not just following your current prompt on a one-off way but is indeed referencing your actual skill.

Article content

Once it does, it will provide an actionable pane with a button to acknowledge that it is going to make a change to the file(s) you selected.

Article content

The agent will tell you the outcome of the skill. In the case of this example, you can see that the file was renamed.

Article content

Skill Files

When you activated the Agent Assets feature, it added a new Agent Assets library. Inside this library, you will see a folder called “Skills”. Your “Skills” are created using a file type called “Markdown”. Markdown is often used for developer documentation on platforms such as GitHub. It provides a way to mark up a text file to indicate which values should be rendered as headers, sub-headers, italics, bold, etc. Markdown files have an extension of “.md”. When you open up the markdown file, you will see the markdown that was created.

Article content

Luckily, SharePoint lets you view the markdown file as a flat file as well as what it looks like when rendered “prettily.”

Article content

Even better, you can actually edit the markdown file. In this example, when the skill was created, it was indicated that the skill would be run when the value in the Applicable State column had changed, so the file needed to be renamed. However, the skill was having a difficult time knowing it needed to run if it hadn’t been told explicitly that the column value had changed. Once the purpose statement was updated, the skill could then be called “on demand” just by mentioning the file needed to be updated with the applicable state (whether the column value had changed or not.)

Conclusion

SharePoint skills offer a way of creating meaningful prompts that can be reused by you and your team.

Further reading: