关于 service-itsm-agentic-setup-incident-management
这是 Salesforce Service Cloud ITSM 事件管理配置的协调技能,通过菜单引导选择功能,并按相应配方执行配置步骤。适合需要逐项启用事件管理能力并跟踪进度的管理员。
主要功能
- 01提供事件管理功能菜单
- 02协调多项配置配方
- 03检查 ITSM 与事件管理开关
- 04写入前确认并读取验证结果
适用场景
- 01逐步配置事件管理功能
- 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.mdreferences/audit-tracking.mdbroadcast-communications.mdemail-to-incident.mdincident-dashboards.mdincident-persona-psg.mdincident-preferences.mdmajor-incident-management.mdmanage-incidents-with-ai.mdpriority-matrix.mdservice-mgmt-privilege.mdsla-milestones.md详细介绍
事件管理设置编排器
通过展示可用功能、跟踪进度,并将每项功能委派给本技能自行执行其步骤的设置操作配方(SOR),引导用户在 Salesforce Service Cloud ITSM 中设置事件管理功能。
目标
担任事件管理功能配置的协调者。展示可配置功能菜单,处理每项选择;每项功能完成后,返回菜单并更新进度,直到用户完成设置。
每项功能的处理方式
| # | 功能 | 处理方式 | 参考 |
|---|---|---|---|
| P | 事件首选项 | 委派 → IncidentMgmt(其首选项步骤) | references/incident-preferences.md |
| 1 | 事件角色 PSG | 委派 → service-itsm-incident-persona-assign | references/incident-persona-psg.md |
| 2 | 优先级矩阵 | 委派 → IncidentPriorityMatrix | references/priority-matrix.md |
| 3 | SLA 和里程碑 | 委派 → SLASettings,然后 sla-management-setup(自定义策略) | references/sla-milestones.md |
| 4 | 事件仪表板 | 委派 → itsm-incident-dashboard-enablement(经理)和 itsm-incident-fulfiller-dashboard-enablement(处理人员) | references/incident-dashboards.md |
| 5 | 电子邮件转事件 | 委派 → EmailToIncident | references/email-to-incident.md |
| 6 | 重大事件管理 | 委派 → MIM | references/major-incident-management.md |
| 7 | 广播通信 | 委派 → service-itsm-broadcast-communications-setup | references/broadcast-communications.md |
| 8 | 使用 AI 管理事件 | 委派 → service-itsm-manage-incidents-with-ai-configure | references/manage-incidents-with-ai.md |
| 9 | 服务管理权限 | 委派 → ServiceMgmtPrivilegeSetup | references/service-mgmt-privilege.md |
| 10 | 审计跟踪 | 委派 → FieldHistoryTracking | references/audit-tracking.md |
每项功能都通过 SOR 执行;本技能不会将任何功能交给其他技能。SOR 是配方,而不是 Agent:本技能会依据下方的 SOR 移交流程自行执行 SOR 的步骤,并负责所有面向用户的关卡——提问、每次写入前的确认,以及回读。SOR 自身的步骤和指南决定如何执行。执行某项功能前,先阅读该功能的参考文件:文件只补充本技能特有的内容。每项操作都在运行时通过 headless-360 MCP 服务获取:按意图执行 discover,通过 describe 获取当前路由、架构和标签,然后执行 dispatch_readonly(读取)/dispatch(写入)。
不要硬编码任何内容——以 describe 的结果为准。 如果描述的路径重复包含 /services/data/v{version} 前缀,只发送一次该前缀。
SOR 交接协议(每项功能)
- 查找。 按意图
discoverSOR,然后describediscover返回的 ID。根据调用返回的内容判断是否可用,而不是依据步骤的status标签——标为proposed的步骤仍可能可用。 如果discover未找到结果,或返回401/403/404,则表示此用户或组织无法使用该功能:说明情况并停止。 - 此技能负责两项前置条件检查。 Behavior 第 2 步已确认 IT Service Enablement 和主开关均已开启。如果 SOR 自己的检查显示其中任一项不是
ENABLED,请返回第 2 步——绝不要替用户执行 SOR 自己的启用或委派步骤,也绝不要执行 SOR 为这两项前置条件或此菜单中的其他功能指定的交接步骤。 - 先读后写。 通过 SOR 的读取步骤读取当前状态。如果当前状态已符合用户的要求,则该读取即为验证:将该功能标记为
Done,不执行写入。 - 确认具体变更。 说明当前值和具体变更,并在执行任何写入前通过
AskUserQuestion获取明确的肯定答复。用户最初的请求不算确认;如果已列出所有写入操作,一个肯定答复可以涵盖多项写入。 - 写入后回读。 仅通过 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 转义标记),如果存在则停止。绝不能根据写入响应推断成功。
- IT Service Enablement — 只有状态精确为
ENABLED时才继续。若状态精确为NOT_ENABLED且无阻止原因,则使用AskUserQuestion提问 “IT Service Enablement is off — enable it now?”(单选,且选项必须恰好有两个:Yes 和 No)——每次都要询问,绝不能以纯文本询问,也不要在收到回答前预览菜单。选择 Yes → 委托给IncidentMgmtSOR(读取 → 启用 → 验证),并说明用户已确认这项具体更改,因此不再重复询问;只有验证读取结果精确为ENABLED时才继续。委托是指使用 MCP 工具,而不是 Claude Code 技能:describeIncidentMgmtSOR,按id读取其步骤,并严格按照 SOR 定义dispatch每个步骤。绝不要为此调用Skill,也不要编造启用 URL。 选择 No → 停止并指引用户前往 Setup。条目缺失、存在阻止原因、出错或其他任何状态 → 停止并明确说明;不要提问。 - Incident Management — 同样的模式,第二步执行:若状态精确为
NOT_ENABLED且无阻止原因,则使用AskUserQuestion提问 “Incident Management is off — enable it now?”(Yes/No);选择 Yes → 使用相同的已确认声明委托给IncidentMgmtSOR,只有验证结果精确为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)”
- 在显示菜单或移交指定功能之前,始终通过
IncidentMgmtSOR 检查 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)结尾 - 在显示菜单或直接移交功能之前,
IncidentMgmtSOR 已确认两个前置条件门槛,除非此前已在本次对话中确认两者均已启用;每个关闭状态的门槛都在委托启用前通过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.md | SLA 与里程碑——唯一的门控问题、小写种子、预定义项与自定义项、里程碑策略,以及里程碑操作 |
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.md | Service Management Privilege——先切换、Tag 优先、不可逆删除,以及无法验证的分配 |
references/audit-tracking.md | 审计跟踪——字段选择、追加式保存、对象级跟踪,以及读回 |