
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Playbooks are one of my favorite features of the ServiceNow AI Platform. And with the Zurich release, AI is now part of Playbooks in two ways.
The first is Agentic Playbooks, where AI Agents can be integrated directly. That’s exciting, but today I want to focus on something less obvious: it’s now possible to deploy a Now Assist Skill to UI Builder.
That means any experience you build with UI Builder can use these skills. And since Activity UIs in Playbooks are built on the Now Experience framework (and created in UI Builder), you can also bring custom skills into your Playbooks.
This is different from Now Assist for Playbooks, which helps generate Playbooks with AI. That feature has been around for a while. What’s new is that agents can now use AI while actually working through a Playbook.
In this article I show one example of using a custom skill in playbooks to improve the quality of resolution notes.
The solution has two parts:
Custom Now Assist Skill
We’ll create a skill with the Now Assist Skill Kit that checks whether the resolution notes make sense in the context of the incident.
- If the resolution notes aren’t reasonable, the skill explains why so the agent can improve it.
- To support non-native English speakers, it also suggests a version written as a native speaker might phrase it.
Custom Activity UI
Next, we’ll build a custom Activity UI for Playbooks.
- The agent enters a resolution note.
- The custom skill is invoked.
- The response is shown in the UI so the agent can review and adjust.
Let’s start with the skill.
Create a Skill
Skills are created with the Now Assist Skill Kit. You’ll find it under:
Now Assist Skill Kit > Home
Start by creating a new skill (see screenshot).
Next, define the inputs for the skill. We need two:
- The record the agent is trying to resolve.
- The resolution note.
The main task is to build a prompt for the skill.
The first step in that prompt is to tell the LLM what role it should take.
## ROLE
You are a very experienced Service Desk agent, with excellent technical skills and excellent communication skills, your task is to decide whether the resolution notes provided make sense given the content of the incident.
In addition to this, if the solution sounds like a possible solution but the grammar or the wording sounds not like from a native English speaker provide a proposal like a native speaker would formulate it.
Then we pass the input values to the LLM to give it context.
## CONTEXT
The given resolution note is:
{{resolution_note}}
Here is the information about the incident
Short Description: {{incident.short_description}}
Description: {{incident.description}}
Work notes: {{incident.work_notes_list}}
The inputs can be added directly to the prompt with double curly brackets, or by clicking the Insert Inputs button.
Since the skill’s output won’t be shown directly to the user, and instead needs to be processed in UI Builder, we also define an output format.
## OUTPUT FORMAT
The response must strictly adhere to the following JSON schema:
{"reasonable": true|false,
"reason": <the reason why you think it is not a reasonable solution, empty if solution is reasonable>,
"improved": <improved version of the resolution notes if the solution is reasonable, otherwise it is empty>
}
That's it. Let's test the skill.
Output:
{
"reasonable": false,
"reason": "The resolution note suggests restarting the printer, but the incident describes repeated network connectivity issues affecting internet access, not a printer problem. Therefore, the proposed solution does not address the reported issue.",
"improved": ""
}
Let’s test it with a reasonable solution (spelling mistakes intended).
Output:
{
"reasonable":true,
"reason":""
"improved":"The firewall was rebooted, and the network connection is now stable. Please let us know if you continue to experience any issues."
}
To make the skill available in UI Builder, we need to deploy it for UI Builder.
On the Skill settings tab, under Deployment settings, activate UI Builder.
The skill is now deployed, but before we can use it we also need to activate it. This can be done under:
Now Assist Admin > Skills
Once activated, the skill is ready to use.
In the second part, we’ll integrate this skill into a Playbook.
Create a new Activity UI Layout
We start by creating a new Activity UI Layout, which we’ll open in UI Builder and adjust to our needs.
We will not create it from scratch. We will use the “Record” layout as our starting point. ServiceNow provides a UI Action to clone Activity UI Layouts so that we do not need to create all the configurations manually.
The “Record” layout can be found under Playbook experience > Activity UIs > Layouts
Once a cloned version is created, rename the created record and the Default Activity UI to something meaningful.
Then use the “Edit Default UI in UI Builder” to open it in UI Builder.
Change the Activity UI in UI Builder
When the layout opens in UI Builder, you’ll notice the variant is not active.
Go to the settings page of the variant and check the “Active” checkbox.
Now we can update the page to use our custom skill.
Delete the Form Default and Domain Form Layout components. Instead, we add a Textarea for the agent to provide the resolution notes. The input will be stored in a client state parameter called resolutionNote.
We set the client state parameter by adding an event mapping on the textarea for the event Text entered. The fieldValue of the textarea will be used.
Now we add our custom Now Assist Skill we created in the first part.
Unter Data and scripts there is a new Section “Now Assist skills”. Click on the plus sign to add a new skill and select the “Resolution Notes Quality Assurance” skill.
We add a button to the page and configure an event mapping for the Button clicked event to execute the skill. The skill can be directly selected and we only need to provide the reference to the incident and the resolution notes as parameters.
To display the improved version of the resolution notes we add another textarea. The value will be set using the client state parameter “improvedNotes”.
Next, we create three new client state parameters, hideBad, hideOk, and hideImprovement. These will control the visibility of three Highlighted Values we also add. The client state parameters have an initial value of true and will be set according to the response of the skill execution. This will be handled in a client script which will be executed once the execution complete event of the skill is fired.
Client Script Process Skill Response.
We add three highlighted values and adjust their labels, colors, and visibility.
Finally, we add two buttons. One button allows the agent to save the original resolution notes, and the other saves the improved version provided by the custom skill. With this step, the configuration in UI Builder is complete.
The next step is to create an Activity Definition so we can use the new UI in a Playbook. Navigate to Process Automation > Playbook Administration > Activity Definitions and create a new record. Select the UI Layout you just created and set the automation plan to the flow Manual Activity.
To test the new activity, create a Playbook that triggers when a new Incident is created. Since this is only for testing, the Playbook will contain just a single activity. This lets you validate the custom Activity UI and confirm that the Now Assist skill works as expected.
Let’s test it with an Incident
Short Description: I keep having network problems and the connection crashes frequently.
Description: There are repeated connectivity problems at the current location. The connection is unstable, which is noticeable, among other things, by frequent interruptions when accessing the network or the Internet. Please check the network infrastructure on site and whether there are any known disruptions. Prompt feedback would be helpful, as the problems are affecting our ability to work! I am angry!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.