@salesforce/afv-skills 1.65.1 → 1.67.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.
- package/package.json +2 -4
- package/skills/agentforce-offline-experimentation-run/SKILL.md +29 -43
- package/skills/agentforce-offline-experimentation-run/scripts/sfap_replay.py +3 -245
- package/skills/commerce-react-storefront-create/SKILL.md +350 -0
- package/skills/consumer-goods-promotion-bo-api-deploy/SKILL.md +2 -2
- package/skills/consumer-goods-promotion-bo-api-deploy/references/generate-and-wire.md +28 -16
- package/skills/consumer-goods-promotion-bo-api-deploy/references/smoke-and-verify.md +18 -1
- package/skills/dx-devops-work-item-manage/SKILL.md +34 -17
- package/skills/dx-devops-work-item-manage/examples/common-workflows.md +49 -0
- package/skills/dx-devops-work-item-manage/references/commit-api.md +116 -0
- package/skills/education-cloud-domain-configure/SKILL.md +21 -23
- package/skills/education-cloud-domain-configure/references/dependent-features.md +9 -0
- package/skills/education-cloud-domain-configure/references/domain-features.md +15 -0
- package/skills/education-cloud-domain-configure/references/gotchas-extended.md +8 -0
- package/skills/education-cloud-domain-configure/references/setup-widgets.md +123 -0
- package/skills/experience-lwc-widget-assess/SKILL.md +79 -0
- package/skills/experience-lwc-widget-migrate/SKILL.md +50 -0
- package/skills/experience-search-coordinate/SKILL.md +2 -2
- package/skills/experience-search-coordinate/references/media-route.md +30 -4
- package/skills/experience-ui-bundle-features-generate/SKILL.md +1 -1
- package/skills/experience-ui-bundle-mfa-configure/SKILL.md +1 -1
- package/skills/platform-metadata-deploy/README.md +1 -1
- package/skills/platform-metadata-deploy/SKILL.md +114 -15
- package/skills/platform-metadata-deploy/references/agent-deployment-guide.md +3 -4
- package/skills/platform-metadata-deploy/references/orchestration.md +2 -3
- package/skills/platform-role-hierarchy-apply/SKILL.md +177 -0
- package/skills/platform-value-set-generate/SKILL.md +19 -19
- package/skills/platform-widget-generate/SKILL.md +59 -68
- package/skills/platform-widget-generate/examples/formulas.json +19 -2
- package/skills/platform-widget-generate/examples/localized-labels.json +57 -0
- package/skills/platform-widget-generate/references/widget-actions.md +29 -0
- package/skills/platform-widget-generate/references/widget-bundle-validation.md +15 -0
- package/skills/platform-widget-generate/references/widget-formulas.md +24 -7
- package/skills/platform-widget-generate/references/widget-gotchas.md +10 -0
- package/skills/platform-widget-generate/references/widget-labels.md +78 -0
- package/skills/platform-widget-generate/references/widget-styling.md +12 -0
- package/skills/sales-call-scoring-configure/SKILL.md +17 -10
- package/skills/sales-call-scoring-configure/scripts/enable-call-scoring.sh +55 -33
- package/skills/service-agentforce-contact-center-coordinate/SKILL.md +1 -1
- package/skills/service-agentforce-contact-center-coordinate/references/number_management_api.md +11 -1
- package/skills/service-agentforce-contact-center-coordinate/scripts/fetch-numbers.sh +12 -6
- package/skills/service-agentforce-contact-center-coordinate/scripts/lib.sh +16 -0
- package/skills/service-agentforce-contact-center-coordinate/scripts/procure-number.sh +2 -1
- package/skills/service-concierge-portal-generate/references/portal-deploy-runbook.md +24 -11
- package/skills/service-digital-engagement-channel-configure/SKILL.md +29 -16
- package/skills/service-digital-engagement-channel-configure/references/channel_settings.md +13 -2
- package/skills/service-digital-engagement-channel-configure/references/onboarding_contract.md +143 -0
- package/skills/service-digital-engagement-deployment-configure/SKILL.md +65 -79
- package/skills/service-digital-engagement-deployment-configure/assets/esd_web_update_template.xml +83 -8
- package/skills/service-digital-engagement-deployment-configure/examples/esd_web_prechat_fields.xml +74 -0
- package/skills/service-digital-engagement-deployment-configure/references/connect_api_creation.md +26 -7
- package/skills/service-digital-engagement-deployment-configure/references/deployment_settings.md +13 -78
- package/skills/service-digital-engagement-deployment-configure/references/onboarding_contract.md +145 -0
- package/skills/service-digital-engagement-deployment-configure/references/prechat_forms.md +245 -0
- package/skills/service-itsm-agentic-setup-incident-management/SKILL.md +166 -112
- package/skills/service-itsm-agentic-setup-incident-management/examples/output-templates.md +61 -37
- package/skills/service-itsm-agentic-setup-incident-management/references/audit-tracking.md +42 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/broadcast-communications.md +23 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/email-to-incident.md +23 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/incident-dashboards.md +25 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/incident-persona-psg.md +30 -145
- package/skills/service-itsm-agentic-setup-incident-management/references/incident-preferences.md +32 -137
- package/skills/service-itsm-agentic-setup-incident-management/references/major-incident-management.md +32 -155
- package/skills/service-itsm-agentic-setup-incident-management/references/manage-incidents-with-ai.md +45 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/priority-matrix.md +32 -0
- package/skills/service-itsm-agentic-setup-incident-management/references/service-mgmt-privilege.md +30 -140
- package/skills/service-itsm-agentic-setup-incident-management/references/sla-milestones.md +110 -0
- package/skills/service-itsm-agentic-setup-incident-sla-configure/SKILL.md +34 -25
- package/skills/service-itsm-agentic-setup-incident-sla-configure/examples/milestone-patterns.md +1 -1
- package/skills/service-itsm-agentic-setup-incident-sla-configure/references/mcp-invocation.md +90 -86
- package/skills/service-itsm-agentic-setup-incident-sla-configure/references/workflow.md +63 -38
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: service-itsm-agentic-setup-incident-management
|
|
3
|
-
description: "Orchestrator for Incident Management setup in Service Cloud ITSM: presents the features, tracks progress, and configures each —
|
|
3
|
+
description: "Orchestrator for Incident Management setup in Service Cloud ITSM: presents the features, tracks progress, and configures each — Incident preferences, Incident persona PSG assignment, Priority Matrix, SLA & Milestones, Incident dashboards, Email-to-Incident, Major Incident Management (approval group + MIM preferences), Broadcast Communications, Manage Incidents with AI, Service Management Privilege (privilege escalation), and audit tracking. Use for: set up or configure incident management, a walkthrough, what incident features can I configure; the incident preference toggles (default field validations, auto-close child incidents, auto-triage, assign with Einstein, restrict assigned group, rich text descriptions); assigning the Incident Fulfiller or Incident Manager persona PSG. DO NOT TRIGGER for: the master on/off switch alone (use the IncidentMgmt SOR), the Priority Matrix, SLA, or field history tracking alone, the Major Incident Manager PSG, creating/editing PSGs, or Problem/Change/Case Management."
|
|
4
4
|
metadata:
|
|
5
|
-
version: "
|
|
5
|
+
version: "3.0"
|
|
6
6
|
domains: ["Service"]
|
|
7
7
|
minApiVersion: "67.0"
|
|
8
8
|
relatedSkills:
|
|
9
|
-
- "
|
|
10
|
-
- "service-itsm-agentic-setup-cmdb-access-assign"
|
|
11
|
-
- "service-itsm-agentic-setup-incident-sla-configure"
|
|
12
|
-
- "service-itsm-agentic-setup-itsm-agentforce-permset-assign"
|
|
13
|
-
- "service-itsm-incident-mgmt-configure"
|
|
14
|
-
- "service-itsm-incident-priority-configure"
|
|
9
|
+
- "service-itsm-manage-incidents-with-ai-configure"
|
|
15
10
|
mcpTools:
|
|
16
11
|
headless-360:
|
|
17
12
|
tools: ["describe", "discover", "dispatch", "dispatch_readonly"]
|
|
@@ -28,9 +23,8 @@ allowed-tools: |
|
|
|
28
23
|
# Incident Management Setup Orchestrator
|
|
29
24
|
|
|
30
25
|
Guide the user through setting up Incident Management features in Salesforce Service Cloud ITSM by
|
|
31
|
-
presenting the available capabilities, tracking progress, and
|
|
32
|
-
|
|
33
|
-
**executing it inline** from this skill's reference file over its SOR.
|
|
26
|
+
presenting the available capabilities, tracking progress, and **delegating** each feature to the Setup
|
|
27
|
+
Operation Recipes (SORs) whose own steps this skill runs.
|
|
34
28
|
|
|
35
29
|
## Goal
|
|
36
30
|
|
|
@@ -40,50 +34,47 @@ until the user is done.
|
|
|
40
34
|
|
|
41
35
|
## How each feature is handled
|
|
42
36
|
|
|
43
|
-
| # | Feature | Handled by |
|
|
44
|
-
|
|
45
|
-
|
|
|
46
|
-
|
|
|
47
|
-
|
|
|
48
|
-
|
|
|
49
|
-
|
|
|
50
|
-
|
|
|
51
|
-
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
6. After any save, read Incident's tracked fields back through the SOR. Mark the feature `Done` only when
|
|
85
|
-
the live read (for the no-write case) or post-save read-back shows Incident's object-level tracking on,
|
|
86
|
-
the chosen fields tracked, and no field dropped that the user didn't ask to drop — a save response alone
|
|
37
|
+
| # | Feature | Handled by | Reference |
|
|
38
|
+
|---|---------|-----------|-----------|
|
|
39
|
+
| P | Incident Preferences | **Delegate** → `IncidentMgmt` (its preference steps) | `references/incident-preferences.md` |
|
|
40
|
+
| 1 | Incident Persona PSG | **Delegate** → `service-itsm-incident-persona-assign` | `references/incident-persona-psg.md` |
|
|
41
|
+
| 2 | Priority Matrix | **Delegate** → `IncidentPriorityMatrix` | `references/priority-matrix.md` |
|
|
42
|
+
| 3 | SLA & Milestones | **Delegate** → `SLASettings`, then `sla-management-setup` (custom policy) | `references/sla-milestones.md` |
|
|
43
|
+
| 4 | Incident Dashboards | **Delegate** → `itsm-incident-dashboard-enablement` (Manager) and `itsm-incident-fulfiller-dashboard-enablement` (Fulfiller) | `references/incident-dashboards.md` |
|
|
44
|
+
| 5 | Email-to-Incident | **Delegate** → `EmailToIncident` | `references/email-to-incident.md` |
|
|
45
|
+
| 6 | Major Incident Management | **Delegate** → `MIM` | `references/major-incident-management.md` |
|
|
46
|
+
| 7 | Broadcast Communications | **Delegate** → `service-itsm-broadcast-communications-setup` | `references/broadcast-communications.md` |
|
|
47
|
+
| 8 | Manage Incidents with AI | **Delegate** → `service-itsm-manage-incidents-with-ai-configure` | `references/manage-incidents-with-ai.md` |
|
|
48
|
+
| 9 | Service Management Privilege | **Delegate** → `ServiceMgmtPrivilegeSetup` | `references/service-mgmt-privilege.md` |
|
|
49
|
+
| 10 | Audit Tracking | **Delegate** → `FieldHistoryTracking` | `references/audit-tracking.md` |
|
|
50
|
+
|
|
51
|
+
Every feature runs on SORs; this skill hands no feature off to another skill. A SOR is a recipe, not an
|
|
52
|
+
agent: this skill runs the SOR's steps itself under the **SOR hand-off protocol** below and owns every
|
|
53
|
+
user-facing gate — the questions, the confirmation before each write, and the read-back. The SOR's own steps
|
|
54
|
+
and guidance decide *how*. **Read a feature's reference file before running that feature**: it adds only
|
|
55
|
+
what is specific to this skill. Every operation is fetched at runtime through the `headless-360` MCP server:
|
|
56
|
+
`discover` by intent, `describe` for the current route/schema/labels, then `dispatch_readonly` (reads) /
|
|
57
|
+
`dispatch` (writes).
|
|
58
|
+
**Hardcode nothing — `describe` wins.** If a described path repeats the `/services/data/v{version}` prefix,
|
|
59
|
+
send the prefix once.
|
|
60
|
+
|
|
61
|
+
### SOR hand-off protocol (every feature)
|
|
62
|
+
|
|
63
|
+
1. **Find it.** `discover` the SOR by intent and `describe` the id `discover` returns. Judge availability by
|
|
64
|
+
what the calls return, not by a step's `status` label — a step labelled `proposed` may still be served.
|
|
65
|
+
A `discover` miss or a `401`/`403`/`404` means the surface isn't available to this user or org: surface
|
|
66
|
+
it and stop.
|
|
67
|
+
2. **This skill owns both prerequisite gates.** Behavior step 2 already confirmed IT Service Enablement and
|
|
68
|
+
the master switch on. If a SOR's own check reads either as anything but `ENABLED`, go back to step 2 —
|
|
69
|
+
never run a SOR's own enable or delegate step for them, and never follow a hand-off a SOR names for
|
|
70
|
+
either gate or for another feature on this menu.
|
|
71
|
+
3. **Read before write.** Read the current state through the SOR's read steps. If it already matches what
|
|
72
|
+
the user wants, that read is the verification: mark the feature `Done` with no write.
|
|
73
|
+
4. **Confirm the exact change.** State the current value and the exact change, and get an explicit yes
|
|
74
|
+
(`AskUserQuestion`) before any write. The user's initial request is not that confirmation; one yes can
|
|
75
|
+
cover several writes if you listed them all.
|
|
76
|
+
5. **Write, then read back.** Write only through the SOR's write steps, then read back through its verify
|
|
77
|
+
steps. Mark the feature `Done` only when the read-back shows the chosen state — a write response alone
|
|
87
78
|
is not proof.
|
|
88
79
|
|
|
89
80
|
## Behavior
|
|
@@ -91,8 +82,8 @@ owns the user-facing gates:
|
|
|
91
82
|
### 0. Reuse what the session already knows
|
|
92
83
|
|
|
93
84
|
Before running any preflight below, check whether the same fact was already established earlier in this
|
|
94
|
-
conversation. Cache-eligible: the **master switch
|
|
95
|
-
cached "off" MUST NOT let step 2 skip), **already-completed features** (stay "Done"; don't re-run unless
|
|
85
|
+
conversation. Cache-eligible: the **IT Service Enablement and master switch states** (reuse each **only
|
|
86
|
+
when confirmed *enabled***; a cached "off" MUST NOT let step 2 skip), **already-completed features** (stay "Done"; don't re-run unless
|
|
96
87
|
asked to reconfigure), and the **target org**. **When in doubt, re-check.** Skip only when the earlier fact
|
|
97
88
|
is unambiguously in context AND you have not switched orgs — a wrong skip on a live write is worse than a
|
|
98
89
|
duplicated read.
|
|
@@ -102,13 +93,42 @@ duplicated read.
|
|
|
102
93
|
Scan chat history for which features are already done, any stated preferences/constraints, the target org,
|
|
103
94
|
and business context that informs which features are relevant.
|
|
104
95
|
|
|
105
|
-
### 2.
|
|
106
|
-
|
|
107
|
-
Every feature below depends on
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
96
|
+
### 2. Verify IT Service Enablement, then ensure the Incident Management master switch is on
|
|
97
|
+
|
|
98
|
+
Every feature below depends on IT Service Enablement (`service-cloud-itsm-setup`) and uses the recommended
|
|
99
|
+
ITSM Incident Management check (`service-cloud-itsm-incident`). Before showing the menu—or before a direct
|
|
100
|
+
single-feature handoff—`discover` the `IncidentMgmt` SOR by intent and `describe` its steps, then check the
|
|
101
|
+
two gates in this order, using that SOR for every read, enable, and verify
|
|
102
|
+
(`read-/enable-/verify-itsm-setup-feature-status`, `read-/enable-/verify-itsm-incident-feature-status`).
|
|
103
|
+
Follow its current invocation and prefix each stored path as its version note says: use the org's full API
|
|
104
|
+
version with its minor, such as `v68.0`, never a bare major. If a feature read fails, stop and do not retry
|
|
105
|
+
other version strings. Never read or toggle `service-cloud-incident-management`, and do
|
|
106
|
+
not use the Service-Foundation `IncidentManagement` look-alike or its broadcast toggles.
|
|
107
|
+
|
|
108
|
+
Decide on `status` first: `ENABLED` is an idempotent no-op even if `enableBlockedReasons` is non-empty;
|
|
109
|
+
`NOT_AVAILABLE` means halt (do not attempt enable). Show any `enableBlockedReasons` as plain text (their
|
|
110
|
+
messages are HTML-escaped markup) and halt if present. Never infer success from a write response.
|
|
111
|
+
|
|
112
|
+
1. **IT Service Enablement** — only exact `ENABLED` continues. Exact `NOT_ENABLED` with no blocked reasons:
|
|
113
|
+
ask **“IT Service Enablement is off — enable it now?”** with `AskUserQuestion` (single-select, exactly
|
|
114
|
+
two options: Yes and No) — every time, never as plain text, and do not preview the menu before it is
|
|
115
|
+
answered. Yes → delegate to the `IncidentMgmt` SOR (read → enable → verify), stating the user already
|
|
116
|
+
confirmed this exact change so it does not ask again; continue only when verify reads exact `ENABLED`.
|
|
117
|
+
Delegating means the MCP tools, not a Claude Code skill: `describe` the `IncidentMgmt` SOR, read
|
|
118
|
+
its steps by `id`, and `dispatch` each step exactly as the SOR defines it. Never call `Skill` for
|
|
119
|
+
it and never invent an enable URL.
|
|
120
|
+
No → stop and point to Setup. Missing entry, blocked reasons, error, or any other status → stop and explain
|
|
121
|
+
plainly; no question.
|
|
122
|
+
2. **Incident Management** — same pattern, second: exact `NOT_ENABLED` with no blocked reasons →
|
|
123
|
+
`AskUserQuestion` **“Incident Management is off — enable it now?”** (Yes/No); Yes → delegate to the
|
|
124
|
+
`IncidentMgmt` SOR with the same already-confirmed statement and continue only on verify exact
|
|
125
|
+
`ENABLED`; No → stop and point to Setup. `NOT_AVAILABLE`, blocked reasons, error, or anything else → stop
|
|
126
|
+
and explain; no question.
|
|
127
|
+
|
|
128
|
+
Never offer to bypass either gate.
|
|
129
|
+
|
|
130
|
+
**Skip only when both gates were already confirmed *enabled* in this session** (see step 0). A cached
|
|
131
|
+
"off" or unknown state MUST fall through to the checks above.
|
|
112
132
|
|
|
113
133
|
### 3. Present the feature menu as a multi-select
|
|
114
134
|
|
|
@@ -119,12 +139,10 @@ several enqueue for sequential handling in step 4.
|
|
|
119
139
|
|
|
120
140
|
### 4. Handle each selected feature in order
|
|
121
141
|
|
|
122
|
-
Handle selected features sequentially in dependency order (or the order given). For each
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
writing, confirm before every write, and verify every write by read-back**. Honor the per-feature
|
|
127
|
-
invariants below.
|
|
142
|
+
Handle selected features sequentially in dependency order (or the order given). For each, **read its
|
|
143
|
+
reference file**, then run its SORs under the hand-off protocol. This skill does the writing, so always
|
|
144
|
+
**read live state before writing, confirm before every write, and verify every write by read-back**. Honor
|
|
145
|
+
the per-feature invariants below.
|
|
128
146
|
|
|
129
147
|
### 5. After each feature completes
|
|
130
148
|
|
|
@@ -138,33 +156,45 @@ template in `examples/output-templates.md`.
|
|
|
138
156
|
|
|
139
157
|
---
|
|
140
158
|
|
|
141
|
-
## Critical
|
|
159
|
+
## Critical invariants (load-bearing — the SORs carry the full detail)
|
|
142
160
|
|
|
143
|
-
|
|
144
|
-
|
|
161
|
+
The **Everywhere** rules apply to every feature; the rest apply to the named feature. They are irreversible
|
|
162
|
+
or silently wrong if missed.
|
|
145
163
|
|
|
146
164
|
- **Resolve the right node (Preferences).** Target the ITSM Incident Management org-preferences node
|
|
147
|
-
(
|
|
148
|
-
|
|
165
|
+
(the one with the six per-feature toggles), **not** the Service-Foundation look-alike whose toggles
|
|
166
|
+
are broadcast channels plus its own master switch.
|
|
149
167
|
- **Two preferences are one-way / enable-only (Preferences).** *Restrict Assigned Group to Regular Groups*
|
|
150
168
|
and *Enable Rich Text for Incident Descriptions* cannot be turned off once on. Never offer to disable
|
|
151
169
|
them; require an explicit "I understand this can't be undone" confirmation before enabling; never enable
|
|
152
170
|
to test. *Restrict Assigned Group…* also **freezes once the org has any Incident record** — an enable can
|
|
153
171
|
fail outright; do not retry.
|
|
154
|
-
- **License, not assignment (Major Incident Management).** MIM is the approval group + two preferences on
|
|
155
|
-
top of **base** Incident Management. The Major Incident Manager grant is a **LICENSE**
|
|
156
|
-
(`PermissionSetLicenseAssign`), never a `PermissionSetAssignment`. **License before group membership;
|
|
157
|
-
validate group users before designating a group; remove before reassign.** Only two preference names are
|
|
158
|
-
valid: `AutoCreationOfProblem`, `AutoClosureChildIncidents`.
|
|
159
172
|
- **PSL before PSG (Persona).** Assign the union of a persona PSG's member permission-set **licenses first,
|
|
160
173
|
then the PSG** (keyed on `PermissionSetGroupId`, never a permission-set Id) — otherwise the persona is
|
|
161
174
|
silently half-provisioned. Query the persona PSGs by `DeveloperName` with **no** `NamespacePrefix` filter.
|
|
175
|
+
- **The Priority Matrix save is a full replacement (Priority Matrix).** Any cell left out of the save is
|
|
176
|
+
deleted — always send the complete matrix, using only active Priority values.
|
|
177
|
+
- **SLA Versioning is permanent; the predefined seed is not idempotent (SLA & Milestones).** Turn on SLA
|
|
178
|
+
Versioning only after the explicit **Enable** answer, and never offer to turn it off. Detect the
|
|
179
|
+
predefined *Standard Support for Incidents* policy before seeding and never re-seed it. Never deactivate,
|
|
180
|
+
reorder, or broaden another SLA policy; halt on the first failed milestone create; never ask for an
|
|
181
|
+
Account.
|
|
182
|
+
- **One-way features (Email-to-Incident, Broadcast Communications).** Turning on Email-to-Incident or the
|
|
183
|
+
Broadcast Communications feature can't be undone — say so before asking, and never offer or attempt to
|
|
184
|
+
turn either off.
|
|
185
|
+
- **License, not assignment (Major Incident Management).** MIM is the approval group + two preferences on
|
|
186
|
+
top of **base** Incident Management, and MIM itself must already be active — Salesforce provisions it, so
|
|
187
|
+
never try to turn it on. The Major Incident Manager grant is a **LICENSE**
|
|
188
|
+
(`PermissionSetLicenseAssign`), never a `PermissionSetAssignment`. **License before group membership;
|
|
189
|
+
the approval group is a public Group, never a User, and its users must validate true before you designate
|
|
190
|
+
it; to reassign, validate the new group, then remove, then create.** Only two preference names are
|
|
191
|
+
valid: `AutoCreationOfProblem`, `AutoClosureChildIncidents`.
|
|
162
192
|
- **Destructive delete + unverifiable assignments (Service Management Privilege).** Deleting a Service
|
|
163
193
|
Management Privilege is irreversible — confirm explicitly, never delete to test. Bulk employee↔privilege
|
|
164
|
-
assignments have **no read-back** — report them as applied, not verified.
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
194
|
+
assignments have **no read-back** — report them as applied, not verified. Turn on the reversible *Enable
|
|
195
|
+
Privilege Assignment* toggle before any escalation-level or privilege step, as the SOR orders it; if the
|
|
196
|
+
user declines, stop. No public API substitute exists — a `404` / discover-miss means the surface isn't
|
|
197
|
+
served on this org; surface it and stop.
|
|
168
198
|
- **Everywhere:** read before write; treat "already in that state" / a duplicate as idempotent success;
|
|
169
199
|
verify by read-back (a write response alone is not proof); each license consumes a seat; on `401`/`403`/
|
|
170
200
|
`404` surface the raw error and stop; keep record Ids, HTTP codes, route paths, and tooling terms
|
|
@@ -175,33 +205,48 @@ hand-off. They are irreversible or silently-wrong if missed.
|
|
|
175
205
|
## Feature Dependencies & Recommended Order
|
|
176
206
|
|
|
177
207
|
```text
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
208
|
+
P. Incident Preferences (the six per-feature setup toggles)
|
|
209
|
+
Set Up the Basics
|
|
210
|
+
1. Incident Persona PSG (Fulfiller / Manager persona for a user)
|
|
211
|
+
2. Priority Matrix (Impact × Urgency → Incident.Priority)
|
|
212
|
+
3. SLA & Milestones (time-based commitments on incidents)
|
|
213
|
+
Unlock Advanced Functionality
|
|
214
|
+
4. Incident Dashboards (Manager / Fulfiller dashboards + Home pages)
|
|
215
|
+
5. Email-to-Incident (incoming email → Incidents, routing addresses)
|
|
216
|
+
6. Major Incident Management (approval group + two MIM preferences)
|
|
217
|
+
7. Broadcast Communications (turn on, then sender access, channels, objects)
|
|
218
|
+
8. Manage Incidents with AI (AI triage, Einstein assignment, chat/voice drafts)
|
|
219
|
+
9. Service Management Privilege (escalation level + privilege assignments)
|
|
220
|
+
10. Audit Tracking (field history on chosen Incident fields)
|
|
185
221
|
```
|
|
186
222
|
|
|
223
|
+
Features 1–8 follow Salesforce Go's IT Service Incident Management page; Service Management Privilege and
|
|
224
|
+
Audit Tracking aren't on that page.
|
|
225
|
+
|
|
226
|
+
A priority-tiered SLA needs the Priority Matrix on: with it off, every Incident gets the default priority,
|
|
227
|
+
so only that tier's milestones fire.
|
|
228
|
+
|
|
187
229
|
---
|
|
188
230
|
|
|
189
231
|
## Rules
|
|
190
232
|
|
|
191
233
|
- ALWAYS show "(via service-itsm-agentic-setup-incident-management)" in the setup header
|
|
192
|
-
- ALWAYS
|
|
193
|
-
|
|
234
|
+
- ALWAYS check the IT Service Enablement and master-switch prerequisites (Behavior step 2) through
|
|
235
|
+
the `IncidentMgmt` SOR before showing the menu or handing off a named feature, unless both were
|
|
236
|
+
confirmed enabled earlier in this conversation
|
|
237
|
+
- ALWAYS ask each off gate with `AskUserQuestion` (single-select Yes/No), every time, never as plain text,
|
|
238
|
+
before delegating the enable; No stops and points to Setup
|
|
239
|
+
- ALWAYS require exact `ENABLED` verification for `service-cloud-itsm-setup` before the Incident switch;
|
|
240
|
+
anything else stops. Never read or toggle `service-cloud-incident-management`
|
|
194
241
|
- ALWAYS present the feature menu before configuring any selected feature (the master-switch prerequisite
|
|
195
242
|
is the only permitted action before the menu) — do not assume which feature the user wants, **except**
|
|
196
243
|
when the user named a specific feature, in which case go straight to it (single-select is fine)
|
|
197
244
|
- ALWAYS pair the rendered feature-menu table with an `AskUserQuestion` (`multiSelect: true`) in the same
|
|
198
245
|
response — the table is the visual view; the tool call is the selection channel
|
|
199
|
-
-
|
|
200
|
-
hardcode a route, body, or preference name
|
|
201
|
-
-
|
|
202
|
-
|
|
203
|
-
marking it `Done` (or verify the already-configured state by live read with no write) — the SOR asks the
|
|
204
|
-
user nothing itself
|
|
246
|
+
- ALWAYS read a feature's reference file before executing it, follow its rules, and follow the SOR at
|
|
247
|
+
runtime — never hardcode a route, body, or preference name
|
|
248
|
+
- ALWAYS run a feature's SORs under the hand-off protocol; NEVER hand a feature off to another skill, and
|
|
249
|
+
never follow a SOR's hand-off for either prerequisite gate or for another feature on this menu
|
|
205
250
|
- NEVER set up a feature the user did not select; for "set up everything", walk each feature sequentially
|
|
206
251
|
in recommended order, confirming between each step
|
|
207
252
|
- Track progress across the conversation — do not re-present completed features as "Not done"
|
|
@@ -214,30 +259,39 @@ hand-off. They are irreversible or silently-wrong if missed.
|
|
|
214
259
|
Before emitting any menu or summary, confirm each; adjust the output before sending if any is unchecked.
|
|
215
260
|
|
|
216
261
|
- [ ] The header line ends with `(via service-itsm-agentic-setup-incident-management)`
|
|
217
|
-
- [ ] The
|
|
218
|
-
unless already confirmed earlier in this conversation
|
|
262
|
+
- [ ] The `IncidentMgmt` SOR confirmed both prerequisite gates before the menu or direct feature
|
|
263
|
+
handoff, unless both were already confirmed enabled earlier in this conversation; each off gate was
|
|
264
|
+
asked with `AskUserQuestion` (Yes/No), not plain text, before the enable was delegated
|
|
265
|
+
- [ ] The exact `service-cloud-itsm-setup` entry verified exact `ENABLED` before the Incident-switch
|
|
266
|
+
sequence; any other result stopped
|
|
219
267
|
- [ ] The feature menu emitted BOTH the ASCII table AND an `AskUserQuestion` (`multiSelect: true`) in the
|
|
220
268
|
same response (single-select only if the user already named a specific feature)
|
|
221
269
|
- [ ] Each feature row's `Status` reflects the actual tracked state (`Not done`, `In progress`, `Done`)
|
|
222
270
|
- [ ] A feature is being handled only because the user explicitly selected it (or is being walked through
|
|
223
271
|
sequentially with confirmation under an "all" / "everything" request)
|
|
224
|
-
- [ ] For
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
- [ ] For Audit Tracking: a live metadata read resolved the fields and complete labeled set; any save kept
|
|
229
|
-
every already-tracked field the user didn't ask to drop, was confirmed before it ran, and was verified
|
|
230
|
-
by read-back; a no-write `Done` also had Incident's object-level tracking confirmed on
|
|
272
|
+
- [ ] For each feature: its reference file was read and its checks passed; its SORs ran under the
|
|
273
|
+
hand-off protocol and no other skill was used; live state was read before any write; each
|
|
274
|
+
write was confirmed and verified by read-back, and a no-write `Done` came from a live read; one-way /
|
|
275
|
+
license-ordering invariants were honored
|
|
231
276
|
- [ ] No Salesforce record IDs appear in the output — human-readable names only
|
|
232
277
|
|
|
233
278
|
---
|
|
234
279
|
|
|
235
280
|
## Reference File Index
|
|
236
281
|
|
|
282
|
+
Read each `references/` file before executing its feature.
|
|
283
|
+
|
|
237
284
|
| File | When to read |
|
|
238
285
|
|------|--------------|
|
|
239
286
|
| `examples/output-templates.md` | Behavior steps 3, 5, 6 — feature menu (multi-select), post-feature progress, completion summary |
|
|
240
|
-
| `references/incident-preferences.md` |
|
|
241
|
-
| `references/
|
|
242
|
-
| `references/
|
|
243
|
-
| `references/
|
|
287
|
+
| `references/incident-preferences.md` | **Incident Preferences** — where to start in the `IncidentMgmt` SOR, the steps never to run, the one-way confirmations, and the licensed toggles |
|
|
288
|
+
| `references/incident-persona-psg.md` | **Incident Persona PSG** — the not-provisioned stop, the persona menu, one pass per PSG, and the settling status |
|
|
289
|
+
| `references/priority-matrix.md` | **Priority Matrix** — the reads, the full-replacement save, the read-back, and the Salesforce Go step |
|
|
290
|
+
| `references/sla-milestones.md` | **SLA & Milestones** — the one gate question, the lowercase seed, predefined vs custom, the milestone strategy, and milestone actions |
|
|
291
|
+
| `references/incident-dashboards.md` | **Incident Dashboards** — the persona choice, the two preferences each, and the dashboard check |
|
|
292
|
+
| `references/email-to-incident.md` | **Email-to-Incident** — the one-way enable, the full-map settings save, and routing addresses |
|
|
293
|
+
| `references/major-incident-management.md` | **Major Incident Management** — MIM must be active, the questions, reusing the approvers group, and validating before designating |
|
|
294
|
+
| `references/broadcast-communications.md` | **Broadcast Communications** — the one-way enable, then sender access, channels, and objects |
|
|
295
|
+
| `references/manage-incidents-with-ai.md` | **Manage Incidents with AI** — the three switches, which ones a request covers, the licensed ones, transcripts, and the smoke test |
|
|
296
|
+
| `references/service-mgmt-privilege.md` | **Service Management Privilege** — the toggle first, Tag-first, the irreversible delete, and the unverifiable assignments |
|
|
297
|
+
| `references/audit-tracking.md` | **Audit Tracking** — the field choice, the additive save, object-level tracking, and the read-back |
|
|
@@ -11,26 +11,42 @@ Incident Management Setup (via service-itsm-agentic-setup-incident-management)
|
|
|
11
11
|
|
|
12
12
|
Here are the features available for Incident Management. Select one or more to configure:
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
│ #
|
|
16
|
-
|
|
17
|
-
│
|
|
18
|
-
│
|
|
19
|
-
|
|
20
|
-
│
|
|
21
|
-
|
|
22
|
-
│
|
|
23
|
-
│
|
|
24
|
-
│
|
|
25
|
-
│
|
|
26
|
-
│
|
|
27
|
-
│
|
|
28
|
-
|
|
29
|
-
│
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
14
|
+
┌────┬───────────────────────────────┬──────────────────────────────────────────────────┬──────────┐
|
|
15
|
+
│ # │ Feature │ Description │ Status │
|
|
16
|
+
├────┼───────────────────────────────┼──────────────────────────────────────────────────┼──────────┤
|
|
17
|
+
│ P │ Incident Preferences │ The six setup toggles (validations, auto-close, │ Not done │
|
|
18
|
+
│ │ │ triage, Einstein, group restriction, rich text) │ │
|
|
19
|
+
├────┴───────────────────────────────┴──────────────────────────────────────────────────┴──────────┤
|
|
20
|
+
│ Set Up the Basics │
|
|
21
|
+
├────┬───────────────────────────────┬──────────────────────────────────────────────────┬──────────┤
|
|
22
|
+
│ 1 │ Incident Persona PSG │ Manage User Access: give a user the Incident │ Not done │
|
|
23
|
+
│ │ │ Fulfiller or Manager persona (bundle + licenses) │ │
|
|
24
|
+
│ 2 │ Priority Matrix │ Configure Rules for Automatic Incident Priority: │ Not done │
|
|
25
|
+
│ │ │ the Impact × Urgency grid that sets Priority │ │
|
|
26
|
+
│ 3 │ SLA & Milestones │ Define SLAs to Prioritize Incidents: turn on SLA │ Not done │
|
|
27
|
+
│ │ │ Management, then a predefined or custom policy │ │
|
|
28
|
+
├────┴───────────────────────────────┴──────────────────────────────────────────────────┴──────────┤
|
|
29
|
+
│ Unlock Advanced Functionality │
|
|
30
|
+
├────┬───────────────────────────────┬──────────────────────────────────────────────────┬──────────┤
|
|
31
|
+
│ 4 │ Incident Dashboards │ Deploy the Incident Manager and/or Fulfiller │ Not done │
|
|
32
|
+
│ │ │ dashboards, and dashboards on the Home page │ │
|
|
33
|
+
│ 5 │ Email-to-Incident │ Report Incidents from Emails: email settings + │ Not done │
|
|
34
|
+
│ │ │ routing addresses │ │
|
|
35
|
+
│ 6 │ Major Incident Management │ Review and Manage Major Incident Configuration: │ Not done │
|
|
36
|
+
│ │ │ approval group + the two MIM preferences │ │
|
|
37
|
+
│ │ │ (auto-create problem, auto-close child) │ │
|
|
38
|
+
│ 7 │ Broadcast Communications │ Set Up Broadcast Communication for Major │ Not done │
|
|
39
|
+
│ │ │ Incidents: turn on, then sender access, channels │ │
|
|
40
|
+
│ │ │ (Email/In-app/Slack/Teams), objects │ │
|
|
41
|
+
│ 8 │ Manage Incidents with AI │ Auto-triage, Einstein assignment, and AI-drafted │ Not done │
|
|
42
|
+
│ │ │ incidents from chat or voice transcripts │ │
|
|
43
|
+
│ 9 │ Service Management Privilege │ Escalation level, privilege records + employee │ Not done │
|
|
44
|
+
│ │ │ assignments, behind Enable Privilege Assignment │ │
|
|
45
|
+
│ 10 │ Audit Tracking │ Turn on field history tracking for the Incident │ Not done │
|
|
46
|
+
│ │ │ fields you choose (who changed what, and when) │ │
|
|
47
|
+
└────┴───────────────────────────────┴──────────────────────────────────────────────────┴──────────┘
|
|
48
|
+
|
|
49
|
+
Reply with the numbers of the features you want to set up (one or more, e.g. `1,3`; `P` for Incident Preferences).
|
|
34
50
|
```
|
|
35
51
|
|
|
36
52
|
## Post-feature progress (Behavior step 5)
|
|
@@ -41,19 +57,23 @@ Example after the Incident Preferences feature completes (others still `Not done
|
|
|
41
57
|
Incident Preferences — configured successfully
|
|
42
58
|
(via service-itsm-agentic-setup-incident-management)
|
|
43
59
|
|
|
44
|
-
|
|
45
|
-
│ #
|
|
46
|
-
|
|
47
|
-
│
|
|
48
|
-
│
|
|
49
|
-
│
|
|
50
|
-
│
|
|
51
|
-
│
|
|
52
|
-
│
|
|
53
|
-
│
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
60
|
+
┌────┬───────────────────────────────┬──────────┐
|
|
61
|
+
│ # │ Feature │ Status │
|
|
62
|
+
├────┼───────────────────────────────┼──────────┤
|
|
63
|
+
│ P │ Incident Preferences │ Done │
|
|
64
|
+
│ 1 │ Incident Persona PSG │ Not done │
|
|
65
|
+
│ 2 │ Priority Matrix │ Not done │
|
|
66
|
+
│ 3 │ SLA & Milestones │ Not done │
|
|
67
|
+
│ 4 │ Incident Dashboards │ Not done │
|
|
68
|
+
│ 5 │ Email-to-Incident │ Not done │
|
|
69
|
+
│ 6 │ Major Incident Management │ Not done │
|
|
70
|
+
│ 7 │ Broadcast Communications │ Not done │
|
|
71
|
+
│ 8 │ Manage Incidents with AI │ Not done │
|
|
72
|
+
│ 9 │ Service Management Privilege │ Not done │
|
|
73
|
+
│ 10 │ Audit Tracking │ Not done │
|
|
74
|
+
└────┴───────────────────────────────┴──────────┘
|
|
75
|
+
|
|
76
|
+
Say a number (or `P`) to configure the next feature, or `done` to finish.
|
|
57
77
|
```
|
|
58
78
|
|
|
59
79
|
## Completion summary (Behavior step 6)
|
|
@@ -69,7 +89,7 @@ finished — even if some features are still `Not done`. When rendering:
|
|
|
69
89
|
- All `Done` → `Your Incident Management features are configured.`
|
|
70
90
|
- Otherwise → `You have finished the features you selected. The remaining features can be resumed later by re-invoking this orchestrator.`
|
|
71
91
|
|
|
72
|
-
Example — user finished
|
|
92
|
+
Example — user finished after configuring three features:
|
|
73
93
|
|
|
74
94
|
```text
|
|
75
95
|
Incident Management Setup — Finished
|
|
@@ -78,11 +98,15 @@ Incident Management Setup — Finished
|
|
|
78
98
|
┌───────────────────────────────┬──────────┐
|
|
79
99
|
│ Feature │ Status │
|
|
80
100
|
├───────────────────────────────┼──────────┤
|
|
81
|
-
│ SLA & Milestones │ Done │
|
|
82
|
-
│ Priority Matrix │ Not done │
|
|
83
101
|
│ Incident Preferences │ Done │
|
|
84
|
-
│ Major Incident Management │ Done │
|
|
85
102
|
│ Incident Persona PSG │ Not done │
|
|
103
|
+
│ Priority Matrix │ Not done │
|
|
104
|
+
│ SLA & Milestones │ Done │
|
|
105
|
+
│ Incident Dashboards │ Not done │
|
|
106
|
+
│ Email-to-Incident │ Not done │
|
|
107
|
+
│ Major Incident Management │ Done │
|
|
108
|
+
│ Broadcast Communications │ Not done │
|
|
109
|
+
│ Manage Incidents with AI │ Not done │
|
|
86
110
|
│ Service Management Privilege │ Not done │
|
|
87
111
|
│ Audit Tracking │ Not done │
|
|
88
112
|
└───────────────────────────────┴──────────┘
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Feature: Audit Tracking (delegated to the `FieldHistoryTracking` SOR)
|
|
2
|
+
|
|
3
|
+
How the orchestrator runs the **Audit Tracking** feature — field history on the Incident fields the user
|
|
4
|
+
chooses — over Salesforce's **Field History Tracking SOR**. This file re-derives none of the SOR's steps —
|
|
5
|
+
the SOR's own steps and guidance decide *how*. The orchestrator runs them under its **SOR hand-off
|
|
6
|
+
protocol** and owns the user-facing gates:
|
|
7
|
+
|
|
8
|
+
1. `discover` the SOR by intent (e.g. "field history tracking") and `describe` the id `discover` returns
|
|
9
|
+
(`FieldHistoryTracking`). Judge availability by what the calls return, not by a step's `status` label —
|
|
10
|
+
a step labelled `proposed` may still be served. A `discover` miss or a `401`/`403`/`404` means the
|
|
11
|
+
surface isn't available to this user or org: surface it and stop.
|
|
12
|
+
2. Use the Incident fields the user already named, or ask which fields to track if the choice is missing
|
|
13
|
+
or ambiguous, plus anything else `describe` says it needs. If the user chooses no fields, leave the
|
|
14
|
+
feature `Not done` and stop; do not treat an empty choice as already configured.
|
|
15
|
+
3. Through the SOR, check Setup access, read Incident with `get-single-entity-data-with-metadata`, and get
|
|
16
|
+
its per-object tracked-field limit. Use the returned tracking flag, field labels, `canBeTracked` values,
|
|
17
|
+
current tracked set, and `fieldEnumOrId` keys to resolve the user's choices; do not guess field keys.
|
|
18
|
+
4. The save replaces the object's whole tracked-field set, so send the **union** of what's already tracked
|
|
19
|
+
and the chosen fields using their returned keys, with Incident's object-level tracking flag on — never
|
|
20
|
+
drop an already-tracked field unless the user asks. If a chosen field can't be tracked, or the union
|
|
21
|
+
would exceed the limit, say so plainly; never untrack another field to make room. Report it as done
|
|
22
|
+
with no write only if the nonempty chosen set is already tracked **and** Incident's object-level tracking
|
|
23
|
+
is on. If the fields are selected but that flag is off, the change still needs a save.
|
|
24
|
+
5. Show the exact final tracked-field list by field label (disambiguate matching labels) in either case.
|
|
25
|
+
Before any save, also show that object-level tracking will be enabled and get an explicit yes
|
|
26
|
+
(`AskUserQuestion`) for that plan; when the user already named the fields, this confirms the selection.
|
|
27
|
+
6. After any save, read Incident's tracked fields back through the SOR. Mark the feature `Done` only when
|
|
28
|
+
the live read (for the no-write case) or post-save read-back shows Incident's object-level tracking on,
|
|
29
|
+
the chosen fields tracked, and no field dropped that the user didn't ask to drop — a save response alone
|
|
30
|
+
is not proof.
|
|
31
|
+
|
|
32
|
+
## Rules
|
|
33
|
+
|
|
34
|
+
- ALWAYS keep every already-tracked Incident field in the save unless the user asked to stop tracking it,
|
|
35
|
+
confirm the exact final field list before the save, and verify by read-back before marking it `Done` (or
|
|
36
|
+
verify the already-configured state by live read with no write) — the SOR asks the user nothing itself
|
|
37
|
+
|
|
38
|
+
## Before marking it `Done`
|
|
39
|
+
|
|
40
|
+
- [ ] A live metadata read resolved the fields and complete labeled set; any save kept every
|
|
41
|
+
already-tracked field the user didn't ask to drop, was confirmed before it ran, and was verified by
|
|
42
|
+
read-back; a no-write `Done` also had Incident's object-level tracking confirmed on
|