@salesforce/afv-skills 1.65.0 → 1.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/package.json +1 -1
  2. package/skills/agentforce-offline-experimentation-run/SKILL.md +16 -15
  3. package/skills/agentforce-offline-experimentation-run/scripts/sfap_replay.py +3 -245
  4. package/skills/dx-devops-work-item-manage/SKILL.md +34 -17
  5. package/skills/dx-devops-work-item-manage/examples/common-workflows.md +49 -0
  6. package/skills/dx-devops-work-item-manage/references/commit-api.md +116 -0
  7. package/skills/experience-lwc-widget-assess/SKILL.md +79 -0
  8. package/skills/experience-lwc-widget-migrate/SKILL.md +50 -0
  9. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +2 -23
  10. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +3 -13
  11. package/skills/field-service-mobile-branding-configure/SKILL.md +3 -17
  12. package/skills/field-service-objective-designer-configure/SKILL.md +379 -72
  13. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +537 -10
  14. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +1093 -65
  15. package/skills/field-service-sobject-create-configure/SKILL.md +213 -13
  16. package/skills/field-service-voice-to-form-configure/SKILL.md +11 -40
  17. package/skills/field-service-work-rule-designer-configure/SKILL.md +95 -121
  18. package/skills/platform-role-hierarchy-apply/SKILL.md +177 -0
  19. package/skills/platform-widget-generate/SKILL.md +58 -41
  20. package/skills/platform-widget-generate/references/widget-bundle-validation.md +14 -0
  21. package/skills/service-agentforce-contact-center-coordinate/SKILL.md +1 -1
  22. package/skills/service-agentforce-contact-center-coordinate/references/number_management_api.md +11 -1
  23. package/skills/service-agentforce-contact-center-coordinate/scripts/fetch-numbers.sh +12 -6
  24. package/skills/service-agentforce-contact-center-coordinate/scripts/lib.sh +16 -0
  25. package/skills/service-agentforce-contact-center-coordinate/scripts/procure-number.sh +2 -1
  26. package/skills/service-concierge-portal-generate/references/portal-deploy-runbook.md +24 -11
  27. package/skills/service-digital-engagement-channel-configure/SKILL.md +25 -14
  28. package/skills/service-digital-engagement-channel-configure/references/onboarding_contract.md +143 -0
  29. package/skills/service-digital-engagement-deployment-configure/SKILL.md +61 -12
  30. package/skills/service-digital-engagement-deployment-configure/references/connect_api_creation.md +14 -5
  31. package/skills/service-digital-engagement-deployment-configure/references/onboarding_contract.md +146 -0
  32. package/skills/service-itsm-agentic-setup-incident-management/SKILL.md +23 -13
  33. package/skills/service-itsm-agentic-setup-incident-management/references/incident-persona-psg.md +7 -6
  34. package/skills/service-itsm-agentic-setup-incident-management/references/incident-preferences.md +9 -10
  35. package/skills/service-itsm-agentic-setup-incident-management/references/major-incident-management.md +6 -6
  36. package/skills/service-itsm-agentic-setup-incident-management/references/service-mgmt-privilege.md +1 -1
  37. package/skills/service-itsm-agentic-setup-incident-sla-configure/SKILL.md +34 -25
  38. package/skills/service-itsm-agentic-setup-incident-sla-configure/examples/milestone-patterns.md +1 -1
  39. package/skills/service-itsm-agentic-setup-incident-sla-configure/references/mcp-invocation.md +90 -86
  40. package/skills/service-itsm-agentic-setup-incident-sla-configure/references/workflow.md +63 -38
  41. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +0 -312
  42. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +0 -64
  43. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +0 -46
  44. package/skills/automation-company-profile-info-query/SKILL.md +0 -51
  45. package/skills/automation-digital-wallet-configure/SKILL.md +0 -689
  46. package/skills/automation-flow-coordinate/SKILL.md +0 -95
  47. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +0 -1569
  48. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +0 -96
  49. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +0 -23
  50. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +0 -31
  51. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +0 -179
  52. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +0 -13
  53. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +0 -83
  54. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +0 -69
  55. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +0 -274
  56. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +0 -192
  57. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +0 -130
  58. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +0 -92
  59. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +0 -88
  60. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +0 -152
  61. package/skills/automation-flow-coordinate/references/elements/start/start.md +0 -539
  62. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +0 -152
  63. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +0 -497
  64. package/skills/automation-flow-coordinate/references/recipes/author/author.md +0 -868
  65. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +0 -300
  66. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +0 -292
  67. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +0 -323
  68. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +0 -109
  69. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +0 -219
  70. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +0 -180
  71. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +0 -175
  72. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +0 -255
  73. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +0 -212
  74. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +0 -171
  75. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +0 -786
  76. package/skills/automation-flow-coordinate/references/shared/end/end.md +0 -267
  77. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +0 -69
  78. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +0 -80
  79. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +0 -116
  80. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +0 -321
  81. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +0 -320
  82. package/skills/automation-flow-coordinate/references/shared/server-functions.md +0 -597
  83. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +0 -69
  84. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +0 -78
  85. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +0 -373
  86. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +0 -273
  87. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +0 -259
  88. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +0 -369
  89. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +0 -542
  90. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  91. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +0 -349
  92. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +0 -505
  93. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +0 -380
  94. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +0 -567
  95. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  96. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +0 -360
  97. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +0 -539
  98. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +0 -358
  99. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +0 -602
  100. package/skills/commerce-b2b-store-configure/SKILL.md +0 -251
  101. package/skills/commerce-credit-memo-create/SKILL.md +0 -139
  102. package/skills/commerce-delivery-business-hours-configure/SKILL.md +0 -277
  103. package/skills/commerce-delivery-estimation-apply/SKILL.md +0 -155
  104. package/skills/commerce-delivery-estimation-configure/SKILL.md +0 -377
  105. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +0 -174
  106. package/skills/commerce-estimate-bopis-query/SKILL.md +0 -279
  107. package/skills/commerce-estimate-delivery-date-query/SKILL.md +0 -349
  108. package/skills/commerce-fees-apply/SKILL.md +0 -227
  109. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +0 -200
  110. package/skills/commerce-guest-buyer-create/SKILL.md +0 -173
  111. package/skills/commerce-location-bopis-configure/SKILL.md +0 -378
  112. package/skills/commerce-location-business-hours-configure/SKILL.md +0 -235
  113. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +0 -309
  114. package/skills/commerce-location-graph-integrate/SKILL.md +0 -131
  115. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +0 -755
  116. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +0 -331
  117. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +0 -579
  118. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +0 -626
  119. package/skills/commerce-merchant-catalog-configure/SKILL.md +0 -614
  120. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +0 -368
  121. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +0 -118
  122. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +0 -65
  123. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +0 -90
  124. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +0 -72
  125. package/skills/commerce-merchant-insights-query/SKILL.md +0 -279
  126. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +0 -656
  127. package/skills/commerce-order-summary-change-apply/SKILL.md +0 -375
  128. package/skills/commerce-product-details-get/SKILL.md +0 -363
  129. package/skills/commerce-product-search/SKILL.md +0 -563
  130. package/skills/commerce-react-storefront-create/SKILL.md +0 -350
  131. package/skills/commerce-return-order-summary-create/SKILL.md +0 -513
  132. package/skills/commerce-search-relevance-analyze/SKILL.md +0 -757
  133. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +0 -274
  134. package/skills/communications-initial-setup-configure/SKILL.md +0 -630
  135. package/skills/communications-multisite-configure/SKILL.md +0 -571
  136. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +0 -74
  137. package/skills/communications-smb-fiber-catalog-create/SKILL.md +0 -413
  138. package/skills/communications-tmf-integrate/SKILL.md +0 -1368
  139. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +0 -448
  140. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +0 -269
  141. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +0 -271
  142. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +0 -382
  143. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +0 -373
  144. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +0 -389
  145. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +0 -338
  146. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +0 -547
  147. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +0 -346
  148. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +0 -1110
  149. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +0 -224
  150. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +0 -418
  151. package/skills/crm-analytics-dashboards-configure/SKILL.md +0 -731
  152. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +0 -233
  153. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +0 -184
  154. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +0 -167
  155. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +0 -55
  156. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +0 -1350
  157. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +0 -1862
  158. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +0 -83
  159. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +0 -81
  160. package/skills/data360-activation-create/SKILL.md +0 -104
  161. package/skills/data360-activation-external-platform-get/SKILL.md +0 -49
  162. package/skills/data360-activation-target-create/SKILL.md +0 -93
  163. package/skills/data360-activation-v2-create/SKILL.md +0 -456
  164. package/skills/data360-audience-dmo-get/SKILL.md +0 -38
  165. package/skills/data360-calculated-affinity-create/SKILL.md +0 -82
  166. package/skills/data360-calculated-insight-create/SKILL.md +0 -148
  167. package/skills/data360-catalog-metadata-create/SKILL.md +0 -183
  168. package/skills/data360-code-extension-create/SKILL.md +0 -115
  169. package/skills/data360-communication-capping-create/SKILL.md +0 -227
  170. package/skills/data360-connection-create/SKILL.md +0 -491
  171. package/skills/data360-content-lens-create/SKILL.md +0 -181
  172. package/skills/data360-data-action-create/SKILL.md +0 -126
  173. package/skills/data360-data-action-target-create/SKILL.md +0 -181
  174. package/skills/data360-data-clean-room-create/SKILL.md +0 -238
  175. package/skills/data360-data-governance-create/SKILL.md +0 -746
  176. package/skills/data360-data-graph-create/SKILL.md +0 -82
  177. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +0 -38
  178. package/skills/data360-data-lake-object-create/SKILL.md +0 -207
  179. package/skills/data360-data-model-object-catalog-get/SKILL.md +0 -49
  180. package/skills/data360-data-model-object-create/SKILL.md +0 -128
  181. package/skills/data360-data-model-object-mapping-create/SKILL.md +0 -106
  182. package/skills/data360-data-space-create/SKILL.md +0 -161
  183. package/skills/data360-data-streams-create/SKILL.md +0 -324
  184. package/skills/data360-engagement-signal-get/SKILL.md +0 -38
  185. package/skills/data360-experiment-create/SKILL.md +0 -82
  186. package/skills/data360-goal-based-campaign-create/SKILL.md +0 -192
  187. package/skills/data360-harmonization-process-history-get/SKILL.md +0 -38
  188. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +0 -84
  189. package/skills/data360-identity-resolution-create/SKILL.md +0 -115
  190. package/skills/data360-intelligent-document-processing-create/SKILL.md +0 -148
  191. package/skills/data360-knowledge-graph-construction-create/SKILL.md +0 -93
  192. package/skills/data360-knowledge-graph-create/SKILL.md +0 -216
  193. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +0 -475
  194. package/skills/data360-machine-learning-mcp-configure/SKILL.md +0 -697
  195. package/skills/data360-multi-org-mcp-configure/SKILL.md +0 -117
  196. package/skills/data360-secondary-index-mcp-configure/SKILL.md +0 -126
  197. package/skills/data360-segment-mcp-configure/SKILL.md +0 -159
  198. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +0 -93
  199. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +0 -93
  200. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +0 -93
  201. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +0 -38
  202. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +0 -62
  203. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +0 -38
  204. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +0 -93
  205. package/skills/data360-semantic-model-mcp-configure/SKILL.md +0 -115
  206. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +0 -38
  207. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +0 -73
  208. package/skills/experience-afv-query/SKILL.md +0 -234
  209. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +0 -63
  210. package/skills/experience-apex-components-configure/SKILL.md +0 -69
  211. package/skills/experience-apex-pages-configure/SKILL.md +0 -107
  212. package/skills/experience-app-home-configure/SKILL.md +0 -76
  213. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +0 -58
  214. package/skills/experience-briefcase-configure/SKILL.md +0 -287
  215. package/skills/experience-community-flexi-page-list-create/SKILL.md +0 -74
  216. package/skills/experience-community-template-definition-list-query/SKILL.md +0 -48
  217. package/skills/experience-community-theme-definition-list-query/SKILL.md +0 -38
  218. package/skills/experience-content-assets-configure/SKILL.md +0 -86
  219. package/skills/experience-custom-domain-create/SKILL.md +0 -727
  220. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +0 -41
  221. package/skills/experience-field-service-app-builder-configure/SKILL.md +0 -187
  222. package/skills/experience-flow-category-configure/SKILL.md +0 -117
  223. package/skills/experience-formula-configure/SKILL.md +0 -358
  224. package/skills/experience-global-actions-configure/SKILL.md +0 -69
  225. package/skills/experience-global-publisher-layouts-configure/SKILL.md +0 -79
  226. package/skills/experience-instrumentation-configure/SKILL.md +0 -64
  227. package/skills/experience-lex-engagement-configure/SKILL.md +0 -50
  228. package/skills/experience-lightning-bolt-open/SKILL.md +0 -12
  229. package/skills/experience-lightning-out-configure/SKILL.md +0 -129
  230. package/skills/experience-lightning-preview-configure/SKILL.md +0 -67
  231. package/skills/experience-lightning-types-query/SKILL.md +0 -98
  232. package/skills/experience-malware-scan-configure/SKILL.md +0 -71
  233. package/skills/experience-my-salesforce-configure/SKILL.md +0 -126
  234. package/skills/experience-navigation-menus-configure/SKILL.md +0 -235
  235. package/skills/experience-notification-types-configure/SKILL.md +0 -206
  236. package/skills/experience-notifications-configure/SKILL.md +0 -75
  237. package/skills/experience-record-discovery-query/SKILL.md +0 -227
  238. package/skills/experience-regenerate-previews-open/SKILL.md +0 -94
  239. package/skills/experience-sales-cloud-mab-configure/SKILL.md +0 -254
  240. package/skills/experience-schema-builder-open/SKILL.md +0 -38
  241. package/skills/experience-simple-record-home-configure/SKILL.md +0 -110
  242. package/skills/experience-static-resources-configure/SKILL.md +0 -74
  243. package/skills/field-service-setup-coordinate/SKILL.md +0 -62
  244. package/skills/field-service-work-plan-configure/SKILL.md +0 -253
  245. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +0 -180
  246. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +0 -196
  247. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +0 -106
  248. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +0 -96
  249. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +0 -111
  250. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +0 -250
  251. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +0 -122
  252. package/skills/fsc-digital-origination-coordinate/SKILL.md +0 -653
  253. package/skills/fsc-digital-origination-demo-run/SKILL.md +0 -225
  254. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +0 -112
  255. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +0 -396
  256. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +0 -336
  257. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +0 -208
  258. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +0 -375
  259. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +0 -83
  260. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +0 -248
  261. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +0 -206
  262. package/skills/fsc-document-checklist-settings-configure/SKILL.md +0 -57
  263. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +0 -148
  264. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +0 -1430
  265. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +0 -471
  266. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +0 -429
  267. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +0 -150
  268. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +0 -123
  269. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +0 -82
  270. package/skills/fsc-product-act3-attributes-create/SKILL.md +0 -249
  271. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +0 -196
  272. package/skills/fsc-product-act5-considerations-get/SKILL.md +0 -44
  273. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +0 -384
  274. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +0 -144
  275. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +0 -107
  276. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +0 -189
  277. package/skills/fsc-stage-management-definition-create/SKILL.md +0 -108
  278. package/skills/fsc-stage-management-permissions-assign/SKILL.md +0 -143
  279. package/skills/fsc-stage-management-transitions-configure/SKILL.md +0 -139
  280. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +0 -135
  281. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +0 -134
  282. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +0 -136
  283. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +0 -134
  284. package/skills/health-cloud-care-requests-create/SKILL.md +0 -178
  285. package/skills/health-cloud-initial-configure/SKILL.md +0 -511
  286. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +0 -1374
  287. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +0 -924
  288. package/skills/health-cloud-referral-management-coordinate/SKILL.md +0 -513
  289. package/skills/health-cloud-timeline-configure/SKILL.md +0 -622
  290. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +0 -135
  291. package/skills/industries-account-score-settings-query/SKILL.md +0 -78
  292. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +0 -177
  293. package/skills/industries-ad-product-availability-search/SKILL.md +0 -399
  294. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +0 -628
  295. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +0 -73
  296. package/skills/industries-atm-settings-starter-configure/SKILL.md +0 -76
  297. package/skills/industries-batch-document-ai-configure/SKILL.md +0 -196
  298. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +0 -71
  299. package/skills/industries-branch-management-settings-configure/SKILL.md +0 -89
  300. package/skills/industries-bre-decision-table-access-configure/SKILL.md +0 -367
  301. package/skills/industries-brokerage-settings-configure/SKILL.md +0 -41
  302. package/skills/industries-calendar-sync-settings-configure/SKILL.md +0 -89
  303. package/skills/industries-care-request-settings-configure/SKILL.md +0 -218
  304. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +0 -54
  305. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +0 -380
  306. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +0 -216
  307. package/skills/industries-catalog-process-intake-configure/SKILL.md +0 -219
  308. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +0 -153
  309. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +0 -168
  310. package/skills/industries-cds-general-settings-configure/SKILL.md +0 -69
  311. package/skills/industries-claim-financial-settings-configure/SKILL.md +0 -169
  312. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +0 -136
  313. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +0 -105
  314. package/skills/industries-collection-plan-settings-configure/SKILL.md +0 -132
  315. package/skills/industries-comms-service-console-settings-configure/SKILL.md +0 -159
  316. package/skills/industries-compliance-configure/SKILL.md +0 -102
  317. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +0 -76
  318. package/skills/industries-contact-center-app-layout-configure/SKILL.md +0 -88
  319. package/skills/industries-contact-center-components-configure/SKILL.md +0 -96
  320. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +0 -95
  321. package/skills/industries-contact-center-user-access-assign/SKILL.md +0 -96
  322. package/skills/industries-course-waitlist-config-configure/SKILL.md +0 -162
  323. package/skills/industries-crisis-center-settings-configure/SKILL.md +0 -84
  324. package/skills/industries-custom-object-settings-configure/SKILL.md +0 -94
  325. package/skills/industries-data-cloud-integration-configure/SKILL.md +0 -88
  326. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +0 -245
  327. package/skills/industries-decision-matrix-builder-configure/SKILL.md +0 -78
  328. package/skills/industries-decision-table-hbase-configure/SKILL.md +0 -87
  329. package/skills/industries-decision-table-version-configure/SKILL.md +0 -74
  330. package/skills/industries-decision-tables-builder-configure/SKILL.md +0 -253
  331. package/skills/industries-decision-tables-configure/SKILL.md +0 -439
  332. package/skills/industries-energy-utilities-configure/SKILL.md +0 -251
  333. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +0 -1008
  334. package/skills/industries-eu-new-connections-configure/SKILL.md +0 -30
  335. package/skills/industries-explainability-msg-template-configure/SKILL.md +0 -135
  336. package/skills/industries-expression-set-message-token-configure/SKILL.md +0 -135
  337. package/skills/industries-field-service-settings-configure/SKILL.md +0 -82
  338. package/skills/industries-form-framework-settings-configure/SKILL.md +0 -30
  339. package/skills/industries-fsc-ai-settings-configure/SKILL.md +0 -57
  340. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +0 -172
  341. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +0 -61
  342. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +0 -58
  343. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +0 -103
  344. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +0 -117
  345. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +0 -99
  346. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +0 -120
  347. package/skills/industries-fundraising-rfm-configure/SKILL.md +0 -128
  348. package/skills/industries-fundraising-settings-configure/SKILL.md +0 -145
  349. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +0 -299
  350. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +0 -87
  351. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +0 -58
  352. package/skills/industries-hc-score-category-settings-configure/SKILL.md +0 -167
  353. package/skills/industries-health-engagement-settings-configure/SKILL.md +0 -218
  354. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +0 -131
  355. package/skills/industries-home-health-bundling-policy-create/SKILL.md +0 -50
  356. package/skills/industries-home-health-entity-labels-configure/SKILL.md +0 -29
  357. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +0 -71
  358. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +0 -27
  359. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +0 -80
  360. package/skills/industries-home-health-guided-setup-configure/SKILL.md +0 -836
  361. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +0 -55
  362. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +0 -61
  363. package/skills/industries-home-health-licenses-assign/SKILL.md +0 -27
  364. package/skills/industries-home-health-operating-hours-create/SKILL.md +0 -40
  365. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +0 -41
  366. package/skills/industries-home-health-service-objective-create/SKILL.md +0 -22
  367. package/skills/industries-home-health-skills-create/SKILL.md +0 -31
  368. package/skills/industries-home-health-users-create/SKILL.md +0 -29
  369. package/skills/industries-icm-act3-toggles-configure/SKILL.md +0 -198
  370. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +0 -361
  371. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +0 -550
  372. package/skills/industries-integrated-care-management-configure/SKILL.md +0 -168
  373. package/skills/industries-object-enablement-configure/SKILL.md +0 -86
  374. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +0 -64
  375. package/skills/integration-apex-settings-configure/SKILL.md +0 -61
  376. package/skills/marketing-e360-email-archiving-configure/SKILL.md +0 -73
  377. package/skills/platform-custom-permissions-configure/SKILL.md +0 -687
  378. package/skills/platform-label-workbench-import-create/SKILL.md +0 -67
  379. package/skills/platform-privacy-agent-settings-configure/SKILL.md +0 -752
@@ -51,7 +51,7 @@ licensing is part of the orchestrator's **Major Incident Management** feature).
51
51
  existing assignments (idempotency); assigning the missing backing PSL(s) and then the PSG; verifying by
52
52
  read-back.
53
53
  - **Out of scope**: the **Major Incident Manager** PSG; creating / editing / recalculating a PSG or its
54
- membership; enabling ITSM / incident-management features (`service-itsm-incident-mgmt-configure`); the
54
+ membership; enabling ITSM / incident-management features (the `IncidentMgmt` SOR's master-feature steps); the
55
55
  `IncidentFulfiller` permission **set** for the Fulfiller **agent's** access
56
56
  (`service-itsm-agentic-setup-itsm-agentforce-permset-assign`); CMDB access
57
57
  (`service-itsm-agentic-setup-cmdb-access-assign`); generic, non-incident permission-set / PSG assignment
@@ -60,7 +60,8 @@ licensing is part of the orchestrator's **Major Incident Management** feature).
60
60
  ## Preconditions
61
61
 
62
62
  - **ITSM Incident Management must be provisioned** — the incident persona PSGs must exist on the org. If
63
- neither is found, **stop and hand off** to `service-itsm-incident-mgmt-configure`; assign nothing.
63
+ neither is found, **stop and report that the personas are not provisioned**; the master-feature
64
+ prerequisite is handled by the orchestrator, but enabling it does not prove the PSGs exist.
64
65
  - **The acting user must be able to assign permission sets** (the SOR gates writes on it). A write that
65
66
  fails with an access error that is not a duplicate → surface it plainly and stop; an admin must do it.
66
67
  - **Each backing license consumes a seat.** A seat-exhausted license blocks that persona; report it.
@@ -68,8 +69,8 @@ licensing is part of the orchestrator's **Major Incident Management** feature).
68
69
  ## Operations (shapes come from `describe`)
69
70
 
70
71
  1. **Resolve which incident persona PSGs exist (read).** Look up the two PSGs by `DeveloperName`
71
- (`IncidentFulfillerPSG`, `IncidentManagerPSG`) with **no `NamespacePrefix` filter**. None found → hand
72
- off to `service-itsm-incident-mgmt-configure` and stop. Capture each PSG's Id and status.
72
+ (`IncidentFulfillerPSG`, `IncidentManagerPSG`) with **no `NamespacePrefix` filter**. None found →
73
+ stop and report that the personas are not provisioned. Capture each PSG's Id and status.
73
74
  2. **Resolve the target user (read).** To exactly one active user. For "me" / "the current user", read the
74
75
  API root's identity (the running user's `005…` Id) — **not** the `USER_ID()` SOQL function (Apex-only)
75
76
  and **not** the Chatter current-user endpoint (fails when Chatter is off). Zero / multiple → disambiguate.
@@ -124,13 +125,13 @@ Persona: <Incident Fulfiller | Incident Manager>
124
125
  ```
125
126
 
126
127
  Repeat the `Persona:` block per PSG if both were chosen. Report only what read-back confirmed. If the
127
- personas are not on the org, say so and name `service-itsm-incident-mgmt-configure`.
128
+ personas are not on the org, say so without claiming master enablement will provision them.
128
129
 
129
130
  ## Common failures (surface in plain language)
130
131
 
131
132
  | Symptom | Likely cause | What to tell the user |
132
133
  |---------|--------------|-----------------------|
133
- | No incident PSG on the org | ITSM Incident Management not provisioned | The incident personas aren't set up yet — that's a separate step (`service-itsm-incident-mgmt-configure`) |
134
+ | No incident PSG on the org | Incident persona PSGs not provisioned | The incident personas aren't set up yet — stop and report the missing PSGs |
134
135
  | Duplicate on assign | User already has that grant | Not an error — report as already assigned |
135
136
  | Seat / limit error on a license | An incident license has no free seats | A seat must free up (or more licenses added); the persona is incomplete without it |
136
137
  | PSG assigned but some actions missing | A backing license wasn't assigned, or the PSG is still recalculating | Confirm every backing license is assigned; if it's settling, retry in a moment |
@@ -6,7 +6,7 @@ Incident Management preferences** (the feature toggles on the Incident Managemen
6
6
  four meta-tools (`discover`, `describe`, `dispatch_readonly`, `dispatch`). The org comes from the OAuth JWT
7
7
  on the MCP session — never handle an org id, alias, or credentials. Minimum API version **67.0**.
8
8
 
9
- This is **not** the master Incident Management on/off switch (`service-itsm-incident-mgmt-configure`) nor
9
+ This is **not** the master Incident Management on/off switch (the master-feature steps of the `IncidentMgmt` SOR) nor
10
10
  the Incident Priority Matrix (`service-itsm-incident-priority-configure`).
11
11
 
12
12
  ## Delegate to the Setup Operation Recipe
@@ -20,17 +20,16 @@ id; a `discover` miss is not proof an operation is unavailable.
20
20
 
21
21
  | SOR | Owns | Status |
22
22
  |-----|------|--------|
23
- | **`IncidentMgmt`** (owning team ITSM-Aditya; controller `IPCManagementSetupController`) | Read a preference; toggle a preference; verify a preference read-back | Served |
23
+ | **`IncidentMgmt`** | Read a preference; toggle a preference; verify a preference read-back | Served |
24
24
 
25
25
  Discover by intent — e.g. `discover("configure ITSM incident management preferences: automatically triage
26
26
  incidents, assign incidents with Einstein, enable rich text for incident descriptions")`.
27
27
 
28
28
  > **Resolve the right node — load-bearing.** Two setup nodes share the "Incident" name. Target the
29
- > **ITSM Incident Management org-preferences** node (controller `IPCManagementSetupController`) whose
30
- > toggles are the six below — **not** the Service-Foundation "Incident Management" node
31
- > (`IncidentMgmtSetupController`), whose toggles are broadcast/notification channels (Email/Sites/Alerts/
32
- > Slack) and a master switch. If a `discover` result is about broadcast channels or a master on/off, it is
33
- > the wrong node.
29
+ > **ITSM Incident Management org-preferences** node whose toggles are the six below — **not** the
30
+ > Service-Foundation "Incident Management" node, whose toggles are broadcast/notification channels
31
+ > (Email/Sites/Alerts/Slack). The `IncidentMgmt` SOR also owns the master on/off switch; a `discover`
32
+ > result about broadcast channels is the wrong node.
34
33
 
35
34
  ## Operations (shapes come from `describe`)
36
35
 
@@ -78,7 +77,7 @@ phrasing and the known-name enumeration.
78
77
  surface the raw access error and stop.
79
78
  - **Incident Management provisioned**: these preferences are writable only when Incident Management is
80
79
  enabled at the feature/license level. If reads or writes fail with an availability error, say the feature
81
- must be enabled first (`service-itsm-incident-mgmt-configure`) and stop.
80
+ must be enabled first (the `IncidentMgmt` SOR's master-feature steps) and stop.
82
81
 
83
82
  ## Workflow
84
83
 
@@ -124,7 +123,7 @@ and what it means (e.g. "that setting can't be turned on once incidents exist").
124
123
  |---------|--------------|-----------------------|
125
124
  | Enable of "Restrict Assigned Group…" fails | The org already has Incident records (server freezes it) | That setting can only be turned on before any incidents exist; it can't be enabled now |
126
125
  | Read/write blocked with an access error | Caller lacks ITSM setup access | An admin with setup access must make this change |
127
- | Read/write unavailable on the org | Incident Management not enabled | Enable Incident Management first (`service-itsm-incident-mgmt-configure`) |
126
+ | Read/write unavailable on the org | Incident Management not enabled | Enable Incident Management first through the `IncidentMgmt` SOR's master-feature steps |
128
127
  | Change didn't persist on read-back | Write did not take | Report it as failed and show the current state; do not claim success |
129
128
  | `dispatch*` auth error | headless-360 session not authenticated / expired | Re-authenticate the connection and confirm it points at the intended org |
130
129
 
@@ -144,5 +143,5 @@ missing setup access or an unauthenticated session. A `404` = the operation is n
144
143
  - Read or write against the Service-Foundation `IncidentManagement` node (broadcast channels) — wrong node.
145
144
  - Read or write any preference name the SOR does not list — an unknown name reads as `false` and is
146
145
  rejected on write.
147
- - Toggle the **master** Incident Management switch here (`service-itsm-incident-mgmt-configure`) or the
146
+ - Toggle the **master** Incident Management switch as part of this preferences feature (use the orchestrator's prerequisite over the `IncidentMgmt` SOR) or the
148
147
  **Incident Priority Matrix** (`service-itsm-incident-priority-configure`).
@@ -25,7 +25,7 @@ routes are not always ranked first; only a `404` from the dispatch itself means
25
25
  Read each step's `status` from `describe`: `implemented` = live; `proposed` = not served on every org yet.
26
26
 
27
27
  > **MIM is configured by the two surfaces below.** The only feature that must be *on* first is **base**
28
- > Incident Management (`service-itsm-incident-mgmt-configure`) — see Preconditions.
28
+ > Incident Management (the master-feature steps of the `IncidentMgmt` SOR) — see Preconditions.
29
29
 
30
30
  ### Transports MIM uses (all via the same `dispatch*` tools)
31
31
 
@@ -44,7 +44,7 @@ Read each step's `status` from `describe`: `implemented` = live; `proposed` = no
44
44
  precondition, licensing approvers with the **Major Incident Manager permission-set license** and standing
45
45
  up the approvers **public group**. Verify every write by read-back.
46
46
  - **Out of scope**: base Incident Management enablement
47
- (`service-itsm-incident-mgmt-configure` — a prerequisite); the Incident Fulfiller / Incident Manager
47
+ (the `IncidentMgmt` SOR's master-feature steps — a prerequisite); the Incident Fulfiller / Incident Manager
48
48
  **persona** PSG (the orchestrator's **Persona** feature — see `references/incident-persona-psg.md`);
49
49
  Problem / Change / Case Management; the Priority Matrix; SLA / entitlement setup; any MIM org preference
50
50
  **other than** the two allowlisted.
@@ -53,8 +53,8 @@ Read each step's `status` from `describe`: `implemented` = live; `proposed` = no
53
53
 
54
54
  The acting user needs **ITSM setup access** (the SOR gates every MIM route on it), and:
55
55
 
56
- 1. **Base Incident Management must be enabled** — MIM layers on it. If it is off, **stop and hand off** to
57
- `service-itsm-incident-mgmt-configure`; do not configure MIM without base Incident Management.
56
+ 1. **Base Incident Management must be enabled** — MIM layers on it. The orchestrator first follows the
57
+ `IncidentMgmt` SOR's read/confirm/enable/verify prerequisite; stop if it cannot confirm ENABLED.
58
58
  2. **Approvers must hold the Major Incident Manager permission-set license.** This is a **LICENSE** —
59
59
  granted via `PermissionSetLicenseAssign` (`{AssigneeId, PermissionSetLicenseId}`), **never** a
60
60
  `PermissionSetAssignment`. Group-user validation requires every direct and transitive user of a group
@@ -135,7 +135,7 @@ Major Incident Management
135
135
  ```
136
136
 
137
137
  Report only what read-back confirmed; omit lines for surfaces out of the requested scope. If base Incident
138
- Management is off, say so and name `service-itsm-incident-mgmt-configure`.
138
+ Management cannot be confirmed on, say so and stop without configuring MIM.
139
139
 
140
140
  ## Common failures (surface in plain language)
141
141
 
@@ -158,5 +158,5 @@ Management is off, say so and name `service-itsm-incident-mgmt-configure`.
158
158
  - Designate a **group** approver without `validate-group-users` returning **true** first.
159
159
  - Reassign without removing the existing designation first (create is a silent no-op).
160
160
  - Send any preference name other than `AutoCreationOfProblem` / `AutoClosureChildIncidents`.
161
- - Attempt MIM setup when base Incident Management is off — hand off to `service-itsm-incident-mgmt-configure`.
161
+ - Attempt MIM setup when base Incident Management is off — first complete the `IncidentMgmt` master-feature prerequisite.
162
162
  - Pass `dispatch` the `{operation_id, arguments}` shape — it takes raw HTTP.
@@ -70,7 +70,7 @@ keyed on the org preference **`PrivilegeAssignmentEnabled`**.
70
70
  - **In scope**: read / set the **Enable Privilege Assignment** master toggle; read / set the org-wide
71
71
  **escalation level**; list / create / update / delete **Service Management Privilege** definitions; bulk
72
72
  **add / remove employee assignments** for a privilege; verify by read-back where one exists.
73
- - **Out of scope**: base Incident Management enablement (`service-itsm-incident-mgmt-configure`); the
73
+ - **Out of scope**: base Incident Management enablement (the `IncidentMgmt` SOR's master-feature steps); the
74
74
  Incident Fulfiller / Incident Manager **persona** PSG (the orchestrator's **Persona** feature); the Major
75
75
  Incident Manager approver licensing (the **Major Incident Management** feature); Problem / Change / Case
76
76
  Management; the Priority Matrix; SLA setup.
@@ -2,13 +2,10 @@
2
2
  name: service-itsm-agentic-setup-incident-sla-configure
3
3
  description: "End-to-end Incident SLA setup for Service Cloud ITSM — the policy's Business Hours (reuse a named schedule, or create one from described hours or a time zone), MilestoneTypes, an Incident-scoped SLA Policy (SlaProcess), Milestones with criteria, and the Entitlement so Incidents get an EntityMilestone with a computed TargetDate. Use when the user asks to create or set up an Incident SLA policy (predefined or custom, with or without specific business hours), configure SLA milestones on Incidents, set up entitlement processes for ITSM, or enable SLA tracking for incident management. For Incidents, use this instead of the single-step SLA policy, milestone, or activation skills. DO NOT TRIGGER when: the user asks about Case entitlements or Case SLA (not Incident), querying existing SLA policies without setup intent, general Entitlement sObject CRUD unrelated to Incident, or Milestone queries for reporting purposes only."
4
4
  metadata:
5
- version: "3.10"
5
+ version: "3.11"
6
6
  domains: ["Service"]
7
7
  minApiVersion: "67.0"
8
8
  accessCheck: "(UserPermissions.CustomizeApplication) && (IncidentMgmt.orgHasITSMOrgPermission)"
9
- relatedSkills:
10
- - "service-itsm-incident-mgmt-configure"
11
- - "service-itsm-incident-priority-configure"
12
9
  mcpTools:
13
10
  headless-360:
14
11
  tools: ["describe", "discover", "dispatch", "dispatch_readonly"]
@@ -24,11 +21,15 @@ allowed-tools: |
24
21
 
25
22
  # Configuring Incident SLA (End-to-End)
26
23
 
24
+ **First action, before any question to the user:** read the IT Service Enablement gate (Phase 1a) with
25
+ `dispatch_readonly` on `GET /services/data/v68.0/connect/setup/discovery/features`, filtered to the exact
26
+ apiName `service-cloud-itsm-setup`. Ask nothing else until it is `ENABLED`.
27
+
27
28
  Configures a complete **Incident SLA pipeline** for Service Cloud ITSM — the chain deriving an
28
29
  EntityMilestone (with a computed TargetDate) on every Incident with an Entitlement, all via the
29
30
  Salesforce-hosted **`headless-360`** MCP server (org from the OAuth JWT). Requires the org-level
30
31
  **IT Service Management enablement** (the Phase 1a gate) and **SLA Management for IT Service**
31
- setup item (the Phase 1b gate).
32
+ setup item (the Phase 1c gate), plus **Incident Management** (the Phase 1b gate).
32
33
  The custom pipeline (four ordered writes): **MilestoneType** (what you measure) → **SLA Policy**
33
34
  (SlaProcess, Incident-scoped, created inactive, entry/exit criteria) → **Milestone** (time trigger +
34
35
  criteria) → **activate the policy** (`createEntitlement=true`, which auto-provisions the Entitlement —
@@ -42,7 +43,7 @@ verification); the raw **write** operations are **delegated to the approved SLA
42
43
  leaf capabilities** (`csp-sun/MilestoneTypes`, `create-sla-policy`, `create-milestone`,
43
44
  `create-milestone-action`, `activate-sla-policy`, `create-entitlement-criteria`), which own the
44
45
  approved Connect contracts — discover → describe → dispatch each rather than re-deriving its shape here.
45
- The Phase 1b **enable** (+ Versioning) and Phase 4B **seed** writes delegate to
46
+ The Phase 1c **enable** (+ Versioning) and Phase 4B **seed** writes delegate to
46
47
  **`itsm-shakti/SLASettings`** (owns the SLA-Management settings surface) — same discover → describe → dispatch.
47
48
 
48
49
  ## Scope
@@ -51,7 +52,7 @@ The Phase 1b **enable** (+ Versioning) and Phase 4B **seed** writes delegate to
51
52
  activation with its auto-provisioned Entitlement, and — only on an explicit org-wide always-match
52
53
  request — the optional auto-apply criterion) + verifying SLA
53
54
  engagement on Incident records; gating
54
- **SLA Management for IT Service** (Phase 1b); offering the OOB *Standard Support for Incidents*
55
+ **SLA Management for IT Service** (Phase 1c); offering the OOB *Standard Support for Incidents*
55
56
  policy vs a custom one (Phase 2, Incident only) — all via `headless-360` MCP.
56
57
  - **Out of scope**: Case SLA/entitlements; Assignment Rules; Escalation Rules; Notification
57
58
  Rules; general Entitlement CRUD not related to Incident SLA; SLA reporting.
@@ -89,8 +90,7 @@ from `{status_code, body}`. Full route table with request/response shapes: `refe
89
90
  ## Clarifying Questions
90
91
 
91
92
  Ask only what you cannot infer from context (pre-populate; note "(from conversation)"). **Resolve the
92
- Phase 1a and Phase 1b gates first, in that order.** Then: **which org?** (`headless-360` binds to the current OAuth session —
93
- confirm before mutating); **milestone strategy?** (Phase 3b); **milestone criteria?** (default
93
+ Phase 1a gate, then the Phase 1b Incident Management gate, then the Phase 1c gate, first and in that order.** Then: (`headless-360` binds to the current OAuth session, so do not ask which org); **milestone strategy?** (Phase 3b); **milestone criteria?** (default
94
94
  `Status != Closed` + pattern-specific filters). **Do not ask for an Account** — Incident has no
95
95
  Account field; engagement is per-Incident via `EntitlementId`. **Business Hours:** ask only when the
96
96
  user's choice is ambiguous or the org has none (Phase 3a step 4); never ask on the Predefined path.
@@ -110,17 +110,26 @@ before executing.** Phase index and their non-negotiable gates:
110
110
 
111
111
  - **Before you start — Reuse session state** only from a successful `dispatch_readonly` this session on this
112
112
  org, unwritten since; a user statement is never cache-eligible.
113
- - **Phase 1a — IT Service Management gate** (`service-cloud-itsm-setup`). `NOT_ENABLED` → one ack
114
- (reversible) → direct enable → re-read.
115
- - **Phase 1b — SLA Management gate.** SLA Management **and** the permanent SLA Versioning switch — two
116
- writes, two separate acks (master, then permanence); delegate to `itsm-shakti/SLASettings`.
113
+ - **Phase 1a — IT Service Management gate** (`service-cloud-itsm-setup`). Exact `ENABLED` continues.
114
+ Exact `NOT_ENABLED` with no blocked reasons → ask “IT Service Enablement is off — enable it now?” via `AskUserQuestion` (Yes/No, never plain text; No halts) → delegate to
115
+ the `IncidentMgmt` SOR with that confirmation → use its verify step before continuing. Missing,
116
+ error, blocked, or any other status halts and points to Setup.
117
+ - **Phase 1b — Incident Management gate** (`service-cloud-itsm-incident`). Exact `ENABLED` continues; `NOT_AVAILABLE` → HALT; exact
118
+ `NOT_ENABLED` with no blocked reasons → its own Yes/No “Incident Management is off — enable it now?” via `AskUserQuestion`, delegate to the
119
+ `IncidentMgmt` SOR (MCP steps, never `Skill`), verify exact `ENABLED`; No halts.
120
+ - **Phase 1c — SLA Management gate.** SLA Management **and** the permanent SLA Versioning switch — two
121
+ writes; delegate to `itsm-shakti/SLASettings`. Read both flags first. If either is off, ask with
122
+ `AskUserQuestion` before ANY write, as two separate questions: **Q1** “SLA Management for IT Service
123
+ is off — enable it now?” (Yes/No; only when SLA Management is off), then **Q2** the SLA Versioning
124
+ permanence ack (Enable / Stop; exact wording in `references/mcp-invocation.md`). Never merge them, never
125
+ preview later steps before each is answered, and never treat a Yes at Phase 1a/1b or the original
126
+ request as consent; any No → HALT.
117
127
  - **Phase 2 — Predefined vs Custom** (Incident only). Detect the seeded policy first; read the live
118
128
  `Incident.Priority` picklist before the fork (custom values → recommend Custom); warn if the
119
129
  priority matrix is off (only the default tier fires); Business Hours note only if the user
120
130
  specified hours. Predefined → 4B → 5 (if asked) → 6 → **STOP**;
121
131
  Custom → 3a → 3b → 3c → 4A → 5 (if asked) → 6.
122
- - **Phase 3a — Preflight.** Master Incident Mgmt (`service-cloud-itsm-incident`; `NOT_AVAILABLE` →
123
- HALT, `NOT_ENABLED` → one ack + delegate), `discover`/`describe` the SLA ops, Incident describe,
132
+ - **Phase 3a — Preflight.** Step 1 only reuses the Phase 1b Incident Management result; then `discover`/`describe` the SLA ops, Incident describe,
124
133
  resolve Business Hours, idempotency probe. No Account. `401`/`403`/`404` → halt with the raw error.
125
134
  - **Phase 3b — Milestone strategy** per `examples/milestone-patterns.md`.
126
135
  - **Phase 3c — Confirm** the full plan (Business Hours by name, every milestone) before any write.
@@ -139,15 +148,15 @@ before executing.** Phase index and their non-negotiable gates:
139
148
 
140
149
  | Constraint | Rationale |
141
150
  |-----------|-----------|
142
- | Gate **IT Service Management enablement** first (Phase 1a, before Phase 1b) — exact apiName `service-cloud-itsm-setup`, never a look-alike; `NOT_ENABLED` → tell the user plainly + a single ack to enable (reversible) or stop; the enable write is dispatched **directly** (no owning SOR exists yet) and re-read to confirm | Higher-level org gate sits above every ITSM feature, including the Master Incident Mgmt pref below |
143
- | Gate **SLA Management** first (Phase 1b) — **two separate writes** (SLA Management, then the one-way **SLA Versioning**); **two separate acks (master, then permanence) — never merged**; decline/blocked/verify-fail → **HALT**; re-read + report real state | Versioning is irreversible; writes don't confirm state |
151
+ | Gate **IT Service Management enablement** (Phase 1a), then **Incident Management** (Phase 1b, its own Yes/No) before Phase 1c — exact apiNames only, never a look-alike; rules as in the phase list above | Higher-level org gate sits above every ITSM feature |
152
+ | Gate **SLA Management** first (Phase 1c) — **two separate writes** (SLA Management, then the one-way **SLA Versioning**); **two separate `AskUserQuestion`s before any write (Q1 SLA Management Yes/No, then Q2 permanence) — never merged, never inferred from an earlier gate's Yes**; decline/blocked/verify-fail → **HALT**; re-read + report real state | Versioning is irreversible; writes don't confirm state |
144
153
  | Offer **predefined (OOB)** first (Phase 2, Incident only); detect before seed; if chosen, seed → verify → **STOP** (no custom upsell) | OOB seed isn't idempotent — re-seed duplicates |
145
154
  | `discover` + `describe` before any mutation | Catches a missing SLA surface / disabled Incident Mgmt early |
146
155
  | Ask (`AskUserQuestion`) the milestone strategy — never silently default to Single | Real ITSM policies have >1 milestone |
147
156
  | Reuse one MilestoneType per shared name; a distinct one per distinct concern | Runtime keys milestones by MilestoneType |
148
157
  | Multi-milestone: halt on any milestone-create failure (no half-attached policy) | Partial attach diverges from the confirmed plan |
149
158
  | Priority-tiered: reconcile every `Priority` value against the live picklist before dispatch — drop/rename standard rows that don't match **and add a milestone for each custom active value** the org added | Server accepts any string → an unknown value is a dead milestone; a custom value with no milestone gets no SLA |
150
- | **Delegate every write to its approved SLA leaf** (`MilestoneTypes`, `create-sla-policy`, `create-milestone`, `create-milestone-action`, `activate-sla-policy`, `create-entitlement-criteria`) — the skill decides inputs, the leaf owns the contract. Scoped inline exceptions (no served owning SOR yet): the Phase 1a enable and the Phase 4A step 1 Business Hours create | Single contract-owner per write; the skill re-deriving Connect shapes drifts from the served leaves |
159
+ | **Delegate every owned write** — prerequisite feature enables to the `IncidentMgmt` SOR; SLA writes to their approved SLA leaves (`MilestoneTypes`, `create-sla-policy`, `create-milestone`, `create-milestone-action`, `activate-sla-policy`, `create-entitlement-criteria`). The Phase 4A step 1 Business Hours create remains inline because no served SOR owns it | Single contract-owner per write; re-deriving an owned contract here would drift from its served owner |
151
160
  | **Business Hours** (Custom): honor a named schedule, described calendar, or time zone (time zone only → ask 24×7 (recommended) or custom hours; reuse a match, else create one after the Phase 3c confirm); zero active → offer a 24×7 create. Never set `IsDefault` or modify an existing record. Predefined: the seeder always uses the org default — warn only if the user specified hours | Default 24×7 or the customer's own calendar; `BusinessHours` is not API-deletable, so creates are confirmed first |
152
161
  | **Custom flow**: activation provisions the auto-Entitlement (`activate-sla-policy`: `isActive` + `createEntitlement` as **QUERY params**) — matching Incidents then engage **per-Incident via `EntitlementId`** (**not** a manual sObject Entitlement, and no Account). An org-wide auto-apply criterion via `create-entitlement-criteria` is **optional** — only on an explicit always-match request, never by default. **OOB seed path**: one seeder call (`save-selected-options`, lowercase `selectedOptions`) provisions the entire active bundle incl. the Entitlement — no per-leaf calls, no manual `POST /sobjects/Entitlement`, no activate PATCH | Custom: one call activates **and** provisions, so a manual `POST /sobjects/Entitlement` would duplicate it. OOB: the platform seeder builds and activates the whole default bundle server-side, so the skill neither rebuilds it leaf-by-leaf nor provisions the Entitlement by hand |
153
162
  | **No record Id in any message** (see Output contract, incl. reused artifacts); `AskUserQuestion` labels customer-facing (no "demo"/internal defaults) | Leaked Ids / internal framing look unprofessional to the customer |
@@ -159,10 +168,10 @@ Additional API quirks: `references/mcp-invocation.md`.
159
168
 
160
169
  ## Verification Checklist
161
170
 
162
- - [ ] **IT Service Management enablement gated (Phase 1a)** — exact apiName `service-cloud-itsm-setup` read `ENABLED` via live read, or the user explicitly acked an enable (reversible) that a re-read confirms; declined / unexpected status → **HALTED** before Phase 1b.
163
- - [ ] **SLA Management gated (Phase 1b)** — SLA Management + SLA Versioning both on (two separate writes), only after the **permanence ack** (separate from the master ack); reported state = a re-read, not the write. Declined / blocked / verify-fail → **HALTED** before Phase 2/3a, no artifacts.
171
+ - [ ] **IT Service Management enablement gated (Phase 1a)** — exact apiName `service-cloud-itsm-setup` read exact `ENABLED`, or exact `NOT_ENABLED` with no blocked reasons received one Yes/No enable question delegated to the `IncidentMgmt` SOR and its verify step confirmed exact `ENABLED`; declined, blocked, missing, error, or unexpected status → **HALTED** before Phase 1b.
172
+ - [ ] **Incident Management gated (Phase 1b)** — exact `service-cloud-itsm-incident` `ENABLED` via live read, or delegated to the `IncidentMgmt` SOR after its own Yes/No when `NOT_ENABLED` (`NOT_AVAILABLE` → HALT); its verify step confirmed `ENABLED` — not a user assertion, not a look-alike.
173
+ - [ ] **SLA Management gated (Phase 1c)** — SLA Management + SLA Versioning both on (two separate writes), only after Q1 (SLA Management Yes/No) and the separate Q2 **permanence ack**, each asked via `AskUserQuestion`; reported state = a re-read, not the write. Declined / blocked / verify-fail → **HALTED** before Phase 2/3a, no artifacts.
164
174
  - [ ] **Predefined vs Custom offered (Phase 2)** — with the feature ON, OOB *Standard Support for Incidents* offered first; if present, reported not re-seeded; if chosen, seeded (2 MilestoneTypes + 6 milestones + Entitlement), verified, **no** custom offer after.
165
- - [ ] Master Incident Mgmt pref (exact `service-cloud-itsm-incident`) `ENABLED` via live read, or delegated when `NOT_ENABLED` (`NOT_AVAILABLE` → HALT) — not a user assertion, not a look-alike.
166
175
  - [ ] `discover`/`describe` confirmed the SLA Connect ops.
167
176
  - [ ] Incident describe returned 200 with `EntitlementId`, `SlaStartDate`, `SlaExitDate`.
168
177
  - [ ] Active Business Hours resolved and named in the confirmed plan — the user's named schedule / a matching calendar / the org default / a user-selected record, or a create (described calendar or 24×7 when none exist) confirmed at Phase 3c, then SOQL-verified active. Predefined: the seeded policy's Business Hours reported by name (or "none").
@@ -171,7 +180,7 @@ Additional API quirks: `references/mcp-invocation.md`.
171
180
  - [ ] Writes **delegated to the SLA leaves** in order — the four core writes: MilestoneType(s) → Policy → Milestone(s) → activate + auto-Entitlement (the optional org-wide auto-apply criterion only if explicitly requested); any milestone-create failure halted (no partial attach). Trivial on no-op.
172
181
  - [ ] **Milestone actions (Phase 5)** — if requested, attached to **every** named milestone; each confirmed from `body.success` + `actionMappings`, not the `201`; full set narrated before write.
173
182
  - [ ] SLA Policy verified via SOQL, not the create response (no-op: the Phase-3a read is the verification).
174
- - [ ] Test Incident has ≥1 EntityMilestone on the **correct tier** with a `TargetDate` (the engagement proof; Priority matched for Priority-tiered); expected milestone(s) present. Matrix off / still order-1 after one retry → reported "other tiers not checked" + pointed to `service-itsm-incident-priority-configure`, no recreate loop. `SlaStartDate` populated confirms it too, but may be null when the Entitlement is auto-applied via criteria — not a failure. Skip on no-op.
183
+ - [ ] Test Incident has ≥1 EntityMilestone on the **correct tier** with a `TargetDate` (the engagement proof; Priority matched for Priority-tiered); expected milestone(s) present. Matrix off / still order-1 after one retry → reported "other tiers not checked" + pointed to the Priority Matrix setting in Setup, no recreate loop. `SlaStartDate` populated confirms it too, but may be null when the Entitlement is auto-applied via criteria — not a failure. Skip on no-op.
175
184
  - [ ] **No record Id in any message** — interim narration *and* final report; artifacts by name, test Incident by `IncidentNumber` (see Output contract).
176
185
  - [ ] Before/after + summary shown; no-op states the pre-existing config verbatim + "no changes made".
177
186
 
@@ -198,6 +207,6 @@ Use the `examples/output-templates.md` templates; fill placeholders as-is. The s
198
207
 
199
208
  ## Related Skills
200
209
 
201
- The priority matrix (Impact × Urgency → Priority) is separate — `service-itsm-incident-priority-configure`;
202
- if a Priority-tiered strategy is requested but `Incident.Priority` lacks values, direct the user there
203
- first. Other ITSM flows (Major Incident Mgmt, custom fields) are out of scope.
210
+ The priority matrix (Impact × Urgency → Priority) is separate and not configured here;
211
+ if a Priority-tiered strategy is requested but `Incident.Priority` lacks values, direct the user to the
212
+ Priority Matrix setting in Setup first. Other ITSM flows (Major Incident Mgmt, custom fields) are out of scope.
@@ -243,4 +243,4 @@ never a re-seed).
243
243
  | Priority-tiered needs a Priority | The test Incident in Phase 6 must derive a `Priority` value matching one of the milestones — otherwise no EntityMilestone spawns. `Priority` is not directly insertable — set `Impact` and `Urgency` so the org's matrix derives the target Priority (see `references/mcp-invocation.md` → Verify SLA engagement) — subject to the Phase 6 step 2 stopping rule. |
244
244
  | Multi-milestone partial-failure | If milestone #2 of N fails to attach, halt and surface the raw error. Do NOT continue attaching #3..N — the policy will be half-configured. |
245
245
  | `order` field | Numeric 1..N. Not load-bearing for runtime evaluation (all milestones fire independently), but controls display order in the UI. |
246
- | Priority-tiered + Priority Matrix skill | `Incident.Priority` is derived from the Impact × Urgency matrix only when the matrix is **on** (`IncPriorityMatrixEnabled`); when it is off, every Incident gets the org's default priority, so only that tier's milestone fires. `service-itsm-incident-priority-configure` turns the matrix on and configures the mapping — run it first (see `references/mcp-invocation.md` → Priority matrix flag). |
246
+ | Priority-tiered + Priority Matrix | `Incident.Priority` is derived from the Impact × Urgency matrix only when the matrix is **on** (`IncPriorityMatrixEnabled`); when it is off, every Incident gets the org's default priority, so only that tier's milestone fires. The Priority Matrix setting in Setup turns the matrix on and configures the mapping — do that first (see `references/mcp-invocation.md` → Priority matrix flag). |
@@ -18,9 +18,9 @@ skill never handles credentials or an org alias — everything is derived from t
18
18
  - [Response envelope](#response-envelope)
19
19
  - [Routes](#routes)
20
20
  - [Phase 1a — IT Service Management enablement gate](#phase-1a--it-service-management-enablement-gate)
21
- - [Phase 1b — SLA Management for IT Service prerequisite gate](#phase-1b--sla-management-for-it-service-prerequisite-gate)
21
+ - [Phase 1b — Incident Management prerequisite gate (direct read)](#phase-1b--incident-management-prerequisite-gate-direct-read)
22
+ - [Phase 1c — SLA Management for IT Service prerequisite gate](#phase-1c--sla-management-for-it-service-prerequisite-gate)
22
23
  - [Discovery — always run first](#discovery--always-run-first)
23
- - [Preflight A — Master Incident Management pref (direct read)](#preflight-a--master-incident-management-pref-direct-read)
24
24
  - [Preflight B — SLA fields on the Incident sObject](#preflight-b--sla-fields-on-the-incident-sobject)
25
25
  - [Resolve Business Hours](#resolve-business-hours)
26
26
  - [Create MilestoneType](#create-milestonetype)
@@ -41,7 +41,7 @@ singly wrapped:
41
41
  { "status_code": 200, "body": <REST/Connect response> }
42
42
  ```
43
43
 
44
- Read `body`. The `/headless/invoke/platform/slasettings/…` routes (Phases 1b, 2 and 4B) return the
44
+ Read `body`. The `/headless/invoke/platform/slasettings/…` routes (Phases 1c, 2 and 4B) return the
45
45
  same shape: the invoke envelope is unwrapped before the response reaches you, so read `body` for
46
46
  them too.
47
47
 
@@ -51,10 +51,10 @@ them too.
51
51
 
52
52
  | Method + path | Purpose |
53
53
  |---------------|---------|
54
- | `GET /headless/invoke/platform/slasettings/get-sla-management-permission` | Phase 1b — read whether SLA Management is on (composite: Entitlements + Simplified SLA Setup + Pause Milestone). Delegated to `itsm-shakti/SLASettings` |
55
- | `PATCH /headless/invoke/platform/slasettings/set-sla-management-permission` | Phase 1b — turn SLA Management on (`isEnabled:true`; flips the three prefs atomically; requires Entitlements already on or it throws). **Reversible.** Delegated to `itsm-shakti/SLASettings` |
56
- | `GET /headless/invoke/platform/slasettings/get-sla-versioning-permission` | Phase 1b — read whether SLA Versioning is on. Delegated to `itsm-shakti/SLASettings` |
57
- | `PATCH /headless/invoke/platform/slasettings/set-sla-versioning-permission` | Phase 1b — turn SLA Versioning on (`isEnabled:true`). **Separate write; permanent / one-way** — the controller refuses to disable it. Delegated to `itsm-shakti/SLASettings` |
54
+ | `GET /headless/invoke/platform/slasettings/get-sla-management-permission` | Phase 1c — read whether SLA Management is on (composite: Entitlements + Simplified SLA Setup + Pause Milestone). Delegated to `itsm-shakti/SLASettings` |
55
+ | `PATCH /headless/invoke/platform/slasettings/set-sla-management-permission` | Phase 1c — turn SLA Management on (`isEnabled:true`; flips the three prefs atomically; requires Entitlements already on or it throws). **Reversible.** Delegated to `itsm-shakti/SLASettings` |
56
+ | `GET /headless/invoke/platform/slasettings/get-sla-versioning-permission` | Phase 1c — read whether SLA Versioning is on. Delegated to `itsm-shakti/SLASettings` |
57
+ | `PATCH /headless/invoke/platform/slasettings/set-sla-versioning-permission` | Phase 1c — turn SLA Versioning on (`isEnabled:true`). **Separate write; permanent / one-way** — the controller refuses to disable it. Delegated to `itsm-shakti/SLASettings` |
58
58
  | `GET /services/data/v{version}/setup/org/preferences/IncPriorityMatrixEnabled` | Phase 2 / 6 — is the Impact × Urgency priority matrix on? Read-only warning, not a gate |
59
59
  | `GET /services/data/v{version}/sobjects/Incident/describe` | Preflight — Incident Management on + SLA fields present |
60
60
  | `GET /services/data/v{version}/query` | SOQL reads (BusinessHours, SlaProcess, EntityMilestone) via `query_params.q` |
@@ -81,10 +81,10 @@ org-resolved version is always at or above that floor.
81
81
 
82
82
  ## Phase 1a — IT Service Management enablement gate
83
83
 
84
- **New, higher-level org gate — resolve before Phase 1b and before Preflight A below.** "IT Service
84
+ **New, higher-level org gate — resolve first. Phase 1b (the Incident Management gate) follows immediately, before Phase 1c.** "IT Service
85
85
  Management" (apiName `service-cloud-itsm-setup`) is a higher-level org gate that sits
86
- above every per-feature ITSM master toggle, including Master Incident Management (Preflight A). Read
87
- via the same Setup Discovery Connect API used by Preflight A:
86
+ above every per-feature ITSM master toggle, including Master Incident Management (Phase 1b). Read
87
+ via the same Setup Discovery Connect API used by Phase 1b:
88
88
 
89
89
  ```json
90
90
  mcp__headless-360__dispatch_readonly({
@@ -94,35 +94,77 @@ mcp__headless-360__dispatch_readonly({
94
94
  ```
95
95
 
96
96
  Filter `body.features[]` client-side to the element where `apiName == "service-cloud-itsm-setup"` —
97
- the **exact** apiName, never a look-alike. Read its `status`. It has two states:
98
- `ENABLED` / `NOT_ENABLED` — no `NOT_AVAILABLE`. Treat any unexpected status
99
- value conservatively, the same as a halt.
97
+ the **exact** apiName, never a look-alike. Only the exact status `ENABLED` passes immediately.
98
+ Only exact `NOT_ENABLED` with no blocked reasons is eligible for confirmed enablement.
100
99
 
101
100
  **Status → action:**
102
101
 
103
- - `ENABLED` → proceed to Phase 1b.
104
- - `NOT_ENABLED` → tell the user plainly that IT Service Management is not enabled, then dispatch a
105
- single `AskUserQuestion`: enable it now (note it's **reversible** — it can be disabled again later)
106
- or stop.
107
- - **Enable** →
108
- ```json
109
- mcp__headless-360__dispatch({
110
- "url": "/services/data/v{version}/connect/setup/discovery/feature/service-cloud-itsm-setup/enable",
111
- "method": "POST"
112
- })
113
- ```
114
- Success returns `201` with `{"success": true}`. If it 4xxs, or the re-read below doesn't
115
- confirm `ENABLED`, halt, surface the raw error, and point to Setup as the manual fallback. There
116
- is **no owning SOR** to delegate this write to yet (unlike Preflight A's master pref, which
117
- delegates to `service-itsm-incident-mgmt-configure`) — dispatch it directly here as a scoped,
118
- temporary exception to this skill's "delegate every write" rule; swap for a delegate once a
119
- dedicated SOR for `service-cloud-itsm-setup` exists. Re-read to confirm `status == "ENABLED"`
120
- before continuing.
121
- - **Stop** → halt, point to Setup for manual enablement.
102
+ - `ENABLED` → continue to Phase 1b (the Incident Management gate), then Phase 1c.
103
+ - Exact `NOT_ENABLED` with no blocked reasons → ask every time, never as plain text, with a single
104
+ `AskUserQuestion` (single-select, exactly two options: Yes and No): **“IT Service Enablement is off —
105
+ enable it now?”** The options are exactly “Yes” and “No”, with no other text in the question
106
+ or options. Do not preview later steps before it is answered.
107
+ - **Yes** → delegate to the `IncidentMgmt` SOR, explicitly stating that the user already
108
+ confirmed this exact change in this conversation so the delegate does not ask again. Run
109
+ `read-itsm-setup-feature-status`, `enable-itsm-setup-feature`, and
110
+ `verify-itsm-setup-feature-status`. The delegate owns the empty-body POST and the read-back.
111
+ If blocked reasons are present, the call fails, the entry is missing, or the verify step does
112
+ not read exact `ENABLED`, halt, surface the raw error or blocked reasons, and point to Setup.
113
+ Delegating means the MCP tools, not a Claude Code skill: `describe` the `IncidentMgmt` SOR, read
114
+ its steps by `id`, and `dispatch` each step exactly as the SOR defines it. Never call `Skill` for
115
+ it and never invent an enable URL.
116
+ - **No** → halt, point to Setup for manual enablement.
117
+ - Missing entry, error, blocked reasons, or any other status → halt and point to Setup; do not
118
+ ask to enable and do not delegate.
122
119
 
123
120
  ---
124
121
 
125
- ## Phase 1b — SLA Management for IT Service prerequisite gate
122
+ ## Phase 1b — Incident Management prerequisite gate (direct read)
123
+
124
+ The master ITSM Incident Management pref is exposed on the **Setup Discovery Connect API**
125
+ under `apiName = service-cloud-itsm-incident`. The setup-org-preferences endpoint does not
126
+ expose the master (`IncidentMgmtEnabled` / `ITSMIncidentMgmtEnabled` both 404) — read via
127
+ Setup Discovery instead.
128
+
129
+ ```json
130
+ mcp__headless-360__dispatch_readonly({
131
+ "url": "/services/data/v{version}/connect/setup/discovery/features",
132
+ "method": "GET"
133
+ })
134
+ ```
135
+
136
+ The endpoint returns the full feature catalog (~763 entries, ~1.1 MB) and does not honor
137
+ `?apiName=` server-side. Filter `body.features[]` client-side to the element where
138
+ `apiName == "service-cloud-itsm-incident"` — the **exact** apiName. Read its `status`
139
+ (`ENABLED` / `NOT_ENABLED` / `NOT_AVAILABLE`).
140
+
141
+ > **Never substitute a look-alike.** The catalog also contains `service-cloud-incident-management`
142
+ > — that is **generic Service Cloud Incident Management** (built on Case Management, so its
143
+ > `dependencyStatuses` chain through `service-cloud-case-management` → Support Settings Default Case
144
+ > Owner + Automated Case User). It is **not** the ITSM master this skill targets, and enabling it
145
+ > (plus its Case chain) does **not** unlock ITSM Incident SLA. If `service-cloud-itsm-incident` is
146
+ > absent or `NOT_AVAILABLE`, do **not** fall back to it — halt (see below).
147
+
148
+ **Status → action** (never auto-enable the master as an implied SLA dependency):
149
+
150
+ - `ENABLED` → proceed.
151
+ - `NOT_AVAILABLE` (ITSM Incident Management license/entitlement not present on the org) → **halt and
152
+ surface it** — the master cannot be enabled here, so there is no ack and no delegate. This is the
153
+ correct terminal outcome on an unlicensed org (do not pursue Case Management / generic Incident
154
+ Management as a workaround).
155
+ - `NOT_ENABLED` → get an explicit `AskUserQuestion` ack first (per `references/workflow.md` Phase 1b), phrased
156
+ as the delegate's own confirm payload — `Master Incident Management: NOT_ENABLED → ENABLED` — then
157
+ delegate to the `IncidentMgmt` SOR, stating that the user already confirmed this exact change
158
+ in this conversation. That "yes" **is** the delegate's confirm-to-write (same change, same session,
159
+ nothing written in between), so do **not** ask a second time. Run the delegate's
160
+ `read-itsm-incident-feature-status`, `enable-itsm-incident-feature`, and
161
+ `verify-itsm-incident-feature-status` steps, and require exact `ENABLED` before continuing. If the
162
+ user declines, halt — every downstream SLA artifact depends on the master being on.
163
+ Delegating means the MCP tools, not a Claude Code skill: `describe` the `IncidentMgmt` SOR, read
164
+ its steps by `id`, and `dispatch` each step exactly as the SOR defines it. Never call `Skill` for
165
+ it and never invent an enable URL.
166
+
167
+ ## Phase 1c — SLA Management for IT Service prerequisite gate
126
168
 
127
169
  **SLA Management for IT Service reads as fully enabled only when BOTH sub-settings are on —
128
170
  Simplified SLA Setup AND SLA Versioning.** In Setup it shows **In Progress** while either is off. Both
@@ -219,14 +261,17 @@ accept and conflates the two. Do **not** offer a "versioning-off" path (none exi
219
261
  the reads, not a fixed script.
220
262
 
221
263
  - If **both** SLA Management and Versioning are already on → skip the acks; the gate passes.
222
- - **Q1 — master prerequisite (only if master Incident Mgmt is `NOT_ENABLED`):** ask to enable it
223
- first. It's **reversible** — present it as a prerequisite with **no** permanence warning. Offer
224
- **Enable** or **Stop — make no changes**. A declined master → HALT.
225
- - **Q2 — enable + permanence ack (a distinct question, after the master is on):** if SLA Management
226
- and/or Versioning are off → ask, in customer terms: completing SLA Management setup turns on **SLA
227
- Management** and, as a separate step, **SLA Versioning**, which **can't be turned off once enabled**
228
- — SLA Management itself can be turned off again later, but that will **not** turn Versioning back
229
- off; Versioning is permanent. Offer **Enable** or **Stop — make no changes**.
264
+ - **Q1 — SLA Management enable (only if SLA Management reads off), asked before the first write:** ask
265
+ **“SLA Management for IT Service is off — enable it now?”** (single-select, exactly two options: Yes and
266
+ No; never plain text; the options are exactly “Yes” and “No”, with no other text; ask every time and do
267
+ not preview later steps before it is answered). Present it as reversible with **no** permanence
268
+ warning. A No → HALT, point to Setup, make no changes. Incident Management was already asked at Phase 1b
269
+ and its Yes does not cover this write.
270
+ - **Q2 — permanence ack (a distinct question, asked before the Versioning write and after Q1 is verified):**
271
+ if Versioning is off → ask via `AskUserQuestion`, in customer terms: enabling **SLA Versioning** **can't
272
+ be turned off once enabled** — SLA Management itself can be turned off again later, but that will
273
+ **not** turn Versioning back off; Versioning is permanent. Offer **Enable** or **Stop — make no
274
+ changes**. Ask it even when the user already said “enable SLA”.
230
275
  - **Any decline — including a request to enable SLA Management but *not* Versioning — means HALT.**
231
276
  The gate needs Versioning on, and there is no way to honor "SLA Management without Versioning" as a
232
277
  completed gate; enable **no further** writes and do not proceed to SLA/milestone setup (a reversible
@@ -267,47 +312,6 @@ does not index this surface — direct the user to Setup and stop.
267
312
 
268
313
  ---
269
314
 
270
- ## Preflight A — Master Incident Management pref (direct read)
271
-
272
- The master ITSM Incident Management pref is exposed on the **Setup Discovery Connect API**
273
- under `apiName = service-cloud-itsm-incident`. The setup-org-preferences endpoint does not
274
- expose the master (`IncidentMgmtEnabled` / `ITSMIncidentMgmtEnabled` both 404) — read via
275
- Setup Discovery instead.
276
-
277
- ```json
278
- mcp__headless-360__dispatch_readonly({
279
- "url": "/services/data/v{version}/connect/setup/discovery/features",
280
- "method": "GET"
281
- })
282
- ```
283
-
284
- The endpoint returns the full feature catalog (~763 entries, ~1.1 MB) and does not honor
285
- `?apiName=` server-side. Filter `body.features[]` client-side to the element where
286
- `apiName == "service-cloud-itsm-incident"` — the **exact** apiName. Read its `status`
287
- (`ENABLED` / `NOT_ENABLED` / `NOT_AVAILABLE`).
288
-
289
- > **Never substitute a look-alike.** The catalog also contains `service-cloud-incident-management`
290
- > — that is **generic Service Cloud Incident Management** (built on Case Management, so its
291
- > `dependencyStatuses` chain through `service-cloud-case-management` → Support Settings Default Case
292
- > Owner + Automated Case User). It is **not** the ITSM master this skill targets, and enabling it
293
- > (plus its Case chain) does **not** unlock ITSM Incident SLA. If `service-cloud-itsm-incident` is
294
- > absent or `NOT_AVAILABLE`, do **not** fall back to it — halt (see below).
295
-
296
- **Status → action** (never auto-enable the master as an implied SLA dependency):
297
-
298
- - `ENABLED` → proceed.
299
- - `NOT_AVAILABLE` (ITSM Incident Management license/entitlement not present on the org) → **halt and
300
- surface it** — the master cannot be enabled here, so there is no ack and no delegate. This is the
301
- correct terminal outcome on an unlicensed org (do not pursue Case Management / generic Incident
302
- Management as a workaround).
303
- - `NOT_ENABLED` → get an explicit `AskUserQuestion` ack first (per `references/workflow.md` Phase 3a step 1), phrased
304
- as the delegate's own confirm payload — `Master Incident Management: NOT_ENABLED → ENABLED` — then
305
- delegate to `service-itsm-incident-mgmt-configure` inline, which writes
306
- `POST .../setup/discovery/feature/service-cloud-itsm-incident/enable`. That "yes" **is** the
307
- delegate's confirm-to-write (same change, same session, nothing written in between) — do **not**
308
- ask the user a second time. Re-read this step to verify `status == "ENABLED"` before continuing. If
309
- the user declines, halt — every downstream SLA artifact depends on the master being on.
310
-
311
315
  ## Preflight B — SLA fields on the Incident sObject
312
316
 
313
317
  ```json
@@ -321,7 +325,7 @@ Confirm `body.fields[]` includes `EntitlementId`, `SlaStartDate`, and `SlaExitDa
321
325
  describe 404s or the fields are missing, Entitlement Management is not enabled for Incident —
322
326
  stop and direct the user to **Setup → Incident Management / Entitlement Settings**. This is
323
327
  a **secondary sanity check on the SLA-field surface**, not the master-pref state signal;
324
- Preflight A above is the master-state signal.
328
+ Phase 1b is the master-state signal.
325
329
 
326
330
  The response is large (~86 KB). If your host truncates it, filter with a grep-style search rather
327
331
  than reading the whole body — you only need to confirm those three field names exist.
@@ -712,8 +716,8 @@ mcp__headless-360__dispatch_readonly({
712
716
 
713
717
  `false` → the Impact × Urgency matrix is off and every Incident gets the org's default priority, so a
714
718
  priority-tiered policy (the predefined one, or Custom Priority-tiered) only fires that tier's
715
- milestones. Warn the user and point to `service-itsm-incident-priority-configure`; never enable the
716
- matrix from this skill (that skill owns the write). Read-only — not a gate.
719
+ milestones. Warn the user and point to the Priority Matrix setting in Setup; never enable the
720
+ matrix from this skill. Read-only — not a gate.
717
721
 
718
722
  ---
719
723
 
@@ -778,7 +782,7 @@ if the org's matrix mapped your `Impact`/`Urgency` to a different Priority, adju
778
782
  input derives the default priority. If the flag is `true` but the derived `Priority` is still the
779
783
  order-1 tier after one adjustment, stop. Either way report: the SLA engages (the `EntityMilestone` +
780
784
  `TargetDate`), the other tiers were **not** checked, why, and that
781
- `service-itsm-incident-priority-configure` configures the matrix. Never loop on recreates.
785
+ the matrix is configured in Setup (Priority Matrix). Never loop on recreates.
782
786
 
783
787
  ---
784
788