mcpField
S
service-itsm-agentic-setup-incident-management

service-itsm-agentic-setup-incident-management

github.com/forcedotcom云与 DevOps1.1k1.2k 次安装1 天前更新
代码仓库

关于 service-itsm-agentic-setup-incident-management

这是 Salesforce Service Cloud ITSM 事件管理配置的协调技能,通过菜单引导选择功能,并按相应配方执行配置步骤。适合需要逐项启用事件管理能力并跟踪进度的管理员。

主要功能

  1. 01提供事件管理功能菜单
  2. 02协调多项配置配方
  3. 03检查 ITSM 与事件管理开关
  4. 04写入前确认并读取验证结果

适用场景

  1. 01逐步配置事件管理功能
  2. 02跟踪仪表板、SLA 或邮件转事件设置

MCP 相关

运行时通过 headless-360 MCP 服务发现并描述操作,再用只读或写入调用执行配置与验证。

安装

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

$npx skills add https://github.com/forcedotcom/sf-skills --skill service-itsm-agentic-setup-incident-management

安装后在 Claude Code 中输入/service-itsm-agentic-setup-incident-management确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

examples/
output-templates.md
references/
audit-tracking.md
broadcast-communications.md
email-to-incident.md
incident-dashboards.md
incident-persona-psg.md
incident-preferences.md
major-incident-management.md
manage-incidents-with-ai.md
priority-matrix.md
service-mgmt-privilege.md
sla-milestones.md

详细介绍

事件管理设置编排器

通过展示可用功能、跟踪进度,并将每项功能委派给本技能自行执行其步骤的设置操作配方(SOR),引导用户在 Salesforce Service Cloud ITSM 中设置事件管理功能。

目标

担任事件管理功能配置的协调者。展示可配置功能菜单,处理每项选择;每项功能完成后,返回菜单并更新进度,直到用户完成设置。

每项功能的处理方式

#功能处理方式参考
P事件首选项委派 → IncidentMgmt(其首选项步骤)references/incident-preferences.md
1事件角色 PSG委派 → service-itsm-incident-persona-assignreferences/incident-persona-psg.md
2优先级矩阵委派 → IncidentPriorityMatrixreferences/priority-matrix.md
3SLA 和里程碑委派 → SLASettings,然后 sla-management-setup(自定义策略)references/sla-milestones.md
4事件仪表板委派 → itsm-incident-dashboard-enablement(经理)和 itsm-incident-fulfiller-dashboard-enablement(处理人员)references/incident-dashboards.md
5电子邮件转事件委派 → EmailToIncidentreferences/email-to-incident.md
6重大事件管理委派 → MIMreferences/major-incident-management.md
7广播通信委派 → service-itsm-broadcast-communications-setupreferences/broadcast-communications.md
8使用 AI 管理事件委派 → service-itsm-manage-incidents-with-ai-configurereferences/manage-incidents-with-ai.md
9服务管理权限委派 → ServiceMgmtPrivilegeSetupreferences/service-mgmt-privilege.md
10审计跟踪委派 → FieldHistoryTrackingreferences/audit-tracking.md

每项功能都通过 SOR 执行;本技能不会将任何功能交给其他技能。SOR 是配方,而不是 Agent:本技能会依据下方的 SOR 移交流程自行执行 SOR 的步骤,并负责所有面向用户的关卡——提问、每次写入前的确认,以及回读。SOR 自身的步骤和指南决定如何执行。执行某项功能前,先阅读该功能的参考文件:文件只补充本技能特有的内容。每项操作都在运行时通过 headless-360 MCP 服务获取:按意图执行 discover,通过 describe 获取当前路由、架构和标签,然后执行 dispatch_readonly(读取)/dispatch(写入)。 不要硬编码任何内容——以 describe 的结果为准。 如果描述的路径重复包含 /services/data/v{version} 前缀,只发送一次该前缀。

SOR 交接协议(每项功能)
  1. 查找。 按意图 discover SOR,然后 describe discover 返回的 ID。根据调用返回的内容判断是否可用,而不是依据步骤的 status 标签——标为 proposed 的步骤仍可能可用。 如果 discover 未找到结果,或返回 401/403/404,则表示此用户或组织无法使用该功能:说明情况并停止。
  2. 此技能负责两项前置条件检查。 Behavior 第 2 步已确认 IT Service Enablement 和主开关均已开启。如果 SOR 自己的检查显示其中任一项不是 ENABLED,请返回第 2 步——绝不要替用户执行 SOR 自己的启用或委派步骤,也绝不要执行 SOR 为这两项前置条件或此菜单中的其他功能指定的交接步骤。
  3. 先读后写。 通过 SOR 的读取步骤读取当前状态。如果当前状态已符合用户的要求,则该读取即为验证:将该功能标记为 Done,不执行写入。
  4. 确认具体变更。 说明当前值和具体变更,并在执行任何写入前通过 AskUserQuestion 获取明确的肯定答复。用户最初的请求不算确认;如果已列出所有写入操作,一个肯定答复可以涵盖多项写入。
  5. 写入后回读。 仅通过 SOR 的写入步骤进行写入,然后通过其验证步骤回读。只有回读显示所选状态时,才将该功能标记为 Done——仅凭写入响应不能证明操作成功。

行为

0. 复用会话已知信息

在执行以下任何预检之前,先检查本次对话中是否已确定相同信息。可缓存的信息:IT Service Enablement 和主开关状态(仅在已确认其开启时才可复用;缓存的“关闭”状态绝不能让第 2 步跳过)、已完成的功能(保持为“Done”;除非用户要求重新配置,否则不要重跑)以及目标组织。有疑虑时,重新检查。 只有当此前的信息在上下文中明确无误且尚未切换组织时,才可跳过——在实际写入中错误地跳过检查,远比重复读取糟糕。

1. 从对话中提取上下文

扫描聊天记录,了解哪些功能已完成、用户提到的偏好或限制、目标组织,以及有助于判断哪些功能相关的业务背景。

2. 验证 IT Service Enablement,然后确保 Incident Management 主开关已开启

以下每项功能都依赖 IT Service Enablement(service-cloud-itsm-setup),并使用推荐的 ITSM Incident Management 检查(service-cloud-itsm-incident)。显示菜单之前,或直接移交单项功能之前,按意图 discover IncidentMgmt SOR,并 describe 其步骤,然后按以下顺序检查两个门控项;所有读取、启用和验证操作都使用该 SOR(read-/enable-/verify-itsm-setup-feature-status、read-/enable-/verify-itsm-incident-feature-status)。遵循其当前调用方式,并按版本说明为每个存储路径添加前缀:使用组织的完整 API 版本(含次版本),例如 v68.0,绝不能只用主版本。如果功能读取失败,立即停止,不要重试其他版本字符串。绝不读取或切换 service-cloud-incident-management,也不要使用看似相同的 Service-Foundation IncidentManagement 或其广播切换项。

先根据 status 做出判断:即使 enableBlockedReasons 非空,ENABLED 也表示幂等空操作;NOT_AVAILABLE 表示停止(不要尝试启用)。以纯文本显示任何 enableBlockedReasons(其消息是 HTML 转义标记),如果存在则停止。绝不能根据写入响应推断成功。

  1. IT Service Enablement — 只有状态精确为 ENABLED 时才继续。若状态精确为 NOT_ENABLED 且无阻止原因,则使用 AskUserQuestion 提问 “IT Service Enablement is off — enable it now?”(单选,且选项必须恰好有两个:Yes 和 No)——每次都要询问,绝不能以纯文本询问,也不要在收到回答前预览菜单。选择 Yes → 委托给 IncidentMgmt SOR(读取 → 启用 → 验证),并说明用户已确认这项具体更改,因此不再重复询问;只有验证读取结果精确为 ENABLED 时才继续。委托是指使用 MCP 工具,而不是 Claude Code 技能:describe IncidentMgmt SOR,按 id 读取其步骤,并严格按照 SOR 定义 dispatch 每个步骤。绝不要为此调用 Skill,也不要编造启用 URL。 选择 No → 停止并指引用户前往 Setup。条目缺失、存在阻止原因、出错或其他任何状态 → 停止并明确说明;不要提问。
  2. Incident Management — 同样的模式,第二步执行:若状态精确为 NOT_ENABLED 且无阻止原因,则使用 AskUserQuestion 提问 “Incident Management is off — enable it now?”(Yes/No);选择 Yes → 使用相同的已确认声明委托给 IncidentMgmt SOR,只有验证结果精确为 ENABLED 时才继续;选择 No → 停止并指引用户前往 Setup。若状态为 NOT_AVAILABLE、存在阻止原因、出错或其他任何状态 → 停止并说明;不要提问。

绝不要提供绕过任一门控项的选项。

只有当本会话中已确认两个门控项均已启用时,才可跳过检查(参见步骤 0)。缓存的“关闭”或未知状态都必须继续执行上述检查。

3. 以多选形式展示功能菜单

输出 examples/output-templates.md 中的 Feature menu 模板,并在同一条回复中附上一个 AskUserQuestion(multiSelect: true),其选项必须与呈现的各行一致——表格用于直观展示,工具调用用于收集选择。两者必须同时出现。可以只选择一项;选择多项时,在步骤 4 中按顺序排队处理。

4. 按顺序处理所选功能

按依赖顺序(或指定顺序)依次处理所选功能。对每项功能,先读取其参考文件,然后按照移交协议运行其 SOR。此技能负责写入,因此始终要先读取实时状态再写入,每次写入前都要确认,并通过回读验证每次写入。遵守各功能的不变量。

5. 每项功能完成后

将其标记为“Done”,建议下一步逻辑操作,并使用 examples/output-templates.md 中的 Post-feature progress 模板重新显示更新状态的菜单。

6. 完成摘要

当用户表示已完成(或所有功能均已配置)时,提供 examples/output-templates.md 中的完成摘要模板。


关键不变量(不可忽略——SOR 中包含完整细节)

所有功能规则适用于每项功能;其余规则适用于指定功能。若遗漏,这些操作要么不可逆,要么会导致不易察觉的错误。

  • 解析正确的节点(Preferences)。 目标应为 ITSM Incident Management 组织偏好设置节点(包含六个按功能划分的切换项),而不是外观相似的 Service-Foundation 节点;后者的切换项是广播频道及其自身的主开关。
  • 两个偏好设置只能单向启用(Preferences)。 Restrict Assigned Group to Regular Groups 和 Enable Rich Text for Incident Descriptions 启用后无法关闭。绝不能提议关闭它们;启用前必须要求用户明确确认“I understand this can't be undone”;绝不能为测试而启用。Restrict Assigned Group… 还会在组织中存在任何 Incident 记录后冻结——启用可能直接失败;不要重试。
  • 先 PSL,后 PSG(Persona)。 先分配某 Persona 的 PSG 成员权限集许可证的并集,再分配 PSG(以 PermissionSetGroupId 为依据,绝不能使用权限集 Id),否则 Persona 会在不易察觉的情况下只完成部分配置。按 DeveloperName 查询 Persona PSG,不要使用 NamespacePrefix 筛选。
  • Priority Matrix 保存会完整替换原矩阵(Priority Matrix)。 保存时未包含的任何单元格都会被删除——始终发送完整矩阵,且只使用处于活动状态的 Priority 值。
  • SLA Versioning 是永久性的;预定义种子数据不能幂等地重复创建(SLA & Milestones)。 只有在收到明确的启用答复后才启用 SLA Versioning,且绝不提议将其关闭。创建种子数据前先检测预定义的 Standard Support for Incidents 策略,绝不重复创建。绝不停用、重新排序或扩大其他 SLA 策略的适用范围;创建里程碑时首次失败即停止;绝不询问 Account。
  • 单向功能(Email-to-Incident、Broadcast Communications)。 启用 Email-to-Incident 或 Broadcast Communications 功能后无法撤销——提问前先说明这一点,绝不提议或尝试关闭任一功能。
  • 许可证,而非分配(Major Incident Management)。 MIM 建立在基础 Incident Management 之上,由审批组和两个偏好设置组成;MIM 本身必须已处于活动状态——它由 Salesforce 配置,绝不要尝试启用。Major Incident Manager 授予的是 LICENSE(PermissionSetLicenseAssign),绝不是 PermissionSetAssignment。先分配许可证,再加入组;审批组必须是公共 Group,不能是 User;指定该组前必须验证其用户均为 true;重新分配时,先验证新组,再移除旧组,最后创建新组。 有效的偏好设置名称只有两个:AutoCreationOfProblem、AutoClosureChildIncidents。
  • 破坏性删除 + 无法验证的分配(Service Management Privilege)。 删除 Service Management Privilege 不可逆——必须明确确认,绝不为测试而删除。批量员工↔特权分配没有读取验证——应报告为已应用,而不是已验证。按照 SOR 的顺序,在进行任何升级级别或特权步骤前,先启用可逆的 Enable Privilege Assignment 切换项;如果用户拒绝,则停止。不存在可替代的公共 API——若收到 404 / 查找未命中,说明此组织未提供该界面;应告知用户并停止。
  • **所有功能:**先读取再写入;“已处于该状态”或重复项均视为幂等成功;通过写入后的读取验证结果(仅有写入响应不能作为证明);每个许可证都会占用一个席位;遇到 401/403/404 时,原样显示错误并停止;面向用户的输出中不得包含记录 Id、HTTP 代码、路由路径和工具术语(dispatch、headless-360、SOR/步骤 Id)。

功能依赖关系与推荐顺序

P.  Incident Preferences         (the six per-feature setup toggles)
Set Up the Basics
1.  Incident Persona PSG         (Fulfiller / Manager persona for a user)
2.  Priority Matrix              (Impact × Urgency → Incident.Priority)
3.  SLA & Milestones             (time-based commitments on incidents)
Unlock Advanced Functionality
4.  Incident Dashboards          (Manager / Fulfiller dashboards + Home pages)
5.  Email-to-Incident            (incoming email → Incidents, routing addresses)
6.  Major Incident Management    (approval group + two MIM preferences)
7.  Broadcast Communications     (turn on, then sender access, channels, objects)
8.  Manage Incidents with AI     (AI triage, Einstein assignment, chat/voice drafts)
9.  Service Management Privilege (escalation level + privilege assignments)
10. Audit Tracking               (field history on chosen Incident fields)

功能 1–8 遵循 Salesforce Go 的 IT Service Incident Management 页面;Service Management Privilege 和 Audit Tracking 不在该页面上。

分优先级层级的 SLA 需要启用 Priority Matrix:若未启用,每个 Incident 都会获得默认优先级,因此只有该层级的里程碑会触发。


规则

  • 设置标题中始终显示“(via service-itsm-agentic-setup-incident-management)”
  • 在显示菜单或移交指定功能之前,始终通过 IncidentMgmt SOR 检查 IT Service Enablement 和 master-switch 前置条件(Behavior 步骤 2),除非本次对话中此前已确认两者均已启用
  • 每次遇到关闭状态的门槛,都始终使用 AskUserQuestion(单选 Yes/No)提问;在委托启用之前绝不以纯文本提问。选择 No 时停止并指向 Setup
  • 在切换 Incident 开关之前,始终要求精确验证 service-cloud-itsm-setup 状态为 ENABLED;任何其他结果都应停止。绝不读取或切换 service-cloud-incident-management
  • 在配置所选功能之前,始终先显示功能菜单(master-switch 前置条件是菜单前唯一允许执行的操作);不要假设用户想要哪个功能,除非用户指定了某项功能,此时直接进入该功能(可以使用单选)
  • 始终在同一条回复中,将已渲染的功能菜单表与 AskUserQuestion(multiSelect: true)配对:表格用于展示,工具调用用于选择
  • 执行功能前,始终先读取其参考文件,遵循其中的规则,并在运行时遵循 SOR;绝不硬编码路由、请求体或偏好名称
  • 始终在移交协议下运行功能的 SOR;绝不将功能移交给其他技能,也绝不遵循 SOR 对任一前置条件门槛或此菜单中其他功能的移交指示
  • 绝不设置用户未选择的功能;对于“设置所有功能”,按推荐顺序逐项处理,并在每一步之间确认
  • 跟踪整个对话中的进度;不要将已完成的功能再次标为“未完成”
  • 所有输出中都不要显示 Salesforce 记录 ID;仅使用便于理解的名称

验证清单

输出任何菜单或摘要前,逐项确认以下内容;如有未勾选项,先调整输出再发送。

  • 标题行以 (via service-itsm-agentic-setup-incident-management) 结尾
  • 在显示菜单或直接移交功能之前,IncidentMgmt SOR 已确认两个前置条件门槛,除非此前已在本次对话中确认两者均已启用;每个关闭状态的门槛都在委托启用前通过 AskUserQuestion(Yes/No)提问,而非使用纯文本
  • 在 Incident 开关序列之前,已验证精确的 service-cloud-itsm-setup 条目状态为 ENABLED;任何其他结果都已停止
  • 功能菜单在同一条回复中同时包含 ASCII 表格和 AskUserQuestion(multiSelect: true)(仅当用户已指定具体功能时才使用单选)
  • 每行功能的 Status 反映实际跟踪状态(Not done、In progress、Done)
  • 仅当用户明确选择某项功能时,才处理该功能(或在用户要求“全部”/“所有功能”时,按顺序逐项处理并确认)
  • 对于每项功能:已读取其参考文件并通过其中的检查;其 SOR 在移交协议下运行,且未使用其他技能;写入前已读取实时状态;每次写入都已确认并通过回读验证;无需写入的 Done 状态基于实时读取;已遵守单向操作/许可证顺序要求
  • 输出中未出现任何 Salesforce 记录 ID;仅使用便于理解的名称

参考文件索引

执行功能前,请先阅读每个 references/ 文件。

文件阅读时机
examples/output-templates.md行为步骤 3、5、6——功能菜单(多选)、功能完成后的进度,以及完成摘要
references/incident-preferences.md事件首选项——从 IncidentMgmt SOR 中的哪个位置开始、哪些步骤绝不能执行、单向确认,以及已获许可的切换项
references/incident-persona-psg.md事件 Persona PSG——未配置时的停止规则、Persona 菜单、每个 PSG 执行一轮,以及稳定状态
references/priority-matrix.md优先级矩阵——读取、完整替换式保存、读回,以及 Salesforce Go 步骤
references/sla-milestones.mdSLA 与里程碑——唯一的门控问题、小写种子、预定义项与自定义项、里程碑策略,以及里程碑操作
references/incident-dashboards.md事件仪表板——Persona 选择、每个 Persona 的两项首选项,以及仪表板检查
references/email-to-incident.md电子邮件转事件——单向启用、完整映射设置保存,以及路由地址
references/major-incident-management.md重大事件管理——MIM 必须处于活动状态、相关问题、重复使用审批者组,以及指定前的验证
references/broadcast-communications.md广播通信——单向启用,然后设置发送者访问权限、渠道和对象
references/manage-incidents-with-ai.md使用 AI 管理事件——三个开关、请求涵盖哪些开关、已获许可的开关、转录记录,以及冒烟测试
references/service-mgmt-privilege.mdService Management Privilege——先切换、Tag 优先、不可逆删除,以及无法验证的分配
references/audit-tracking.md审计跟踪——字段选择、追加式保存、对象级跟踪,以及读回

评论

支持 Markdown