@salesforce/afv-skills 1.63.0 → 1.65.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 (484) hide show
  1. package/package.json +1 -1
  2. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +312 -0
  3. package/skills/agentforce-offline-experimentation-run/SKILL.md +253 -0
  4. package/skills/agentforce-offline-experimentation-run/scripts/build_report.py +796 -0
  5. package/skills/agentforce-offline-experimentation-run/scripts/resolve-token.sh +111 -0
  6. package/skills/agentforce-offline-experimentation-run/scripts/sfap_replay.py +1053 -0
  7. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +64 -0
  8. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +46 -0
  9. package/skills/automation-company-profile-info-query/SKILL.md +51 -0
  10. package/skills/automation-digital-wallet-configure/SKILL.md +689 -0
  11. package/skills/automation-flow-coordinate/SKILL.md +95 -0
  12. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +1569 -0
  13. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +96 -0
  14. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +23 -0
  15. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +31 -0
  16. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +179 -0
  17. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +13 -0
  18. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +83 -0
  19. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +69 -0
  20. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +274 -0
  21. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +192 -0
  22. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +130 -0
  23. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +92 -0
  24. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +88 -0
  25. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +152 -0
  26. package/skills/automation-flow-coordinate/references/elements/start/start.md +539 -0
  27. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +152 -0
  28. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +497 -0
  29. package/skills/automation-flow-coordinate/references/recipes/author/author.md +868 -0
  30. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +300 -0
  31. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +292 -0
  32. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +323 -0
  33. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +109 -0
  34. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +219 -0
  35. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +180 -0
  36. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +175 -0
  37. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +255 -0
  38. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +212 -0
  39. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +171 -0
  40. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +786 -0
  41. package/skills/automation-flow-coordinate/references/shared/end/end.md +267 -0
  42. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +69 -0
  43. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +80 -0
  44. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +116 -0
  45. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +321 -0
  46. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +320 -0
  47. package/skills/automation-flow-coordinate/references/shared/server-functions.md +597 -0
  48. package/skills/automation-sandbox-post-copy-config-generate/SKILL.md +21 -11
  49. package/skills/automation-sandbox-post-copy-config-generate/assets/config_template.json +10 -0
  50. package/skills/automation-sandbox-post-copy-config-generate/assets/json_schema.json +33 -1
  51. package/skills/automation-sandbox-post-copy-config-generate/references/configuration_catalog.md +44 -1
  52. package/skills/automation-sandbox-post-copy-configure/SKILL.md +132 -124
  53. package/skills/automation-sandbox-post-copy-configure/references/flow_activation_path.md +151 -0
  54. package/skills/automation-sandbox-post-copy-configure/references/scheduled_apex_path.md +55 -9
  55. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +69 -0
  56. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +78 -0
  57. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +373 -0
  58. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +273 -0
  59. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +259 -0
  60. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +369 -0
  61. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +542 -0
  62. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +159 -0
  63. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +349 -0
  64. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +505 -0
  65. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +380 -0
  66. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +567 -0
  67. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +159 -0
  68. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +360 -0
  69. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +539 -0
  70. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +358 -0
  71. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +602 -0
  72. package/skills/commerce-b2b-store-configure/SKILL.md +251 -0
  73. package/skills/commerce-credit-memo-create/SKILL.md +139 -0
  74. package/skills/commerce-delivery-business-hours-configure/SKILL.md +277 -0
  75. package/skills/commerce-delivery-estimation-apply/SKILL.md +155 -0
  76. package/skills/commerce-delivery-estimation-configure/SKILL.md +377 -0
  77. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +174 -0
  78. package/skills/commerce-estimate-bopis-query/SKILL.md +279 -0
  79. package/skills/commerce-estimate-delivery-date-query/SKILL.md +349 -0
  80. package/skills/commerce-fees-apply/SKILL.md +227 -0
  81. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +200 -0
  82. package/skills/commerce-guest-buyer-create/SKILL.md +173 -0
  83. package/skills/commerce-location-bopis-configure/SKILL.md +378 -0
  84. package/skills/commerce-location-business-hours-configure/SKILL.md +235 -0
  85. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +309 -0
  86. package/skills/commerce-location-graph-integrate/SKILL.md +131 -0
  87. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +755 -0
  88. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +331 -0
  89. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +579 -0
  90. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +626 -0
  91. package/skills/commerce-merchant-catalog-configure/SKILL.md +614 -0
  92. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +368 -0
  93. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +118 -0
  94. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +65 -0
  95. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +90 -0
  96. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +72 -0
  97. package/skills/commerce-merchant-insights-query/SKILL.md +279 -0
  98. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +656 -0
  99. package/skills/commerce-order-summary-change-apply/SKILL.md +375 -0
  100. package/skills/commerce-product-details-get/SKILL.md +363 -0
  101. package/skills/commerce-product-search/SKILL.md +563 -0
  102. package/skills/commerce-react-storefront-create/SKILL.md +350 -0
  103. package/skills/commerce-return-order-summary-create/SKILL.md +513 -0
  104. package/skills/commerce-search-relevance-analyze/SKILL.md +757 -0
  105. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +274 -0
  106. package/skills/communications-initial-setup-configure/SKILL.md +630 -0
  107. package/skills/communications-multisite-configure/SKILL.md +571 -0
  108. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +74 -0
  109. package/skills/communications-smb-fiber-catalog-create/SKILL.md +413 -0
  110. package/skills/communications-tmf-integrate/SKILL.md +1368 -0
  111. package/skills/consumer-goods-promotion-bo-api-deploy/SKILL.md +54 -107
  112. package/skills/consumer-goods-promotion-bo-api-deploy/assets/set-comment-value/payloads/copy.json +1 -1
  113. package/skills/consumer-goods-promotion-bo-api-deploy/references/conventions-and-payload-rules.md +82 -5
  114. package/skills/consumer-goods-promotion-bo-api-deploy/references/generate-and-wire.md +35 -2
  115. package/skills/consumer-goods-promotion-bo-api-deploy/references/preflight-and-seed-queries.md +149 -0
  116. package/skills/consumer-goods-promotion-bo-api-deploy/references/smoke-and-verify.md +17 -1
  117. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +448 -0
  118. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +269 -0
  119. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +271 -0
  120. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +382 -0
  121. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +373 -0
  122. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +389 -0
  123. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +338 -0
  124. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +547 -0
  125. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +346 -0
  126. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +1110 -0
  127. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +224 -0
  128. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +418 -0
  129. package/skills/crm-analytics-dashboards-configure/SKILL.md +731 -0
  130. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +233 -0
  131. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +184 -0
  132. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +167 -0
  133. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +55 -0
  134. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +1350 -0
  135. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +1862 -0
  136. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +83 -0
  137. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +81 -0
  138. package/skills/data360-activation-create/SKILL.md +104 -0
  139. package/skills/data360-activation-external-platform-get/SKILL.md +49 -0
  140. package/skills/data360-activation-target-create/SKILL.md +93 -0
  141. package/skills/data360-activation-v2-create/SKILL.md +456 -0
  142. package/skills/data360-audience-dmo-get/SKILL.md +38 -0
  143. package/skills/data360-calculated-affinity-create/SKILL.md +82 -0
  144. package/skills/data360-calculated-insight-create/SKILL.md +148 -0
  145. package/skills/data360-catalog-metadata-create/SKILL.md +183 -0
  146. package/skills/data360-code-extension-create/SKILL.md +115 -0
  147. package/skills/data360-communication-capping-create/SKILL.md +227 -0
  148. package/skills/data360-connection-create/SKILL.md +491 -0
  149. package/skills/data360-content-lens-create/SKILL.md +181 -0
  150. package/skills/data360-data-action-create/SKILL.md +126 -0
  151. package/skills/data360-data-action-target-create/SKILL.md +181 -0
  152. package/skills/data360-data-clean-room-create/SKILL.md +238 -0
  153. package/skills/data360-data-governance-create/SKILL.md +746 -0
  154. package/skills/data360-data-graph-create/SKILL.md +82 -0
  155. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +38 -0
  156. package/skills/data360-data-lake-object-create/SKILL.md +207 -0
  157. package/skills/data360-data-model-object-catalog-get/SKILL.md +49 -0
  158. package/skills/data360-data-model-object-create/SKILL.md +128 -0
  159. package/skills/data360-data-model-object-mapping-create/SKILL.md +106 -0
  160. package/skills/data360-data-space-create/SKILL.md +161 -0
  161. package/skills/data360-data-streams-create/SKILL.md +324 -0
  162. package/skills/data360-engagement-signal-get/SKILL.md +38 -0
  163. package/skills/data360-experiment-create/SKILL.md +82 -0
  164. package/skills/data360-goal-based-campaign-create/SKILL.md +192 -0
  165. package/skills/data360-harmonization-process-history-get/SKILL.md +38 -0
  166. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +84 -0
  167. package/skills/data360-identity-resolution-create/SKILL.md +115 -0
  168. package/skills/data360-intelligent-document-processing-create/SKILL.md +148 -0
  169. package/skills/data360-knowledge-graph-construction-create/SKILL.md +93 -0
  170. package/skills/data360-knowledge-graph-create/SKILL.md +216 -0
  171. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +475 -0
  172. package/skills/data360-machine-learning-mcp-configure/SKILL.md +697 -0
  173. package/skills/data360-multi-org-mcp-configure/SKILL.md +117 -0
  174. package/skills/data360-secondary-index-mcp-configure/SKILL.md +126 -0
  175. package/skills/data360-segment-mcp-configure/SKILL.md +159 -0
  176. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +93 -0
  177. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +93 -0
  178. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +93 -0
  179. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +38 -0
  180. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +62 -0
  181. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +38 -0
  182. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +93 -0
  183. package/skills/data360-semantic-model-mcp-configure/SKILL.md +115 -0
  184. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +38 -0
  185. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +73 -0
  186. package/skills/dx-devops-conflict-resolve/SKILL.md +1 -5
  187. package/skills/dx-devops-pipeline-manage/SKILL.md +1 -5
  188. package/skills/dx-devops-project-manage/SKILL.md +1 -5
  189. package/skills/dx-devops-promote/SKILL.md +1 -5
  190. package/skills/dx-devops-request-status/SKILL.md +1 -5
  191. package/skills/dx-lifecycle-center/SKILL.md +120 -0
  192. package/skills/dx-lifecycle-center/examples/workflows.md +175 -0
  193. package/skills/dx-lifecycle-center/references/connect-api.md +123 -0
  194. package/skills/dx-lifecycle-center/references/connect-org.md +184 -0
  195. package/skills/dx-lifecycle-center/references/deploy.md +153 -0
  196. package/skills/dx-lifecycle-center/references/error-handling.md +21 -0
  197. package/skills/dx-lifecycle-center/references/hub-org.md +37 -0
  198. package/skills/dx-lifecycle-center/references/list-orgs.md +99 -0
  199. package/skills/dx-lifecycle-center/references/request-body.md +75 -0
  200. package/skills/dx-lifecycle-center/references/troubleshooting.md +31 -0
  201. package/skills/dx-lifecycle-center/scripts/poll-deploy-status.sh +200 -0
  202. package/skills/dx-lifecycle-center/scripts/resolve-environment.sh +120 -0
  203. package/skills/dx-org-devhub-configure/SKILL.md +1 -3
  204. package/skills/dx-org-shape-manage/SKILL.md +1 -5
  205. package/skills/dx-org-snapshot-manage/SKILL.md +1 -3
  206. package/skills/education-cloud-academic-calendar-generate/SKILL.md +1 -3
  207. package/skills/education-cloud-course-catalog-migrate/SKILL.md +1 -3
  208. package/skills/education-cloud-domain-configure/SKILL.md +1 -3
  209. package/skills/education-cloud-multi-campus-configure/SKILL.md +1 -3
  210. package/skills/education-cloud-student-recruitment-agent-configure/SKILL.md +1 -5
  211. package/skills/experience-afv-query/SKILL.md +234 -0
  212. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +63 -0
  213. package/skills/experience-apex-components-configure/SKILL.md +69 -0
  214. package/skills/experience-apex-pages-configure/SKILL.md +107 -0
  215. package/skills/experience-app-home-configure/SKILL.md +76 -0
  216. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +58 -0
  217. package/skills/experience-briefcase-configure/SKILL.md +287 -0
  218. package/skills/experience-community-flexi-page-list-create/SKILL.md +74 -0
  219. package/skills/experience-community-template-definition-list-query/SKILL.md +48 -0
  220. package/skills/experience-community-theme-definition-list-query/SKILL.md +38 -0
  221. package/skills/experience-content-assets-configure/SKILL.md +86 -0
  222. package/skills/experience-custom-domain-create/SKILL.md +727 -0
  223. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +41 -0
  224. package/skills/experience-field-service-app-builder-configure/SKILL.md +187 -0
  225. package/skills/experience-flow-category-configure/SKILL.md +117 -0
  226. package/skills/experience-formula-configure/SKILL.md +358 -0
  227. package/skills/experience-global-actions-configure/SKILL.md +69 -0
  228. package/skills/experience-global-publisher-layouts-configure/SKILL.md +79 -0
  229. package/skills/experience-instrumentation-configure/SKILL.md +64 -0
  230. package/skills/experience-lex-engagement-configure/SKILL.md +50 -0
  231. package/skills/experience-lightning-bolt-open/SKILL.md +12 -0
  232. package/skills/experience-lightning-out-configure/SKILL.md +129 -0
  233. package/skills/experience-lightning-preview-configure/SKILL.md +67 -0
  234. package/skills/experience-lightning-types-query/SKILL.md +98 -0
  235. package/skills/experience-malware-scan-configure/SKILL.md +71 -0
  236. package/skills/experience-my-salesforce-configure/SKILL.md +126 -0
  237. package/skills/experience-navigation-menus-configure/SKILL.md +235 -0
  238. package/skills/experience-notification-types-configure/SKILL.md +206 -0
  239. package/skills/experience-notifications-configure/SKILL.md +75 -0
  240. package/skills/experience-record-discovery-query/SKILL.md +227 -0
  241. package/skills/experience-regenerate-previews-open/SKILL.md +94 -0
  242. package/skills/experience-sales-cloud-mab-configure/SKILL.md +254 -0
  243. package/skills/experience-schema-builder-open/SKILL.md +38 -0
  244. package/skills/experience-simple-record-home-configure/SKILL.md +110 -0
  245. package/skills/experience-static-resources-configure/SKILL.md +74 -0
  246. package/skills/experience-ui-bundle-2gp-deploy/SKILL.md +1 -3
  247. package/skills/experience-ui-bundle-features-generate/SKILL.md +1 -5
  248. package/skills/experience-ui-bundle-mfa-configure/SKILL.md +1 -3
  249. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +23 -2
  250. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +13 -3
  251. package/skills/field-service-data-capture-migrate/SKILL.md +1 -3
  252. package/skills/field-service-mobile-branding-configure/SKILL.md +17 -3
  253. package/skills/field-service-objective-designer-configure/SKILL.md +72 -379
  254. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +10 -537
  255. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +65 -1093
  256. package/skills/{field-service-setup-orchestrator-get → field-service-setup-coordinate}/SKILL.md +18 -3
  257. package/skills/field-service-sobject-create-configure/SKILL.md +13 -213
  258. package/skills/field-service-voice-to-form-configure/SKILL.md +40 -11
  259. package/skills/field-service-work-plan-configure/SKILL.md +253 -0
  260. package/skills/field-service-work-rule-designer-configure/SKILL.md +121 -95
  261. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +180 -0
  262. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +196 -0
  263. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +106 -0
  264. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +96 -0
  265. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +111 -0
  266. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +250 -0
  267. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +122 -0
  268. package/skills/fsc-digital-origination-coordinate/SKILL.md +653 -0
  269. package/skills/fsc-digital-origination-demo-run/SKILL.md +225 -0
  270. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +112 -0
  271. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +396 -0
  272. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +336 -0
  273. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +208 -0
  274. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +375 -0
  275. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +83 -0
  276. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +248 -0
  277. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +206 -0
  278. package/skills/fsc-document-checklist-settings-configure/SKILL.md +57 -0
  279. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +148 -0
  280. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +1430 -0
  281. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +471 -0
  282. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +429 -0
  283. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +150 -0
  284. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +123 -0
  285. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +82 -0
  286. package/skills/fsc-product-act3-attributes-create/SKILL.md +249 -0
  287. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +196 -0
  288. package/skills/fsc-product-act5-considerations-get/SKILL.md +44 -0
  289. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +384 -0
  290. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +144 -0
  291. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +107 -0
  292. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +189 -0
  293. package/skills/fsc-stage-management-definition-create/SKILL.md +108 -0
  294. package/skills/fsc-stage-management-permissions-assign/SKILL.md +143 -0
  295. package/skills/fsc-stage-management-transitions-configure/SKILL.md +139 -0
  296. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +135 -0
  297. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +134 -0
  298. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +136 -0
  299. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +134 -0
  300. package/skills/health-cloud-care-requests-create/SKILL.md +178 -0
  301. package/skills/health-cloud-initial-configure/SKILL.md +511 -0
  302. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +1374 -0
  303. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +924 -0
  304. package/skills/health-cloud-referral-management-coordinate/SKILL.md +513 -0
  305. package/skills/health-cloud-timeline-configure/SKILL.md +622 -0
  306. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +135 -0
  307. package/skills/industries-account-score-settings-query/SKILL.md +78 -0
  308. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +177 -0
  309. package/skills/industries-ad-product-availability-search/SKILL.md +399 -0
  310. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +628 -0
  311. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +73 -0
  312. package/skills/industries-atm-settings-starter-configure/SKILL.md +76 -0
  313. package/skills/industries-batch-document-ai-configure/SKILL.md +196 -0
  314. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +71 -0
  315. package/skills/industries-branch-management-settings-configure/SKILL.md +89 -0
  316. package/skills/industries-bre-decision-table-access-configure/SKILL.md +367 -0
  317. package/skills/industries-brokerage-settings-configure/SKILL.md +41 -0
  318. package/skills/industries-calendar-sync-settings-configure/SKILL.md +89 -0
  319. package/skills/industries-care-request-settings-configure/SKILL.md +218 -0
  320. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +54 -0
  321. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +380 -0
  322. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +216 -0
  323. package/skills/industries-catalog-process-intake-configure/SKILL.md +219 -0
  324. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +153 -0
  325. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +168 -0
  326. package/skills/industries-cds-general-settings-configure/SKILL.md +69 -0
  327. package/skills/industries-claim-financial-settings-configure/SKILL.md +169 -0
  328. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +136 -0
  329. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +105 -0
  330. package/skills/industries-collection-plan-settings-configure/SKILL.md +132 -0
  331. package/skills/industries-comms-service-console-settings-configure/SKILL.md +159 -0
  332. package/skills/industries-compliance-configure/SKILL.md +102 -0
  333. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +76 -0
  334. package/skills/industries-contact-center-app-layout-configure/SKILL.md +88 -0
  335. package/skills/industries-contact-center-components-configure/SKILL.md +96 -0
  336. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +95 -0
  337. package/skills/industries-contact-center-user-access-assign/SKILL.md +96 -0
  338. package/skills/industries-course-waitlist-config-configure/SKILL.md +162 -0
  339. package/skills/industries-crisis-center-settings-configure/SKILL.md +84 -0
  340. package/skills/industries-custom-object-settings-configure/SKILL.md +94 -0
  341. package/skills/industries-data-cloud-integration-configure/SKILL.md +88 -0
  342. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +245 -0
  343. package/skills/industries-decision-matrix-builder-configure/SKILL.md +78 -0
  344. package/skills/industries-decision-table-hbase-configure/SKILL.md +87 -0
  345. package/skills/industries-decision-table-version-configure/SKILL.md +74 -0
  346. package/skills/industries-decision-tables-builder-configure/SKILL.md +253 -0
  347. package/skills/industries-decision-tables-configure/SKILL.md +439 -0
  348. package/skills/industries-energy-utilities-configure/SKILL.md +251 -0
  349. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +1008 -0
  350. package/skills/industries-eu-new-connections-configure/SKILL.md +30 -0
  351. package/skills/industries-explainability-msg-template-configure/SKILL.md +135 -0
  352. package/skills/industries-expression-set-message-token-configure/SKILL.md +135 -0
  353. package/skills/industries-field-service-settings-configure/SKILL.md +82 -0
  354. package/skills/industries-form-framework-settings-configure/SKILL.md +30 -0
  355. package/skills/industries-fsc-ai-settings-configure/SKILL.md +57 -0
  356. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +172 -0
  357. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +61 -0
  358. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +58 -0
  359. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +103 -0
  360. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +117 -0
  361. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +99 -0
  362. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +120 -0
  363. package/skills/industries-fundraising-rfm-configure/SKILL.md +128 -0
  364. package/skills/industries-fundraising-settings-configure/SKILL.md +145 -0
  365. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +299 -0
  366. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +87 -0
  367. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +58 -0
  368. package/skills/industries-hc-score-category-settings-configure/SKILL.md +167 -0
  369. package/skills/industries-health-engagement-settings-configure/SKILL.md +218 -0
  370. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +131 -0
  371. package/skills/industries-home-health-bundling-policy-create/SKILL.md +50 -0
  372. package/skills/industries-home-health-entity-labels-configure/SKILL.md +29 -0
  373. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +71 -0
  374. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +27 -0
  375. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +80 -0
  376. package/skills/industries-home-health-guided-setup-configure/SKILL.md +836 -0
  377. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +55 -0
  378. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +61 -0
  379. package/skills/industries-home-health-licenses-assign/SKILL.md +27 -0
  380. package/skills/industries-home-health-operating-hours-create/SKILL.md +40 -0
  381. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +41 -0
  382. package/skills/industries-home-health-service-objective-create/SKILL.md +22 -0
  383. package/skills/industries-home-health-skills-create/SKILL.md +31 -0
  384. package/skills/industries-home-health-users-create/SKILL.md +29 -0
  385. package/skills/industries-icm-act3-toggles-configure/SKILL.md +198 -0
  386. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +361 -0
  387. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +550 -0
  388. package/skills/industries-integrated-care-management-configure/SKILL.md +168 -0
  389. package/skills/industries-object-enablement-configure/SKILL.md +86 -0
  390. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +64 -0
  391. package/skills/insurance-brokerage-agency-billing-configure/SKILL.md +1 -3
  392. package/skills/integration-apex-settings-configure/SKILL.md +61 -0
  393. package/skills/marketing-e360-email-archiving-configure/SKILL.md +73 -0
  394. package/skills/marketing-message-test/SKILL.md +1 -3
  395. package/skills/nonprofit-fundraising-configure/SKILL.md +240 -0
  396. package/skills/nonprofit-fundraising-configure/references/gotchas.md +26 -0
  397. package/skills/nonprofit-fundraising-configure/references/mcp-invocation.md +678 -0
  398. package/skills/nonprofit-fundraising-configure/references/permission-targeting.md +35 -0
  399. package/skills/nonprofit-volunteer-management-model-get/SKILL.md +166 -0
  400. package/skills/nonprofit-volunteer-management-model-get/references/entities.md +315 -0
  401. package/skills/nonprofit-volunteer-management-model-get/references/relationships.md +175 -0
  402. package/skills/nonprofit-volunteer-management-model-get/references/themes.md +143 -0
  403. package/skills/nonprofit-volunteer-management-records-create/SKILL.md +121 -0
  404. package/skills/nonprofit-volunteer-management-records-create/references/field-guide.md +284 -0
  405. package/skills/nonprofit-volunteer-management-records-create/references/mcp-invocation.md +248 -0
  406. package/skills/nonprofit-volunteer-management-records-create/references/review-format.md +140 -0
  407. package/skills/nonprofit-volunteer-management-records-create/scripts/expand-series.py +632 -0
  408. package/skills/nonprofit-volunteer-management-records-create/scripts/render-review-table.py +419 -0
  409. package/skills/nonprofit-volunteer-management-records-create/scripts/tests/test_expand_series.py +690 -0
  410. package/skills/nonprofit-volunteer-management-records-create/scripts/tests/test_render_review_table.py +421 -0
  411. package/skills/nonprofit-volunteer-management-structure-generate/SKILL.md +119 -0
  412. package/skills/nonprofit-volunteer-management-structure-generate/references/configuration-decisions.md +159 -0
  413. package/skills/nonprofit-volunteer-management-structure-generate/references/discovery-interview.md +137 -0
  414. package/skills/nonprofit-volunteer-management-structure-generate/references/edge-cases.md +48 -0
  415. package/skills/nonprofit-volunteer-management-structure-generate/references/mcp-invocation.md +75 -0
  416. package/skills/nonprofit-volunteer-management-structure-generate/references/plan-output.md +141 -0
  417. package/skills/platform-custom-field-generate/SKILL.md +1 -0
  418. package/skills/platform-custom-field-generate/references/advanced-picklists.md +5 -5
  419. package/skills/platform-custom-metadata-type-generate/SKILL.md +3 -0
  420. package/skills/platform-custom-object-generate/SKILL.md +4 -0
  421. package/skills/platform-custom-permissions-configure/SKILL.md +687 -0
  422. package/skills/platform-custom-setting-generate/SKILL.md +3 -0
  423. package/skills/platform-datamask-run/SKILL.md +1 -5
  424. package/skills/platform-label-workbench-import-create/SKILL.md +67 -0
  425. package/skills/platform-permission-set-generate/SKILL.md +3 -0
  426. package/skills/platform-privacy-agent-settings-configure/SKILL.md +752 -0
  427. package/skills/platform-salesforce-connect-adapter-generate/SKILL.md +1 -3
  428. package/skills/platform-sandbox-configure/SKILL.md +1 -3
  429. package/skills/platform-value-set-generate/SKILL.md +3 -0
  430. package/skills/sales-call-scoring-configure/SKILL.md +1 -5
  431. package/skills/service-agentforce-channel-configure/SKILL.md +1 -3
  432. package/skills/service-agentforce-human-escalation-configure/SKILL.md +1 -3
  433. package/skills/service-catalog-template-coordinate/SKILL.md +1 -3
  434. package/skills/service-concierge-portal-generate/SKILL.md +1 -3
  435. package/skills/service-email-to-case-configure/SKILL.md +1 -5
  436. package/skills/service-itsm-agentic-setup-agent-runtime-access-assign/SKILL.md +1 -3
  437. package/skills/service-itsm-agentic-setup-agentforce-coordinate/SKILL.md +1 -3
  438. package/skills/service-itsm-agentic-setup-agentforce-studio-configure/SKILL.md +1 -3
  439. package/skills/service-itsm-agentic-setup-agentforce-studio-validate/SKILL.md +1 -3
  440. package/skills/service-itsm-agentic-setup-cmdb-access-assign/SKILL.md +1 -3
  441. package/skills/service-itsm-agentic-setup-cmdb-bundle-deploy/SKILL.md +1 -5
  442. package/skills/service-itsm-agentic-setup-cmdb-configure/SKILL.md +1 -3
  443. package/skills/service-itsm-agentic-setup-cmdb-coordinate/SKILL.md +1 -3
  444. package/skills/service-itsm-agentic-setup-cmdb-discovery-configure/SKILL.md +1 -3
  445. package/skills/service-itsm-agentic-setup-employee-agent-configure/SKILL.md +1 -3
  446. package/skills/service-itsm-agentic-setup-fulfiller-agent-configure/SKILL.md +1 -3
  447. package/skills/service-itsm-agentic-setup-incident-sla-configure/SKILL.md +1 -0
  448. package/skills/service-itsm-agentic-setup-itsm-agentforce-permset-assign/SKILL.md +1 -3
  449. package/skills/service-itsm-agentic-setup-uel-user-create/SKILL.md +1 -9
  450. package/skills/service-itsm-incident-mgmt-configure/SKILL.md +1 -5
  451. package/skills/service-itsm-incident-priority-configure/SKILL.md +1 -3
  452. package/skills/service-itsm-slack-itservice-configure/SKILL.md +1 -3
  453. package/skills/service-itsm-swarming-configure/SKILL.md +1 -3
  454. package/skills/service-itsm-teams-configure/SKILL.md +1 -3
  455. package/skills/service-itsm-teams-debug/SKILL.md +1 -3
  456. package/skills/service-itsm-teams-employee-agent-configure/SKILL.md +1 -3
  457. package/skills/service-itsm-teams-itdesk-configure/SKILL.md +1 -3
  458. package/skills/service-itsm-teams-itservice-configure/SKILL.md +1 -3
  459. package/skills/service-native-voice-recording-transcription-configure/SKILL.md +1 -3
  460. package/skills/service-omni-agent-users-create/SKILL.md +1 -3
  461. package/skills/service-omni-agent-work-sharing-configure/SKILL.md +1 -3
  462. package/skills/service-omni-attribute-routing-configure/SKILL.md +1 -3
  463. package/skills/service-omni-base-settings-configure/SKILL.md +1 -3
  464. package/skills/service-omni-channel-inventory-analyze/SKILL.md +1 -3
  465. package/skills/service-omni-channel-limits-analyze/SKILL.md +1 -3
  466. package/skills/service-omni-channel-setup-coordinate/SKILL.md +1 -3
  467. package/skills/service-omni-command-center-analyze/SKILL.md +1 -3
  468. package/skills/service-omni-command-center-configure/SKILL.md +1 -3
  469. package/skills/service-omni-permission-set-assign/SKILL.md +1 -3
  470. package/skills/service-omni-presence-status-deploy/SKILL.md +1 -3
  471. package/skills/service-omni-presence-user-config-deploy/SKILL.md +1 -3
  472. package/skills/service-omni-queue-deploy/SKILL.md +1 -3
  473. package/skills/service-omni-queue-members-assign/SKILL.md +1 -3
  474. package/skills/service-omni-queue-routing-config-deploy/SKILL.md +1 -3
  475. package/skills/service-omni-routing-flow-deploy/SKILL.md +1 -3
  476. package/skills/service-omni-service-channel-configure/SKILL.md +1 -3
  477. package/skills/service-omni-sidebar-configure/SKILL.md +1 -3
  478. package/skills/service-omni-skills-based-routing-configure/SKILL.md +1 -3
  479. package/skills/service-omni-supervisor-config-deploy/SKILL.md +1 -3
  480. package/skills/service-omni-supervisor-permset-assign/SKILL.md +1 -3
  481. package/skills/service-omni-supervisor-surface-deploy/SKILL.md +1 -3
  482. package/skills/service-omni-supervisor-users-create/SKILL.md +1 -3
  483. package/skills/service-omni-work-skill-routing-configure/SKILL.md +1 -3
  484. package/skills/tableau-next-asset-create/README.md +0 -65
@@ -0,0 +1,358 @@
1
+ ---
2
+ name: experience-formula-configure
3
+ description: "Create, modify, fix, validate, or explain the Salesforce formula EXPRESSION for a formula field, a validation rule, or a default value on any object. It works the same on all three surfaces: the error-condition expression a validation rule evaluates on its object, the calculated value a formula field returns, and the expression a default value uses. It writes a new expression from a described calculation/condition; modifies an existing expression (add/drop a field or condition, rewrite); fixes a broken expression so it compiles; validates whether it compiles for its object and return type; and explains what it does. Select it to create, update, validate, or interpret a formula expression on a formula field, a validation rule, or a default value on a given object — including updating a validation rule's formula or a custom field's formula."
4
+ metadata:
5
+ version: "1.0"
6
+ minApiVersion: "67.0"
7
+ accessCheck: "(SetupCopilot.orgHasEnhancedAgentForSetupBetaEnabled) && (EinsteinGPT.userHasEinsteinGPTFormulaAccess) && (EinsteinGPT.userHasViewSetup) && (SetupCopilot.orgHasA4SSkillsInH360)"
8
+ domains:
9
+ - "Experience"
10
+ utterances:
11
+ - "Create a formula that calculates [Description]"
12
+ - "Create a formula for [Purpose] from [Object name]"
13
+ - "Generate a formula where [condition]"
14
+ - "Write a formula for [Object Name] that [calculation description]"
15
+ - "Modify the formula to include the [Field Name] field"
16
+ - "Change the formula to calculate [Description]"
17
+ - "Update the formula to add [Condition]"
18
+ - "Modify the formula of [Field Name] field from [Object] to [Purpose]"
19
+ - "Fix the [formula type] formula [formula string] on the [Object] object"
20
+ - "Is this formula valid: [formula string]?"
21
+ - "Validate the formula [formula string] of return type [type] on [Object]"
22
+ - "Explain the formula on the [Field Name] field on the [Object] object"
23
+ - "What does the formula on validation rule [Validation Rule Name] do?"
24
+ ---
25
+
26
+ # Manage a Formula
27
+
28
+ ## When to Use This Skill
29
+
30
+ Use this single skill for **every** operation on a Salesforce formula expression — across formula
31
+ fields, validation rules, and default values. It authors or interprets the **expression text only**:
32
+ it never creates a field, saves a validation rule, or persists a default value.
33
+
34
+ There are four headline operations. Determine the operation from the request and run the matching
35
+ flow below. All four share one input-resolution step, one grounding contract, one
36
+ validate-and-self-correct behavior, and one explanation format — so route by intent, then follow the
37
+ shared steps:
38
+
39
+ - **Create** — the user wants a brand-new formula from a described calculation or condition, with no
40
+ existing expression to start from. ("create/generate/build/write a formula …")
41
+ - **Modify** — the user wants to CHANGE an existing formula: add a field, add or change a condition,
42
+ change what it calculates, **or fix/correct a broken one**. Because the expression already exists,
43
+ Modify validates it first, then applies the requested change and re-validates. A fix or correction
44
+ ("fix my formula", "correct this formula", "rectify the expression …") is a Modify whose requested
45
+ change is simply "make it valid".
46
+ - **Validate** — the user wants to know whether an expression compiles ("is this valid," "check
47
+ this," "validate this"). Validate first; if the formula does not compile, correct it and present
48
+ the corrected, valid version (see below) rather than only reporting the error.
49
+ - **Explain** — the user wants to understand what an existing formula does (interpret / describe /
50
+ break down). Validate first; if it does not compile, correct it first, then explain the corrected
51
+ formula, noting that the original was invalid and was made valid.
52
+
53
+ Do not reframe the request across operations: a "create" request produces an expression and never a
54
+ field or validation rule; a "modify" applies stated new behavior (or corrects a broken formula) to an
55
+ existing one; "validate" and "explain" operate on the formula as given (self-correcting only when it
56
+ does not compile). When the request states new behavior for an existing formula, treat it as Modify;
57
+ when it only asks whether an expression is valid, treat it as Validate; when it asks what a formula
58
+ does, treat it as Explain.
59
+
60
+ ## Shared input resolution (do this BEFORE authoring, for every operation)
61
+
62
+ Ground every step on the user's **verbatim** request — never paraphrase it. Resolve these inputs once,
63
+ reuse them across every step (grounding, validation, and any correction), and never re-resolve them
64
+ mid-flow:
65
+
66
+ 1. **formula** (the base/subject expression). First branch on the operation:
67
+
68
+ - **Create** — there is NO base expression. Skip all base-formula resolution below: never search
69
+ for, ask about, or look up a stored expression, and never treat a named field, rule, or object as
70
+ a source of a base formula (it is only the TARGET surface). Resolve the remaining inputs
71
+ (steps 2-5).
72
+ - **Modify, Validate, or Explain** — resolve the base formula in this strict priority order:
73
+ - Use a formula stated directly in the request — a quoted expression such as `'Amount > 100'` or
74
+ an unquoted expression embedded in the request text.
75
+ - Otherwise, use the `formula` context value when set. References such as "my formula," "the
76
+ formula," "this formula," or "verify/check my formula" point to the `formula` context value; do
77
+ not ask the user to re-enter it.
78
+ - **Only when neither the request nor the `formula` context value provides an expression** and the
79
+ user names a field or validation rule, retrieve the stored expression with a **read-only metadata
80
+ lookup** — resolve the object and the field/rule to their API names first, and never fabricate the
81
+ expression. **If an expression was already provided in the request or the `formula` context value,
82
+ skip this lookup entirely** and use that expression directly; do not query metadata for it. If the
83
+ named field or rule's stored expression cannot be resolved, tell the user plainly and stop; never
84
+ guess or invent one.
85
+ - When the user identifies the target by its CURRENT default value or formula content (not by
86
+ field name), issue at most ONE query for the object's fields and their default values/formulas
87
+ and match locally; never loop through the full custom-field set. If not identified within two
88
+ read-only lookups, ask which field by name.
89
+ - Ask for a formula only when the request has no expression, the `formula` context value is empty
90
+ or null, and no field or validation rule is named.
91
+ 2. **entityName** (the target object's API name): an explicitly stated object; else the
92
+ `currentObjectApiName` context value when set and nonempty; else, when the object is not stated
93
+ and the named field/rule does not resolve under the available object context, ask which OBJECT the
94
+ field/rule is on — ask for the object only, never for an API name (you resolve the field/rule API
95
+ name yourself). Once known, state which object you are using and continue. For Create, resolve the
96
+ object from the request; else the current-object context; else ask.
97
+ 3. **formulaType**: an explicit value; else the `formulaType` context value. It must be exactly one
98
+ of the three values the `validate-formula` API accepts — `Validation` (a validation rule),
99
+ `CustomField` (a formula field), or `DefaultValue` (a field's default-value formula). For a
100
+ validation rule send `Validation`, never `ValidationRule` (the API 400s on `ValidationRule`).
101
+ Default to `CustomField` only if neither is set; never leave it blank (omitting it 500s).
102
+ 4. **returnType** (accepted: `Boolean`, `Number`, `Currency`, `Percent`, `Date`, `DateTime`, `Time`,
103
+ `Text`): an explicit value; else the `returnType` context value; otherwise infer from the
104
+ expression's (or, for Modify, the MODIFIED result's) shape:
105
+ - `AnnualRevenue + 100` → `Number`
106
+ - `AnnualRevenue > 100` → `Boolean`
107
+ - `DateValue(...)` → `Date`
108
+ - `Now() + 3` → `DateTime`
109
+ - `TimeValue(...)` → `Time`
110
+ - `AnnualRevenue * 0.10` → `Currency`
111
+ - `(Discount_Amount__c / ListPrice) * 100` → `Percent`
112
+ When `formulaType` = `Validation`, force `returnType` = `Boolean` and skip other resolution — a
113
+ validation rule MUST evaluate true/false. If nothing else matches, default `returnType` to `Text`;
114
+ it must always resolve to a concrete type and is never left empty.
115
+ 5. **isFormulaEditorVisible**: the boolean from the `isFormulaEditorVisible` context value; default
116
+ `false` when absent. Never ask the user for this UI signal.
117
+
118
+ ## Formula Grounding Reference
119
+
120
+ A formula only compiles if every function and field it uses is actually allowed on the target formula
121
+ surface and exists on the target object. So **always call `fetch-formula-functions` (with the resolved
122
+ `formulaType`) and `fetch-resources` (with the resolved `entityName` and `formulaType`) before
123
+ authoring or correcting the expression, and author only from what they return.** Both steps are
124
+ read-only and persist nothing. This grounding is dynamic — the org's own catalog and schema are the
125
+ source of truth; never rely on a baked-in list of allowed functions or fields.
126
+
127
+ **When to ground per operation.** Create grounds BEFORE authoring the expression. Modify, Validate, and
128
+ Explain validate the existing expression first (see the Operation flows); ground THEN — before authoring
129
+ the requested change or a correction, call both steps.
130
+
131
+ **Allowed functions (`fetch-formula-functions`).** The result is already filtered to the `formulaType`
132
+ — it lists only the functions allowed for this surface, each with a description and an example. Author
133
+ using only the functions it returns, and treat a function's absence as "not allowed for this
134
+ formulaType." Do not invent function names or signatures. `validate-formula` remains the authoritative
135
+ check that a chosen function is permitted for this formula type.
136
+
137
+ **Available fields and global contexts (`fetch-resources`).** It returns each available field with its
138
+ API name and data type, and also exposes lookup/spanning relationships and global merge-field contexts
139
+ (`$User`, `$Organization`, `$Profile`, `$Label`, `$System`, `$UserRole`, `$Api`, `$CustomMetadata`,
140
+ and the like), each of which can be expanded to see its child fields. Match the nouns, values, and
141
+ conditions in the request to the real variables it returns, custom (`__c`) fields included. Resolve
142
+ every field and context reference against what this step returns — its API name and data type — rather
143
+ than assuming or inventing them; if a field the request needs cannot be resolved on the object, say so
144
+ and ask the user rather than fabricating it. Let the `validate-formula` `message` confirm the reference.
145
+
146
+ **Polymorphic fields.** A polymorphic field reference (for example `Owner`, `What`, `Who`, or
147
+ `Source:SocialPost.CreatedBy.Country`) always contains a `:` naming the concrete related type — more
148
+ examples are `SuppliedPhone` and `Owner:Queue.QueueName`. Reference the concrete related type and
149
+ field; do not dereference a polymorphic relationship generically. Resolve the concrete related entity
150
+ and its fields by expanding the relationship with `fetch-resources`, and express the reference against
151
+ that concrete entity. Do not conclude that a relationship reference cannot be expressed until its
152
+ concrete related entity has been grounded via `fetch-resources`; a polymorphic relationship being
153
+ involved is not, by itself, a reason to refuse the request.
154
+
155
+ ## Operation flows
156
+
157
+ Every operation on an existing expression — Modify, Validate, and Explain — makes `validate-formula`
158
+ its first engine call, no matter how the base `formula` was resolved (stated in the request, taken
159
+ from the `formula` context value, or looked up from stored metadata). Only Create, which has no base
160
+ expression, grounds and authors first. Validation always goes
161
+ through the `validate-formula` step (`POST /connect/formula/validate`), sending the resolved
162
+ `entityName`, `formula`, `formulaType`, and `returnType` (plus `fieldName` when the target is a named
163
+ field) with no required input omitted. Read `isFormulaValid` to branch; when it is `false`, read
164
+ `message` (the FormulaEngine compiler error), ground, and author a corrected formula, bounding the whole
165
+ loop to **at most three `validate-formula` calls in total** (see *Validate and self-correct* below). If
166
+ none validates within the bound, never present the formula as valid or fixed — fall back to the
167
+ best-effort explanation described in *Explain and return*.
168
+
169
+ Each flow below begins from the inputs already resolved in *Shared input resolution*; its steps cover
170
+ only what is operation-specific.
171
+
172
+ ### Create
173
+ 1. Confirm the request describes what to calculate or evaluate. If it does NOT (e.g. "create a formula
174
+ on Account" with no logic), STOP and ask what the formula should calculate; never invent logic the
175
+ user did not give.
176
+ 2. Ground functions + fields (`fetch-formula-functions`, `fetch-resources`) and author the formula from
177
+ the verbatim user request, grounded in the resolved schema and functions, with the result matching
178
+ `returnType` (and, when `formulaType` = `Validation`, evaluating to `Boolean`). Prefer the simplest
179
+ expression that satisfies the request.
180
+ 3. Validate the authored formula; on failure run the self-correct loop, keeping the requested
181
+ calculation intact (see *Validate and self-correct*).
182
+ 4. On success, present the formula, then explain it (see *Explain and return*). If no valid formula is
183
+ produced within the bound, fall back to the best-effort explanation (see *Explain and return*).
184
+
185
+ ### Modify (any change to an existing expression — includes fix/correct)
186
+ 1. Validate the base expression first to establish whether it currently compiles. For a pure fix: if it
187
+ already compiles, there is nothing to fix — present it as valid and explain it (see *Explain and
188
+ return*).
189
+ 2. Ground functions + fields (`fetch-formula-functions`, `fetch-resources`) and author the target
190
+ expression: apply the requested change — whatever the request describes ("include the Region field,"
191
+ "add a condition for closed-won," "calculate net revenue after discount"), or, for a fix, "make it
192
+ valid" — to the base, grounded in the resolved schema and functions, with the result matching
193
+ `returnType` (wrap/convert as needed).
194
+ 3. Validate the authored expression; on failure run the self-correct loop, keeping the requested change
195
+ intact (see *Validate and self-correct*).
196
+ 4. On success, present the modified formula, note in a short line what you changed (and any pre-existing
197
+ error you also fixed), then explain it (see *Explain and return*). If no valid formula is produced
198
+ within the bound, fall back to the best-effort explanation (see *Explain and return*).
199
+
200
+ ### Validate
201
+ 1. Validate the resolved formula first.
202
+ 2. If valid, report that it is valid and explain it (see *Explain and return*).
203
+ 3. If invalid, run the self-correct loop (see *Validate and self-correct*); present the corrected, valid
204
+ formula, note that the original did not compile and what you corrected, then explain it (see *Explain
205
+ and return*). If none validates within the bound, fall back to the best-effort explanation (see
206
+ *Explain and return*).
207
+
208
+ ### Explain
209
+ 1. Validate the resolved formula first, regardless of the request wording.
210
+ 2. If valid, author the explanation directly (see *Explain and return*). Do not restate the raw
211
+ validation response.
212
+ 3. If invalid, run the self-correct loop (see *Validate and self-correct*), then explain the corrected
213
+ formula (see *Explain and return*) — noting that the original was invalid and was made valid before
214
+ explaining it. If none validates within the bound, fall back to the best-effort explanation (see
215
+ *Explain and return*).
216
+
217
+ ### Validate and self-correct
218
+ When `isFormulaValid` is `false`, author a corrected formula yourself, grounded in the org's real
219
+ functions and schema:
220
+ - **Read the error.** Take the compiler error from the validation `message` — it names what is wrong
221
+ (misused function, wrong argument type, unknown field, unbalanced parentheses, a type mismatch
222
+ against `returnType`).
223
+ - **Ground before correcting.** Call `fetch-formula-functions` and `fetch-resources` first; author the
224
+ correction using only functions they return and fields/contexts they resolve. Never invent a
225
+ function, field, context, or data type.
226
+ - **Preserve intent and return type.** Keep what the formula was trying to do (and, for Modify, the
227
+ requested change) and make the result match `returnType`.
228
+ Re-validate the corrected formula via the same step. If still invalid, use the new `message` to refine
229
+ once more, up to the three-call total bound. If no version validates within the bound, do not present
230
+ the invalid formula as a valid or fixed solution and do not merely error out — fall back to the
231
+ best-effort explanation (see *Explain and return*).
232
+
233
+ ## Explain and return
234
+
235
+ Author every explanation directly from the validated formula and its object/type context (do not call
236
+ a separate action):
237
+ - a **short summary** (~30 words) of what the formula does, in plain language; and
238
+ - a **detailed, component-by-component breakdown** under a "Detailed Explanation" heading: split the
239
+ formula into its atomic parts (functions, field references, operators, comparisons, logical
240
+ expressions) and explain each once, in the order it first appears, using Salesforce-specific meaning
241
+ (e.g. `MONTH(CloseDate)` → "extracts the month number from the CloseDate field"; `&&` → "logical AND
242
+ — true only when both sides are true").
243
+
244
+ Return the validated formula expression (for Create/Modify, and for any Validate/Explain that had to
245
+ self-correct) plus the short summary and the detailed explanation. For a pure Explain or Validate of an
246
+ already-valid formula, return the summary + breakdown (Validate leads with the "valid" verdict).
247
+ Persist nothing.
248
+
249
+ **When the formula could not be made valid** (the self-correct loop hit its bound — see *Validate and
250
+ self-correct*): do not present it as valid or fixed. Give a best-effort interpretation instead — explain
251
+ what the formula appears to do and what it is trying to achieve from your own reading of it (it may not
252
+ even be a well-formed Salesforce formula), state plainly that it is invalid and could not be fixed, show
253
+ the base formula for reference, and quote the last compiler `message`. For Create — where you authored
254
+ the formula yourself and there is no user-provided expression to interpret — instead say you could not
255
+ produce a valid formula and quote the last `message`.
256
+
257
+ ## Critical Constraints
258
+
259
+ - **Never persist anything.** This skill returns/interprets expression text only; it does not create a
260
+ formula field, save a validation rule, or set a default value.
261
+ - **Never present an unvalidated formula as valid/fixed.** Only present a formula as a valid or
262
+ corrected result when its `validate-formula` result was `isFormulaValid: true`. If none validates
263
+ within the bound, fall back to the best-effort explanation (see *Explain and return*).
264
+ - **Never reference a field that does not resolve** on the target object; ground every field/context
265
+ reference via `fetch-resources` (its real API name and data type) before using it.
266
+ - **Never use a function `fetch-formula-functions` did not return** for the resolved `formulaType`;
267
+ that formulaType-filtered catalog is the allow-list, and `validate-formula` is the authoritative
268
+ confirmation.
269
+ - **Create only:** never invent, guess, or produce a placeholder formula before the user has supplied
270
+ the calculation/condition logic — confirming the request describes the calculation is load-bearing.
271
+ - **Do not punt or over-ask (all operations).** This skill proposes or interprets an expression; it
272
+ does not require the target to be an existing formula field, and does not require identifying which
273
+ stored field, rule, or record the expression applies to. If the named field is a standard field, has
274
+ no existing formula, or cannot itself hold a formula, do not refuse or make that caveat the answer —
275
+ author (or interpret) the requested expression for the object, validate it, and present it (you may
276
+ note in one line where such an expression can be applied). Whenever the formula (or, for Modify, the
277
+ base formula and the requested change) is determinable, author, validate, and present the result. Ask
278
+ for clarification only when the formula/change genuinely cannot be determined.
279
+ - **Existing-expression operations (Modify, Validate, Explain):** the first engine call is always
280
+ `validate-formula` on the resolved expression — before applying a change, explaining, or
281
+ self-correcting; never answer before that validate has run.
282
+ - Resolve a named field's or validation rule's stored expression with read-only metadata reads only
283
+ (Modify, Validate, or Explain — never for Create); never persist metadata and never fabricate
284
+ an expression.
285
+ - Reuse the exact resolved inputs across validation and every self-correction follow-up; keep the flow
286
+ bounded — resolve each input once, author once per pass, and run the self-correct loop with at most
287
+ three `validate-formula` calls total. Never loop unbounded.
288
+ - A validation rule (`formulaType` = `Validation`) always forces `returnType` = `Boolean`. Send the
289
+ wire value `Validation`, never `ValidationRule`.
290
+
291
+ **Preconditions:** Formula GPT in Copilot must be enabled for the org — this gates the validate-formula Connect API (dynamic access check `EinsteinGPT.userHasEinsteinGPTFormulaAccess`). The running user must have View Setup, which gates the `fetch-resources` and `fetch-formula-functions` grounding steps.
292
+
293
+ ## Operations Reference
294
+
295
+ | Operation | Purpose | How |
296
+ |---|---|---|
297
+ | Resolve a field/rule formula | Read the stored expression (formula or default value) for a named field or validation rule | Read-only metadata lookup on the resolved object + field/rule |
298
+ | Ground functions | Get the functions allowed for this formulaType (formulaType-filtered) | `fetch-formula-functions` step (read-only) |
299
+ | Ground fields + contexts | Get object fields, lookup/spanning relationships, and global merge-field contexts for this formulaType/object | `fetch-resources` step (read-only; expand a relationship/context via `parent` for its child fields) |
300
+ | Author (create / modify) | Author the expression or apply the requested change, grounded in the real schema + formulaType function catalog | You author it (grounded in `fetch-formula-functions` + `fetch-resources`) |
301
+ | Validate formula | Determine whether a formula compiles + get the compiler error | `POST /connect/formula/validate` Connect API (all inputs resolved; read `isFormulaValid` + `message`) |
302
+ | Self-correct | Author a corrected formula when validation fails (preserving intent / the requested change), then re-validate | You author it, grounded in the `message` + `fetch-formula-functions` + `fetch-resources`; bounded to 3 validate calls total |
303
+ | Explain formula | Explain the valid (or corrected) formula | Authored directly from the validated formula |
304
+
305
+ ### Dependency graph
306
+
307
+ ```mermaid
308
+ graph TD
309
+ A[Determine operation + resolve shared inputs] --> B{Existing base expression?}
310
+ B -->|"No — Create"| G["Ground: fetch-formula-functions + fetch-resources"]
311
+ B -->|"Yes — Modify / Validate / Explain"| VB["Validate the existing expression first"]
312
+ VB -->|"Modify: ground + apply the requested change"| G
313
+ VB -->|"Validate / Explain"| C
314
+ G --> AU["Author / apply the change"]
315
+ AU --> V["Validate via /connect/formula/validate"]
316
+ V --> C{isFormulaValid?}
317
+ C -->|true| E["Explain + return"]
318
+ C -->|false| SC["Self-correct: message + fetch-formula-functions + fetch-resources, re-validate (<= 3 calls total)"]
319
+ SC -->|valid| E
320
+ SC -->|"bound reached, still invalid"| H["Best-effort explanation: interpret intent, note it is invalid/unfixable, quote the message"]
321
+ ```
322
+
323
+ ## Output Format
324
+
325
+ - **Create/Modify:** present the validated formula, note any change (or fix) you applied, and explain
326
+ it — a short summary followed by the component-by-component breakdown under a "Detailed Explanation"
327
+ heading.
328
+ - **Validate (valid):** report that the formula is valid, then present the short summary + the
329
+ "Detailed Explanation" breakdown.
330
+ - **Validate/Explain (invalid → corrected):** present the corrected, valid formula, note that the
331
+ original did not compile and what you corrected, then explain the corrected formula in the same
332
+ format.
333
+ - **Explain (valid):** present the short summary + the "Detailed Explanation" breakdown.
334
+ - If no version validates within the bounded loop, do not present the invalid formula as valid/fixed;
335
+ fall back to the best-effort explanation (see *Explain and return*).
336
+ - Do not present the raw `validate-formula` output; this skill proposes/interprets the formula and does
337
+ not save it.
338
+
339
+ ## Notes
340
+ - Scope: Agentforce for Setup. This single skill handles create, modify, validate, and explain.
341
+ Correcting a broken formula is part of the Modify flow, and Validate and Explain likewise
342
+ self-correct when the input does not compile.
343
+ - This skill produces or interprets the expression text only; it does not edit, save, or persist field,
344
+ validation-rule, or default-value metadata.
345
+
346
+ <!-- skill-validate: ignore-start -->
347
+ <!-- codey:operations start -->
348
+ ## Operations Reference
349
+
350
+ Operations this skill uses — routing and dependency reference.
351
+
352
+ | Operation | Purpose | Status | Call | Depends on |
353
+ |-----------|---------|--------|------|------------|
354
+ | `validate-formula` | read | implemented | `POST /services/data/v67.0/connect/formula/validate` | — |
355
+ | `fetch-formula-functions` | read | implemented | `GET /headless/invoke/platform/formula/formula-builder/fetch-formula-functions` | — |
356
+ | `fetch-resources` | read | implemented | `GET /headless/invoke/platform/formula/formula-builder/fetch-resources` | — |
357
+ <!-- codey:operations end -->
358
+ <!-- skill-validate: ignore-end -->
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: experience-global-actions-configure
3
+ description: "Use this skill when users want to manage Global Actions in Salesforce Setup. Trigger when users mention global, actions, global actions."
4
+ metadata:
5
+ version: "1.0"
6
+ accessCheck: "OrgPermissions.RuntimeUi"
7
+ ---
8
+
9
+ # Managing Global Actions
10
+
11
+ ## When to Use This Skill
12
+
13
+ Manage Global Actions in Salesforce Setup. Global Actions (QuickActionDefinition
14
+ in the Tooling API) are actions that appear in the global publisher bar and can
15
+ be used across objects. Admins use this page to create, view, and delete global
16
+ actions. Common action types include Create, Update, LogACall, and custom actions.
17
+ Note: assigning actions to a layout is done via GlobalPublisherLayouts, not here.
18
+
19
+ ## Workflow
20
+
21
+ All four steps target the real QuickActionDefinition Tooling API object and are live-validated — go ahead and call them. Before deleting a global action, confirm it isn't assigned to a GlobalPublisherLayout (the delete call fails if it is); use GlobalPublisherLayouts to unassign first.
22
+
23
+ ## Critical Constraints
24
+
25
+ **Preconditions:**
26
+
27
+ - Org has Lightning Experience runtime UI enabled — the GlobalActions Setup page itself is gated by OrgPermissions.RuntimeUi per the setup-manifest entry. (check: `OrgPermissions.RuntimeUi`)
28
+ - Admin needs the standard QuickAction CRUD permission (typically Customize Application). Not artifact-grounded to a single check method in this factory-harness pass; the canonical gate is enforced server-side by the Metadata API deploy when substitution becomes possible.
29
+
30
+ ## Operations Reference
31
+
32
+ Operations grouped by purpose. Use these as the building blocks for the workflows above.
33
+
34
+ ### Summary
35
+
36
+ | Operation | Purpose | Status | Call | Depends on |
37
+ |-----------|---------|--------|------|------------|
38
+ | `list-global-actions` | read | — | `query.QuickActionDefinition` | — |
39
+ | `get-global-action` | read | — | `sobjects/QuickActionDefinition/{id}` | — |
40
+ | `create-global-action` | write | — | `sobjects/QuickActionDefinition` | — |
41
+ | `delete-global-action` | write | — | `sobjects/QuickActionDefinition/{id}` | — |
42
+
43
+ ### Read operations
44
+
45
+ #### `list-global-actions`
46
+
47
+ Query QuickActionDefinition records via the Tooling API. Use fields Id, DeveloperName, Label, Type to identify actions. Type values include Create, Update, LogACall, and others.
48
+
49
+ **Call:** `query.QuickActionDefinition`
50
+
51
+ #### `get-global-action`
52
+
53
+ Fetch a single QuickActionDefinition record by its Tooling API Id.
54
+
55
+ **Call:** `sobjects/QuickActionDefinition/{id}`
56
+
57
+ ### Write operations
58
+
59
+ #### `create-global-action`
60
+
61
+ Create a new QuickActionDefinition record via the Tooling API. Required fields vary by Type — at minimum provide Label, DeveloperName, and Type. Verify the action appears in Setup > Global Actions after creation.
62
+
63
+ **Call:** `sobjects/QuickActionDefinition`
64
+
65
+ #### `delete-global-action`
66
+
67
+ Delete a QuickActionDefinition record by its Tooling API Id. Verify the action is not assigned to any layout before deleting — removing an action that is part of a GlobalPublisherLayout will fail.
68
+
69
+ **Call:** `sobjects/QuickActionDefinition/{id}`
@@ -0,0 +1,79 @@
1
+ ---
2
+ name: experience-global-publisher-layouts-configure
3
+ description: "Use this skill when users want to manage the Global Publisher Layout in Salesforce Setup. Trigger when users mention global, publisher, layouts, global publisher layouts."
4
+ metadata:
5
+ version: "1.0"
6
+ ---
7
+
8
+ # Managing Global Publisher Layouts
9
+
10
+ ## When to Use This Skill
11
+
12
+ Manage the Global Publisher Layout in Salesforce Setup. The Global Publisher
13
+ Layout controls which actions appear in the global publisher bar for all users
14
+ org-wide. It is represented in the Metadata API as a Layout record named
15
+ "Global-Global Layout" containing a quickActionList with quickActionListItems
16
+ (each item is an action name like NewEvent, LogACall, NewContact, etc.).
17
+
18
+ The canonical way to read and update this layout is via the Metadata API,
19
+ routed through /headless/metadata (dispatch dispatches read vs. write
20
+ per op — no separate transport to model):
21
+ - Read: metadataRetrieveLayout with fullName "Global-Global Layout"
22
+ - Update: round-trip the retrieved body, edit quickActionList, then
23
+ metadataUpdateLayout with the modified body
24
+
25
+ The Layout metadata shape is:
26
+ quickActionList:
27
+ quickActionListItems:
28
+ - quickActionName: NewEvent
29
+ - quickActionName: LogACall
30
+ ...
31
+
32
+ To add an action: add a quickActionListItems entry with the action's DeveloperName.
33
+ To remove an action: remove the corresponding quickActionListItems entry.
34
+ To reorder: change the order of quickActionListItems entries.
35
+ Action names must match existing QuickActionDefinition DeveloperNames.
36
+
37
+ ## Critical Constraints
38
+
39
+ **Preconditions:**
40
+
41
+ - Requires Customize Application permission to deploy Layout metadata.
42
+ - Action names used in the layout must be DeveloperNames of existing QuickActionDefinition records. Adding a non-existent action name will cause the deploy to fail.
43
+ - The update step must round-trip the exact body returned by the read step (read-global-publisher-layout) — Layout metadata update is full-replace, so omitting fields from the retrieved body will drop them from the deployed layout.
44
+
45
+ ## Operations Reference
46
+
47
+ Operations grouped by purpose. Use these as the building blocks for the workflows above.
48
+
49
+ ### Summary
50
+
51
+ | Operation | Purpose | Status | Call | Depends on |
52
+ |-----------|---------|--------|------|------------|
53
+ | `read-global-publisher-layout` | read | — | `/headless/metadata` | — |
54
+ | `update-global-publisher-layout` | write | — | `/headless/metadata` | `read-global-publisher-layout` |
55
+ | `list-available-actions` | read | — | `query.QuickActionDefinition` | — |
56
+
57
+ ### Read operations
58
+
59
+ #### `read-global-publisher-layout`
60
+
61
+ Retrieve the Global Publisher Layout via the Metadata API. The layout is named "Global-Global Layout" and contains the list of actions in the global publisher bar. Target /headless/metadata (dispatch dispatches the retrieve); the response is the Layout metadata with its current quickActionList and all quickActionListItems.
62
+
63
+ **Call:** `/headless/metadata`
64
+
65
+ #### `list-available-actions`
66
+
67
+ Query QuickActionDefinition records to find available actions that can be added to the Global Publisher Layout. Use fields Id, DeveloperName, Label, Type to identify actions. The DeveloperName is the value used in the layout XML.
68
+
69
+ **Call:** `query.QuickActionDefinition`
70
+
71
+ ### Write operations
72
+
73
+ #### `update-global-publisher-layout`
74
+
75
+ Update the Global Publisher Layout via the Metadata API. Target /headless/metadata (dispatch dispatches the deploy; the dispatcher routes sync-CRUD vs. the XML-deploy shim per op — no method/body modeled here). Retrieve the current layout first (read-global-publisher-layout step), round-trip its body while adding, removing, or reordering quickActionListItems entries. Action names must match DeveloperName values of existing QuickActionDefinition records.
76
+
77
+ **Call:** `/headless/metadata`
78
+
79
+ **Depends on:** `read-global-publisher-layout`
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: experience-instrumentation-configure
3
+ description: "Use this skill when users want to provides client-side instrumentation infrastructure for the Salesforce Lightning platform. Trigger when users mention wizard, ui, instrumentation, components."
4
+ metadata:
5
+ version: "1.0"
6
+ ---
7
+
8
+ # Managing Wizard Ui Instrumentation Components
9
+
10
+ ## When to Use This Skill
11
+
12
+ Provides client-side instrumentation infrastructure for the Salesforce Lightning platform. This module handles Avro schema retrieval for AILTN (Application Instrumentation and Logging Telemetry Network) event validation, beacon-based telemetry dispatch (locator resolution and data transmission), and LEX engagement status tracking. An agent would invoke this SOR when diagnosing or orchestrating client telemetry pipelines, validating instrumentation schemas, or managing user engagement state in Lightning Experience.
13
+
14
+ ## Operations Reference
15
+
16
+ Operations grouped by purpose. Use these as the building blocks for the workflows above.
17
+
18
+ ### Summary
19
+
20
+ | Operation | Purpose | Status | Call | Depends on |
21
+ |-----------|---------|--------|------|------------|
22
+ | `avro-validator-controller-get-ailtn-schemas` | read | implemented | `GET /headless/invoke/platform/instrumentation/avro-validator/get-ailtn-schemas` | — |
23
+ | `instrumentation-beacon-controller-get-locators` | read | implemented | `GET /headless/invoke/platform/instrumentation/instrumentation-beacon/get-locators` | — |
24
+ | `instrumentation-beacon-controller-send-data` | write | implemented | `PATCH /headless/invoke/platform/instrumentation/instrumentation-beacon/send-data` | `instrumentation-beacon-controller-get-locators` |
25
+ | `lex-engagement-controller-get-initial-status` | read | implemented | `GET /headless/invoke/platform/agentforce-setup-beta` | — |
26
+ | `lex-engagement-controller-handle-status-change` | write | implemented | `PATCH /headless/invoke/platform/agentforce-setup-beta/handle-status-change` | `lex-engagement-controller-get-initial-status` |
27
+
28
+ ### Read operations
29
+
30
+ #### `avro-validator-controller-get-ailtn-schemas`
31
+
32
+ Fetches the set of Avro schemas used to validate AILTN telemetry events on the client side. These schemas define the expected structure of instrumentation payloads before they are serialized and transmitted.
33
+
34
+ **Call:** `GET /headless/invoke/platform/instrumentation/avro-validator/get-ailtn-schemas` — status: `implemented`
35
+
36
+ #### `instrumentation-beacon-controller-get-locators`
37
+
38
+ Retrieves the list of beacon locators (endpoint identifiers) that the client instrumentation framework uses to determine where telemetry data should be sent.
39
+
40
+ **Call:** `GET /headless/invoke/platform/instrumentation/instrumentation-beacon/get-locators` — status: `implemented`
41
+
42
+ #### `lex-engagement-controller-get-initial-status`
43
+
44
+ Reads the current engagement status for the Lightning Experience session. This provides the baseline state (e.g., active, idle, or dismissed) that the UI uses to decide whether to show engagement prompts.
45
+
46
+ **Call:** `GET /headless/invoke/platform/agentforce-setup-beta` — status: `implemented`
47
+
48
+ ### Write operations
49
+
50
+ #### `instrumentation-beacon-controller-send-data`
51
+
52
+ Transmits collected telemetry data to the server via the instrumentation beacon endpoint. Requires locators to have been resolved first so the payload is routed correctly.
53
+
54
+ **Call:** `PATCH /headless/invoke/platform/instrumentation/instrumentation-beacon/send-data` — status: `implemented`
55
+
56
+ **Depends on:** `instrumentation-beacon-controller-get-locators`
57
+
58
+ #### `lex-engagement-controller-handle-status-change`
59
+
60
+ Persists a change in the user's LEX engagement status (e.g., transitioning from active to dismissed). Typically invoked after the initial status has been read and the user or system triggers a state transition. Source: output of lex-engagement-controller-get-initial-status provides the baseline state that informs valid transitions.
61
+
62
+ **Call:** `PATCH /headless/invoke/platform/agentforce-setup-beta/handle-status-change` — status: `implemented`
63
+
64
+ **Depends on:** `lex-engagement-controller-get-initial-status`
@@ -0,0 +1,50 @@
1
+ ---
2
+ name: experience-lex-engagement-configure
3
+ description: "Use this skill when users want to manage the Lightning Experience (LEX) Engagement tracking toggle. Trigger when users mention lex, engagement, lex engagement."
4
+ metadata:
5
+ version: "1.0"
6
+ ---
7
+
8
+ # Managing Lex Engagement
9
+
10
+ ## When to Use This Skill
11
+
12
+ Manage the Lightning Experience (LEX) Engagement tracking toggle. This setup page allows an administrator to view the current engagement-tracking status and enable or disable it via a toggle switch. The page reads the initial on/off state from the server and writes status changes back. An agent would use this SOR to check whether LEX engagement tracking is active or to flip it on or off for a given source context.
13
+
14
+ ## Operations Reference
15
+
16
+ Operations grouped by purpose. Use these as the building blocks for the workflows above.
17
+
18
+ ### Summary
19
+
20
+ | Operation | Purpose | Status | Call | Depends on |
21
+ |-----------|---------|--------|------|------------|
22
+ | `getInitialStatus_1` | read | implemented | `GET /headless/invoke/platform/instrumentation/lex-engagement/get-initial-status` | — |
23
+ | `handleStatusChange_2` | write | implemented | `PATCH /headless/invoke/platform/instrumentation/lex-engagement/handle-status-change` | `getInitialStatus_1` |
24
+
25
+ ### Read operations
26
+
27
+ #### `getInitialStatus_1`
28
+
29
+ Fetch the current engagement-tracking toggle state for the specified source. The returned value drives whether the toggle renders as checked or unchecked on page load (doInit).
30
+
31
+ **Call:** `GET /headless/invoke/platform/instrumentation/lex-engagement/get-initial-status` — status: `implemented`
32
+
33
+ **Inputs:**
34
+
35
+ - `source` *(`String`)*
36
+
37
+ ### Write operations
38
+
39
+ #### `handleStatusChange_2`
40
+
41
+ Persist the new engagement-tracking state when the admin flips the toggle. Sends the source identifier and the new boolean value (isToggled) to the server. Source: output of getInitialStatus_1 provides the context for which source is being toggled.
42
+
43
+ **Call:** `PATCH /headless/invoke/platform/instrumentation/lex-engagement/handle-status-change` — status: `implemented`
44
+
45
+ **Inputs:**
46
+
47
+ - `source` *(`String`)*
48
+ - `isToggled` *(`boolean`)*
49
+
50
+ **Depends on:** `getInitialStatus_1`
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: experience-lightning-bolt-open
3
+ description: "Use this skill when users want to manage Lightning Bolt from this setup page. Trigger when users mention lightning, bolt, lightning bolt."
4
+ metadata:
5
+ version: "1.0"
6
+ ---
7
+
8
+ # Querying Lightning Bolt
9
+
10
+ ## When to Use This Skill
11
+
12
+ Setup page entry point for Lightning Bolt. No directly callable APIs are exposed for this node — navigate via view_url for manual configuration.