@salesforce/afv-skills 1.7.5 → 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 (513) 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/building-ui-bundle-frontend/SKILL.md +2 -0
  111. package/skills/configuring-connected-apps/CREDITS.md +3 -0
  112. package/skills/configuring-connected-apps/README.md +99 -0
  113. package/skills/configuring-connected-apps/SKILL.md +224 -0
  114. package/skills/configuring-connected-apps/assets/connected-app-basic.xml +29 -0
  115. package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +62 -0
  116. package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +49 -0
  117. package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +65 -0
  118. package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +36 -0
  119. package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +36 -0
  120. package/skills/configuring-connected-apps/assets/eca-policies.xml +36 -0
  121. package/skills/configuring-connected-apps/assets/external-client-app.xml +35 -0
  122. package/skills/configuring-connected-apps/references/example-usage.md +256 -0
  123. package/skills/configuring-connected-apps/references/migration-guide.md +328 -0
  124. package/skills/configuring-connected-apps/references/oauth-flows-reference.md +660 -0
  125. package/skills/configuring-connected-apps/references/security-checklist.md +209 -0
  126. package/skills/configuring-connected-apps/references/testing-validation-guide.md +275 -0
  127. package/skills/connecting-datacloud/CREDITS.md +5 -0
  128. package/skills/connecting-datacloud/README.md +59 -0
  129. package/skills/connecting-datacloud/SKILL.md +155 -0
  130. package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +15 -0
  131. package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +5 -0
  132. package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +31 -0
  133. package/skills/connecting-datacloud/examples/connections/redshift.json +16 -0
  134. package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +20 -0
  135. package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +42 -0
  136. package/skills/debugging-apex-logs/CREDITS.md +22 -0
  137. package/skills/debugging-apex-logs/README.md +74 -0
  138. package/skills/debugging-apex-logs/SKILL.md +172 -0
  139. package/skills/debugging-apex-logs/assets/benchmarking-template.cls +327 -0
  140. package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +307 -0
  141. package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +219 -0
  142. package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +252 -0
  143. package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +157 -0
  144. package/skills/debugging-apex-logs/references/analysis-playbook.md +53 -0
  145. package/skills/debugging-apex-logs/references/benchmarking-guide.md +287 -0
  146. package/skills/debugging-apex-logs/references/cli-commands.md +368 -0
  147. package/skills/debugging-apex-logs/references/common-issues.md +68 -0
  148. package/skills/debugging-apex-logs/references/debug-log-reference.md +328 -0
  149. package/skills/debugging-apex-logs/references/log-analysis-tools.md +248 -0
  150. package/skills/debugging-apex-logs/references/scoring-rubric.md +21 -0
  151. package/skills/deploying-metadata/CREDITS.md +25 -0
  152. package/skills/deploying-metadata/README.md +104 -0
  153. package/skills/deploying-metadata/SKILL.md +214 -0
  154. package/skills/deploying-metadata/assets/destructiveChanges.xml +143 -0
  155. package/skills/deploying-metadata/assets/package.xml +121 -0
  156. package/skills/deploying-metadata/references/agent-deployment-guide.md +628 -0
  157. package/skills/deploying-metadata/references/deploy.sh +73 -0
  158. package/skills/deploying-metadata/references/deployment-report-template.md +89 -0
  159. package/skills/deploying-metadata/references/deployment-workflows.md +395 -0
  160. package/skills/deploying-metadata/references/orchestration.md +183 -0
  161. package/skills/deploying-metadata/references/trigger-deployment-safety.md +376 -0
  162. package/skills/deploying-omnistudio-datapacks/CREDITS.md +5 -0
  163. package/skills/deploying-omnistudio-datapacks/README.md +88 -0
  164. package/skills/deploying-omnistudio-datapacks/SKILL.md +174 -0
  165. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +124 -0
  166. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +11 -0
  167. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +142 -0
  168. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +10 -0
  169. package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +42 -0
  170. package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +24 -0
  171. package/skills/deploying-ui-bundle/SKILL.md +2 -0
  172. package/skills/developing-agentforce/SKILL.md +1 -1
  173. package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +1 -1
  174. package/skills/developing-agentforce/references/actions-reference.md +8 -8
  175. package/skills/fetching-salesforce-docs/README.md +66 -0
  176. package/skills/fetching-salesforce-docs/SKILL.md +209 -0
  177. package/skills/fetching-salesforce-docs/requirements.txt +2 -0
  178. package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +497 -0
  179. package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +357 -0
  180. package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +58 -0
  181. package/skills/generating-apex/CREDITS.md +1 -26
  182. package/skills/generating-apex/SKILL.md +4 -2
  183. package/skills/generating-apex-test/CREDITS.md +2 -27
  184. package/skills/generating-apex-test/SKILL.md +3 -1
  185. package/skills/generating-custom-application/SKILL.md +2 -0
  186. package/skills/generating-custom-field/SKILL.md +3 -1
  187. package/skills/generating-custom-lightning-type/SKILL.md +2 -0
  188. package/skills/generating-custom-object/SKILL.md +3 -1
  189. package/skills/generating-custom-tab/SKILL.md +3 -1
  190. package/skills/generating-flexipage/SKILL.md +2 -0
  191. package/skills/generating-flow/SKILL.md +2 -0
  192. package/skills/generating-lightning-app/SKILL.md +1 -1
  193. package/skills/generating-list-view/SKILL.md +2 -0
  194. package/skills/generating-lwc-components/CREDITS.md +5 -0
  195. package/skills/generating-lwc-components/README.md +126 -0
  196. package/skills/generating-lwc-components/SKILL.md +191 -0
  197. package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +327 -0
  198. package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +72 -0
  199. package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +111 -0
  200. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +163 -0
  201. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +137 -0
  202. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +111 -0
  203. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +367 -0
  204. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +63 -0
  205. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +154 -0
  206. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +348 -0
  207. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +87 -0
  208. package/skills/generating-lwc-components/assets/form-component/formComponent.html +165 -0
  209. package/skills/generating-lwc-components/assets/form-component/formComponent.js +275 -0
  210. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +100 -0
  211. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +336 -0
  212. package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +371 -0
  213. package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +71 -0
  214. package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +103 -0
  215. package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +181 -0
  216. package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +85 -0
  217. package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +199 -0
  218. package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +55 -0
  219. package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +199 -0
  220. package/skills/generating-lwc-components/assets/state-store/store.js +282 -0
  221. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +65 -0
  222. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +95 -0
  223. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +75 -0
  224. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +301 -0
  225. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +295 -0
  226. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +71 -0
  227. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +316 -0
  228. package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +295 -0
  229. package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +347 -0
  230. package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +74 -0
  231. package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +111 -0
  232. package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +127 -0
  233. package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +294 -0
  234. package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +22 -0
  235. package/skills/generating-lwc-components/hooks/scripts/template_validator.py +332 -0
  236. package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +595 -0
  237. package/skills/generating-lwc-components/references/accessibility-guide.md +843 -0
  238. package/skills/generating-lwc-components/references/advanced-features.md +108 -0
  239. package/skills/generating-lwc-components/references/async-notification-patterns.md +661 -0
  240. package/skills/generating-lwc-components/references/cli-commands.md +545 -0
  241. package/skills/generating-lwc-components/references/component-patterns.md +1476 -0
  242. package/skills/generating-lwc-components/references/flow-integration-guide.md +675 -0
  243. package/skills/generating-lwc-components/references/jest-testing.md +1011 -0
  244. package/skills/generating-lwc-components/references/lms-guide.md +860 -0
  245. package/skills/generating-lwc-components/references/lwc-best-practices.md +1310 -0
  246. package/skills/generating-lwc-components/references/performance-guide.md +861 -0
  247. package/skills/generating-lwc-components/references/scoring-and-testing.md +116 -0
  248. package/skills/generating-lwc-components/references/slds-blueprints.json +14389 -0
  249. package/skills/generating-lwc-components/references/slds-design-guide.md +166 -0
  250. package/skills/generating-lwc-components/references/state-management.md +642 -0
  251. package/skills/generating-lwc-components/references/template-anti-patterns.md +948 -0
  252. package/skills/generating-lwc-components/references/triangle-pattern.md +365 -0
  253. package/skills/generating-lwc-components/scripts/local-dev-preview.sh +34 -0
  254. package/skills/generating-mermaid-diagrams/CREDITS.md +46 -0
  255. package/skills/generating-mermaid-diagrams/README.md +114 -0
  256. package/skills/generating-mermaid-diagrams/SKILL.md +218 -0
  257. package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +313 -0
  258. package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +351 -0
  259. package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +317 -0
  260. package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +195 -0
  261. package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +262 -0
  262. package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +266 -0
  263. package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +261 -0
  264. package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +332 -0
  265. package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +237 -0
  266. package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +277 -0
  267. package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +343 -0
  268. package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +192 -0
  269. package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +209 -0
  270. package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +276 -0
  271. package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +217 -0
  272. package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +241 -0
  273. package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +387 -0
  274. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +197 -0
  275. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +152 -0
  276. package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +233 -0
  277. package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +295 -0
  278. package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +256 -0
  279. package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +281 -0
  280. package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +281 -0
  281. package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +322 -0
  282. package/skills/generating-mermaid-diagrams/references/color-palette.md +464 -0
  283. package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +313 -0
  284. package/skills/generating-mermaid-diagrams/references/erd-conventions.md +320 -0
  285. package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +434 -0
  286. package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +81 -0
  287. package/skills/generating-mermaid-diagrams/references/preview-guide.md +49 -0
  288. package/skills/generating-mermaid-diagrams/references/usage-examples.md +340 -0
  289. package/skills/generating-mermaid-diagrams/scripts/README.md +160 -0
  290. package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +654 -0
  291. package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +293 -0
  292. package/skills/generating-ui-bundle-features/SKILL.md +2 -0
  293. package/skills/generating-ui-bundle-metadata/SKILL.md +2 -0
  294. package/skills/generating-ui-bundle-site/SKILL.md +2 -0
  295. package/skills/generating-validation-rule/SKILL.md +2 -0
  296. package/skills/generating-visual-diagrams/CREDITS.md +80 -0
  297. package/skills/generating-visual-diagrams/README.md +83 -0
  298. package/skills/generating-visual-diagrams/SKILL.md +208 -0
  299. package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +55 -0
  300. package/skills/generating-visual-diagrams/assets/erd/core-objects.md +131 -0
  301. package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +60 -0
  302. package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +45 -0
  303. package/skills/generating-visual-diagrams/assets/lwc/data-table.md +57 -0
  304. package/skills/generating-visual-diagrams/assets/lwc/record-form.md +60 -0
  305. package/skills/generating-visual-diagrams/assets/review/apex-review.md +57 -0
  306. package/skills/generating-visual-diagrams/assets/review/lwc-review.md +48 -0
  307. package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +257 -0
  308. package/skills/generating-visual-diagrams/references/examples-index.md +35 -0
  309. package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +65 -0
  310. package/skills/generating-visual-diagrams/references/interview-questions.md +529 -0
  311. package/skills/generating-visual-diagrams/references/iteration-workflow.md +173 -0
  312. package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +101 -0
  313. package/skills/generating-visual-diagrams/scripts/generate_image.py +243 -0
  314. package/skills/handling-sf-data/CREDITS.md +5 -0
  315. package/skills/handling-sf-data/README.md +112 -0
  316. package/skills/handling-sf-data/SKILL.md +235 -0
  317. package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +293 -0
  318. package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +208 -0
  319. package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +219 -0
  320. package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +324 -0
  321. package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +319 -0
  322. package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +240 -0
  323. package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +311 -0
  324. package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +266 -0
  325. package/skills/handling-sf-data/assets/csv/account-import.csv +11 -0
  326. package/skills/handling-sf-data/assets/csv/contact-import.csv +11 -0
  327. package/skills/handling-sf-data/assets/csv/custom-object-import.csv +11 -0
  328. package/skills/handling-sf-data/assets/csv/opportunity-import.csv +11 -0
  329. package/skills/handling-sf-data/assets/factories/account-factory.apex +165 -0
  330. package/skills/handling-sf-data/assets/factories/case-factory.apex +237 -0
  331. package/skills/handling-sf-data/assets/factories/contact-factory.apex +168 -0
  332. package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +260 -0
  333. package/skills/handling-sf-data/assets/factories/event-factory.apex +275 -0
  334. package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +372 -0
  335. package/skills/handling-sf-data/assets/factories/lead-factory.apex +190 -0
  336. package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +206 -0
  337. package/skills/handling-sf-data/assets/factories/task-factory.apex +246 -0
  338. package/skills/handling-sf-data/assets/factories/user-factory.apex +278 -0
  339. package/skills/handling-sf-data/assets/json/account-contact-tree.json +130 -0
  340. package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +110 -0
  341. package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +188 -0
  342. package/skills/handling-sf-data/assets/soql/aggregate.soql +226 -0
  343. package/skills/handling-sf-data/assets/soql/child-to-parent.soql +162 -0
  344. package/skills/handling-sf-data/assets/soql/parent-to-child.soql +153 -0
  345. package/skills/handling-sf-data/assets/soql/polymorphic.soql +198 -0
  346. package/skills/handling-sf-data/assets/soql/subquery.soql +287 -0
  347. package/skills/handling-sf-data/references/anonymous-apex-guide.md +98 -0
  348. package/skills/handling-sf-data/references/bulk-operations-guide.md +94 -0
  349. package/skills/handling-sf-data/references/bulk-testing-example.md +194 -0
  350. package/skills/handling-sf-data/references/cleanup-rollback-example.md +322 -0
  351. package/skills/handling-sf-data/references/cleanup-rollback-guide.md +84 -0
  352. package/skills/handling-sf-data/references/crud-workflow-example.md +183 -0
  353. package/skills/handling-sf-data/references/governor-limits-reference.md +74 -0
  354. package/skills/handling-sf-data/references/orchestration.md +174 -0
  355. package/skills/handling-sf-data/references/relationship-query-examples.md +249 -0
  356. package/skills/handling-sf-data/references/sf-cli-data-commands.md +158 -0
  357. package/skills/handling-sf-data/references/soql-relationship-guide.md +84 -0
  358. package/skills/handling-sf-data/references/test-data-best-practices.md +104 -0
  359. package/skills/handling-sf-data/references/test-data-factory-usage.md +290 -0
  360. package/skills/handling-sf-data/references/test-data-patterns.md +98 -0
  361. package/skills/handling-sf-data/scripts/soql_validator.py +292 -0
  362. package/skills/handling-sf-data/scripts/validate_data_operation.py +379 -0
  363. package/skills/harmonizing-datacloud/CREDITS.md +3 -0
  364. package/skills/harmonizing-datacloud/README.md +31 -0
  365. package/skills/harmonizing-datacloud/SKILL.md +117 -0
  366. package/skills/implementing-ui-bundle-agentforce-conversation-client/SKILL.md +1 -1
  367. package/skills/implementing-ui-bundle-file-upload/SKILL.md +2 -0
  368. package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +14 -0
  369. package/skills/modeling-omnistudio-epc-catalog/README.md +89 -0
  370. package/skills/modeling-omnistudio-epc-catalog/SKILL.md +395 -0
  371. package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +402 -0
  372. package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +43 -0
  373. package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +8 -0
  374. package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +233 -0
  375. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +514 -0
  376. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +21 -0
  377. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +649 -0
  378. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +200 -0
  379. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +138 -0
  380. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +54 -0
  381. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +266 -0
  382. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +23 -0
  383. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +54 -0
  384. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +35 -0
  385. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +34 -0
  386. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +21 -0
  387. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +410 -0
  388. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +535 -0
  389. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +35 -0
  390. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +138 -0
  391. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +28 -0
  392. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +23 -0
  393. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +220 -0
  394. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +35 -0
  395. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +414 -0
  396. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +382 -0
  397. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +565 -0
  398. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +35 -0
  399. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +104 -0
  400. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +28 -0
  401. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +13 -0
  402. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +106 -0
  403. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +35 -0
  404. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +72 -0
  405. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +142 -0
  406. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +377 -0
  407. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +35 -0
  408. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +36 -0
  409. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +8 -0
  410. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +54 -0
  411. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +35 -0
  412. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +34 -0
  413. package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +138 -0
  414. package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +54 -0
  415. package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +134 -0
  416. package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +29 -0
  417. package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +158 -0
  418. package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +35 -0
  419. package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +338 -0
  420. package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +527 -0
  421. package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +1 -0
  422. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +95 -0
  423. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +1 -0
  424. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +214 -0
  425. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +28 -0
  426. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +98 -0
  427. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +22 -0
  428. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +1 -0
  429. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +13 -0
  430. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +35 -0
  431. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +28 -0
  432. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +110 -0
  433. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +58 -0
  434. package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +90 -0
  435. package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +80 -0
  436. package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +57 -0
  437. package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +19 -0
  438. package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +18 -0
  439. package/skills/observing-agentforce/SKILL.md +1 -1
  440. package/skills/orchestrating-datacloud/CREDITS.md +15 -0
  441. package/skills/orchestrating-datacloud/README.md +129 -0
  442. package/skills/orchestrating-datacloud/SKILL.md +236 -0
  443. package/skills/orchestrating-datacloud/UPSTREAM.md +45 -0
  444. package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +5 -0
  445. package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +7 -0
  446. package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +7 -0
  447. package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +5 -0
  448. package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +5 -0
  449. package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +21 -0
  450. package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +55 -0
  451. package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +17 -0
  452. package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +30 -0
  453. package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +14 -0
  454. package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +12 -0
  455. package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +9 -0
  456. package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +16 -0
  457. package/skills/orchestrating-datacloud/references/feature-readiness.md +157 -0
  458. package/skills/orchestrating-datacloud/references/plugin-setup.md +140 -0
  459. package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +53 -0
  460. package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +511 -0
  461. package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +68 -0
  462. package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +58 -0
  463. package/skills/preparing-datacloud/CREDITS.md +7 -0
  464. package/skills/preparing-datacloud/README.md +51 -0
  465. package/skills/preparing-datacloud/SKILL.md +191 -0
  466. package/skills/preparing-datacloud/examples/ingestion-api/.env.example +8 -0
  467. package/skills/preparing-datacloud/examples/ingestion-api/README.md +48 -0
  468. package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +144 -0
  469. package/skills/querying-soql/CREDITS.md +21 -0
  470. package/skills/querying-soql/README.md +41 -0
  471. package/skills/querying-soql/SKILL.md +143 -0
  472. package/skills/querying-soql/assets/aggregate-queries.soql +242 -0
  473. package/skills/querying-soql/assets/basic-queries.soql +188 -0
  474. package/skills/querying-soql/assets/bulkified-query-pattern.cls +280 -0
  475. package/skills/querying-soql/assets/optimization-patterns.soql +259 -0
  476. package/skills/querying-soql/assets/relationship-queries.soql +203 -0
  477. package/skills/querying-soql/assets/selector-class.cls +219 -0
  478. package/skills/querying-soql/references/anti-patterns.md +348 -0
  479. package/skills/querying-soql/references/cli-commands.md +358 -0
  480. package/skills/querying-soql/references/field-coverage-rules.md +514 -0
  481. package/skills/querying-soql/references/query-optimization.md +142 -0
  482. package/skills/querying-soql/references/selector-patterns.md +479 -0
  483. package/skills/querying-soql/references/soql-reference.md +227 -0
  484. package/skills/querying-soql/references/soql-syntax-reference.md +208 -0
  485. package/skills/querying-soql/scripts/post-tool-validate.py +322 -0
  486. package/skills/retrieving-datacloud/CREDITS.md +7 -0
  487. package/skills/retrieving-datacloud/README.md +44 -0
  488. package/skills/retrieving-datacloud/SKILL.md +120 -0
  489. package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +44 -0
  490. package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +43 -0
  491. package/skills/running-apex-tests/CREDITS.md +22 -0
  492. package/skills/running-apex-tests/README.md +94 -0
  493. package/skills/running-apex-tests/SKILL.md +158 -0
  494. package/skills/running-apex-tests/assets/basic-test.cls +169 -0
  495. package/skills/running-apex-tests/assets/bulk-test.cls +255 -0
  496. package/skills/running-apex-tests/assets/dml-mock.cls +339 -0
  497. package/skills/running-apex-tests/assets/mock-callout-test.cls +353 -0
  498. package/skills/running-apex-tests/assets/stub-provider-example.cls +364 -0
  499. package/skills/running-apex-tests/assets/test-data-factory.cls +328 -0
  500. package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +364 -0
  501. package/skills/running-apex-tests/references/cli-commands.md +289 -0
  502. package/skills/running-apex-tests/references/mocking-patterns.md +500 -0
  503. package/skills/running-apex-tests/references/performance-optimization.md +283 -0
  504. package/skills/running-apex-tests/references/test-fix-loop.md +49 -0
  505. package/skills/running-apex-tests/references/test-patterns.md +154 -0
  506. package/skills/running-apex-tests/references/testing-best-practices.md +509 -0
  507. package/skills/segmenting-datacloud/CREDITS.md +3 -0
  508. package/skills/segmenting-datacloud/README.md +36 -0
  509. package/skills/segmenting-datacloud/SKILL.md +115 -0
  510. package/skills/switching-org/SKILL.md +1 -1
  511. package/skills/testing-agentforce/SKILL.md +1 -1
  512. package/skills/uplifting-components-to-slds2/SKILL.md +3 -1
  513. package/skills/using-ui-bundle-salesforce-data/SKILL.md +2 -0
@@ -0,0 +1,628 @@
1
+ <!-- Parent: deploying-metadata/SKILL.md -->
2
+ # Agentforce Agent Deployment Guide
3
+
4
+ > Complete DevOps guide for deploying Agentforce agents using SF CLI
5
+
6
+ ## Overview
7
+
8
+ This guide covers the complete deployment lifecycle for Agentforce agents, including:
9
+ - Agent metadata types and pseudo metadata
10
+ - Sync operations (retrieve/deploy)
11
+ - Lifecycle management (activate/deactivate)
12
+ - Full deployment workflows
13
+
14
+ **Related Skills:**
15
+ - `developing-agentforce` - Agent authoring, publishing, Agent Builder, and Prompt Builder
16
+ - `deploying-metadata` - This skill - deployment orchestration
17
+
18
+ ---
19
+
20
+ ## Agent Metadata Types
21
+
22
+ Agentforce agents consist of multiple metadata components:
23
+
24
+ | Metadata Type | Description | Example API Name |
25
+ |---------------|-------------|------------------|
26
+ | `Bot` | Top-level chatbot definition | `Customer_Support_Agent` |
27
+ | `BotVersion` | Version configuration | `Customer_Support_Agent.v1` |
28
+ | `GenAiPlannerBundle` | Reasoning engine (LLM config) | `Customer_Support_Agent_Planner` |
29
+ | `GenAiPlugin` | Topic definition | `Order_Management_Plugin` |
30
+ | `GenAiFunction` | Action definition | `Get_Order_Status_Function` |
31
+
32
+ ### Metadata Hierarchy
33
+
34
+ ```
35
+ Bot (Agent Definition)
36
+ └── BotVersion (Version Config)
37
+ └── GenAiPlannerBundle (Reasoning Engine)
38
+ ├── GenAiPlugin (Topic 1)
39
+ │ ├── GenAiFunction (Action 1)
40
+ │ └── GenAiFunction (Action 2)
41
+ └── GenAiPlugin (Topic 2)
42
+ └── GenAiFunction (Action 3)
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Agent Pseudo Metadata Type
48
+
49
+ The `Agent` pseudo metadata type is a convenience wrapper that retrieves or deploys all agent-related components at once.
50
+
51
+ ### Using the Agent Pseudo Type
52
+
53
+ ```bash
54
+ # Retrieve agent + all dependencies from org
55
+ sf project retrieve start --metadata Agent:[AgentName] --target-org [alias]
56
+
57
+ # Deploy agent metadata to org
58
+ sf project deploy start --metadata Agent:[AgentName] --target-org [alias]
59
+ ```
60
+
61
+ ### What Gets Synced
62
+
63
+ When using `--metadata Agent:[Name]`:
64
+
65
+ **Retrieved/Deployed:**
66
+ - `Bot` - Top-level chatbot
67
+ - `BotVersion` - Version configuration
68
+ - `GenAiPlannerBundle` - Reasoning engine
69
+ - `GenAiPlugin` - All topics
70
+ - `GenAiFunction` - All actions
71
+
72
+ **NOT Included:**
73
+ - Apex classes (deploy separately)
74
+ - Flows (deploy separately)
75
+ - Named Credentials (deploy separately)
76
+
77
+ ---
78
+
79
+ ## Sync Operations
80
+
81
+ ### Retrieving Agents from Org
82
+
83
+ ```bash
84
+ # Retrieve agent using pseudo metadata type
85
+ sf project retrieve start --metadata Agent:Customer_Support_Agent --target-org myorg
86
+
87
+ # Retrieve to specific output directory
88
+ sf project retrieve start --metadata Agent:Customer_Support_Agent --output-dir ./retrieved --target-org myorg
89
+
90
+ # Retrieve multiple agents
91
+ sf project retrieve start --metadata Agent:Support_Agent,Agent:Sales_Agent --target-org myorg
92
+ ```
93
+
94
+ ### Retrieving Specific Components
95
+
96
+ ```bash
97
+ # Retrieve just the bot definition
98
+ sf project retrieve start --metadata Bot:Customer_Support_Agent --target-org myorg
99
+
100
+ # Retrieve a specific BotVersion along with the bot definition
101
+ sf project retrieve start \
102
+ --metadata Bot:Customer_Support_Agent \
103
+ --metadata BotVersion:Customer_Support_Agent.v3 \
104
+ --target-org myorg
105
+
106
+ # Retrieve just the planner bundle
107
+ sf project retrieve start --metadata GenAiPlannerBundle:Customer_Support_Agent_Planner --target-org myorg
108
+
109
+ # Retrieve all plugins (topics)
110
+ sf project retrieve start --metadata GenAiPlugin --target-org myorg
111
+
112
+ # Retrieve all functions (actions)
113
+ sf project retrieve start --metadata GenAiFunction --target-org myorg
114
+ ```
115
+
116
+ > **Versioned retrieve note:** Current SF CLI releases correctly retrieve the specific `BotVersion` you request instead of always pulling only the latest version.
117
+
118
+ ### Deploying Agents to Org
119
+
120
+ ```bash
121
+ # Deploy agent using pseudo metadata type
122
+ sf project deploy start --metadata Agent:Customer_Support_Agent --target-org myorg
123
+
124
+ # Deploy with validation only (dry run)
125
+ sf project deploy start --metadata Agent:Customer_Support_Agent --dry-run --target-org myorg
126
+
127
+ # Deploy multiple agents
128
+ sf project deploy start --metadata Agent:Support_Agent,Agent:Sales_Agent --target-org myorg
129
+ ```
130
+
131
+ ---
132
+
133
+ ## Agent Lifecycle Management
134
+
135
+ ### Activate Agent
136
+
137
+ Makes an agent available to users.
138
+
139
+ ```bash
140
+ # Manual activation
141
+ sf agent activate --api-name [AgentName] --target-org [alias]
142
+
143
+ # CI / deterministic activation of a known BotVersion
144
+ sf agent activate --api-name [AgentName] --version [N] --target-org [alias] --json
145
+ ```
146
+
147
+ **Requirements:**
148
+ - Agent must be published first (`sf agent publish authoring-bundle`)
149
+ - All Apex classes and Flows must be deployed
150
+ - `default_agent_user` must be a valid org user with Agentforce permissions
151
+
152
+ **Activation notes:**
153
+ - `--version [N]` maps to the `vN` suffix in `BotVersion` metadata
154
+ - Omitting `--version` triggers interactive version selection
155
+ - Using `--json` without `--version` activates the latest agent version
156
+ - For CI/CD and reproducible rollouts, prefer `--version [N] --json`
157
+
158
+ **Post-Activation:**
159
+ - Agent is immediately available to users
160
+ - Preview command can be used for testing
161
+ - Changes require deactivation first
162
+
163
+ ### Deactivate Agent
164
+
165
+ Deactivates an agent for modifications. **Required before making changes.**
166
+
167
+ ```bash
168
+ # Manual deactivation
169
+ sf agent deactivate --api-name [AgentName] --target-org [alias]
170
+
171
+ # Script-friendly deactivation
172
+ sf agent deactivate --api-name [AgentName] --target-org [alias] --json
173
+ ```
174
+
175
+ **When Deactivation is Required:**
176
+ - Adding or removing topics
177
+ - Modifying action configurations
178
+ - Changing system instructions
179
+ - Updating variable definitions
180
+
181
+ ### Modification Workflow
182
+
183
+ ```bash
184
+ # 1. Deactivate agent
185
+ sf agent deactivate --api-name Customer_Support_Agent --target-org myorg
186
+
187
+ # 2. Make changes to Agent Script
188
+
189
+ # 3. Re-publish
190
+ sf agent publish authoring-bundle --api-name Customer_Support_Agent --target-org myorg
191
+
192
+ # 4. Re-activate
193
+ sf agent activate --api-name Customer_Support_Agent --target-org myorg
194
+ ```
195
+
196
+ ---
197
+
198
+ ## Agent Preview
199
+
200
+ Preview allows testing agent behavior before production deployment.
201
+
202
+ ### Preview Modes
203
+
204
+ | Mode | Command | Use When |
205
+ |------|---------|----------|
206
+ | **Simulated** | `sf agent preview --api-name X` | Testing logic, Apex/Flows not ready |
207
+ | **Live** | `sf agent preview --api-name X --use-live-actions` | Integration testing with real data |
208
+
209
+ ### Simulated Mode (Default)
210
+
211
+ ```bash
212
+ sf agent preview --api-name Customer_Support_Agent --target-org myorg
213
+ ```
214
+
215
+ - LLM simulates action responses
216
+ - No actual Apex/Flow execution
217
+ - Safe for testing - no data changes
218
+
219
+ ### Live Mode
220
+
221
+ ```bash
222
+ sf agent preview --api-name Customer_Support_Agent --use-live-actions --target-org myorg
223
+ ```
224
+
225
+ **Requirements:**
226
+ - Standard org auth (`sf org login web`)
227
+ - Apex classes and Flows deployed
228
+ - Agent must be active
229
+
230
+ ### Preview with Debug Output
231
+
232
+ ```bash
233
+ sf agent preview --api-name Customer_Support_Agent --output-dir ./preview-logs --apex-debug --target-org myorg
234
+ ```
235
+
236
+ > **v2.121.7+**: Live preview no longer requires a Connected App. Standard org auth (`sf org login web`) suffices.
237
+
238
+ ---
239
+
240
+ ## Full Deployment Workflows
241
+
242
+ ### New Agent Deployment
243
+
244
+ Complete workflow for deploying a new agent:
245
+
246
+ ```bash
247
+ # 1. Deploy Apex classes (if any)
248
+ sf project deploy start --metadata ApexClass --target-org myorg
249
+
250
+ # 2. Deploy Flows
251
+ sf project deploy start --metadata Flow --target-org myorg
252
+
253
+ # 3. Validate Agent Script
254
+ sf agent validate authoring-bundle --api-name Customer_Support_Agent --target-org myorg
255
+
256
+ # 4. Publish agent
257
+ sf agent publish authoring-bundle --api-name Customer_Support_Agent --target-org myorg
258
+
259
+ # 5. Preview (simulated mode)
260
+ sf agent preview --api-name Customer_Support_Agent --target-org myorg
261
+
262
+ # 6. Activate
263
+ sf agent activate --api-name Customer_Support_Agent --target-org myorg
264
+
265
+ # 7. Preview (live mode - optional)
266
+ sf agent preview --api-name Customer_Support_Agent --use-live-actions --target-org myorg
267
+ ```
268
+
269
+ ### Update Existing Agent
270
+
271
+ ```bash
272
+ # 1. Deactivate
273
+ sf agent deactivate --api-name Customer_Support_Agent --target-org myorg
274
+
275
+ # 2. Deploy updated dependencies (if any)
276
+ sf project deploy start --metadata ApexClass,Flow --target-org myorg
277
+
278
+ # 3. Validate
279
+ sf agent validate authoring-bundle --api-name Customer_Support_Agent --target-org myorg
280
+
281
+ # 4. Re-publish
282
+ sf agent publish authoring-bundle --api-name Customer_Support_Agent --target-org myorg
283
+
284
+ # 5. Preview
285
+ sf agent preview --api-name Customer_Support_Agent --target-org myorg
286
+
287
+ # 6. Re-activate
288
+ sf agent activate --api-name Customer_Support_Agent --target-org myorg
289
+ ```
290
+
291
+ ### Sync Between Orgs
292
+
293
+ ```bash
294
+ # 1. Retrieve from source org
295
+ sf project retrieve start --metadata Agent:Customer_Support_Agent --target-org source-org
296
+
297
+ # 2. Deploy dependencies to target org first
298
+ sf project deploy start --source-dir force-app/main/default/classes --target-org target-org
299
+ sf project deploy start --source-dir force-app/main/default/flows --target-org target-org
300
+
301
+ # 3. Deploy agent metadata
302
+ sf project deploy start --metadata Agent:Customer_Support_Agent --target-org target-org
303
+
304
+ # 4. Publish agent in target org
305
+ sf agent publish authoring-bundle --api-name Customer_Support_Agent --target-org target-org
306
+
307
+ # 5. Activate in target org
308
+ sf agent activate --api-name Customer_Support_Agent --target-org target-org
309
+ ```
310
+
311
+ ### CI/CD Pipeline Integration
312
+
313
+ Example deployment script for CI/CD:
314
+
315
+ ```bash
316
+ #!/bin/bash
317
+ # deploy-agent.sh
318
+
319
+ set -e # Exit on error
320
+
321
+ ORG_ALIAS=$1
322
+ AGENT_NAME=$2
323
+ AGENT_VERSION=$3
324
+
325
+ echo "🚀 Deploying agent: $AGENT_NAME to $ORG_ALIAS (version: $AGENT_VERSION)"
326
+
327
+ # Step 1: Deploy dependencies
328
+ echo "📦 Deploying Apex classes..."
329
+ sf project deploy start --metadata ApexClass --target-org $ORG_ALIAS --wait 10 --json
330
+
331
+ echo "📦 Deploying Flows..."
332
+ sf project deploy start --metadata Flow --target-org $ORG_ALIAS --wait 10 --json
333
+
334
+ # Step 2: Validate agent script
335
+ echo "✅ Validating Agent Script..."
336
+ sf agent validate authoring-bundle --api-name $AGENT_NAME --target-org $ORG_ALIAS --json
337
+
338
+ # Step 3: Check if agent exists (deactivate if needed)
339
+ echo "🔍 Checking agent status..."
340
+ if sf agent deactivate --api-name $AGENT_NAME --target-org $ORG_ALIAS --json 2>/dev/null; then
341
+ echo "⏸️ Agent deactivated for update"
342
+ fi
343
+
344
+ # Step 4: Publish agent (--skip-retrieve skips metadata retrieval, faster in CI)
345
+ echo "📤 Publishing agent..."
346
+ sf agent publish authoring-bundle --api-name $AGENT_NAME --target-org $ORG_ALIAS --skip-retrieve --json
347
+
348
+ # Step 5: Activate agent deterministically
349
+ echo "▶️ Activating agent..."
350
+ sf agent activate --api-name $AGENT_NAME --version $AGENT_VERSION --target-org $ORG_ALIAS --json
351
+
352
+ echo "✅ Agent deployment complete: $AGENT_NAME"
353
+ ```
354
+
355
+ Usage:
356
+ ```bash
357
+ ./deploy-agent.sh myorg Customer_Support_Agent 4
358
+ ```
359
+
360
+ Pass the BotVersion number you intend to activate as the third argument.
361
+
362
+ ---
363
+
364
+ ## Dependency Deployment Order
365
+
366
+ **Critical:** Dependencies must be deployed BEFORE the agent.
367
+
368
+ ```
369
+ 1. Custom Objects/Fields (generating-custom-object, generating-custom-field)
370
+
371
+ 2. Apex Classes (generating-apex)
372
+
373
+ 3. Flows (generating-flow)
374
+
375
+ 4. Named Credentials (building-sf-integrations, if external APIs)
376
+
377
+ 5. Agent Metadata (developing-agentforce publish)
378
+
379
+ 6. Agent Activation
380
+ ```
381
+
382
+ ### Deployment Commands by Order
383
+
384
+ ```bash
385
+ # 1. Objects/Fields
386
+ sf project deploy start --metadata CustomObject,CustomField --target-org myorg
387
+
388
+ # 2. Apex
389
+ sf project deploy start --metadata ApexClass --target-org myorg
390
+
391
+ # 3. Flows
392
+ sf project deploy start --metadata Flow --target-org myorg
393
+
394
+ # 4. Named Credentials (if needed)
395
+ sf project deploy start --metadata NamedCredential --target-org myorg
396
+
397
+ # 5. Publish agent
398
+ sf agent publish authoring-bundle --api-name My_Agent --target-org myorg
399
+
400
+ # 6. Activate
401
+ sf agent activate --api-name My_Agent --target-org myorg
402
+ ```
403
+
404
+ ---
405
+
406
+ ## Post-Deployment Validation for API Access
407
+
408
+ After deploying and activating an agent, verify it is accessible via the Agent Runtime API. Missing metadata causes silent 500 errors.
409
+
410
+ ### Validation Checklist
411
+
412
+ ```bash
413
+ # 1. Verify GenAiPlannerBundle has plannerSurfaces
414
+ sf project retrieve start --metadata GenAiPlannerBundle --target-org myorg --output-dir ./check
415
+ grep -l "plannerSurfaces" ./check/**/*.xml
416
+ # If no results → add plannerSurfaces block (see below)
417
+
418
+ # 2. Verify BotVersion has surfacesEnabled=true
419
+ sf project retrieve start --metadata BotVersion --target-org myorg --output-dir ./check
420
+ grep "surfacesEnabled" ./check/**/*.xml
421
+ # Should show: <surfacesEnabled>true</surfacesEnabled>
422
+
423
+ # 3. Test API connectivity
424
+ curl -s -X POST "https://DOMAIN.my.salesforce.com/services/oauth2/token" \
425
+ -d "grant_type=client_credentials&client_id=KEY&client_secret=SECRET" | jq .access_token
426
+ ```
427
+
428
+ ### Fix: Add Missing plannerSurfaces
429
+
430
+ If the GenAiPlannerBundle XML is missing the `plannerSurfaces` block, add `CustomerWebClient`:
431
+
432
+ ```xml
433
+ <GenAiPlannerBundle xmlns="http://soap.sforce.com/2006/04/metadata">
434
+ <!-- existing elements -->
435
+ <plannerSurfaces>
436
+ <adaptiveResponseAllowed>false</adaptiveResponseAllowed>
437
+ <callRecordingAllowed>false</callRecordingAllowed>
438
+ <surface>SurfaceAction__CustomerWebClient</surface>
439
+ <surfaceType>CustomerWebClient</surfaceType>
440
+ </plannerSurfaces>
441
+ </GenAiPlannerBundle>
442
+ ```
443
+
444
+ > **Note**: `EinsteinAgentApiChannel` surfaceType is NOT available on all orgs. Use `CustomerWebClient` instead — it enables both Agent Builder Preview and Agent Runtime API access.
445
+
446
+ > **⚠️ Agent Script agents**: `connection messaging:` in the `.agent` DSL ONLY generates a `Messaging` plannerSurface — `CustomerWebClient` is never auto-generated. You must manually patch it after EVERY `sf agent publish authoring-bundle`. See the post-publish workflow in `developing-agentforce`.
447
+
448
+ ### Fix: Add plannerSurfaces when agent is active
449
+
450
+ If the agent is active, you must deactivate before deploying:
451
+
452
+ ```bash
453
+ # Deactivate → Deploy → Activate
454
+ sf agent deactivate --api-name AgentName -o TARGET_ORG --json
455
+ sf project deploy start --metadata "GenAiPlannerBundle:AgentName_vNN" -o TARGET_ORG --json
456
+ sf agent activate --api-name AgentName --version NN -o TARGET_ORG --json
457
+ ```
458
+
459
+ Use the same `NN` value from the planner bundle version you just patched so activation is deterministic.
460
+
461
+ ### Fix: Enable surfacesEnabled on BotVersion
462
+
463
+ ```xml
464
+ <BotVersion xmlns="http://soap.sforce.com/2006/04/metadata">
465
+ <!-- existing elements -->
466
+ <surfacesEnabled>true</surfacesEnabled>
467
+ </BotVersion>
468
+ ```
469
+
470
+ Then redeploy:
471
+ ```bash
472
+ sf project deploy start --metadata GenAiPlannerBundle,BotVersion --target-org myorg
473
+ ```
474
+
475
+ > **Why this matters**: Without `CustomerWebClient` plannerSurface, the Agent Builder Preview shows "Something went wrong" and the Agent Runtime API returns `500 UNKNOWN_EXCEPTION` on session creation.
476
+
477
+ ---
478
+
479
+ ## ISV Packaging (BotTemplate)
480
+
481
+ Use `sf agent generate template` to package an agent for distribution via managed packages on AppExchange.
482
+
483
+ ### Generate a BotTemplate
484
+
485
+ ```bash
486
+ sf agent generate template \
487
+ --agent-file force-app/main/default/bots/My_Agent/My_Agent.bot-meta.xml \
488
+ --agent-version 1 \
489
+ --output-dir my-package \
490
+ --source-org my-scratch-org \
491
+ --json
492
+ ```
493
+
494
+ > **Important:** This command packages Bot / BotVersion-based agents. It does **not** package Agent Script `.agent` authoring bundles.
495
+
496
+ ### What Gets Generated
497
+
498
+ The command generates a `BotTemplate` metadata type that wraps:
499
+ - `Bot` — Top-level agent definition
500
+ - `BotVersion` — Version configuration
501
+ - `GenAiPlannerBundle` — Reasoning engine and topic/action bindings
502
+
503
+ ### Packaging Workflow
504
+
505
+ 1. **Generate template**: Run `sf agent generate template` as shown above
506
+ 2. **Include in package**: Add the `BotTemplate` and `GenAiPlannerBundle` metadata to your managed package directory
507
+ 3. **Create package version**: `sf package version create --package <name> --installation-key <key> --wait 20`
508
+ 4. **Install in subscriber org**: `sf package install --package <version-id> --target-org <alias> --wait 10`
509
+ 5. **Publish agent in subscriber org**: `sf agent publish authoring-bundle --api-name <name> --target-org <alias>`
510
+
511
+ ### Key Considerations
512
+
513
+ - The BotTemplate is designed for ISV distribution — it allows subscribers to install and customize the agent
514
+ - Subscribers can modify topics, actions, and instructions after installation
515
+ - The `--agent-version` flag specifies which BotVersion to template (typically `1` for new agents)
516
+ - The `--agent-file` must point to the `.bot-meta.xml` file in your local project
517
+ - `--source-org` must be a namespaced scratch org that contains the source agent
518
+ - Agent Script `.agent` bundles currently need a different rollout path; use source-driven publish workflows instead of `sf agent generate template`
519
+
520
+ ---
521
+
522
+ ## Troubleshooting
523
+
524
+ ### "Internal Error, try again later"
525
+
526
+ **Causes:**
527
+ - Invalid `default_agent_user`
528
+ - Dependencies not deployed
529
+ - Flow/action variable name mismatch
530
+
531
+ **Solutions:**
532
+ ```bash
533
+ # Verify user exists
534
+ sf data query --query "SELECT Id, Username FROM User WHERE Username = 'agent@example.com'" --target-org myorg
535
+
536
+ # Deploy dependencies first
537
+ sf project deploy start --metadata ApexClass,Flow --target-org myorg
538
+ ```
539
+
540
+ ### "No active agents found"
541
+
542
+ **Cause:** Agent not activated
543
+
544
+ **Solution:**
545
+ ```bash
546
+ sf agent activate --api-name My_Agent --target-org myorg
547
+ ```
548
+
549
+ ### "Agent must be deactivated before changes"
550
+
551
+ **Cause:** Trying to modify active agent
552
+
553
+ **Solution:**
554
+ ```bash
555
+ sf agent deactivate --api-name My_Agent --target-org myorg
556
+ # Make changes
557
+ sf agent publish authoring-bundle --api-name My_Agent --target-org myorg
558
+ sf agent activate --api-name My_Agent --target-org myorg
559
+ ```
560
+
561
+ ### Deployment Fails with Missing Dependencies
562
+
563
+ **Cause:** Apex/Flows not deployed before agent
564
+
565
+ **Solution:** Follow the dependency deployment order above.
566
+
567
+ ---
568
+
569
+ ## Cross-Skill Integration
570
+
571
+ | From Skill | To Skill | Purpose |
572
+ |------------|----------|---------|
573
+ | developing-agentforce | deploying-metadata | Publish and activate agents |
574
+ | generating-apex | deploying-metadata | Deploy Apex before agent |
575
+ | generating-flow | deploying-metadata | Deploy Flows before agent |
576
+ | building-sf-integrations | deploying-metadata | Deploy Named Credentials for external APIs |
577
+
578
+ ### Integration Pattern
579
+
580
+ ```bash
581
+ # 1. generating-apex creates InvocableMethod class
582
+ # 2. generating-flow creates wrapper Flow
583
+ # 3. developing-agentforce creates agent with flow:// action
584
+ # 4. deploying-metadata orchestrates deployment in correct order
585
+ ```
586
+
587
+ ---
588
+
589
+ ## Command Reference
590
+
591
+ ### Agent-Specific Commands
592
+
593
+ | Command | Description |
594
+ |---------|-------------|
595
+ | `sf agent publish authoring-bundle --api-name X` | Publish authoring bundle |
596
+ | `sf agent publish authoring-bundle --api-name X --skip-retrieve` | Publish without retrieving from org (CI/CD) |
597
+ | `sf agent activate --api-name X --version N --json` | Activate a specific published BotVersion deterministically |
598
+ | `sf agent deactivate --api-name X --json` | Deactivate agent for changes |
599
+ | `sf agent preview --api-name X` | Preview agent behavior |
600
+ | `sf agent validate authoring-bundle --api-name X` | Validate Agent Script syntax |
601
+
602
+ ### Metadata Commands with Agent Pseudo Type
603
+
604
+ | Command | Description |
605
+ |---------|-------------|
606
+ | `sf project retrieve start --metadata Agent:X` | Retrieve agent + components |
607
+ | `sf project deploy start --metadata Agent:X` | Deploy agent metadata |
608
+ | `sf project retrieve start --metadata Bot:X` | Retrieve bot definition only |
609
+ | `sf project retrieve start --metadata Bot:X --metadata BotVersion:X.vN` | Retrieve a specific BotVersion |
610
+ | `sf project retrieve start --metadata GenAiPlannerBundle:X` | Retrieve planner bundle |
611
+ | `sf project retrieve start --metadata GenAiPlugin` | Retrieve all plugins |
612
+ | `sf project retrieve start --metadata GenAiFunction` | Retrieve all functions |
613
+
614
+ ### Management Commands
615
+
616
+ | Command | Description |
617
+ |---------|-------------|
618
+ | `sf org open agent --api-name X` | Open agent in Agentforce Builder |
619
+ | `sf org open authoring-bundle` | Open Agentforce Studio list view (v2.121.7+) |
620
+ | `sf org list metadata --metadata-type Bot` | List bots in org |
621
+ | `sf org list metadata --metadata-type GenAiPlannerBundle` | List planner bundles |
622
+
623
+ ---
624
+
625
+ ## Related Documentation
626
+
627
+ - [Agentforce Development Guide](../../developing-agentforce/SKILL.md)
628
+ - [Agentforce Testing Guide](../../testing-agentforce/SKILL.md)
@@ -0,0 +1,73 @@
1
+ #!/bin/bash
2
+ #
3
+ # Multi-Step Deployment Script
4
+ # Generated by deploying-metadata skill
5
+ #
6
+ # Usage: ./scripts/deploy.sh <target-org-alias>
7
+
8
+ set -e # Exit on error
9
+
10
+ TARGET_ORG=${1:-"myorg"}
11
+ PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
12
+
13
+ echo "═══════════════════════════════════════════════════════════════════"
14
+ echo " DEPLOYMENT TO: $TARGET_ORG"
15
+ echo "═══════════════════════════════════════════════════════════════════"
16
+
17
+ # Step 0: Pre-flight checks
18
+ echo "📋 Pre-flight checks..."
19
+ sf --version || { echo "❌ sf CLI not found"; exit 1; }
20
+ sf org display --target-org "$TARGET_ORG" --json || { echo "❌ Cannot connect to org"; exit 1; }
21
+
22
+ # Step 0.5: Dry-run validation first
23
+ echo "🧪 Step 0.5: Running dry-run validation..."
24
+ sf project deploy start \
25
+ --dry-run \
26
+ --source-dir "$PROJECT_DIR/force-app/main/default" \
27
+ --target-org "$TARGET_ORG" \
28
+ --wait 30 \
29
+ --json
30
+
31
+ # Step 1: Deploy Custom Objects/Fields
32
+ echo "📦 Step 1: Deploying objects and fields..."
33
+ sf project deploy start \
34
+ --source-dir "$PROJECT_DIR/force-app/main/default/objects" \
35
+ --target-org "$TARGET_ORG" \
36
+ --wait 10 \
37
+ --json
38
+
39
+ # Step 2: Deploy Permission Sets
40
+ echo "📦 Step 2: Deploying permission sets..."
41
+ sf project deploy start \
42
+ --source-dir "$PROJECT_DIR/force-app/main/default/permissionsets" \
43
+ --target-org "$TARGET_ORG" \
44
+ --wait 10 \
45
+ --json
46
+
47
+ # Step 3: Deploy Apex (with tests)
48
+ echo "📦 Step 3: Deploying Apex..."
49
+ sf project deploy start \
50
+ --source-dir "$PROJECT_DIR/force-app/main/default/classes" \
51
+ --source-dir "$PROJECT_DIR/force-app/main/default/triggers" \
52
+ --target-org "$TARGET_ORG" \
53
+ --test-level RunLocalTests \
54
+ --wait 30 \
55
+ --json
56
+
57
+ # Step 4: Deploy Flows (Draft)
58
+ echo "📦 Step 4: Deploying flows..."
59
+ sf project deploy start \
60
+ --source-dir "$PROJECT_DIR/force-app/main/default/flows" \
61
+ --target-org "$TARGET_ORG" \
62
+ --wait 10 \
63
+ --json
64
+
65
+ echo "═══════════════════════════════════════════════════════════════════"
66
+ echo " ✅ DEPLOYMENT COMPLETE"
67
+ echo "═══════════════════════════════════════════════════════════════════"
68
+ echo ""
69
+ echo "Recommended Next Steps:"
70
+ echo " 1. Assign permission sets: sf org assign permset --name PermSetName --target-org $TARGET_ORG"
71
+ echo " 2. Activate flows after validation"
72
+ echo " 3. Create test data with handling-sf-data or describe-first sf data commands"
73
+ echo " 4. Run smoke tests / targeted verification"