@salesforce/afv-skills 1.8.0 → 1.9.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 (488) hide show
  1. package/package.json +1 -1
  2. package/skills/activating-datacloud/CREDITS.md +5 -0
  3. package/skills/activating-datacloud/README.md +39 -0
  4. package/skills/activating-datacloud/SKILL.md +118 -0
  5. package/skills/analyzing-omnistudio-dependencies/CREDITS.md +5 -0
  6. package/skills/analyzing-omnistudio-dependencies/SKILL.md +477 -0
  7. package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +508 -0
  8. package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +300 -0
  9. package/skills/building-omnistudio-callable-apex/CREDITS.md +9 -0
  10. package/skills/building-omnistudio-callable-apex/README.md +80 -0
  11. package/skills/building-omnistudio-callable-apex/SKILL.md +276 -0
  12. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +40 -0
  13. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +32 -0
  14. package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +54 -0
  15. package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +45 -0
  16. package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +65 -0
  17. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +7 -0
  18. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +115 -0
  19. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +189 -0
  20. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +115 -0
  21. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +7 -0
  22. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +74 -0
  23. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +146 -0
  24. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +16 -0
  25. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +120 -0
  26. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +7 -0
  27. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +73 -0
  28. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +128 -0
  29. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +23 -0
  30. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +75 -0
  31. package/skills/building-omnistudio-datamapper/CREDITS.md +5 -0
  32. package/skills/building-omnistudio-datamapper/SKILL.md +270 -0
  33. package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +28 -0
  34. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +6 -0
  35. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +12 -0
  36. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +6 -0
  37. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +6 -0
  38. package/skills/building-omnistudio-datamapper/references/best-practices.md +277 -0
  39. package/skills/building-omnistudio-datamapper/references/naming-conventions.md +145 -0
  40. package/skills/building-omnistudio-flexcard/CREDITS.md +5 -0
  41. package/skills/building-omnistudio-flexcard/SKILL.md +325 -0
  42. package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +10 -0
  43. package/skills/building-omnistudio-flexcard/references/best-practices.md +291 -0
  44. package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +311 -0
  45. package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +66 -0
  46. package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +24 -0
  47. package/skills/building-omnistudio-integration-procedure/CREDITS.md +5 -0
  48. package/skills/building-omnistudio-integration-procedure/SKILL.md +275 -0
  49. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +10 -0
  50. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +10 -0
  51. package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +12 -0
  52. package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +14 -0
  53. package/skills/building-omnistudio-integration-procedure/references/best-practices.md +388 -0
  54. package/skills/building-omnistudio-integration-procedure/references/element-types.md +588 -0
  55. package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +18 -0
  56. package/skills/building-omnistudio-omniscript/CREDITS.md +5 -0
  57. package/skills/building-omnistudio-omniscript/SKILL.md +367 -0
  58. package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +10 -0
  59. package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +11 -0
  60. package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +12 -0
  61. package/skills/building-omnistudio-omniscript/references/best-practices.md +480 -0
  62. package/skills/building-omnistudio-omniscript/references/element-types.md +1172 -0
  63. package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +13 -0
  64. package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +21 -0
  65. package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +29 -0
  66. package/skills/building-sf-integrations/CREDITS.md +5 -0
  67. package/skills/building-sf-integrations/README.md +95 -0
  68. package/skills/building-sf-integrations/SKILL.md +192 -0
  69. package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +167 -0
  70. package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +257 -0
  71. package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +262 -0
  72. package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +211 -0
  73. package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +246 -0
  74. package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +139 -0
  75. package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +58 -0
  76. package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +39 -0
  77. package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +90 -0
  78. package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +87 -0
  79. package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +221 -0
  80. package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +193 -0
  81. package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +62 -0
  82. package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +71 -0
  83. package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +51 -0
  84. package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +67 -0
  85. package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +191 -0
  86. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +295 -0
  87. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +108 -0
  88. package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +124 -0
  89. package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +186 -0
  90. package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +213 -0
  91. package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +271 -0
  92. package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +363 -0
  93. package/skills/building-sf-integrations/references/callout-patterns.md +719 -0
  94. package/skills/building-sf-integrations/references/cdc-guide.md +288 -0
  95. package/skills/building-sf-integrations/references/cli-reference.md +94 -0
  96. package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +266 -0
  97. package/skills/building-sf-integrations/references/event-patterns.md +838 -0
  98. package/skills/building-sf-integrations/references/external-services-guide.md +303 -0
  99. package/skills/building-sf-integrations/references/messaging-api-v2.md +609 -0
  100. package/skills/building-sf-integrations/references/named-credentials-automation.md +201 -0
  101. package/skills/building-sf-integrations/references/named-credentials-guide.md +173 -0
  102. package/skills/building-sf-integrations/references/platform-events-guide.md +288 -0
  103. package/skills/building-sf-integrations/references/rest-callout-patterns.md +288 -0
  104. package/skills/building-sf-integrations/references/scoring-rubric.md +59 -0
  105. package/skills/building-sf-integrations/references/security-best-practices.md +248 -0
  106. package/skills/building-sf-integrations/scripts/README.md +100 -0
  107. package/skills/building-sf-integrations/scripts/configure-named-credential.sh +236 -0
  108. package/skills/building-sf-integrations/scripts/set-api-credential.sh +146 -0
  109. package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +158 -0
  110. package/skills/configuring-connected-apps/CREDITS.md +3 -0
  111. package/skills/configuring-connected-apps/README.md +99 -0
  112. package/skills/configuring-connected-apps/SKILL.md +224 -0
  113. package/skills/configuring-connected-apps/assets/connected-app-basic.xml +29 -0
  114. package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +62 -0
  115. package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +49 -0
  116. package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +65 -0
  117. package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +36 -0
  118. package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +36 -0
  119. package/skills/configuring-connected-apps/assets/eca-policies.xml +36 -0
  120. package/skills/configuring-connected-apps/assets/external-client-app.xml +35 -0
  121. package/skills/configuring-connected-apps/references/example-usage.md +256 -0
  122. package/skills/configuring-connected-apps/references/migration-guide.md +328 -0
  123. package/skills/configuring-connected-apps/references/oauth-flows-reference.md +660 -0
  124. package/skills/configuring-connected-apps/references/security-checklist.md +209 -0
  125. package/skills/configuring-connected-apps/references/testing-validation-guide.md +275 -0
  126. package/skills/connecting-datacloud/CREDITS.md +5 -0
  127. package/skills/connecting-datacloud/README.md +59 -0
  128. package/skills/connecting-datacloud/SKILL.md +155 -0
  129. package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +15 -0
  130. package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +5 -0
  131. package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +31 -0
  132. package/skills/connecting-datacloud/examples/connections/redshift.json +16 -0
  133. package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +20 -0
  134. package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +42 -0
  135. package/skills/debugging-apex-logs/CREDITS.md +22 -0
  136. package/skills/debugging-apex-logs/README.md +74 -0
  137. package/skills/debugging-apex-logs/SKILL.md +172 -0
  138. package/skills/debugging-apex-logs/assets/benchmarking-template.cls +327 -0
  139. package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +307 -0
  140. package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +219 -0
  141. package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +252 -0
  142. package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +157 -0
  143. package/skills/debugging-apex-logs/references/analysis-playbook.md +53 -0
  144. package/skills/debugging-apex-logs/references/benchmarking-guide.md +287 -0
  145. package/skills/debugging-apex-logs/references/cli-commands.md +368 -0
  146. package/skills/debugging-apex-logs/references/common-issues.md +68 -0
  147. package/skills/debugging-apex-logs/references/debug-log-reference.md +328 -0
  148. package/skills/debugging-apex-logs/references/log-analysis-tools.md +248 -0
  149. package/skills/debugging-apex-logs/references/scoring-rubric.md +21 -0
  150. package/skills/deploying-metadata/CREDITS.md +25 -0
  151. package/skills/deploying-metadata/README.md +104 -0
  152. package/skills/deploying-metadata/SKILL.md +214 -0
  153. package/skills/deploying-metadata/assets/destructiveChanges.xml +143 -0
  154. package/skills/deploying-metadata/assets/package.xml +121 -0
  155. package/skills/deploying-metadata/references/agent-deployment-guide.md +628 -0
  156. package/skills/deploying-metadata/references/deploy.sh +73 -0
  157. package/skills/deploying-metadata/references/deployment-report-template.md +89 -0
  158. package/skills/deploying-metadata/references/deployment-workflows.md +395 -0
  159. package/skills/deploying-metadata/references/orchestration.md +183 -0
  160. package/skills/deploying-metadata/references/trigger-deployment-safety.md +376 -0
  161. package/skills/deploying-omnistudio-datapacks/CREDITS.md +5 -0
  162. package/skills/deploying-omnistudio-datapacks/README.md +88 -0
  163. package/skills/deploying-omnistudio-datapacks/SKILL.md +174 -0
  164. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +124 -0
  165. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +11 -0
  166. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +142 -0
  167. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +10 -0
  168. package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +42 -0
  169. package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +24 -0
  170. package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +1 -1
  171. package/skills/developing-agentforce/references/actions-reference.md +8 -8
  172. package/skills/fetching-salesforce-docs/README.md +66 -0
  173. package/skills/fetching-salesforce-docs/SKILL.md +209 -0
  174. package/skills/fetching-salesforce-docs/requirements.txt +2 -0
  175. package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +497 -0
  176. package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +357 -0
  177. package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +58 -0
  178. package/skills/generating-apex/CREDITS.md +1 -26
  179. package/skills/generating-apex-test/CREDITS.md +2 -27
  180. package/skills/generating-lwc-components/CREDITS.md +5 -0
  181. package/skills/generating-lwc-components/README.md +126 -0
  182. package/skills/generating-lwc-components/SKILL.md +191 -0
  183. package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +327 -0
  184. package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +72 -0
  185. package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +111 -0
  186. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +163 -0
  187. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +137 -0
  188. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +111 -0
  189. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +367 -0
  190. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +63 -0
  191. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +154 -0
  192. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +348 -0
  193. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +87 -0
  194. package/skills/generating-lwc-components/assets/form-component/formComponent.html +165 -0
  195. package/skills/generating-lwc-components/assets/form-component/formComponent.js +275 -0
  196. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +100 -0
  197. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +336 -0
  198. package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +371 -0
  199. package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +71 -0
  200. package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +103 -0
  201. package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +181 -0
  202. package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +85 -0
  203. package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +199 -0
  204. package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +55 -0
  205. package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +199 -0
  206. package/skills/generating-lwc-components/assets/state-store/store.js +282 -0
  207. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +65 -0
  208. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +95 -0
  209. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +75 -0
  210. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +301 -0
  211. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +295 -0
  212. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +71 -0
  213. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +316 -0
  214. package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +295 -0
  215. package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +347 -0
  216. package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +74 -0
  217. package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +111 -0
  218. package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +127 -0
  219. package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +294 -0
  220. package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +22 -0
  221. package/skills/generating-lwc-components/hooks/scripts/template_validator.py +332 -0
  222. package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +595 -0
  223. package/skills/generating-lwc-components/references/accessibility-guide.md +843 -0
  224. package/skills/generating-lwc-components/references/advanced-features.md +108 -0
  225. package/skills/generating-lwc-components/references/async-notification-patterns.md +661 -0
  226. package/skills/generating-lwc-components/references/cli-commands.md +545 -0
  227. package/skills/generating-lwc-components/references/component-patterns.md +1476 -0
  228. package/skills/generating-lwc-components/references/flow-integration-guide.md +675 -0
  229. package/skills/generating-lwc-components/references/jest-testing.md +1011 -0
  230. package/skills/generating-lwc-components/references/lms-guide.md +860 -0
  231. package/skills/generating-lwc-components/references/lwc-best-practices.md +1310 -0
  232. package/skills/generating-lwc-components/references/performance-guide.md +861 -0
  233. package/skills/generating-lwc-components/references/scoring-and-testing.md +116 -0
  234. package/skills/generating-lwc-components/references/slds-blueprints.json +14389 -0
  235. package/skills/generating-lwc-components/references/slds-design-guide.md +166 -0
  236. package/skills/generating-lwc-components/references/state-management.md +642 -0
  237. package/skills/generating-lwc-components/references/template-anti-patterns.md +948 -0
  238. package/skills/generating-lwc-components/references/triangle-pattern.md +365 -0
  239. package/skills/generating-lwc-components/scripts/local-dev-preview.sh +34 -0
  240. package/skills/generating-mermaid-diagrams/CREDITS.md +46 -0
  241. package/skills/generating-mermaid-diagrams/README.md +114 -0
  242. package/skills/generating-mermaid-diagrams/SKILL.md +218 -0
  243. package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +313 -0
  244. package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +351 -0
  245. package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +317 -0
  246. package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +195 -0
  247. package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +262 -0
  248. package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +266 -0
  249. package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +261 -0
  250. package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +332 -0
  251. package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +237 -0
  252. package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +277 -0
  253. package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +343 -0
  254. package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +192 -0
  255. package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +209 -0
  256. package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +276 -0
  257. package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +217 -0
  258. package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +241 -0
  259. package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +387 -0
  260. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +197 -0
  261. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +152 -0
  262. package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +233 -0
  263. package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +295 -0
  264. package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +256 -0
  265. package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +281 -0
  266. package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +281 -0
  267. package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +322 -0
  268. package/skills/generating-mermaid-diagrams/references/color-palette.md +464 -0
  269. package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +313 -0
  270. package/skills/generating-mermaid-diagrams/references/erd-conventions.md +320 -0
  271. package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +434 -0
  272. package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +81 -0
  273. package/skills/generating-mermaid-diagrams/references/preview-guide.md +49 -0
  274. package/skills/generating-mermaid-diagrams/references/usage-examples.md +340 -0
  275. package/skills/generating-mermaid-diagrams/scripts/README.md +160 -0
  276. package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +654 -0
  277. package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +293 -0
  278. package/skills/generating-visual-diagrams/CREDITS.md +80 -0
  279. package/skills/generating-visual-diagrams/README.md +83 -0
  280. package/skills/generating-visual-diagrams/SKILL.md +208 -0
  281. package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +55 -0
  282. package/skills/generating-visual-diagrams/assets/erd/core-objects.md +131 -0
  283. package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +60 -0
  284. package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +45 -0
  285. package/skills/generating-visual-diagrams/assets/lwc/data-table.md +57 -0
  286. package/skills/generating-visual-diagrams/assets/lwc/record-form.md +60 -0
  287. package/skills/generating-visual-diagrams/assets/review/apex-review.md +57 -0
  288. package/skills/generating-visual-diagrams/assets/review/lwc-review.md +48 -0
  289. package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +257 -0
  290. package/skills/generating-visual-diagrams/references/examples-index.md +35 -0
  291. package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +65 -0
  292. package/skills/generating-visual-diagrams/references/interview-questions.md +529 -0
  293. package/skills/generating-visual-diagrams/references/iteration-workflow.md +173 -0
  294. package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +101 -0
  295. package/skills/generating-visual-diagrams/scripts/generate_image.py +243 -0
  296. package/skills/handling-sf-data/CREDITS.md +5 -0
  297. package/skills/handling-sf-data/README.md +112 -0
  298. package/skills/handling-sf-data/SKILL.md +235 -0
  299. package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +293 -0
  300. package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +208 -0
  301. package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +219 -0
  302. package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +324 -0
  303. package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +319 -0
  304. package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +240 -0
  305. package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +311 -0
  306. package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +266 -0
  307. package/skills/handling-sf-data/assets/csv/account-import.csv +11 -0
  308. package/skills/handling-sf-data/assets/csv/contact-import.csv +11 -0
  309. package/skills/handling-sf-data/assets/csv/custom-object-import.csv +11 -0
  310. package/skills/handling-sf-data/assets/csv/opportunity-import.csv +11 -0
  311. package/skills/handling-sf-data/assets/factories/account-factory.apex +165 -0
  312. package/skills/handling-sf-data/assets/factories/case-factory.apex +237 -0
  313. package/skills/handling-sf-data/assets/factories/contact-factory.apex +168 -0
  314. package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +260 -0
  315. package/skills/handling-sf-data/assets/factories/event-factory.apex +275 -0
  316. package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +372 -0
  317. package/skills/handling-sf-data/assets/factories/lead-factory.apex +190 -0
  318. package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +206 -0
  319. package/skills/handling-sf-data/assets/factories/task-factory.apex +246 -0
  320. package/skills/handling-sf-data/assets/factories/user-factory.apex +278 -0
  321. package/skills/handling-sf-data/assets/json/account-contact-tree.json +130 -0
  322. package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +110 -0
  323. package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +188 -0
  324. package/skills/handling-sf-data/assets/soql/aggregate.soql +226 -0
  325. package/skills/handling-sf-data/assets/soql/child-to-parent.soql +162 -0
  326. package/skills/handling-sf-data/assets/soql/parent-to-child.soql +153 -0
  327. package/skills/handling-sf-data/assets/soql/polymorphic.soql +198 -0
  328. package/skills/handling-sf-data/assets/soql/subquery.soql +287 -0
  329. package/skills/handling-sf-data/references/anonymous-apex-guide.md +98 -0
  330. package/skills/handling-sf-data/references/bulk-operations-guide.md +94 -0
  331. package/skills/handling-sf-data/references/bulk-testing-example.md +194 -0
  332. package/skills/handling-sf-data/references/cleanup-rollback-example.md +322 -0
  333. package/skills/handling-sf-data/references/cleanup-rollback-guide.md +84 -0
  334. package/skills/handling-sf-data/references/crud-workflow-example.md +183 -0
  335. package/skills/handling-sf-data/references/governor-limits-reference.md +74 -0
  336. package/skills/handling-sf-data/references/orchestration.md +174 -0
  337. package/skills/handling-sf-data/references/relationship-query-examples.md +249 -0
  338. package/skills/handling-sf-data/references/sf-cli-data-commands.md +158 -0
  339. package/skills/handling-sf-data/references/soql-relationship-guide.md +84 -0
  340. package/skills/handling-sf-data/references/test-data-best-practices.md +104 -0
  341. package/skills/handling-sf-data/references/test-data-factory-usage.md +290 -0
  342. package/skills/handling-sf-data/references/test-data-patterns.md +98 -0
  343. package/skills/handling-sf-data/scripts/soql_validator.py +292 -0
  344. package/skills/handling-sf-data/scripts/validate_data_operation.py +379 -0
  345. package/skills/harmonizing-datacloud/CREDITS.md +3 -0
  346. package/skills/harmonizing-datacloud/README.md +31 -0
  347. package/skills/harmonizing-datacloud/SKILL.md +117 -0
  348. package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +14 -0
  349. package/skills/modeling-omnistudio-epc-catalog/README.md +89 -0
  350. package/skills/modeling-omnistudio-epc-catalog/SKILL.md +395 -0
  351. package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +402 -0
  352. package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +43 -0
  353. package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +8 -0
  354. package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +233 -0
  355. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +514 -0
  356. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +21 -0
  357. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +649 -0
  358. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +200 -0
  359. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +138 -0
  360. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +54 -0
  361. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +266 -0
  362. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +23 -0
  363. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +54 -0
  364. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +35 -0
  365. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +34 -0
  366. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +21 -0
  367. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +410 -0
  368. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +535 -0
  369. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +35 -0
  370. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +138 -0
  371. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +28 -0
  372. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +23 -0
  373. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +220 -0
  374. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +35 -0
  375. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +414 -0
  376. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +382 -0
  377. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +565 -0
  378. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +35 -0
  379. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +104 -0
  380. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +28 -0
  381. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +13 -0
  382. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +106 -0
  383. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +35 -0
  384. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +72 -0
  385. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +142 -0
  386. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +377 -0
  387. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +35 -0
  388. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +36 -0
  389. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +8 -0
  390. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +54 -0
  391. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +35 -0
  392. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +34 -0
  393. package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +138 -0
  394. package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +54 -0
  395. package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +134 -0
  396. package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +29 -0
  397. package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +158 -0
  398. package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +35 -0
  399. package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +338 -0
  400. package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +527 -0
  401. package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +1 -0
  402. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +95 -0
  403. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +1 -0
  404. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +214 -0
  405. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +28 -0
  406. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +98 -0
  407. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +22 -0
  408. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +1 -0
  409. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +13 -0
  410. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +35 -0
  411. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +28 -0
  412. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +110 -0
  413. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +58 -0
  414. package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +90 -0
  415. package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +80 -0
  416. package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +57 -0
  417. package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +19 -0
  418. package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +18 -0
  419. package/skills/orchestrating-datacloud/CREDITS.md +15 -0
  420. package/skills/orchestrating-datacloud/README.md +129 -0
  421. package/skills/orchestrating-datacloud/SKILL.md +236 -0
  422. package/skills/orchestrating-datacloud/UPSTREAM.md +45 -0
  423. package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +5 -0
  424. package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +7 -0
  425. package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +7 -0
  426. package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +5 -0
  427. package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +5 -0
  428. package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +21 -0
  429. package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +55 -0
  430. package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +17 -0
  431. package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +30 -0
  432. package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +14 -0
  433. package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +12 -0
  434. package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +9 -0
  435. package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +16 -0
  436. package/skills/orchestrating-datacloud/references/feature-readiness.md +157 -0
  437. package/skills/orchestrating-datacloud/references/plugin-setup.md +140 -0
  438. package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +53 -0
  439. package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +511 -0
  440. package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +68 -0
  441. package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +58 -0
  442. package/skills/preparing-datacloud/CREDITS.md +7 -0
  443. package/skills/preparing-datacloud/README.md +51 -0
  444. package/skills/preparing-datacloud/SKILL.md +191 -0
  445. package/skills/preparing-datacloud/examples/ingestion-api/.env.example +8 -0
  446. package/skills/preparing-datacloud/examples/ingestion-api/README.md +48 -0
  447. package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +144 -0
  448. package/skills/querying-soql/CREDITS.md +21 -0
  449. package/skills/querying-soql/README.md +41 -0
  450. package/skills/querying-soql/SKILL.md +143 -0
  451. package/skills/querying-soql/assets/aggregate-queries.soql +242 -0
  452. package/skills/querying-soql/assets/basic-queries.soql +188 -0
  453. package/skills/querying-soql/assets/bulkified-query-pattern.cls +280 -0
  454. package/skills/querying-soql/assets/optimization-patterns.soql +259 -0
  455. package/skills/querying-soql/assets/relationship-queries.soql +203 -0
  456. package/skills/querying-soql/assets/selector-class.cls +219 -0
  457. package/skills/querying-soql/references/anti-patterns.md +348 -0
  458. package/skills/querying-soql/references/cli-commands.md +358 -0
  459. package/skills/querying-soql/references/field-coverage-rules.md +514 -0
  460. package/skills/querying-soql/references/query-optimization.md +142 -0
  461. package/skills/querying-soql/references/selector-patterns.md +479 -0
  462. package/skills/querying-soql/references/soql-reference.md +227 -0
  463. package/skills/querying-soql/references/soql-syntax-reference.md +208 -0
  464. package/skills/querying-soql/scripts/post-tool-validate.py +322 -0
  465. package/skills/retrieving-datacloud/CREDITS.md +7 -0
  466. package/skills/retrieving-datacloud/README.md +44 -0
  467. package/skills/retrieving-datacloud/SKILL.md +120 -0
  468. package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +44 -0
  469. package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +43 -0
  470. package/skills/running-apex-tests/CREDITS.md +22 -0
  471. package/skills/running-apex-tests/README.md +94 -0
  472. package/skills/running-apex-tests/SKILL.md +158 -0
  473. package/skills/running-apex-tests/assets/basic-test.cls +169 -0
  474. package/skills/running-apex-tests/assets/bulk-test.cls +255 -0
  475. package/skills/running-apex-tests/assets/dml-mock.cls +339 -0
  476. package/skills/running-apex-tests/assets/mock-callout-test.cls +353 -0
  477. package/skills/running-apex-tests/assets/stub-provider-example.cls +364 -0
  478. package/skills/running-apex-tests/assets/test-data-factory.cls +328 -0
  479. package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +364 -0
  480. package/skills/running-apex-tests/references/cli-commands.md +289 -0
  481. package/skills/running-apex-tests/references/mocking-patterns.md +500 -0
  482. package/skills/running-apex-tests/references/performance-optimization.md +283 -0
  483. package/skills/running-apex-tests/references/test-fix-loop.md +49 -0
  484. package/skills/running-apex-tests/references/test-patterns.md +154 -0
  485. package/skills/running-apex-tests/references/testing-best-practices.md +509 -0
  486. package/skills/segmenting-datacloud/CREDITS.md +3 -0
  487. package/skills/segmenting-datacloud/README.md +36 -0
  488. package/skills/segmenting-datacloud/SKILL.md +115 -0
@@ -0,0 +1,124 @@
1
+ # Validation Transcript: Business Internet Plus Bundle Deployment
2
+
3
+ This transcript captures the skills used and the planning/execution process to validate deployment readiness for the `business-internet-plus-bundle` sample.
4
+
5
+ ---
6
+
7
+ ## Task Summary
8
+
9
+ Validate deployment for the `Business Internet Plus` bundle and document the process in a new `examples` folder under `deploying-omnistudio-datapacks`.
10
+
11
+ ---
12
+
13
+ ## Skills Used
14
+
15
+ ### 1) `deploying-omnistudio-datapacks` (Primary)
16
+
17
+ **Why used:** The task is Vlocity Build deployment validation for DataPacks (`validateLocalData`, deployment preflight, and scope verification).
18
+
19
+ **Applied from skill guidance:**
20
+
21
+ - Validate-first workflow (`validateLocalData` before deploy).
22
+ - Required context checks (tooling readiness, org auth, deterministic scope).
23
+ - Job-file driven validation with explicit manifest targeting.
24
+
25
+ ### 2) `deploying-metadata` (Supporting)
26
+
27
+ **Why used:** Deployment preflight practices overlap with org readiness checks.
28
+
29
+ **Applied from skill guidance:**
30
+
31
+ - Confirm CLI and org context before execution.
32
+ - Capture result and safe next action in a completion block.
33
+
34
+ ### 3) `modeling-omnistudio-epc-catalog` (Supporting)
35
+
36
+ **Why used:** The target bundle payload was generated as an EPC Product2 offer bundle sample, so EPC-specific structure and guardrails were validated before deployment checks.
37
+
38
+ **Applied from skill guidance:**
39
+
40
+ - Confirm offer markers (`SpecificationType=Offer`, `SpecificationSubType=Bundle`).
41
+ - Confirm root PCI + child PCI composition.
42
+ - Confirm companion bundle artifacts and GlobalKey consistency.
43
+
44
+ ---
45
+
46
+ ## Planning Process (Executed)
47
+
48
+ 1. Locate the `business-internet-plus-bundle` payload and confirm all companion JSON artifacts exist.
49
+ 2. Run preflight checks for deployment tooling:
50
+ - `vlocity` CLI availability.
51
+ - Salesforce org auth context for target alias.
52
+ 3. Run file-level integrity checks:
53
+ - JSON parse for all bundle artifacts.
54
+ - Product2 + PCI + attribute consistency checks.
55
+ 4. Create a deterministic Vlocity Build job file in this example folder for reproducible validation.
56
+ 5. Execute `validateLocalData` against the bundle scope and record outcome.
57
+ 6. Summarize result, findings, and safe next actions.
58
+
59
+ ---
60
+
61
+ ## Execution Log
62
+
63
+ ### A) Bundle discovery
64
+
65
+ - Located bundle payload at:
66
+ - `skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle`
67
+ - Confirmed 11 companion JSON files exist (`DataPack`, `AttributeAssignments`, `ProductChildItems`, pricing files, orchestration/decomposition files, overrides, and parent keys).
68
+
69
+ ### B) Tooling and org preflight
70
+
71
+ - `vlocity` global binary check: **not installed globally** (`command not found`).
72
+ - `npx vlocity` check: **available** (`Vlocity Build v1.17.21`).
73
+ - `sf org list --json`: org context available; target alias `sample-uat` is connected.
74
+
75
+ ### C) File-level integrity validation
76
+
77
+ Local JSON validation checks passed:
78
+
79
+ - Missing files: `0`
80
+ - JSON parse errors: `0`
81
+ - Product identity checks: name and product code match expected values.
82
+ - Offer checks: `SpecificationType=Offer` and `SpecificationSubType=Bundle`.
83
+ - Composition checks: `1` root PCI and `3` child PCI records.
84
+ - Attribute checks: `3` attribute assignment records.
85
+ - Key integrity checks: PCI parent references match Product2 GlobalKey.
86
+
87
+ ### D) Vlocity validateLocalData execution
88
+
89
+ Job file used:
90
+
91
+ - `skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml`
92
+
93
+ Command:
94
+
95
+ ```bash
96
+ npx --yes vlocity -sfdx.username sample-uat -job "skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml" validateLocalData
97
+ ```
98
+
99
+ Result:
100
+
101
+ - `ValidateLocalData success: 0 Completed`
102
+
103
+ Interpretation:
104
+
105
+ - Validation command executed successfully.
106
+ - `0 Completed` indicates no DataPack records were processed for this scope layout.
107
+ - This is consistent with the sample payload being stored as a documentation/example artifact rather than a standard `vlocity/` expansion deployment path.
108
+
109
+ ---
110
+
111
+ ## Validation Outcome
112
+
113
+ ```text
114
+ DataPack goal: validate deployment readiness
115
+ Source org: N/A
116
+ Target org: sample-uat
117
+ Scope: deploy-business-internet-plus-bundle.yaml + Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101
118
+ Result: partial
119
+ Key findings:
120
+ - Bundle JSON payload is internally consistent and structurally valid.
121
+ - Vlocity validateLocalData ran successfully but processed 0 DataPacks in current example-folder scope.
122
+ Next step:
123
+ - Stage the bundle into a standard Vlocity expansion path (for example under `vlocity/Product2/<global-key>/`) and rerun `validateLocalData`, then `packDeploy` and `packGetDiffs`.
124
+ ```
@@ -0,0 +1,11 @@
1
+ projectPath: ../../../../
2
+ expansionPath: skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle
3
+
4
+ # Deterministic scope for this validation example.
5
+ manifest:
6
+ - Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101
7
+
8
+ autoUpdateSettings: true
9
+ defaultMaxParallel: 1
10
+ supportHeadersOnly: true
11
+ gitCheck: false
@@ -0,0 +1,142 @@
1
+ # Deployment Transcript: Business Internet Plus Bundle
2
+
3
+ This transcript captures the skills used plus the planning and execution process for deploying `business-internet-plus-bundle` with Vlocity Build.
4
+
5
+ ---
6
+
7
+ ## Task Summary
8
+
9
+ Deploy the `Business Internet Plus` Product2 bundle DataPack and document the end-to-end process in `deploying-omnistudio-datapacks/examples`.
10
+
11
+ ---
12
+
13
+ ## Skills Used
14
+
15
+ ### 1) `deploying-omnistudio-datapacks` (Primary)
16
+
17
+ **Why used:** The task is DataPack deployment orchestration with Vlocity Build commands (`validateLocalData`, `packDeploy`, `packRetry`) and failure triage.
18
+
19
+ **Applied guidance:**
20
+
21
+ - Validate-first execution (`validateLocalData` before deployment).
22
+ - Deterministic job file (`projectPath`, `expansionPath`, `manifest`) for reproducible scope.
23
+ - Retry loop and failure interpretation.
24
+
25
+ ### 2) `modeling-omnistudio-epc-catalog` (Supporting)
26
+
27
+ **Why used:** The deployment target is an EPC Product2 offer bundle sample with Product Child Item dependencies and companion artifacts.
28
+
29
+ **Applied guidance:**
30
+
31
+ - Confirmed Product2 offer markers and companion file consistency.
32
+ - Preserved `%vlocity_namespace%` placeholders and stable GlobalKey references.
33
+
34
+ ### 3) `deploying-metadata` (Supporting preflight pattern)
35
+
36
+ **Why used:** Reused deployment preflight discipline for target org/tooling readiness and concise completion reporting.
37
+
38
+ ---
39
+
40
+ ## Planning Process (Executed)
41
+
42
+ 1. Confirm where the source bundle artifacts were authored.
43
+ 2. Stage those artifacts into a standard Vlocity expansion path under `vlocity/Product2/<global-key>/`.
44
+ 3. Build a deterministic deploy job file in this example folder.
45
+ 4. Run pre-deploy validation (`validateLocalData`).
46
+ 5. Run actual deployment (`packDeploy`).
47
+ 6. Run retry (`packRetry`) to confirm whether the failure is transient or dependency-blocking.
48
+ 7. Capture findings and next safe action.
49
+
50
+ ---
51
+
52
+ ## Execution Details
53
+
54
+ ### A) Staging for deploy
55
+
56
+ Source payload location:
57
+
58
+ - `skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle`
59
+
60
+ Deploy staging location:
61
+
62
+ - `vlocity/Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101`
63
+
64
+ Staged files include:
65
+
66
+ - `Business-Internet-Plus_DataPack.json`
67
+ - `Business-Internet-Plus_AttributeAssignments.json`
68
+ - `Business-Internet-Plus_ProductChildItems.json`
69
+ - `Business-Internet-Plus_PricebookEntries.json`
70
+ - `Business-Internet-Plus_PriceListEntries.json`
71
+ - `Business-Internet-Plus_ObjectFieldAttributes.json`
72
+ - `Business-Internet-Plus_OrchestrationScenarios.json`
73
+ - `Business-Internet-Plus_DecompositionRelationships.json`
74
+ - `Business-Internet-Plus_CompiledAttributeOverrides.json`
75
+ - `Business-Internet-Plus_OverrideDefinitions.json`
76
+ - `Business-Internet-Plus_ParentKeys.json`
77
+
78
+ ### B) Job file used
79
+
80
+ - `skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml`
81
+
82
+ Key settings:
83
+
84
+ - `projectPath: .`
85
+ - `expansionPath: vlocity`
86
+ - `manifest: Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101`
87
+
88
+ ### C) Commands executed
89
+
90
+ ```bash
91
+ npx --yes vlocity -sfdx.username sample-uat -job "skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml" validateLocalData
92
+
93
+ npx --yes vlocity -sfdx.username sample-uat -job "skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml" packDeploy
94
+
95
+ npx --yes vlocity -sfdx.username sample-uat -job "skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml" packRetry
96
+ ```
97
+
98
+ ### D) Command outcomes
99
+
100
+ `validateLocalData`:
101
+
102
+ - Success (`1 Completed`)
103
+
104
+ `packDeploy`:
105
+
106
+ - Auto-settings migration phase completed successfully.
107
+ - Bundle deploy failed with dependency error:
108
+ - `This DataPack has a reference to another object which was not found -- Product2/21e9dce1-4f89-4f99-a7b2-9cb5d6332101`
109
+
110
+ `packRetry`:
111
+
112
+ - Failed with the same missing reference error.
113
+
114
+ ---
115
+
116
+ ## Root Cause
117
+
118
+ The bundle references child Product2 DataPacks that are not currently present in local expansion scope and/or target org at deploy time.
119
+
120
+ Missing child Product2 keys confirmed absent from local `vlocity/Product2`:
121
+
122
+ - `21e9dce1-4f89-4f99-a7b2-9cb5d6332101` (Managed Router)
123
+ - `43f2fd94-6114-449b-a1b4-b8dd7238b202` (Internet Security Suite)
124
+ - `64a06b24-1135-4f2e-95a1-3a5f5822c303` (Static IP Add-On)
125
+
126
+ ---
127
+
128
+ ## Completion Block
129
+
130
+ ```text
131
+ DataPack goal: deploy
132
+ Source org: N/A (local staged payload)
133
+ Target org: sample-uat
134
+ Scope: Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101
135
+ Result: failed (dependency missing)
136
+ Key findings:
137
+ - validateLocalData passed (1 completed)
138
+ - packDeploy failed: missing referenced child Product2
139
+ - packRetry failed with same error
140
+ Next step:
141
+ - Stage/deploy the three child Product2 DataPacks first (or include them in manifest), then rerun packDeploy and packRetry.
142
+ ```
@@ -0,0 +1,10 @@
1
+ projectPath: .
2
+ expansionPath: vlocity
3
+
4
+ manifest:
5
+ - Product2/9f1d3c4a-8e5b-4d71-9a2d-f6b719a90101
6
+
7
+ autoUpdateSettings: true
8
+ defaultMaxParallel: 1
9
+ supportHeadersOnly: true
10
+ gitCheck: false
@@ -0,0 +1,42 @@
1
+ # Vlocity Build Job File Template
2
+
3
+ Use this as a baseline and keep only settings you need to override.
4
+
5
+ ```yaml
6
+ projectPath: .
7
+ expansionPath: vlocity
8
+
9
+ # Optional: narrow export scope
10
+ queries:
11
+ - OmniScript
12
+ - IntegrationProcedure
13
+ - DataRaptor
14
+ - FlexCard
15
+
16
+ # Optional: deterministic targeted scope
17
+ # manifest:
18
+ # - Product2/<global-key>
19
+ # - OmniScript/<type>_<subtype>_<language>
20
+
21
+ # Optional runtime controls
22
+ autoUpdateSettings: true
23
+ defaultMaxParallel: 1
24
+ supportHeadersOnly: true
25
+ gitCheck: false
26
+ ```
27
+
28
+ ## Common command patterns
29
+
30
+ ```bash
31
+ # Export
32
+ vlocity -sfdx.username <source> -job <job>.yaml packExport
33
+
34
+ # Deploy
35
+ vlocity -sfdx.username <target> -job <job>.yaml packDeploy
36
+
37
+ # Retry
38
+ vlocity -sfdx.username <target> -job <job>.yaml packRetry
39
+
40
+ # Continue interrupted
41
+ vlocity -sfdx.username <target> -job <job>.yaml packContinue
42
+ ```
@@ -0,0 +1,24 @@
1
+ # Vlocity Build Troubleshooting Matrix
2
+
3
+ | Symptom | Quick checks | Typical fix |
4
+ |---|---|---|
5
+ | `No match found for ...` | Is referenced key present in exported folder and target org? | Deploy missing dependency first, then `packRetry` |
6
+ | `Duplicate Results found for ... GlobalKey` | Query target org for duplicate GlobalKey values | Remove duplicates in target, rerun deploy |
7
+ | `Multiple Imported Records ... same Salesforce Record` | Check source for duplicate matching-key combinations | Clean source data, re-export, then redeploy |
8
+ | `No Configuration Found` | Was `packUpdateSettings` run recently? | Run `packUpdateSettings` (or keep `autoUpdateSettings: true`) |
9
+ | `Some records were not processed` | Compare settings and package versions across orgs | Refresh settings in both orgs, then `packRetry` |
10
+ | SASS/template compile errors | Are referenced UI templates exported? | Export missing templates by key and redeploy |
11
+
12
+ ## Retry strategy
13
+
14
+ 1. Run `packRetry`.
15
+ 2. Check if error count decreases.
16
+ 3. Repeat until error count plateaus.
17
+ 4. Fix root data/config issue before further retries.
18
+
19
+ ## Data hygiene checks
20
+
21
+ ```bash
22
+ vlocity -sfdx.username <org> -job <job>.yaml validateLocalData
23
+ vlocity -sfdx.username <org> -job <job>.yaml packGetDiffs
24
+ ```
@@ -12,7 +12,7 @@
12
12
 
13
13
  Prerequisites:
14
14
  1. Named Credential configured for API auth
15
- 2. sf-integration skill used to create Named Credential
15
+ 2. building-sf-integrations skill used to create Named Credential
16
16
 
17
17
  Setup Steps:
18
18
  1. Replace all {{placeholder}} values
@@ -474,7 +474,7 @@ public class WrappedAction {
474
474
 
475
475
  ### Implementation Steps
476
476
 
477
- 1. **Create Named Credential** (via sf-integration skill)
477
+ 1. **Create Named Credential** (via building-sf-integrations skill)
478
478
  2. **Create HTTP Callout Flow** wrapping the external call
479
479
  3. **Reference Flow in Agent Script** with `flow://` target
480
480
 
@@ -571,13 +571,13 @@ When building agents with external API integrations, follow this order:
571
571
  ┌──────────────────────────────────────────────────────────────┐
572
572
  │ INTEGRATION + AGENTFORCE ORCHESTRATION ORDER │
573
573
  ├──────────────────────────────────────────────────────────────┤
574
- │ 1. sf-connected-apps → Connected App (if OAuth needed)
575
- │ 2. sf-integration → Named Credential + External Service │
576
- │ 3. sf-apex → @InvocableMethod (if custom logic) │
577
- │ 4. sf-flow → Flow wrapper (HTTP Callout / Apex) │
578
- │ 5. sf-deploy → Deploy all metadata to org │
579
- │ 6. sf-ai-agentscript → Agent with flow:// target │
580
- │ 7. sf-deploy → Publish (sf agent publish │
574
+ │ 1. configuring-connected-apps → Connected App (if OAuth needed)
575
+ │ 2. building-sf-integrations → Named Credential + External Service │
576
+ │ 3. generating-apex → @InvocableMethod (if custom logic) │
577
+ │ 4. generating-flow → Flow wrapper (HTTP Callout / Apex) │
578
+ │ 5. deploying-metadata → Deploy all metadata to org │
579
+ │ 6. developing-agentforce → Agent with flow:// target │
580
+ │ 7. deploying-metadata → Publish (sf agent publish │
581
581
  │ authoring-bundle) │
582
582
  └──────────────────────────────────────────────────────────────┘
583
583
  ```
@@ -0,0 +1,66 @@
1
+ # fetching-salesforce-docs
2
+
3
+ ## What it is
4
+
5
+ `fetching-salesforce-docs` is a **prompt-only skill**.
6
+
7
+ It gives a practical retrieval playbook for official Salesforce docs on the public web, especially when:
8
+ - `developer.salesforce.com` pages are JS-heavy
9
+ - `help.salesforce.com` pages return shell content
10
+ - `architect.salesforce.com` / `admin.salesforce.com` pages need browser-rendered extraction
11
+ - `lightningdesignsystem.com` pages contain official SLDS guidance
12
+ - the real answer is on a child page, not the guide homepage
13
+
14
+ ## What it is not
15
+
16
+ This skill does not include:
17
+ - local corpus workflows
18
+ - indexing
19
+ - benchmark workflows
20
+ - any required helper CLI dependency
21
+ - PDF fallback guidance
22
+
23
+ ## Use it for
24
+
25
+ - official Salesforce docs lookup
26
+ - hard-to-fetch Help articles
27
+ - Apex / API / LWC / Agentforce documentation grounding
28
+ - deciding when to follow child links from broad official guide pages
29
+ - rejecting weak results such as shells, landing pages, and third-party summaries
30
+
31
+ ## Optional utility
32
+
33
+ A tiny wrapper is available for official Salesforce doc URLs:
34
+
35
+ ```bash
36
+ python3 skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py \
37
+ --url "https://help.salesforce.com/s/articleView?id=service.miaw_security.htm&type=5" \
38
+ --pretty
39
+ ```
40
+
41
+ Behavior:
42
+ - automatically routes `help.salesforce.com` URLs into the dedicated Help extractor
43
+ - supports official Salesforce-owned doc hosts such as `developer.salesforce.com`, `architect.salesforce.com`, `admin.salesforce.com`, `lightningdesignsystem.com`, and other official Salesforce documentation pages
44
+ - supports optional best-effort stealth mode via `--stealth`
45
+
46
+ Dependencies for the helper scripts live in:
47
+ - `skills/fetching-salesforce-docs/requirements.txt`
48
+
49
+ The installer sets up an isolated runtime under `~/.claude/.fetching-salesforce-docs-runtime`, installs those Python packages there, and installs the Playwright Chromium browser automatically during install/update.
50
+
51
+ The underlying Help extractor is also available directly at:
52
+
53
+ ```bash
54
+ python3 skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py \
55
+ --url "https://help.salesforce.com/s/articleView?id=service.miaw_security.htm&type=5" \
56
+ --pretty
57
+ ```
58
+
59
+ ## Key idea
60
+
61
+ Keep retrieval:
62
+ - **official-source-first**
63
+ - **HTML-only**
64
+ - **targeted**
65
+ - **child-link aware**
66
+ - **strict about exact concept matching**
@@ -0,0 +1,209 @@
1
+ ---
2
+ name: fetching-salesforce-docs
3
+ description: "Official Salesforce documentation retrieval skill. Use when you need authoritative Salesforce docs from developer.salesforce.com, help.salesforce.com, architect.salesforce.com, admin.salesforce.com, or lightningdesignsystem.com, especially when pages are JS-heavy, shell-rendered, or hard to extract with naive fetching. Use to ground answers in official Salesforce sources instead of third-party blogs or summaries. TRIGGER when: user asks for official Salesforce documentation, Apex or API reference, LWC docs, Agentforce docs, setup or help articles, or any doc from a Salesforce-owned domain. DO NOT TRIGGER when: user is asking for a code change, deployment task, or anything not requiring documentation retrieval — use the appropriate sf-* skill instead."
4
+ license: MIT
5
+ metadata:
6
+ version: "1.1"
7
+ ---
8
+
9
+ # fetching-salesforce-docs
10
+
11
+ Use this skill to retrieve and ground answers in **official Salesforce documentation on the public web**.
12
+
13
+ This skill provides a **reliable online retrieval playbook** for Salesforce docs that are hard to fetch, especially `help.salesforce.com`, JS-heavy `developer.salesforce.com`, Lightning Design System docs on `lightningdesignsystem.com`, and other official Salesforce-owned doc pages such as `architect.salesforce.com` and `admin.salesforce.com`.
14
+
15
+ Optional extraction scripts are available in `scripts/` — see the Reference File Index below.
16
+
17
+ ## Scope
18
+
19
+ | | |
20
+ |---|---|
21
+ | **In scope** | Official Salesforce doc retrieval: Apex, API, LWC, metadata, Agentforce, setup articles, SLDS, architect/admin guidance |
22
+ | **Out of scope** | Third-party blogs, PDF fallback, local corpus indexing, benchmark workflows, generating code or metadata |
23
+
24
+ ## Required Inputs
25
+
26
+ Before fetching, identify:
27
+ - The exact concept, identifier, class, method, or feature name being requested
28
+ - The likely doc family (developer docs, help articles, design system, architect/admin)
29
+
30
+ No additional setup is required to use the retrieval playbook in this skill. The optional extraction scripts require `playwright` — see `requirements.txt`.
31
+
32
+ ## Official Sources Only
33
+
34
+ Prefer Salesforce-owned documentation sources:
35
+ - `developer.salesforce.com`
36
+ - `help.salesforce.com`
37
+ - `architect.salesforce.com`
38
+ - `admin.salesforce.com`
39
+ - `lightningdesignsystem.com`
40
+ - other official Salesforce documentation pages when Salesforce uses them as the source of truth
41
+
42
+ Avoid third-party blogs, videos, or summary articles unless the user explicitly asks for them.
43
+
44
+ Do **not** fall back to PDFs.
45
+
46
+ ## Retrieval Workflow
47
+
48
+ ### 1. Classify the request first
49
+
50
+ Before fetching anything, identify the likely doc family.
51
+
52
+ | Family | Typical Source | Use For |
53
+ |---|---|---|
54
+ | Developer docs | `developer.salesforce.com/docs/...` | Apex, APIs, LWC, metadata, Agentforce developer docs |
55
+ | Help docs | `help.salesforce.com/...` | setup, admin, product configuration |
56
+ | Architect/Admin docs | `architect.salesforce.com/...`, `admin.salesforce.com/...` | best practices, patterns, well-architected guidance, admin enablement |
57
+ | Design system docs | `lightningdesignsystem.com/...` | SLDS, Cosmos, design tokens, component and styling guidance |
58
+ | Legacy atlas docs | `developer.salesforce.com/docs/atlas.en-us.*` | older official guide and reference docs |
59
+
60
+ ### 2. Identify the exact concept
61
+
62
+ Extract the real target before you search:
63
+ - exact API/class/method name
64
+ - exact feature name
65
+ - exact product phrase
66
+ - exact setup concept
67
+
68
+ Examples:
69
+ - `Lightning Message Service`
70
+ - `Wire Service`
71
+ - `System.StubProvider`
72
+ - `Agentforce Actions`
73
+ - `Messaging for In-App and Web allowed domains`
74
+
75
+ ### 3. Prefer targeted official retrieval
76
+
77
+ Do **not** broad-crawl Salesforce docs.
78
+
79
+ Instead:
80
+ 1. identify the most likely official guide root or article
81
+ 2. if search is needed, restrict it to official Salesforce domains only
82
+ 3. fetch that official page
83
+ 4. check whether the **exact concept actually appears on the page**
84
+ 5. if not, inspect and follow the most relevant **1–3 official child links**
85
+ 6. stop once you have grounded evidence
86
+
87
+ ### 4. Do not stop at broad landing pages
88
+
89
+ A guide landing page is **not enough** unless it clearly contains the exact requested concept.
90
+
91
+ This is especially important for:
92
+ - LWC docs
93
+ - Agentforce docs
94
+ - broad platform guide homepages
95
+ - help landing pages that link to the real article
96
+
97
+ ### 5. For `developer.salesforce.com`
98
+
99
+ Use this playbook:
100
+ - start with the most likely official guide root
101
+ - if the page is JS-heavy, prefer browser-rendered extraction
102
+ - check whether the exact concept appears on the page
103
+ - if the concept is missing, inspect official child links and follow the best matching 1–3 links
104
+ - prefer exact concept pages over broad guide roots
105
+ - legacy atlas pages are valid if they are the real official reference for the concept
106
+
107
+ ### 6. For `help.salesforce.com`
108
+
109
+ Help pages often fail with naive fetching.
110
+
111
+ Use this playbook:
112
+ - prefer exact `articleView?id=...` URLs when available
113
+ - use browser-rendered extraction when plain fetch returns shell content
114
+ - treat outputs like `Loading`, `Sorry to interrupt`, `CSS Error`, or mostly chrome/navigation text as **failed extraction**, not evidence
115
+ - look for the **real article body**, not just header, nav, or footer text
116
+ - reject shell pages and soft-404 pages such as:
117
+ - "We looked high and low but couldn't find that page"
118
+ - generic empty help shells
119
+ - if starting from a nearby guide or hub page, follow linked Help articles until you reach the real article body
120
+ - if extraction still fails after targeted retries, return the best official Help URLs you found and explicitly say that article-body extraction was unsuccessful
121
+
122
+ ## Acceptance Rules
123
+
124
+ A page is good enough to answer from only when at least one of these is true:
125
+ - the exact identifier appears on the page
126
+ - the exact concept phrase appears on the page
127
+ - multiple query-specific phrases appear in the correct official context
128
+
129
+ A page is **not** good enough when:
130
+ - it is only a broad landing page
131
+ - it is a shell page with little real article text
132
+ - it is from the wrong product area
133
+ - it does not contain the requested identifier or concept
134
+ - it is a third-party explanation when an official page should exist
135
+
136
+ ## Rejection Rules
137
+
138
+ Reject these as final evidence:
139
+ - broad guide homepages without the exact concept
140
+ - release notes when a concept/reference page is expected
141
+ - admin blog posts when developer docs are requested
142
+ - third-party blogs when official docs are available
143
+ - shell-rendered pages with no real article body
144
+ - pages whose titles sound right but whose body does not contain the requested concept
145
+
146
+ ## Grounding Requirements
147
+
148
+ When answering, include:
149
+ 1. guide/article title
150
+ 2. exact official URL
151
+ 3. source type:
152
+ - developer doc page
153
+ - atlas reference page
154
+ - help article page
155
+ 4. any caveat if extraction was partial or browser-rendered
156
+
157
+ If evidence is weak, say so plainly.
158
+
159
+ ## Examples
160
+
161
+ ### Example: Lightning Message Service
162
+ Do **not** stop at the general LWC guide root.
163
+ Find the exact LWC page for Lightning Message Service or follow the most relevant child links from the LWC docs until the exact concept appears.
164
+
165
+ ### Example: Wire Service
166
+ Do **not** answer from the LWC homepage unless `Wire Service` is actually present there.
167
+ Follow the relevant child doc page for wire service or wire adapters.
168
+
169
+ ### Example: Agentforce Actions
170
+ Do **not** answer from a broad Agentforce landing page or a blog post.
171
+ Find the official Agentforce developer page for actions, or follow the best matching child pages from the official Agentforce docs.
172
+
173
+ ### Example: Messaging for In-App and Web allowed domains
174
+ Prefer official Help articles and browser-rendered extraction.
175
+ Reject generic help shells. Follow linked Help articles from nearby official messaging docs if needed.
176
+
177
+ ### Example: System.StubProvider
178
+ Prefer the official Salesforce reference/developer page where the exact identifier appears.
179
+ Do not substitute a broader Apex landing page if the identifier is absent.
180
+
181
+ ## Non-Goals
182
+
183
+ This skill should **not**:
184
+ - maintain a local documentation corpus
185
+ - rely on a local index
186
+ - use PDF fallback
187
+ - run benchmark workflows
188
+ - depend on repo-specific scripts to be useful
189
+
190
+ ## Output Expectations
191
+
192
+ For each retrieval, include:
193
+ 1. Guide or article title
194
+ 2. Exact official URL
195
+ 3. Source type (developer doc page / atlas reference page / help article page)
196
+ 4. Any caveat if extraction was partial or browser-rendered
197
+
198
+ If evidence is weak, say so plainly rather than forcing an answer.
199
+
200
+ ---
201
+
202
+ ## Reference File Index
203
+
204
+ | File | When to read |
205
+ |------|-------------|
206
+ | `scripts/extract_salesforce_doc.py` | Use to fetch any official Salesforce doc URL; automatically routes `help.salesforce.com` into the dedicated Help extractor and supports browser-rendered extraction for all Salesforce-owned doc hosts |
207
+ | `scripts/extract_help_salesforce.py` | Use directly when targeting `help.salesforce.com` `articleView` URLs; use when the wrapper is not appropriate |
208
+ | `scripts/runtime_bootstrap.py` | Imported by the extraction scripts to resolve the isolated fetching-salesforce-docs Python runtime and Playwright browser path; not called directly |
209
+ | `requirements.txt` | Lists Python dependencies (`playwright`, `playwright-stealth`) needed to run the extraction scripts |
@@ -0,0 +1,2 @@
1
+ playwright
2
+ playwright-stealth