mcpField
P
playbook-recommendations

playbook-recommendations

github.com/happy-technologies-llc其他4141 次安装2 天前更新
代码仓库

关于 playbook-recommendations

playbook-recommendations 是面向 ServiceNow 流程自动化用户的技能,可为活动中的案例、事件或 HR 案例推荐相关 playbook。它结合记录上下文、执行历史和覆盖缺口给出排序及匹配说明。

主要功能

  1. 01读取案例或事件上下文
  2. 02查询可用 playbook 及其活动
  3. 03按上下文和历史成效评分
  4. 04解释推荐理由并提出定制建议
  5. 05识别 playbook 覆盖缺口

适用场景

  1. 01为活动事件选择合适 playbook
  2. 02为客户服务案例匹配处理流程
  3. 03评估各事件类别的 playbook 覆盖情况

MCP 相关

通过 ServiceNow MCP 工具读取记录、playbook、活动和执行历史;可选地将推荐 playbook 关联到记录。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill playbook-recommendations

安装后在 Claude Code 中输入/playbook-recommendations确认已加载。

详细介绍

Playbook 推荐

概述

此技能根据活动案例、事件或 HR 案例的上下文,推荐相关的 Process Automation Designer playbook:

  • 将问题模式(类别、优先级、症状)与现有 playbook 触发条件和条件进行匹配
  • 根据历史成功率和上下文契合度评估 playbook 的相关性
  • 推荐具体的 playbook,并说明匹配原因
  • 当不存在完全匹配项时,建议自定义 playbook
  • 找出应创建新 playbook 的缺口
  • 分析 playbook 执行历史,以验证其有效性

适用场景: 当 Agent 需要了解应将哪个 playbook 应用于活动记录、在虚拟 Agent 工作流中自动选择 playbook,或评估各服务类别的 playbook 覆盖情况时。

前提条件

  • 角色: process_automation_user、itil、sn_customerservice_agent 或 admin
  • 插件: com.glide.process_automation(Process Automation Designer)
  • 访问权限: 对 sys_pd_playbook、sys_pd_activity、sys_pd_context 和源记录表具有读取权限
  • 知识: Process Automation Designer 概念、playbook 生命周期、活动类型
  • 相关技能: 用于创建新 playbook 的 genai/playbook-generation,以及用于底层流程的 genai/flow-generation

流程

步骤 1:检索源记录上下文

获取需要推荐 playbook 的案例或事件。

MCP 方式:

Tool: SN-Get-Record
Parameters:
  table_name: incident
  sys_id: <incident_sys_id>
  fields: sys_id,number,short_description,description,category,subcategory,priority,impact,urgency,assignment_group,state,cmdb_ci,contact_type,caller_id

REST 方式:

GET /api/now/table/incident/<incident_sys_id>
  ?sysparm_fields=sys_id,number,short_description,description,category,subcategory,priority,impact,urgency,assignment_group,state,cmdb_ci,contact_type
  &sysparm_display_value=true

对于 CSM 案例:

Tool: SN-Get-Record
Parameters:
  table_name: sn_customerservice_case
  sys_id: <case_sys_id>
  fields: sys_id,number,short_description,description,product,category,priority,account,contact,state,assignment_group
步骤 2:查询可用的 playbook

检索所有可能适用于此记录类型的活动 playbook。

MCP 方式:

Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_playbook
  query: active=true^trigger_table=incident^ORDERBYorder
  fields: sys_id,name,description,trigger_table,trigger_condition,category,sys_updated_on,active,application
  limit: 50

REST 方式:

GET /api/now/table/sys_pd_playbook
  ?sysparm_query=active=true^trigger_table=incident^ORDERBYorder
  &sysparm_fields=sys_id,name,description,trigger_table,trigger_condition,category,sys_updated_on
  &sysparm_display_value=true
  &sysparm_limit=50
步骤 3:检索 playbook 活动和阶段

对于每个候选 playbook,获取其阶段和活动,以了解其作用。

MCP 方式:

Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_stage
  query: playbook=<playbook_sys_id>^ORDERBYorder
  fields: sys_id,name,description,order,playbook,condition
  limit: 20
Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_activity
  query: playbook=<playbook_sys_id>^ORDERBYorder
  fields: sys_id,name,description,activity_type,stage,order,condition,mandatory,inputs
  limit: 50
步骤 4:将 playbook 与记录上下文匹配

使用以下标准,根据源记录对每个 playbook 进行评分:

匹配标准:

标准权重匹配方式
类别匹配30%playbook 的 trigger_condition 包含记录的类别
优先级契合度15%playbook 专为此优先级设计
CI/服务匹配20%playbook 针对相同的 CI 类型或服务
描述相似度15%记录描述与 playbook 描述的自然语言相似度
历史成功率20%playbook 对类似记录的解决率

使用 MCP 进行历史匹配:

Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_context
  query: playbook=<playbook_sys_id>^state=complete^ORDERBYDESCsys_created_on
  fields: sys_id,playbook,document_id,state,started,completed,duration
  limit: 50
步骤 5:计算相关性得分

建立 playbook 推荐的排名列表:

=== PLAYBOOK RECOMMENDATIONS ===
Record: INC0045678 - Email server not responding
Category: Email | Priority: P2 | CI: mail-server-prod-01

Rank | Playbook                        | Score | Match Reason
-----|---------------------------------|-------|------------------------------------------
#1   | Email Service Outage Response   | 92%   | Category: exact, CI type: mail server,
     |                                 |       | Success rate: 89% (45 past executions)
#2   | Server Connectivity Diagnostic  | 78%   | CI type: server, Description: "not
     |                                 |       | responding" pattern, Success: 76%
#3   | Network Service Restoration     | 65%   | Category: partial (network/email),
     |                                 |       | Priority: P2 match, Success: 82%
#4   | General Incident Triage         | 45%   | Generic fallback, always applicable,
     |                                 |       | Success: 71%

RECOMMENDED: #1 - Email Service Outage Response
Reason: Exact category match, designed for this CI type, 89% historical
success rate across 45 similar incidents.
步骤 6:分析 playbook 执行历史

检查推荐的 playbook 过去的表现。

MCP 方式:

Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_context
  query: playbook=<recommended_playbook_sys_id>^state=complete^completed>javascript:gs.daysAgo(90)
  fields: sys_id,document_id,state,started,completed,duration
  limit: 100

计算指标:

=== PLAYBOOK PERFORMANCE: Email Service Outage Response ===
Period: Last 90 days

Executions: 45
Completion Rate: 89% (40 completed, 5 abandoned)
Average Duration: 32 minutes
Median Duration: 25 minutes
Fastest Resolution: 8 minutes
Slowest Resolution: 2 hours 15 minutes

Resolution Outcome (from linked incidents):
- Resolved: 38 (84%)
- Escalated: 5 (11%)
- Workaround Applied: 2 (5%)
步骤 7:建议自定义 playbook

当没有完全匹配的 playbook 时,建议修改最接近的匹配项:

=== CUSTOMIZATION SUGGESTIONS ===
Closest Match: Server Connectivity Diagnostic (78% relevance)

Suggested Modifications for Email-Specific Use:
1. ADD STAGE: "Check Email Service Status"
   - Activity: Query monitoring system for mail server health
   - Activity: Check mail queue depth via REST API

2. MODIFY STAGE: "Connectivity Tests"
   - Add email-specific port checks (25, 587, 993, 143)
   - Add SMTP handshake test activity

3. ADD ACTIVITY: "Notify Email Users"
   - Send communication to affected distribution list
   - Post status update to service status page

4. SKIP STAGE: "Database Connectivity" (not applicable to email)

Estimated Effort to Customize: 2-4 hours
Alternative: Create new playbook using genai/playbook-generation skill
步骤 8:找出 playbook 覆盖缺口

找出没有匹配 playbook 的类别或事件类型。

MCP 方式:

Tool: SN-Query-Table
Parameters:
  table_name: incident
  query: active=true^sys_pd_contextISEMPTY^ORDERBYDESCsys_created_on
  fields: category,subcategory,priority,short_description
  limit: 100

按类别分组,找出未覆盖的领域:

=== PLAYBOOK COVERAGE GAPS ===

| Category/Subcategory        | Open Incidents | Playbook Available |
|-----------------------------|---------------|-------------------|
| Hardware > Monitor Issues   | 23            | No                |
| Software > License Errors   | 18            | No                |
| Network > WiFi Connectivity | 15            | No                |
| Email > Calendar Sync       | 12            | No                |
| Database > Performance      | 8             | Yes (partial)     |

Priority Recommendation:
Create playbooks for "Hardware > Monitor Issues" and "Software > License Errors"
first (highest volume with no coverage).
步骤 9:将 playbook 附加到记录(可选)

如果接受推荐,请将 playbook 与记录关联。

MCP 方式:

Tool: SN-Update-Record
Parameters:
  table_name: incident
  sys_id: <incident_sys_id>
  data:
    u_recommended_playbook: "<playbook_sys_id>"
    u_playbook_relevance_score: "92"
步骤 10:跟踪推荐效果

监控推荐的 playbook 是否带来了成功结果。

MCP 方式:

Tool: SN-Query-Table
Parameters:
  table_name: sys_pd_context
  query: document_id=<incident_sys_id>^state=complete
  fields: sys_id,playbook,state,started,completed,duration
  limit: 5

工具使用

工具用途使用时机
SN-Query-Table获取 playbook、执行历史和事件主要数据检索与分析
SN-Get-Record检索具体事件或案例详情获取源记录上下文
SN-Natural-Language-Search根据描述相似度查找 playbook类别匹配不足时
SN-Update-Record将推荐的 playbook 关联到记录记录推荐内容

最佳实践

  1. 高度重视历史成功率——完成率为 90% 的操作手册,优于类别完全匹配但执行效果不佳的操作手册
  2. 考虑操作手册的复杂度——对于讲求速度的 P1 事件,建议使用更简单的操作手册
  3. 检查操作手册的时效性——超过 6 个月未更新的操作手册可能引用过时的流程
  4. 考虑 Agent 的技能水平——有些操作手册需要较高的技术技能
  5. 提供备用建议——始终包含一个通用的分诊操作手册作为保障
  6. 跟踪建议采纳情况——衡量 Agent 遵循建议的频率
  7. 更新评分权重——根据实际结果数据调整匹配标准
  8. 考虑时段因素——有些操作手册需要的资源仅在工作时间内可用
  9. 避免操作手册过载——最多建议 3-5 个选项,并按相关性排序
  10. 附上说明——Agent 需要了解推荐某个操作手册的原因

故障排查

问题原因解决方法
未找到操作手册trigger_table 错误或全部处于非活动状态检查 sys_pd_playbook.trigger_table 是否与记录类型匹配
所有评分都很低操作手册与当前类别不匹配检查并更新操作手册的触发条件
执行历史为空操作手册刚创建或从未使用仅根据类别/描述进行匹配
建议不匹配评分权重未经校准分析过去的建议与结果,并调整权重
缺少上下文记录未启用 Process Automation 跟踪确认正在创建 sys_pd_context 记录
未返回操作手册活动活动使用了不同的表名检查是否存在 sys_pd_lane_activity 或特定版本的表

示例

示例 1:事件操作手册建议

输入:“为 INC0045678 推荐一份操作手册——邮件服务器无响应”

**步骤:**检索事件详情,查询事件表中的所有活动操作手册,根据类别/优先级/CI/描述为每份操作手册评分,获取得分最高的匹配项的执行历史,并返回带说明的排序列表。

示例 2:CSM 案例操作手册匹配

输入:“对于这个关于账单错误的客户投诉,我应该使用哪份操作手册?”

**步骤:**从 sn_customerservice_case 检索案例详情,查询 trigger_table=sn_customerservice_case 的操作手册,根据产品/类别/描述进行匹配,并结合以往执行的客户满意度指标给出建议。

示例 3:操作手册覆盖情况评估

输入:“列出哪些事件类别没有操作手册覆盖”

**步骤:**查询所有活动操作手册的触发条件,查询所有事件类别及其数量,交叉比对,找出有事件但没有匹配操作手册的类别,并按事件数量确定缺口优先级。

相关技能

  • genai/playbook-generation - 为已识别的缺口创建新的操作手册
  • genai/flow-generation - 为操作手册活动构建底层流程
  • itsm/incident-triage - 事件分类与路由
  • itsm/incident-lifecycle - 事件管理流程
  • csm/case-summarization - 用于匹配的客户案例上下文

评论

支持 Markdown