@raishin/vanguard-frontier-agentic 2.3.0 → 2.5.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 (607) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +31 -1
  3. package/.cursor-plugin/plugin.json +31 -1
  4. package/.github/plugin/marketplace.json +1 -1
  5. package/README.md +15 -12
  6. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/AGENT.md +1 -1
  7. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/claude-code.agent.md +1 -1
  8. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/copilot.agent.md +1 -1
  9. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/cursor.agent.md +1 -1
  10. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/gemini.agent.md +1 -1
  11. package/agents/dotnet/dotnet-aspnetcore-api-review-agent/harnesses/kiro-ide.agent.md +1 -1
  12. package/agents/dotnet/dotnet-csharp-runtime-review-agent/AGENT.md +2 -2
  13. package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/claude-code.agent.md +2 -2
  14. package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/copilot.agent.md +2 -2
  15. package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/cursor.agent.md +2 -2
  16. package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/gemini.agent.md +2 -2
  17. package/agents/dotnet/dotnet-csharp-runtime-review-agent/harnesses/kiro-ide.agent.md +2 -2
  18. package/agents/dotnet/dotnet-efcore-data-access-review-agent/AGENT.md +3 -3
  19. package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/claude-code.agent.md +3 -3
  20. package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/copilot.agent.md +3 -3
  21. package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/cursor.agent.md +3 -3
  22. package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/gemini.agent.md +3 -3
  23. package/agents/dotnet/dotnet-efcore-data-access-review-agent/harnesses/kiro-ide.agent.md +3 -3
  24. package/agents/hetzner/README.md +1 -1
  25. package/agents/oci/oci-devops-container-platform-engineer-agent/AGENT.md +1 -1
  26. package/agents/oci/oci-exadata-platform-architect-agent/AGENT.md +1 -1
  27. package/agents/oci/oci-multi-cloud-architect-agent/AGENT.md +1 -1
  28. package/agents/prometheus/README.md +1 -1
  29. package/agents/qa/playwright-e2e-suite-review-agent/AGENT.md +3 -3
  30. package/agents/qa/playwright-e2e-suite-review-agent/harnesses/claude-code.agent.md +3 -3
  31. package/agents/qa/playwright-e2e-suite-review-agent/harnesses/copilot.agent.md +3 -3
  32. package/agents/qa/playwright-e2e-suite-review-agent/harnesses/cursor.agent.md +3 -3
  33. package/agents/qa/playwright-e2e-suite-review-agent/harnesses/gemini.agent.md +3 -3
  34. package/agents/qa/playwright-e2e-suite-review-agent/harnesses/kiro-ide.agent.md +3 -3
  35. package/agents/salesforce/AGENTS.md +31 -0
  36. package/agents/salesforce/README.md +135 -0
  37. package/agents/salesforce/salesforce-adaptive-access-agent/AGENT.md +117 -0
  38. package/agents/salesforce/salesforce-adaptive-access-agent/LEAST-PRIVILEGES.md +91 -0
  39. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/claude-code.agent.md +69 -0
  40. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/codex.toml +30 -0
  41. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/copilot.agent.md +69 -0
  42. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/cursor.agent.md +69 -0
  43. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/gemini.agent.md +69 -0
  44. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/kiro-cli.agent.json +5 -0
  45. package/agents/salesforce/salesforce-adaptive-access-agent/harnesses/kiro-ide.agent.md +69 -0
  46. package/agents/salesforce/salesforce-adaptive-access-agent/metadata.json +30 -0
  47. package/agents/salesforce/salesforce-agentforce-ai-agent/AGENT.md +126 -0
  48. package/agents/salesforce/salesforce-agentforce-ai-agent/LEAST-PRIVILEGES.md +92 -0
  49. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/claude-code.agent.md +81 -0
  50. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/codex.toml +36 -0
  51. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/copilot.agent.md +81 -0
  52. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/cursor.agent.md +81 -0
  53. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/gemini.agent.md +81 -0
  54. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/kiro-cli.agent.json +5 -0
  55. package/agents/salesforce/salesforce-agentforce-ai-agent/harnesses/kiro-ide.agent.md +49 -0
  56. package/agents/salesforce/salesforce-agentforce-ai-agent/metadata.json +41 -0
  57. package/agents/salesforce/salesforce-analytics-tableau-agent/AGENT.md +119 -0
  58. package/agents/salesforce/salesforce-analytics-tableau-agent/LEAST-PRIVILEGES.md +81 -0
  59. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/claude-code.agent.md +75 -0
  60. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/codex.toml +35 -0
  61. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/copilot.agent.md +75 -0
  62. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/cursor.agent.md +75 -0
  63. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/gemini.agent.md +75 -0
  64. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/kiro-cli.agent.json +5 -0
  65. package/agents/salesforce/salesforce-analytics-tableau-agent/harnesses/kiro-ide.agent.md +45 -0
  66. package/agents/salesforce/salesforce-analytics-tableau-agent/metadata.json +41 -0
  67. package/agents/salesforce/salesforce-app-builder-automation-agent/AGENT.md +112 -0
  68. package/agents/salesforce/salesforce-app-builder-automation-agent/LEAST-PRIVILEGES.md +86 -0
  69. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/claude-code.agent.md +50 -0
  70. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/codex.toml +35 -0
  71. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/copilot.agent.md +50 -0
  72. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/cursor.agent.md +50 -0
  73. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/gemini.agent.md +50 -0
  74. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/kiro-cli.agent.json +5 -0
  75. package/agents/salesforce/salesforce-app-builder-automation-agent/harnesses/kiro-ide.agent.md +50 -0
  76. package/agents/salesforce/salesforce-app-builder-automation-agent/metadata.json +40 -0
  77. package/agents/salesforce/salesforce-business-analyst-agent/AGENT.md +110 -0
  78. package/agents/salesforce/salesforce-business-analyst-agent/LEAST-PRIVILEGES.md +89 -0
  79. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/claude-code.agent.md +48 -0
  80. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/codex.toml +35 -0
  81. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/copilot.agent.md +48 -0
  82. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/cursor.agent.md +48 -0
  83. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/gemini.agent.md +48 -0
  84. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/kiro-cli.agent.json +5 -0
  85. package/agents/salesforce/salesforce-business-analyst-agent/harnesses/kiro-ide.agent.md +48 -0
  86. package/agents/salesforce/salesforce-business-analyst-agent/metadata.json +40 -0
  87. package/agents/salesforce/salesforce-certificate-lifecycle-agent/AGENT.md +112 -0
  88. package/agents/salesforce/salesforce-certificate-lifecycle-agent/LEAST-PRIVILEGES.md +81 -0
  89. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/claude-code.agent.md +66 -0
  90. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/codex.toml +30 -0
  91. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/copilot.agent.md +66 -0
  92. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/cursor.agent.md +66 -0
  93. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/gemini.agent.md +66 -0
  94. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/kiro-cli.agent.json +5 -0
  95. package/agents/salesforce/salesforce-certificate-lifecycle-agent/harnesses/kiro-ide.agent.md +66 -0
  96. package/agents/salesforce/salesforce-certificate-lifecycle-agent/metadata.json +30 -0
  97. package/agents/salesforce/salesforce-change-impact-analyst-agent/AGENT.md +121 -0
  98. package/agents/salesforce/salesforce-change-impact-analyst-agent/LEAST-PRIVILEGES.md +87 -0
  99. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/claude-code.agent.md +74 -0
  100. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/codex.toml +30 -0
  101. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/copilot.agent.md +74 -0
  102. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/cursor.agent.md +74 -0
  103. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/gemini.agent.md +74 -0
  104. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/kiro-cli.agent.json +5 -0
  105. package/agents/salesforce/salesforce-change-impact-analyst-agent/harnesses/kiro-ide.agent.md +74 -0
  106. package/agents/salesforce/salesforce-change-impact-analyst-agent/metadata.json +30 -0
  107. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/AGENT.md +119 -0
  108. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/LEAST-PRIVILEGES.md +88 -0
  109. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/claude-code.agent.md +67 -0
  110. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/codex.toml +30 -0
  111. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/copilot.agent.md +67 -0
  112. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/cursor.agent.md +67 -0
  113. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/gemini.agent.md +67 -0
  114. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/kiro-cli.agent.json +5 -0
  115. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/harnesses/kiro-ide.agent.md +67 -0
  116. package/agents/salesforce/salesforce-code-analyzer-orchestrator-agent/metadata.json +31 -0
  117. package/agents/salesforce/salesforce-compliance-privacy-agent/AGENT.md +130 -0
  118. package/agents/salesforce/salesforce-compliance-privacy-agent/LEAST-PRIVILEGES.md +85 -0
  119. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/claude-code.agent.md +84 -0
  120. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/codex.toml +36 -0
  121. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/copilot.agent.md +84 -0
  122. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/cursor.agent.md +84 -0
  123. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/gemini.agent.md +84 -0
  124. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/kiro-cli.agent.json +5 -0
  125. package/agents/salesforce/salesforce-compliance-privacy-agent/harnesses/kiro-ide.agent.md +49 -0
  126. package/agents/salesforce/salesforce-compliance-privacy-agent/metadata.json +41 -0
  127. package/agents/salesforce/salesforce-continuous-verification-agent/AGENT.md +113 -0
  128. package/agents/salesforce/salesforce-continuous-verification-agent/LEAST-PRIVILEGES.md +90 -0
  129. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/claude-code.agent.md +64 -0
  130. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/codex.toml +30 -0
  131. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/copilot.agent.md +64 -0
  132. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/cursor.agent.md +64 -0
  133. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/gemini.agent.md +64 -0
  134. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/kiro-cli.agent.json +5 -0
  135. package/agents/salesforce/salesforce-continuous-verification-agent/harnesses/kiro-ide.agent.md +64 -0
  136. package/agents/salesforce/salesforce-continuous-verification-agent/metadata.json +31 -0
  137. package/agents/salesforce/salesforce-data-architecture-agent/AGENT.md +113 -0
  138. package/agents/salesforce/salesforce-data-architecture-agent/LEAST-PRIVILEGES.md +92 -0
  139. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/claude-code.agent.md +49 -0
  140. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/codex.toml +35 -0
  141. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/copilot.agent.md +49 -0
  142. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/cursor.agent.md +49 -0
  143. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/gemini.agent.md +49 -0
  144. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/kiro-cli.agent.json +5 -0
  145. package/agents/salesforce/salesforce-data-architecture-agent/harnesses/kiro-ide.agent.md +49 -0
  146. package/agents/salesforce/salesforce-data-architecture-agent/metadata.json +40 -0
  147. package/agents/salesforce/salesforce-development-agent/AGENT.md +114 -0
  148. package/agents/salesforce/salesforce-development-agent/LEAST-PRIVILEGES.md +89 -0
  149. package/agents/salesforce/salesforce-development-agent/harnesses/claude-code.agent.md +50 -0
  150. package/agents/salesforce/salesforce-development-agent/harnesses/codex.toml +36 -0
  151. package/agents/salesforce/salesforce-development-agent/harnesses/copilot.agent.md +50 -0
  152. package/agents/salesforce/salesforce-development-agent/harnesses/cursor.agent.md +50 -0
  153. package/agents/salesforce/salesforce-development-agent/harnesses/gemini.agent.md +50 -0
  154. package/agents/salesforce/salesforce-development-agent/harnesses/kiro-cli.agent.json +5 -0
  155. package/agents/salesforce/salesforce-development-agent/harnesses/kiro-ide.agent.md +50 -0
  156. package/agents/salesforce/salesforce-development-agent/metadata.json +40 -0
  157. package/agents/salesforce/salesforce-devops-release-agent/AGENT.md +115 -0
  158. package/agents/salesforce/salesforce-devops-release-agent/LEAST-PRIVILEGES.md +90 -0
  159. package/agents/salesforce/salesforce-devops-release-agent/harnesses/claude-code.agent.md +51 -0
  160. package/agents/salesforce/salesforce-devops-release-agent/harnesses/codex.toml +35 -0
  161. package/agents/salesforce/salesforce-devops-release-agent/harnesses/copilot.agent.md +51 -0
  162. package/agents/salesforce/salesforce-devops-release-agent/harnesses/cursor.agent.md +51 -0
  163. package/agents/salesforce/salesforce-devops-release-agent/harnesses/gemini.agent.md +51 -0
  164. package/agents/salesforce/salesforce-devops-release-agent/harnesses/kiro-cli.agent.json +5 -0
  165. package/agents/salesforce/salesforce-devops-release-agent/harnesses/kiro-ide.agent.md +51 -0
  166. package/agents/salesforce/salesforce-devops-release-agent/metadata.json +40 -0
  167. package/agents/salesforce/salesforce-enterprise-architect-agent/AGENT.md +128 -0
  168. package/agents/salesforce/salesforce-enterprise-architect-agent/LEAST-PRIVILEGES.md +92 -0
  169. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/claude-code.agent.md +81 -0
  170. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/codex.toml +36 -0
  171. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/copilot.agent.md +81 -0
  172. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/cursor.agent.md +81 -0
  173. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/gemini.agent.md +81 -0
  174. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/kiro-cli.agent.json +5 -0
  175. package/agents/salesforce/salesforce-enterprise-architect-agent/harnesses/kiro-ide.agent.md +49 -0
  176. package/agents/salesforce/salesforce-enterprise-architect-agent/metadata.json +41 -0
  177. package/agents/salesforce/salesforce-experience-cloud-agent/AGENT.md +124 -0
  178. package/agents/salesforce/salesforce-experience-cloud-agent/LEAST-PRIVILEGES.md +80 -0
  179. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/claude-code.agent.md +79 -0
  180. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/codex.toml +35 -0
  181. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/copilot.agent.md +79 -0
  182. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/cursor.agent.md +79 -0
  183. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/gemini.agent.md +79 -0
  184. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/kiro-cli.agent.json +5 -0
  185. package/agents/salesforce/salesforce-experience-cloud-agent/harnesses/kiro-ide.agent.md +59 -0
  186. package/agents/salesforce/salesforce-experience-cloud-agent/metadata.json +40 -0
  187. package/agents/salesforce/salesforce-hyperforce-security-agent/AGENT.md +113 -0
  188. package/agents/salesforce/salesforce-hyperforce-security-agent/LEAST-PRIVILEGES.md +80 -0
  189. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/claude-code.agent.md +72 -0
  190. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/codex.toml +28 -0
  191. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/copilot.agent.md +72 -0
  192. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/cursor.agent.md +72 -0
  193. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/gemini.agent.md +72 -0
  194. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/kiro-cli.agent.json +5 -0
  195. package/agents/salesforce/salesforce-hyperforce-security-agent/harnesses/kiro-ide.agent.md +72 -0
  196. package/agents/salesforce/salesforce-hyperforce-security-agent/metadata.json +30 -0
  197. package/agents/salesforce/salesforce-industry-cloud-agent/AGENT.md +125 -0
  198. package/agents/salesforce/salesforce-industry-cloud-agent/LEAST-PRIVILEGES.md +88 -0
  199. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/claude-code.agent.md +80 -0
  200. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/codex.toml +41 -0
  201. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/copilot.agent.md +80 -0
  202. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/cursor.agent.md +80 -0
  203. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/gemini.agent.md +80 -0
  204. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/kiro-cli.agent.json +5 -0
  205. package/agents/salesforce/salesforce-industry-cloud-agent/harnesses/kiro-ide.agent.md +48 -0
  206. package/agents/salesforce/salesforce-industry-cloud-agent/metadata.json +42 -0
  207. package/agents/salesforce/salesforce-integration-mulesoft-agent/AGENT.md +115 -0
  208. package/agents/salesforce/salesforce-integration-mulesoft-agent/LEAST-PRIVILEGES.md +91 -0
  209. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/claude-code.agent.md +50 -0
  210. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/codex.toml +35 -0
  211. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/copilot.agent.md +50 -0
  212. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/cursor.agent.md +50 -0
  213. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/gemini.agent.md +50 -0
  214. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/kiro-cli.agent.json +5 -0
  215. package/agents/salesforce/salesforce-integration-mulesoft-agent/harnesses/kiro-ide.agent.md +50 -0
  216. package/agents/salesforce/salesforce-integration-mulesoft-agent/metadata.json +40 -0
  217. package/agents/salesforce/salesforce-live-guard-agent/AGENT.md +126 -0
  218. package/agents/salesforce/salesforce-live-guard-agent/LEAST-PRIVILEGES.md +100 -0
  219. package/agents/salesforce/salesforce-live-guard-agent/harnesses/claude-code.agent.md +85 -0
  220. package/agents/salesforce/salesforce-live-guard-agent/harnesses/codex.toml +50 -0
  221. package/agents/salesforce/salesforce-live-guard-agent/harnesses/copilot.agent.md +85 -0
  222. package/agents/salesforce/salesforce-live-guard-agent/harnesses/cursor.agent.md +85 -0
  223. package/agents/salesforce/salesforce-live-guard-agent/harnesses/gemini.agent.md +85 -0
  224. package/agents/salesforce/salesforce-live-guard-agent/harnesses/kiro-cli.agent.json +5 -0
  225. package/agents/salesforce/salesforce-live-guard-agent/harnesses/kiro-ide.agent.md +58 -0
  226. package/agents/salesforce/salesforce-live-guard-agent/metadata.json +39 -0
  227. package/agents/salesforce/salesforce-maestro-agent/AGENT.md +77 -0
  228. package/agents/salesforce/salesforce-maestro-agent/LEAST-PRIVILEGES.md +93 -0
  229. package/agents/salesforce/salesforce-maestro-agent/README.md +593 -0
  230. package/agents/salesforce/salesforce-maestro-agent/harnesses/claude-code.agent.md +65 -0
  231. package/agents/salesforce/salesforce-maestro-agent/harnesses/codex.toml +66 -0
  232. package/agents/salesforce/salesforce-maestro-agent/harnesses/copilot.agent.md +65 -0
  233. package/agents/salesforce/salesforce-maestro-agent/harnesses/cursor.agent.md +65 -0
  234. package/agents/salesforce/salesforce-maestro-agent/harnesses/gemini.agent.md +65 -0
  235. package/agents/salesforce/salesforce-maestro-agent/harnesses/kiro-cli.agent.json +5 -0
  236. package/agents/salesforce/salesforce-maestro-agent/harnesses/kiro-ide.agent.md +65 -0
  237. package/agents/salesforce/salesforce-maestro-agent/metadata.json +38 -0
  238. package/agents/salesforce/salesforce-marketing-cloud-agent/AGENT.md +124 -0
  239. package/agents/salesforce/salesforce-marketing-cloud-agent/LEAST-PRIVILEGES.md +86 -0
  240. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/claude-code.agent.md +78 -0
  241. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/codex.toml +34 -0
  242. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/copilot.agent.md +78 -0
  243. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/cursor.agent.md +78 -0
  244. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/gemini.agent.md +78 -0
  245. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/kiro-cli.agent.json +5 -0
  246. package/agents/salesforce/salesforce-marketing-cloud-agent/harnesses/kiro-ide.agent.md +48 -0
  247. package/agents/salesforce/salesforce-marketing-cloud-agent/metadata.json +41 -0
  248. package/agents/salesforce/salesforce-network-policy-architect-agent/AGENT.md +113 -0
  249. package/agents/salesforce/salesforce-network-policy-architect-agent/LEAST-PRIVILEGES.md +87 -0
  250. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/claude-code.agent.md +72 -0
  251. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/codex.toml +28 -0
  252. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/copilot.agent.md +72 -0
  253. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/cursor.agent.md +72 -0
  254. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/gemini.agent.md +72 -0
  255. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/kiro-cli.agent.json +5 -0
  256. package/agents/salesforce/salesforce-network-policy-architect-agent/harnesses/kiro-ide.agent.md +72 -0
  257. package/agents/salesforce/salesforce-network-policy-architect-agent/metadata.json +31 -0
  258. package/agents/salesforce/salesforce-platform-admin-review-agent/AGENT.md +113 -0
  259. package/agents/salesforce/salesforce-platform-admin-review-agent/LEAST-PRIVILEGES.md +88 -0
  260. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/claude-code.agent.md +49 -0
  261. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/codex.toml +36 -0
  262. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/copilot.agent.md +49 -0
  263. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/cursor.agent.md +49 -0
  264. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/gemini.agent.md +49 -0
  265. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/kiro-cli.agent.json +5 -0
  266. package/agents/salesforce/salesforce-platform-admin-review-agent/harnesses/kiro-ide.agent.md +49 -0
  267. package/agents/salesforce/salesforce-platform-admin-review-agent/metadata.json +40 -0
  268. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/AGENT.md +115 -0
  269. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/LEAST-PRIVILEGES.md +83 -0
  270. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/claude-code.agent.md +50 -0
  271. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/codex.toml +35 -0
  272. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/copilot.agent.md +50 -0
  273. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/cursor.agent.md +50 -0
  274. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/gemini.agent.md +50 -0
  275. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/kiro-cli.agent.json +5 -0
  276. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/harnesses/kiro-ide.agent.md +50 -0
  277. package/agents/salesforce/salesforce-sales-cloud-revenue-agent/metadata.json +40 -0
  278. package/agents/salesforce/salesforce-sandbox-governance-agent/AGENT.md +120 -0
  279. package/agents/salesforce/salesforce-sandbox-governance-agent/LEAST-PRIVILEGES.md +80 -0
  280. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/claude-code.agent.md +72 -0
  281. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/codex.toml +30 -0
  282. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/copilot.agent.md +72 -0
  283. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/cursor.agent.md +72 -0
  284. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/gemini.agent.md +72 -0
  285. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/kiro-cli.agent.json +5 -0
  286. package/agents/salesforce/salesforce-sandbox-governance-agent/harnesses/kiro-ide.agent.md +72 -0
  287. package/agents/salesforce/salesforce-sandbox-governance-agent/metadata.json +30 -0
  288. package/agents/salesforce/salesforce-sandbox-isolation-agent/AGENT.md +113 -0
  289. package/agents/salesforce/salesforce-sandbox-isolation-agent/LEAST-PRIVILEGES.md +90 -0
  290. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/claude-code.agent.md +71 -0
  291. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/codex.toml +28 -0
  292. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/copilot.agent.md +71 -0
  293. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/cursor.agent.md +71 -0
  294. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/gemini.agent.md +71 -0
  295. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/kiro-cli.agent.json +5 -0
  296. package/agents/salesforce/salesforce-sandbox-isolation-agent/harnesses/kiro-ide.agent.md +71 -0
  297. package/agents/salesforce/salesforce-sandbox-isolation-agent/metadata.json +30 -0
  298. package/agents/salesforce/salesforce-security-identity-access-agent/AGENT.md +118 -0
  299. package/agents/salesforce/salesforce-security-identity-access-agent/LEAST-PRIVILEGES.md +85 -0
  300. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/claude-code.agent.md +52 -0
  301. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/codex.toml +36 -0
  302. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/copilot.agent.md +52 -0
  303. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/cursor.agent.md +52 -0
  304. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/gemini.agent.md +52 -0
  305. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/kiro-cli.agent.json +5 -0
  306. package/agents/salesforce/salesforce-security-identity-access-agent/harnesses/kiro-ide.agent.md +52 -0
  307. package/agents/salesforce/salesforce-security-identity-access-agent/metadata.json +40 -0
  308. package/agents/salesforce/salesforce-service-field-service-agent/AGENT.md +115 -0
  309. package/agents/salesforce/salesforce-service-field-service-agent/LEAST-PRIVILEGES.md +82 -0
  310. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/claude-code.agent.md +50 -0
  311. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/codex.toml +35 -0
  312. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/copilot.agent.md +50 -0
  313. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/cursor.agent.md +50 -0
  314. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/gemini.agent.md +50 -0
  315. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/kiro-cli.agent.json +5 -0
  316. package/agents/salesforce/salesforce-service-field-service-agent/harnesses/kiro-ide.agent.md +50 -0
  317. package/agents/salesforce/salesforce-service-field-service-agent/metadata.json +40 -0
  318. package/agents/salesforce/salesforce-session-governance-agent/AGENT.md +116 -0
  319. package/agents/salesforce/salesforce-session-governance-agent/LEAST-PRIVILEGES.md +91 -0
  320. package/agents/salesforce/salesforce-session-governance-agent/harnesses/claude-code.agent.md +74 -0
  321. package/agents/salesforce/salesforce-session-governance-agent/harnesses/codex.toml +28 -0
  322. package/agents/salesforce/salesforce-session-governance-agent/harnesses/copilot.agent.md +74 -0
  323. package/agents/salesforce/salesforce-session-governance-agent/harnesses/cursor.agent.md +74 -0
  324. package/agents/salesforce/salesforce-session-governance-agent/harnesses/gemini.agent.md +74 -0
  325. package/agents/salesforce/salesforce-session-governance-agent/harnesses/kiro-cli.agent.json +5 -0
  326. package/agents/salesforce/salesforce-session-governance-agent/harnesses/kiro-ide.agent.md +74 -0
  327. package/agents/salesforce/salesforce-session-governance-agent/metadata.json +30 -0
  328. package/agents/salesforce/salesforce-slack-collaboration-agent/AGENT.md +123 -0
  329. package/agents/salesforce/salesforce-slack-collaboration-agent/LEAST-PRIVILEGES.md +86 -0
  330. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/claude-code.agent.md +79 -0
  331. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/codex.toml +35 -0
  332. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/copilot.agent.md +79 -0
  333. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/cursor.agent.md +79 -0
  334. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/gemini.agent.md +79 -0
  335. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/kiro-cli.agent.json +5 -0
  336. package/agents/salesforce/salesforce-slack-collaboration-agent/harnesses/kiro-ide.agent.md +48 -0
  337. package/agents/salesforce/salesforce-slack-collaboration-agent/metadata.json +41 -0
  338. package/assets/logos/cloud/salesforce/salesforce.svg +34 -0
  339. package/catalog/agents.json +1451 -283
  340. package/catalog/asset-integrity.json +2152 -327
  341. package/catalog/install-roles.json +68 -0
  342. package/catalog/skill-manifest.json +1040 -155
  343. package/catalog/skills.json +1242 -262
  344. package/package.json +3 -2
  345. package/plugins/vanguard-frontier-agentic/.codex-plugin/plugin.json +1 -1
  346. package/powers/vanguard-salesforce/POWER.md +42 -0
  347. package/schemas/agent.schema.json +2 -1
  348. package/schemas/skill.frontmatter.schema.json +33 -3
  349. package/schemas/skill.schema.json +2 -1
  350. package/scripts/export-marketplace-agents.mjs +17 -1
  351. package/scripts/generate-kiro-powers.mjs +12 -0
  352. package/scripts/release-prepare.mjs +35 -0
  353. package/skills/aws/aws-agentcore/references/official-sources.md +19 -19
  354. package/skills/aws/aws-generative-ai-developer/references/official-sources.md +10 -10
  355. package/skills/azure/azure-ai-foundry-ops-governor/references/workflow-and-output.md +2 -2
  356. package/skills/azure/azure-aks-platform-operator/references/workflow-and-output.md +1 -1
  357. package/skills/azure/azure-app-service-production-readiness/references/workflow-and-output.md +1 -1
  358. package/skills/azure/azure-cosmosdb-application-developer/references/official-sources.md +11 -11
  359. package/skills/azure/azure-cosmosdb-performance-investigator/references/official-sources.md +11 -11
  360. package/skills/azure/azure-cosmosdb-platform-operator/references/official-sources.md +10 -10
  361. package/skills/azure/azure-cost-estimation-review/references/workflow-and-output.md +1 -1
  362. package/skills/azure/azure-cost-optimization-governor/references/workflow-and-output.md +1 -1
  363. package/skills/azure/azure-entra-id-specialist/references/official-sources.md +28 -28
  364. package/skills/azure/azure-identity-governance-review/references/official-sources.md +11 -11
  365. package/skills/azure/azure-identity-governance-review/references/workflow-and-output.md +1 -1
  366. package/skills/azure/azure-key-vault-secret-lifecycle-auditor/references/workflow-and-output.md +1 -1
  367. package/skills/azure/azure-migrate-landing-zone-cutover/references/workflow-and-output.md +1 -1
  368. package/skills/azure/azure-platform-automation-devops/references/workflow-and-output.md +1 -1
  369. package/skills/azure/azure-private-endpoint-adoption-planner/references/workflow-and-output.md +1 -1
  370. package/skills/azure/azure-resource-health-incident-triage/references/workflow-and-output.md +6 -6
  371. package/skills/azure/azure-subscription-resource-organization/references/workflow-and-output.md +1 -1
  372. package/skills/cross-functional/salesforce-case-capsule/SKILL.md +164 -0
  373. package/skills/cross-functional/salesforce-case-capsule/metadata.json +19 -0
  374. package/skills/cross-functional/salesforce-data-exposure-escalation-protocol/SKILL.md +165 -0
  375. package/skills/cross-functional/salesforce-data-exposure-escalation-protocol/metadata.json +19 -0
  376. package/skills/cross-functional/salesforce-live-change-approval-protocol/SKILL.md +118 -0
  377. package/skills/cross-functional/salesforce-live-change-approval-protocol/metadata.json +19 -0
  378. package/skills/cross-functional/salesforce-risk-taxonomy/SKILL.md +162 -0
  379. package/skills/cross-functional/salesforce-risk-taxonomy/metadata.json +19 -0
  380. package/skills/cross-functional/salesforce-routing-protocol/SKILL.md +159 -0
  381. package/skills/cross-functional/salesforce-routing-protocol/metadata.json +19 -0
  382. package/skills/dotnet/dotnet-aspnetcore-api-review/SKILL.md +1 -1
  383. package/skills/dotnet/dotnet-aspnetcore-api-review/references/workflow-and-output.md +2 -2
  384. package/skills/dotnet/dotnet-csharp-runtime-review/SKILL.md +2 -2
  385. package/skills/dotnet/dotnet-csharp-runtime-review/references/workflow-and-output.md +7 -7
  386. package/skills/dotnet/dotnet-efcore-data-access-review/SKILL.md +4 -4
  387. package/skills/dotnet/dotnet-efcore-data-access-review/references/workflow-and-output.md +3 -3
  388. package/skills/dotnet/dotnet-performance-aot-review/references/workflow-and-output.md +1 -1
  389. package/skills/dotnet/dotnet-testing-quality-review/SKILL.md +1 -1
  390. package/skills/dotnet/dotnet-testing-quality-review/references/workflow-and-output.md +2 -2
  391. package/skills/finops/focus-spec-normalizer/references/focus-columns.md +2 -2
  392. package/skills/gcp/gcp-alloydb-ai-developer/SKILL.md +1 -1
  393. package/skills/gcp/gcp-gemini-api-developer/SKILL.md +2 -2
  394. package/skills/nvidia/nvidia-model-promotion-gatekeeper/SKILL.md +1 -1
  395. package/skills/nvidia/nvidia-model-promotion-gatekeeper/references/allowlist-commands.md +1 -1
  396. package/skills/oci/oci-compute-platform-operator/SKILL.md +0 -2
  397. package/skills/oci/oci-cost-finops-analyst/SKILL.md +0 -2
  398. package/skills/oci/oci-database-platform-dba/SKILL.md +0 -2
  399. package/skills/oci/oci-devops-container-platform-engineer/SKILL.md +0 -2
  400. package/skills/oci/oci-identity-access-governor/SKILL.md +0 -2
  401. package/skills/oci/oci-multi-cloud-architect/SKILL.md +0 -2
  402. package/skills/oci/oci-network-architect/SKILL.md +0 -2
  403. package/skills/oci/oci-observability-incident-responder/SKILL.md +0 -2
  404. package/skills/oci/oci-security-compliance-reviewer/SKILL.md +0 -2
  405. package/skills/oci/oci-solution-architect/SKILL.md +1 -3
  406. package/skills/oci/oci-storage-backup-steward/SKILL.md +0 -2
  407. package/skills/prometheus/prometheus-alerting-cardinality-review/SKILL.md +1 -1
  408. package/skills/prometheus/prometheus-alerting-cardinality-review/references/workflow-and-output.md +4 -4
  409. package/skills/qa/ci-test-pipeline-review/references/workflow-and-output.md +1 -1
  410. package/skills/qa/llm-ai-pipeline-test-review/references/workflow-and-output.md +1 -1
  411. package/skills/qa/playwright-e2e-suite-review/SKILL.md +4 -4
  412. package/skills/qa/playwright-e2e-suite-review/references/workflow-and-output.md +12 -12
  413. package/skills/qa/plc-control-logic-safety-review/references/workflow-and-output.md +2 -2
  414. package/skills/qa/test-coverage-quality-review/SKILL.md +1 -1
  415. package/skills/qa/test-coverage-quality-review/references/workflow-and-output.md +8 -8
  416. package/skills/qa/test-flakiness-triage/SKILL.md +1 -1
  417. package/skills/qa/test-flakiness-triage/references/workflow-and-output.md +1 -1
  418. package/skills/salesforce/README.md +117 -0
  419. package/skills/salesforce/salesforce-agentforce-risk-review-skill/SKILL.md +206 -0
  420. package/skills/salesforce/salesforce-agentforce-risk-review-skill/metadata.json +18 -0
  421. package/skills/salesforce/salesforce-agentforce-risk-review-skill/references/action-safety-matrix.md +160 -0
  422. package/skills/salesforce/salesforce-agentforce-risk-review-skill/references/agentforce-anti-patterns.md +193 -0
  423. package/skills/salesforce/salesforce-agentforce-risk-review-skill/references/grounding-source-evaluation.md +162 -0
  424. package/skills/salesforce/salesforce-agentforce-stdm-observer-skill/SKILL.md +557 -0
  425. package/skills/salesforce/salesforce-agentforce-stdm-observer-skill/metadata.json +41 -0
  426. package/skills/salesforce/salesforce-agentforce-stdm-observer-skill/references/observability-rubric.md +219 -0
  427. package/skills/salesforce/salesforce-agentforce-stdm-observer-skill/references/privacy-redaction.md +240 -0
  428. package/skills/salesforce/salesforce-agentforce-stdm-observer-skill/references/stdm-queries.md +436 -0
  429. package/skills/salesforce/salesforce-apex-generator-skill/SKILL.md +307 -0
  430. package/skills/salesforce/salesforce-apex-generator-skill/metadata.json +30 -0
  431. package/skills/salesforce/salesforce-apex-generator-skill/references/apex-patterns.md +224 -0
  432. package/skills/salesforce/salesforce-apex-generator-skill/references/governor-limits.md +175 -0
  433. package/skills/salesforce/salesforce-apex-generator-skill/references/security-defaults.md +155 -0
  434. package/skills/salesforce/salesforce-apex-log-analyzer-skill/SKILL.md +360 -0
  435. package/skills/salesforce/salesforce-apex-log-analyzer-skill/metadata.json +38 -0
  436. package/skills/salesforce/salesforce-apex-log-analyzer-skill/references/governor-limit-signatures.md +174 -0
  437. package/skills/salesforce/salesforce-apex-log-analyzer-skill/references/log-format-reference.md +154 -0
  438. package/skills/salesforce/salesforce-apex-log-analyzer-skill/references/redaction-rules.md +178 -0
  439. package/skills/salesforce/salesforce-apex-lwc-code-review-skill/SKILL.md +195 -0
  440. package/skills/salesforce/salesforce-apex-lwc-code-review-skill/metadata.json +18 -0
  441. package/skills/salesforce/salesforce-apex-lwc-code-review-skill/references/apex-anti-patterns.md +270 -0
  442. package/skills/salesforce/salesforce-apex-lwc-code-review-skill/references/governor-limits-reference.md +198 -0
  443. package/skills/salesforce/salesforce-apex-lwc-code-review-skill/references/lwc-security.md +206 -0
  444. package/skills/salesforce/salesforce-apex-test-generator-skill/SKILL.md +274 -0
  445. package/skills/salesforce/salesforce-apex-test-generator-skill/metadata.json +29 -0
  446. package/skills/salesforce/salesforce-apex-test-generator-skill/references/assertion-patterns.md +174 -0
  447. package/skills/salesforce/salesforce-apex-test-generator-skill/references/async-testing.md +217 -0
  448. package/skills/salesforce/salesforce-apex-test-generator-skill/references/test-data-factory.md +174 -0
  449. package/skills/salesforce/salesforce-apex-test-runner-skill/SKILL.md +344 -0
  450. package/skills/salesforce/salesforce-apex-test-runner-skill/metadata.json +37 -0
  451. package/skills/salesforce/salesforce-apex-test-runner-skill/references/cli-commands.md +162 -0
  452. package/skills/salesforce/salesforce-apex-test-runner-skill/references/coverage-analysis.md +107 -0
  453. package/skills/salesforce/salesforce-apex-test-runner-skill/references/failure-diagnosis.md +187 -0
  454. package/skills/salesforce/salesforce-bulk-data-ops-skill/SKILL.md +356 -0
  455. package/skills/salesforce/salesforce-bulk-data-ops-skill/metadata.json +29 -0
  456. package/skills/salesforce/salesforce-bulk-data-ops-skill/references/anonymous-apex-patterns.md +380 -0
  457. package/skills/salesforce/salesforce-bulk-data-ops-skill/references/data-loader-templates.md +209 -0
  458. package/skills/salesforce/salesforce-bulk-data-ops-skill/references/rollback-strategy.md +209 -0
  459. package/skills/salesforce/salesforce-deployment-validator-skill/SKILL.md +380 -0
  460. package/skills/salesforce/salesforce-deployment-validator-skill/metadata.json +37 -0
  461. package/skills/salesforce/salesforce-deployment-validator-skill/references/cli-commands.md +264 -0
  462. package/skills/salesforce/salesforce-deployment-validator-skill/references/production-refusal-rules.md +243 -0
  463. package/skills/salesforce/salesforce-deployment-validator-skill/references/test-selection-strategy.md +250 -0
  464. package/skills/salesforce/salesforce-devsecops-pipeline-skill/SKILL.md +195 -0
  465. package/skills/salesforce/salesforce-devsecops-pipeline-skill/metadata.json +19 -0
  466. package/skills/salesforce/salesforce-devsecops-pipeline-skill/references/change-impact-categories.md +216 -0
  467. package/skills/salesforce/salesforce-devsecops-pipeline-skill/references/sandbox-masking-strategy.md +193 -0
  468. package/skills/salesforce/salesforce-devsecops-pipeline-skill/references/sca-rule-catalog.md +226 -0
  469. package/skills/salesforce/salesforce-field-mapping-skill/SKILL.md +348 -0
  470. package/skills/salesforce/salesforce-field-mapping-skill/metadata.json +29 -0
  471. package/skills/salesforce/salesforce-field-mapping-skill/references/api-name-normalization.md +141 -0
  472. package/skills/salesforce/salesforce-field-mapping-skill/references/picklist-value-mapping.md +245 -0
  473. package/skills/salesforce/salesforce-field-mapping-skill/references/type-mismatch-detection.md +187 -0
  474. package/skills/salesforce/salesforce-flow-automation-review-skill/SKILL.md +163 -0
  475. package/skills/salesforce/salesforce-flow-automation-review-skill/metadata.json +18 -0
  476. package/skills/salesforce/salesforce-flow-automation-review-skill/references/automation-conflict-matrix.md +193 -0
  477. package/skills/salesforce/salesforce-flow-automation-review-skill/references/fault-path-design.md +189 -0
  478. package/skills/salesforce/salesforce-flow-automation-review-skill/references/flow-anti-patterns.md +211 -0
  479. package/skills/salesforce/salesforce-flow-debugger-skill/SKILL.md +355 -0
  480. package/skills/salesforce/salesforce-flow-debugger-skill/metadata.json +35 -0
  481. package/skills/salesforce/salesforce-flow-debugger-skill/references/fault-path-design.md +175 -0
  482. package/skills/salesforce/salesforce-flow-debugger-skill/references/flow-error-patterns.md +247 -0
  483. package/skills/salesforce/salesforce-flow-debugger-skill/references/interview-log-redaction.md +171 -0
  484. package/skills/salesforce/salesforce-infrastructure-audit-skill/SKILL.md +137 -0
  485. package/skills/salesforce/salesforce-infrastructure-audit-skill/metadata.json +19 -0
  486. package/skills/salesforce/salesforce-infrastructure-audit-skill/references/hyperforce-deployment-controls.md +181 -0
  487. package/skills/salesforce/salesforce-infrastructure-audit-skill/references/network-policy-reference.md +200 -0
  488. package/skills/salesforce/salesforce-infrastructure-audit-skill/references/session-policy-reference.md +219 -0
  489. package/skills/salesforce/salesforce-integration-review-skill/SKILL.md +186 -0
  490. package/skills/salesforce/salesforce-integration-review-skill/metadata.json +18 -0
  491. package/skills/salesforce/salesforce-integration-review-skill/references/integration-anti-patterns.md +280 -0
  492. package/skills/salesforce/salesforce-integration-review-skill/references/integration-pattern-reference.md +239 -0
  493. package/skills/salesforce/salesforce-integration-review-skill/references/named-credential-design.md +211 -0
  494. package/skills/salesforce/salesforce-marketing-consent-review-skill/SKILL.md +204 -0
  495. package/skills/salesforce/salesforce-marketing-consent-review-skill/metadata.json +18 -0
  496. package/skills/salesforce/salesforce-marketing-consent-review-skill/references/consent-anti-patterns.md +247 -0
  497. package/skills/salesforce/salesforce-marketing-consent-review-skill/references/consent-model-reference.md +205 -0
  498. package/skills/salesforce/salesforce-marketing-consent-review-skill/references/regulatory-mapping.md +192 -0
  499. package/skills/salesforce/salesforce-metadata-fetcher-skill/SKILL.md +418 -0
  500. package/skills/salesforce/salesforce-metadata-fetcher-skill/metadata.json +50 -0
  501. package/skills/salesforce/salesforce-metadata-fetcher-skill/references/cli-commands.md +347 -0
  502. package/skills/salesforce/salesforce-metadata-fetcher-skill/references/delegation-routing.md +416 -0
  503. package/skills/salesforce/salesforce-metadata-fetcher-skill/references/sanitization-rules.md +392 -0
  504. package/skills/salesforce/salesforce-metadata-review-skill/SKILL.md +148 -0
  505. package/skills/salesforce/salesforce-metadata-review-skill/metadata.json +18 -0
  506. package/skills/salesforce/salesforce-metadata-review-skill/references/deprecated-metadata.md +217 -0
  507. package/skills/salesforce/salesforce-metadata-review-skill/references/field-hygiene-rules.md +182 -0
  508. package/skills/salesforce/salesforce-metadata-review-skill/references/object-design-patterns.md +187 -0
  509. package/skills/salesforce/salesforce-org-assessment-skill/SKILL.md +137 -0
  510. package/skills/salesforce/salesforce-org-assessment-skill/metadata.json +18 -0
  511. package/skills/salesforce/salesforce-org-assessment-skill/references/assessment-rubric.md +228 -0
  512. package/skills/salesforce/salesforce-org-assessment-skill/references/risk-register-template.md +211 -0
  513. package/skills/salesforce/salesforce-org-assessment-skill/references/tech-debt-indicators.md +252 -0
  514. package/skills/salesforce/salesforce-permission-model-review-skill/SKILL.md +165 -0
  515. package/skills/salesforce/salesforce-permission-model-review-skill/metadata.json +18 -0
  516. package/skills/salesforce/salesforce-permission-model-review-skill/references/fls-review-patterns.md +235 -0
  517. package/skills/salesforce/salesforce-permission-model-review-skill/references/permission-set-strategy.md +203 -0
  518. package/skills/salesforce/salesforce-permission-model-review-skill/references/toxic-combinations.md +228 -0
  519. package/skills/salesforce/salesforce-release-readiness-skill/SKILL.md +185 -0
  520. package/skills/salesforce/salesforce-release-readiness-skill/metadata.json +18 -0
  521. package/skills/salesforce/salesforce-release-readiness-skill/references/release-checklist.md +191 -0
  522. package/skills/salesforce/salesforce-release-readiness-skill/references/rollback-strategy.md +234 -0
  523. package/skills/salesforce/salesforce-release-readiness-skill/references/test-coverage-strategy.md +314 -0
  524. package/skills/salesforce/salesforce-soql-explorer-skill/SKILL.md +391 -0
  525. package/skills/salesforce/salesforce-soql-explorer-skill/metadata.json +35 -0
  526. package/skills/salesforce/salesforce-soql-explorer-skill/references/cli-commands.md +266 -0
  527. package/skills/salesforce/salesforce-soql-explorer-skill/references/least-privilege-scope.md +224 -0
  528. package/skills/salesforce/salesforce-soql-explorer-skill/references/safe-query-patterns.md +317 -0
  529. package/skills/salesforce/salesforce-soql-generator-skill/SKILL.md +305 -0
  530. package/skills/salesforce/salesforce-soql-generator-skill/metadata.json +25 -0
  531. package/skills/salesforce/salesforce-soql-generator-skill/references/common-patterns.md +293 -0
  532. package/skills/salesforce/salesforce-soql-generator-skill/references/governor-limits.md +171 -0
  533. package/skills/salesforce/salesforce-soql-generator-skill/references/soql-syntax-quickref.md +255 -0
  534. package/skills/salesforce/salesforce-validation-rule-writer-skill/SKILL.md +329 -0
  535. package/skills/salesforce/salesforce-validation-rule-writer-skill/metadata.json +28 -0
  536. package/skills/salesforce/salesforce-validation-rule-writer-skill/references/error-message-style.md +132 -0
  537. package/skills/salesforce/salesforce-validation-rule-writer-skill/references/formula-syntax-quickref.md +182 -0
  538. package/skills/salesforce/salesforce-validation-rule-writer-skill/references/validation-patterns.md +214 -0
  539. package/skills/salesforce/salesforce-zero-trust-maturity-skill/SKILL.md +164 -0
  540. package/skills/salesforce/salesforce-zero-trust-maturity-skill/metadata.json +19 -0
  541. package/skills/salesforce/salesforce-zero-trust-maturity-skill/references/continuous-verification-patterns.md +209 -0
  542. package/skills/salesforce/salesforce-zero-trust-maturity-skill/references/maturity-scoring-rubric.md +179 -0
  543. package/skills/salesforce/salesforce-zero-trust-maturity-skill/references/nist-zta-pillars.md +194 -0
  544. package/tests/fixtures/salesforce-maestro-routing/expected/001-happy-platform-admin-review.json +6 -0
  545. package/tests/fixtures/salesforce-maestro-routing/expected/002-happy-business-analyst.json +6 -0
  546. package/tests/fixtures/salesforce-maestro-routing/expected/003-happy-app-builder-automation.json +6 -0
  547. package/tests/fixtures/salesforce-maestro-routing/expected/004-happy-development.json +6 -0
  548. package/tests/fixtures/salesforce-maestro-routing/expected/005-happy-devops-release.json +6 -0
  549. package/tests/fixtures/salesforce-maestro-routing/expected/006-happy-security-identity-access.json +6 -0
  550. package/tests/fixtures/salesforce-maestro-routing/expected/007-happy-data-architecture.json +6 -0
  551. package/tests/fixtures/salesforce-maestro-routing/expected/008-happy-integration-mulesoft.json +6 -0
  552. package/tests/fixtures/salesforce-maestro-routing/expected/009-happy-sales-cloud-revenue.json +6 -0
  553. package/tests/fixtures/salesforce-maestro-routing/expected/010-happy-marketing-cloud.json +6 -0
  554. package/tests/fixtures/salesforce-maestro-routing/expected/011-happy-agentforce-ai.json +6 -0
  555. package/tests/fixtures/salesforce-maestro-routing/expected/012-happy-analytics-tableau.json +6 -0
  556. package/tests/fixtures/salesforce-maestro-routing/expected/013-happy-compliance-privacy.json +6 -0
  557. package/tests/fixtures/salesforce-maestro-routing/expected/014-happy-network-policy-architect.json +6 -0
  558. package/tests/fixtures/salesforce-maestro-routing/expected/015-happy-hyperforce-security.json +6 -0
  559. package/tests/fixtures/salesforce-maestro-routing/expected/016-happy-sandbox-isolation.json +6 -0
  560. package/tests/fixtures/salesforce-maestro-routing/expected/017-happy-session-governance.json +6 -0
  561. package/tests/fixtures/salesforce-maestro-routing/expected/018-happy-continuous-verification.json +6 -0
  562. package/tests/fixtures/salesforce-maestro-routing/expected/019-happy-certificate-lifecycle.json +6 -0
  563. package/tests/fixtures/salesforce-maestro-routing/expected/020-happy-adaptive-access.json +6 -0
  564. package/tests/fixtures/salesforce-maestro-routing/expected/021-happy-code-analyzer-orchestrator.json +6 -0
  565. package/tests/fixtures/salesforce-maestro-routing/expected/022-happy-sandbox-governance.json +6 -0
  566. package/tests/fixtures/salesforce-maestro-routing/expected/023-happy-change-impact-analyst.json +6 -0
  567. package/tests/fixtures/salesforce-maestro-routing/expected/adv-ambiguous.json +4 -0
  568. package/tests/fixtures/salesforce-maestro-routing/expected/adv-instruction-injection.json +6 -0
  569. package/tests/fixtures/salesforce-maestro-routing/expected/adv-liveguard-01-live-org-deploy-guard.json +6 -0
  570. package/tests/fixtures/salesforce-maestro-routing/expected/adv-liveguard-02-live-mass-delete-guard.json +6 -0
  571. package/tests/fixtures/salesforce-maestro-routing/expected/adv-liveguard-03-live-release-to-prod-guard.json +6 -0
  572. package/tests/fixtures/salesforce-maestro-routing/expected/adv-persona-replacement.json +6 -0
  573. package/tests/fixtures/salesforce-maestro-routing/expected/adv-secrets-bait.json +6 -0
  574. package/tests/fixtures/salesforce-maestro-routing/inputs/001-happy-platform-admin-review.json +7 -0
  575. package/tests/fixtures/salesforce-maestro-routing/inputs/002-happy-business-analyst.json +7 -0
  576. package/tests/fixtures/salesforce-maestro-routing/inputs/003-happy-app-builder-automation.json +7 -0
  577. package/tests/fixtures/salesforce-maestro-routing/inputs/004-happy-development.json +7 -0
  578. package/tests/fixtures/salesforce-maestro-routing/inputs/005-happy-devops-release.json +7 -0
  579. package/tests/fixtures/salesforce-maestro-routing/inputs/006-happy-security-identity-access.json +7 -0
  580. package/tests/fixtures/salesforce-maestro-routing/inputs/007-happy-data-architecture.json +7 -0
  581. package/tests/fixtures/salesforce-maestro-routing/inputs/008-happy-integration-mulesoft.json +7 -0
  582. package/tests/fixtures/salesforce-maestro-routing/inputs/009-happy-sales-cloud-revenue.json +7 -0
  583. package/tests/fixtures/salesforce-maestro-routing/inputs/010-happy-marketing-cloud.json +7 -0
  584. package/tests/fixtures/salesforce-maestro-routing/inputs/011-happy-agentforce-ai.json +7 -0
  585. package/tests/fixtures/salesforce-maestro-routing/inputs/012-happy-analytics-tableau.json +7 -0
  586. package/tests/fixtures/salesforce-maestro-routing/inputs/013-happy-compliance-privacy.json +7 -0
  587. package/tests/fixtures/salesforce-maestro-routing/inputs/014-happy-network-policy-architect.json +7 -0
  588. package/tests/fixtures/salesforce-maestro-routing/inputs/015-happy-hyperforce-security.json +7 -0
  589. package/tests/fixtures/salesforce-maestro-routing/inputs/016-happy-sandbox-isolation.json +7 -0
  590. package/tests/fixtures/salesforce-maestro-routing/inputs/017-happy-session-governance.json +7 -0
  591. package/tests/fixtures/salesforce-maestro-routing/inputs/018-happy-continuous-verification.json +7 -0
  592. package/tests/fixtures/salesforce-maestro-routing/inputs/019-happy-certificate-lifecycle.json +7 -0
  593. package/tests/fixtures/salesforce-maestro-routing/inputs/020-happy-adaptive-access.json +7 -0
  594. package/tests/fixtures/salesforce-maestro-routing/inputs/021-happy-code-analyzer-orchestrator.json +7 -0
  595. package/tests/fixtures/salesforce-maestro-routing/inputs/022-happy-sandbox-governance.json +7 -0
  596. package/tests/fixtures/salesforce-maestro-routing/inputs/023-happy-change-impact-analyst.json +7 -0
  597. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-ambiguous.json +7 -0
  598. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-instruction-injection.json +7 -0
  599. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-liveguard-01-live-org-deploy-guard.json +7 -0
  600. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-liveguard-02-live-mass-delete-guard.json +7 -0
  601. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-liveguard-03-live-release-to-prod-guard.json +7 -0
  602. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-persona-replacement.json +7 -0
  603. package/tests/fixtures/salesforce-maestro-routing/inputs/adv-secrets-bait.json +7 -0
  604. package/tests/fixtures/salesforce-maestro-routing/taxonomy.json +371 -0
  605. package/tests/test-vfa-export-coverage.test.mjs +8 -4
  606. package/tests/validate-catalog.py +12 -1
  607. package/tests/validate-plugin-manifest.py +11 -1
@@ -0,0 +1,193 @@
1
+ # Automation Conflict Matrix Reference
2
+
3
+ Reference for understanding precedence, conflict scenarios, and interaction
4
+ patterns between Salesforce automation layers.
5
+
6
+ ---
7
+
8
+ ## Execution Order (Single Record Save)
9
+
10
+ The following is the standard Salesforce record save execution order:
11
+
12
+ ```
13
+ 1. Load the original record from database (or initialize for new record)
14
+ 2. Load new field values from the incoming request
15
+ 3. Execute all Before-Save record-triggered Flows
16
+ 4. Execute all Before Apex Triggers
17
+ 5. Run system validations (page layouts, required fields, field formats)
18
+ 6. Save to database (not yet committed)
19
+ 7. Execute all After Apex Triggers
20
+ 8. Execute Assignment Rules (Leads and Cases)
21
+ 9. Execute Auto-Response Rules (Leads and Cases)
22
+ 10. Execute Workflow Rules (LEGACY - end-of-life scheduled)
23
+ - Field updates from workflow rules re-execute before/after triggers
24
+ 11. Execute processes (Process Builder - LEGACY - end-of-life scheduled)
25
+ 12. Execute all After-Save record-triggered Flows
26
+ 13. Execute Escalation Rules
27
+ 14. Execute Entitlement Rules
28
+ 15. Commit to database
29
+ 16. Execute post-commit logic (emails, outbound messages, async actions)
30
+ ```
31
+
32
+ Workflow rule field updates cause triggers to re-fire (step 4-7 repeat). This
33
+ is a well-known source of unexpected behavior and is one reason Salesforce is
34
+ retiring Workflow Rules.
35
+
36
+ ---
37
+
38
+ ## Layer Comparison Matrix
39
+
40
+ | Capability | Apex Trigger | Before-Save Flow | After-Save Flow | Workflow Rule | Process Builder |
41
+ |------------|-------------|-----------------|----------------|--------------|----------------|
42
+ | Before-save field update | Yes | Yes | No | Yes (re-fires trigger) | No |
43
+ | After-save actions | Yes | No | Yes | Yes | Yes |
44
+ | Create child records | Yes | No | Yes | No | Yes |
45
+ | Cross-object update | Yes | No | Yes (via subflow) | Yes (1 hop) | Yes |
46
+ | Callouts | Yes (future) | No | No (unless async) | No | No |
47
+ | Complex logic (branching) | Yes | Yes | Yes | Limited | Yes (limited) |
48
+ | Recursion guard available | Yes (static var) | Conditional | Conditional | No | No |
49
+ | Governor limit shared | Yes | Yes | Yes | Yes | Yes |
50
+ | Testable in unit tests | Yes | Via mock | Via mock | Limited | Limited |
51
+
52
+ ---
53
+
54
+ ## Conflict Scenario Reference
55
+
56
+ ### Scenario 1: Before-Save Flow vs Before Apex Trigger field conflict
57
+
58
+ When both a Before-Save Flow and a Before Apex Trigger update the same field,
59
+ the trigger executes AFTER the flow. The trigger's value wins.
60
+
61
+ ```
62
+ Before-Save Flow: sets Account.Rating = 'Warm'
63
+ Before Apex Trigger: sets Account.Rating = 'Hot'
64
+
65
+ Result in database: Account.Rating = 'Hot'
66
+ ```
67
+
68
+ Resolution: Decide which layer owns each field. Document ownership in metadata
69
+ comments. If the trigger's value should not override the flow, move field
70
+ assignment exclusively to the flow or guard the trigger logic with a field-change check.
71
+
72
+ ### Scenario 2: Workflow Field Update triggers re-fire of Apex Trigger
73
+
74
+ Workflow Rules with field updates cause the entire before/after trigger cycle
75
+ to re-execute. This is the primary reason to migrate Workflow Rules to Flows.
76
+
77
+ ```
78
+ Apex Trigger fires on Account update
79
+ -> sends Platform Event (counted as one callout)
80
+ Workflow Rule field update re-fires trigger
81
+ -> attempts to send Platform Event again
82
+ -> if trigger lacks recursion guard, second Platform Event fires
83
+ -> governor limit on callouts approaches
84
+ ```
85
+
86
+ Resolution: Add recursion guard to trigger (see apex-anti-patterns.md). Or
87
+ migrate workflow field updates to Before-Save Flows to eliminate re-fire.
88
+
89
+ ### Scenario 3: Two After-Save Flows update the same field
90
+
91
+ Multiple After-Save Flows on the same object and trigger condition will both
92
+ execute. If both update the same field, the last one to execute wins.
93
+
94
+ Execution order between multiple flows is not guaranteed and may change between
95
+ releases. Do not rely on specific ordering.
96
+
97
+ Resolution: Consolidate flows that modify the same field into one flow with
98
+ Decision elements to handle the branching logic.
99
+
100
+ ### Scenario 4: Flow creates a record, Apex Trigger fires on creation
101
+
102
+ An After-Save Flow on Contact creates a related Task. The Task creation fires
103
+ the Task Apex Trigger. If the Task trigger updates the Contact, it can create
104
+ a loop.
105
+
106
+ ```
107
+ Contact saved
108
+ -> Contact After-Save Flow: Create Task
109
+ -> Task Apex Trigger fires: updates Contact (sets ContactTaskCount__c++)
110
+ -> Contact After-Save Flow fires again: creates another Task...
111
+ RECURSION
112
+ ```
113
+
114
+ Resolution:
115
+ - Add a trigger condition to the Contact flow: only fire if the triggering
116
+ field (not ContactTaskCount__c) changed.
117
+ - Add a recursion guard in the Task trigger handler.
118
+
119
+ ### Scenario 5: Validation Rule vs Before-Save Flow ordering
120
+
121
+ Validation Rules execute after Before-Save Flows but before database commit.
122
+ If a Before-Save Flow sets a field value that a Validation Rule then checks,
123
+ the updated value is visible to the Validation Rule.
124
+
125
+ ```
126
+ Before-Save Flow: sets Status__c = 'Closed'
127
+ Validation Rule: ERROR IF Status__c = 'Closed' AND CloseDate__c = null
128
+ -> Will fire and block save if CloseDate__c is null
129
+ ```
130
+
131
+ This interaction is intentional and correct behavior. Document it in the
132
+ Validation Rule's description.
133
+
134
+ ### Scenario 6: Assignment Rules vs After-Save Flow ownership
135
+
136
+ Case Assignment Rules run before After-Save Flows. If an After-Save Flow also
137
+ sets the OwnerId of a Case, the flow's OwnerId will overwrite the assignment
138
+ rule's OwnerId.
139
+
140
+ Resolution: Choose one authoritative ownership assignment mechanism. If
141
+ assignment rules are the authority, the flow must not touch OwnerId.
142
+
143
+ ---
144
+
145
+ ## Detecting Automation Conflicts
146
+
147
+ ### CLI: List active automations on an object
148
+
149
+ ```bash
150
+ # List all active Flows on Account
151
+ sf data query \
152
+ --query "SELECT Label, ApiName, Status, TriggerType \
153
+ FROM FlowDefinition \
154
+ WHERE TriggerType IN ('RecordBeforeSave','RecordAfterSave') \
155
+ AND Status = 'Active'" \
156
+ --use-tooling-api \
157
+ -o my-org
158
+
159
+ # List active Apex Triggers on Account
160
+ sf data query \
161
+ --query "SELECT Name, Status, TableEnumOrId \
162
+ FROM ApexTrigger \
163
+ WHERE TableEnumOrId = 'Account' AND Status = 'Active'" \
164
+ --use-tooling-api \
165
+ -o my-org
166
+ ```
167
+
168
+ ### Conflict Analysis Checklist
169
+
170
+ - [ ] Identify all active automations (flows, triggers, workflow rules, processes)
171
+ on the object being modified.
172
+ - [ ] Map which fields each automation reads and writes.
173
+ - [ ] Flag any field written by more than one automation layer (potential conflict).
174
+ - [ ] Identify any cross-object updates that could trigger secondary automations
175
+ on related objects.
176
+ - [ ] Verify recursion guards exist for any automation that updates the same
177
+ object or a related object that feeds back.
178
+
179
+ ---
180
+
181
+ ## Migration Status Reference
182
+
183
+
184
+ | Legacy Technology | Replacement | Salesforce Guidance |
185
+ |-------------------|------------|---------------------|
186
+ | Workflow Rules | Record-Triggered Flow | Retire by migration |
187
+ | Process Builder | Record-Triggered Flow | Retire by migration |
188
+ | Workflow Outbound Messages | Platform Events / Flow HTTP Callout | Migrate proactively |
189
+ | Approval Processes | Approval Processes (retained) | No migration needed |
190
+
191
+ Salesforce has announced retirement of Workflow Rules and Process Builder.
192
+ Check the official retirement timeline before using these in new development
193
+ or when assessing risk in existing orgs.
@@ -0,0 +1,189 @@
1
+ # Fault Path Design Reference
2
+
3
+ Patterns for handling errors in Salesforce Flows with resilient fault paths,
4
+ escalation logic, and retry strategies.
5
+
6
+ ---
7
+
8
+ ## Why Fault Paths Are Required
9
+
10
+ Every Flow element that can fail — Create/Update/Delete Records, Apex Actions,
11
+ HTTP Callout Actions, Send Email elements — has a Fault connector in Flow
12
+ Builder. If no Fault connector is attached, an unhandled fault terminates the
13
+ flow with a generic error page and an email to the running user's org
14
+ admin. No audit record is created.
15
+
16
+ Required fault paths on:
17
+ - All DML elements (Create, Update, Delete, Upsert Records)
18
+ - All Apex Action elements
19
+ - All HTTP Callout actions (Salesforce Flow with External Services / MuleSoft)
20
+ - Send Email / Send Custom Notification
21
+ - Subflow elements
22
+
23
+ ---
24
+
25
+ ## Fault Path Levels
26
+
27
+ ### Level 1: Minimum Viable Fault Path
28
+
29
+ Log the error, show a user-friendly message, do not leave the user on a broken screen.
30
+
31
+ ```
32
+ DML Element: Create Records (Case)
33
+ Fault Connector ->
34
+ Assignment: errorMessage = {!$Flow.FaultMessage}
35
+ Screen: "We couldn't complete your request. Please contact support."
36
+ (show errorMessage in a non-technical format)
37
+ ```
38
+
39
+ ### Level 2: Fault Logging to Custom Object
40
+
41
+ Persist fault details for later diagnosis without developer log access.
42
+
43
+ ```apex
44
+ // Custom object: FlowErrorLog__c
45
+ // Fields: FlowName__c, FaultMessage__c, RecordId__c, RunningUserId__c, Timestamp__c
46
+ ```
47
+
48
+ Flow configuration:
49
+ ```
50
+ Fault Connector ->
51
+ Assignment: Set variables
52
+ flowErrorName = "Case Creation Flow"
53
+ faultMsg = {!$Flow.FaultMessage}
54
+ faultUserId = {!$User.Id}
55
+ faultTimestamp = {!$Flow.CurrentDateTime}
56
+ Create Records: FlowErrorLog__c
57
+ FlowName__c = {!flowErrorName}
58
+ FaultMessage__c = {!faultMsg}
59
+ RunningUserId__c = {!faultUserId}
60
+ Timestamp__c = {!faultTimestamp}
61
+ Screen: User-friendly error message
62
+ ```
63
+
64
+ ### Level 3: Escalation Flow
65
+
66
+ For critical business processes, route the failed transaction to a human queue.
67
+
68
+ ```
69
+ Fault Connector ->
70
+ Assignment: Set error variables
71
+ Create Records: FlowErrorLog__c (persist fault)
72
+ Create Records: Case
73
+ Subject = "Automation Failure: {!flowErrorName}"
74
+ Description = {!$Flow.FaultMessage}
75
+ OwnerId = [Error_Handling_Queue Id]
76
+ Priority = High
77
+ Send Notification: Alert on-call team via Custom Notification
78
+ Screen: "Your request has been escalated to our support team (Ticket: {!caseNumber})."
79
+ ```
80
+
81
+ ### Level 4: Retry Pattern (Platform Event-based)
82
+
83
+ For transient failures (network timeouts, external API 503), retry without
84
+ blocking the user.
85
+
86
+ ```
87
+ Fault Connector ->
88
+ Decision: Is this a retryable error?
89
+ YES (fault message contains "timeout" or "503") ->
90
+ Create Records: RetryQueue__e (Platform Event)
91
+ FlowName__c = "Case Creation Flow"
92
+ InputData__c = JSON.serialize(inputVariables)
93
+ AttemptNumber__c = {!currentAttempt}
94
+ Screen: "We're processing your request. You'll receive a notification when complete."
95
+ NO ->
96
+ Create Records: FlowErrorLog__c
97
+ Screen: "Unrecoverable error. Please contact support."
98
+ ```
99
+
100
+ A Platform Event-triggered flow or Apex subscriber processes the RetryQueue event
101
+ with exponential backoff.
102
+
103
+ ---
104
+
105
+ ## Retry Backoff Strategy
106
+
107
+ ```apex
108
+ // Apex implementation of exponential backoff for Flow-invoked callouts
109
+ public class RetryableCalloutHandler implements Queueable, Database.AllowsCallouts {
110
+ private Integer attemptNumber;
111
+ private String payload;
112
+ private String endpoint;
113
+ private Integer maxAttempts = 5;
114
+
115
+ public void execute(QueueableContext ctx) {
116
+ try {
117
+ HttpRequest req = new HttpRequest;
118
+ req.setEndpoint(endpoint);
119
+ req.setMethod('POST');
120
+ req.setBody(payload);
121
+ req.setTimeout(30000);
122
+ HttpResponse res = new Http.send(req);
123
+
124
+ if (res.getStatusCode >= 500) {
125
+ throw new CalloutException('Server error: ' + res.getStatusCode);
126
+ }
127
+ // Success: process response
128
+ } catch (Exception e) {
129
+ attemptNumber++;
130
+ if (attemptNumber < maxAttempts) {
131
+ // Backoff: 2^attemptNumber * 1000ms (via Platform Event delay)
132
+ // Enqueue next retry (Queueable cannot sleep, use Scheduled Apex or PE)
133
+ System.enqueueJob(new RetryableCalloutHandler(
134
+ attemptNumber, payload, endpoint, maxAttempts
135
+ ));
136
+ } else {
137
+ // Max retries reached - log and alert
138
+ insert new FlowErrorLog__c(
139
+ FlowName__c = 'RetryableCallout',
140
+ FaultMessage__c = 'Max retries reached: ' + e.getMessage,
141
+ Timestamp__c = DateTime.now
142
+ );
143
+ }
144
+ }
145
+ }
146
+ }
147
+ ```
148
+
149
+ Backoff schedule:
150
+ | Attempt | Wait Before Retry |
151
+ |---------|------------------|
152
+ | 1 | 2 seconds |
153
+ | 2 | 4 seconds |
154
+ | 3 | 8 seconds |
155
+ | 4 | 16 seconds |
156
+ | 5 | Fail permanently |
157
+
158
+ ---
159
+
160
+ ## Fault Message Parsing
161
+
162
+ `{!$Flow.FaultMessage}` contains the Salesforce error string. Parse common
163
+ patterns to determine error category:
164
+
165
+ | Fault Message Pattern | Category | Recommended Action |
166
+ |----------------------|----------|-------------------|
167
+ | `UNABLE_TO_LOCK_ROW` | Database lock contention | Retry after backoff |
168
+ | `FIELD_CUSTOM_VALIDATION_EXCEPTION` | Validation rule fired | Do not retry; show validation message to user |
169
+ | `INSUFFICIENT_ACCESS` | Sharing/FLS violation | Do not retry; escalate to admin |
170
+ | `DUPLICATE_VALUE` | Duplicate rule fired | Do not retry; show duplicate management UI |
171
+ | `REQUEST_RUNNING_TOO_LONG` | CPU timeout | Break into smaller batches |
172
+ | `System.CalloutException` | Network issue | Retry with backoff |
173
+ | `FIELD_INTEGRITY_EXCEPTION` | Foreign key violation | Check lookup target exists |
174
+
175
+ ---
176
+
177
+ ## Fault Path Design Checklist
178
+
179
+ - [ ] Every DML element has a Fault connector.
180
+ - [ ] Every Apex Action element has a Fault connector.
181
+ - [ ] Every External Service / HTTP Callout element has a Fault connector.
182
+ - [ ] Fault paths log `{!$Flow.FaultMessage}` to a persistent store (not just `System.debug`).
183
+ - [ ] Fault paths for screen flows show a user-friendly message (not raw error text).
184
+ - [ ] Fault paths for autolaunched flows create an error log record and/or send
185
+ a notification to an operations team.
186
+ - [ ] Critical process fault paths create a support case or alert ticket.
187
+ - [ ] Transient error types trigger a retry mechanism; permanent errors are logged.
188
+ - [ ] Fault handling does not itself perform DML that could fail (double-fault
189
+ scenario creates silent failure).
@@ -0,0 +1,211 @@
1
+ # Flow Anti-Patterns Reference
2
+
3
+ Common mistakes in Salesforce Flow
4
+ configurations that cause
5
+ performance failures, infinite recursion, data integrity issues, or
6
+ unhandled errors.
7
+
8
+ ---
9
+
10
+ ## 1. DML in a Loop Element
11
+
12
+ ### Description
13
+ Using a "Create Records", "Update Records", or "Delete Records" element inside
14
+ a Loop element causes one DML operation per iteration — equivalent to DML in an
15
+ Apex loop.
16
+
17
+ ### Why It Fails
18
+ Flows share Apex governor limits when invoked from a trigger context. A loop
19
+ over 200 records with an Update Records inside exceeds the DML statement limit.
20
+
21
+ ### Detection
22
+ In Flow Builder: navigate to each Loop element and inspect elements inside the
23
+ loop body. Any Create/Update/Delete Records element is a finding.
24
+
25
+ ### Correct Pattern
26
+
27
+ Move DML outside the loop:
28
+ 1. Inside the loop, use an Assignment element to build a collection variable
29
+ (`recordCollection`).
30
+ 2. After the loop ends, use a single Update Records / Create Records element
31
+ operating on the full collection.
32
+
33
+ ```
34
+ Loop (iterate over accountList)
35
+ -> Assignment: add account to toUpdateCollection (use "Add" operation)
36
+ End Loop
37
+ -> Update Records: Source = toUpdateCollection (one DML statement for all)
38
+ ```
39
+
40
+ ---
41
+
42
+ ## 2. Missing Fault Paths
43
+
44
+ ### Description
45
+ A Flow with callout actions, DML actions, or Apex actions has no Fault connector
46
+ from those elements. If the action fails, the flow terminates with an unhandled
47
+ fault — often surfaced to the user as a generic error page.
48
+
49
+ ### Why It Matters
50
+ Silent failures in critical business processes (case creation, order submission)
51
+ create data integrity gaps that are hard to diagnose.
52
+
53
+ ### Detection
54
+ In Flow Builder: click each Action, Create Records, Update Records, or Delete
55
+ Records element. Look for a red Fault connector (anchor at bottom of element).
56
+ If no Fault connector exists, that element has no fault handling.
57
+
58
+ ### Correct Pattern
59
+
60
+ ```
61
+ Create Records: Case
62
+ Success path -> next element
63
+ Fault path -> Fault Connector
64
+ -> Assignment: set errorMessage = {!$Flow.FaultMessage}
65
+ -> Create Records: Log Error (CustomErrorLog__c object)
66
+ -> Screen (or Subflow): "Something went wrong. Your request ID: {!caseId}"
67
+ ```
68
+
69
+ Minimum viable fault handling:
70
+ - Log the fault message to a custom error log object.
71
+ - Show a user-friendly message rather than a raw error.
72
+ - For autolaunched flows triggered from Apex: throw a re-throw-able exception
73
+ so the Apex caller can handle it.
74
+
75
+ ---
76
+
77
+ ## 3. Infinite Recursion
78
+
79
+ ### Description
80
+ A record-triggered flow updates the same record it was triggered on (or updates
81
+ a related record that triggers another flow that updates the original record),
82
+ creating a loop until Salesforce detects recursion and throws an error.
83
+
84
+ ### Why It Happens
85
+ Flows triggered on Account > After Save that update an Account field will
86
+ re-trigger the same flow. Without a guard condition, this recurses.
87
+
88
+ ### Detection
89
+ For each record-triggered flow:
90
+ 1. Check the trigger object.
91
+ 2. Check all Update Records or Create Records elements.
92
+ 3. If any element updates a record of the same object type as the trigger, check
93
+ whether the update will re-satisfy the trigger condition.
94
+
95
+ ### Correct Patterns
96
+
97
+ **Pattern A: Entry condition guards**
98
+ Add a trigger condition that only fires when the relevant field has actually changed:
99
+ ```
100
+ Trigger Conditions:
101
+ Field: Status__c Operator: Is Changed Value: True
102
+ (only runs when Status__c changes, not on every save)
103
+ ```
104
+
105
+ **Pattern B: Timestamp / flag field guard**
106
+ ```
107
+ Update Records: Account
108
+ Set LastFlowProcessed__c = {!$Flow.CurrentDateTime}
109
+
110
+ Entry Condition:
111
+ LastFlowProcessed__c < {!$Flow.CurrentDateTime} - 60 seconds
112
+ (skip if flow already ran in the last minute for this record)
113
+ ```
114
+
115
+ **Pattern C: Apex-managed recursion guard**
116
+ If flow invokes Apex, use a static boolean in the handler class (see Apex
117
+ recursion guard pattern in apex-anti-patterns.md).
118
+
119
+ ---
120
+
121
+ ## 4. System Context vs User Context Confusion
122
+
123
+ ### Description
124
+ Autolaunched Flows and Before-Save Flows run in System Context by default —
125
+ they bypass sharing rules and FLS. This can expose records to flows that should
126
+ not be able to see or modify them.
127
+
128
+ ### Execution Context Quick Reference
129
+
130
+ | Flow Type | Default Context | Override Available |
131
+ |-----------|---------------|-------------------|
132
+ | Autolaunched Flow (no trigger) | System w/ Sharing OFF | Set "Run as" to System with Sharing or User |
133
+ | Record-Triggered Flow (Before Save) | System w/ Sharing | Cannot change |
134
+ | Record-Triggered Flow (After Save) | System w/ Sharing | Cannot change |
135
+ | Screen Flow (launched by user) | User Context | Can switch to System |
136
+ | Scheduled-Triggered Flow | System w/ Sharing OFF | Cannot change |
137
+ | Platform Event-Triggered Flow | System w/ Sharing OFF | Cannot change |
138
+
139
+ "Run as" context options may vary by API version and
140
+ Salesforce release.
141
+
142
+ ### Risk Scenarios
143
+
144
+ 1. Autolaunched Flow queries ALL records of an object regardless of sharing, then
145
+ exposes results in a screen or action — data over-exposure.
146
+ 2. Before-Save Flow updates a field on a restricted object without checking
147
+ whether the running user should have edit access — implicit privilege escalation.
148
+
149
+ ### Remediation
150
+ - For autolaunched flows that handle user data, set the Run As context to
151
+ "System Context With Sharing" or invoke from Apex using `with sharing`.
152
+ - For flows that must run in system context, document the business justification
153
+ and restrict the flow's invocation to trusted Apex classes only.
154
+
155
+ ---
156
+
157
+ ## 5. Unguarded Get Records (No Result Check)
158
+
159
+ ### Description
160
+ A Get Records element queries for a record but has no Decision element to
161
+ check whether the record was found before using its fields downstream. If the
162
+ record does not exist, downstream elements that reference `{!GetRecord}` will
163
+ use null values, causing unexpected behavior or errors.
164
+
165
+ ### Correct Pattern
166
+
167
+ ```
168
+ Get Records: Account (WHERE Id = {!recordId})
169
+ -> Decision: Did We Find Account?
170
+ YES (Is Null check: {!GetAccount} Is Null = False) -> proceed with account fields
171
+ NO (otherwise) -> Screen: "Account not found" or Fault logging path
172
+ ```
173
+
174
+ ---
175
+
176
+ ## 6. Hard-Coded API Names
177
+
178
+ ### Description
179
+ Flow elements reference picklist values, queue names, or record type API names
180
+ as hard-coded string literals. When these values change in production, the flow
181
+ breaks silently.
182
+
183
+ ### Detection
184
+ Search Flow XML for string literals in Assignment/Decision elements:
185
+ ```bash
186
+ grep -rn "Status = 'Active'" force-app/main/default/flows/*.flow-meta.xml
187
+ grep -rn "Queue\.Name" force-app/main/default/flows/*.flow-meta.xml
188
+ ```
189
+
190
+ ### Correct Approach
191
+ - Use Picklist field values via `{!$GlobalConstant.EmptyString}` or via Get
192
+ Records to dynamically resolve names.
193
+ - Reference Queue IDs dynamically via Get Records on Group object:
194
+ ```
195
+ Get Records: Group WHERE Name = 'Support Queue' AND Type = Queue
196
+ -> use {!GetQueue.Id} as OwnerId
197
+ ```
198
+
199
+ ---
200
+
201
+ ## Flow Anti-Pattern Summary
202
+
203
+ | Anti-Pattern | Impact | PMD/Equivalent Rule |
204
+ |-------------|--------|---------------------|
205
+ | DML in loop | Governor limit failure | `FlowDmlInLoop` |
206
+ | Missing fault path | Silent failures | `FlowMissingFaultPath` |
207
+ | Infinite recursion | Recursion error | Manual review + entry conditions |
208
+ | System context over-exposure | Data security | Architecture review |
209
+ | Unguarded Get Records | Null field errors | `FlowUnusedVariable` (indirect) |
210
+ | Hard-coded API names | Brittleness | Code review checklist |
211
+ | Unactivated flow left in prod | Confusion / accidental activation | `FlowInactiveFlow` |