Detect unsafe contexts, queries in loops, hardcoded IDs, and more to optimize Salesforce Flows.
Lightning Flow Scanner App integrates the Lightning Flow Scanner as a UMD module within Salesforce, enabling scanning of flow metadata for 20+ issues such as hardcoded IDs, unsafe contexts, inefficient SOQL/DML operations, recursion risks, and missing fault handling.
For details about all available rules, their default severities, and configuration options, visit the Flow Scanner Documentation.
Prerequisite: Ensure that the Flow Scanner permission set is assigned to users who need access.
Privacy: Zero user data collected. All processing is client-side. → See Data Handling in our Security Policy.
While no configuration is required, Admins can define default severities, expressions, or disabled states for scan rules using the ScanRuleConfiguration__mdt custom metadata type. These overrides apply globally for all users in the org, but individual users can still adjust severities or disable rules locally in the browser — those changes only persist for their current session. For a more on configurations, review the documentation.
FlowName)Error, Warning, Info, or Note[A-Za-z]+_[0-9]+
Or via Salesforce CLI:
sf package install --package lightning-flow-scanner@2.12.0-1 --wait 10
1) Clone this repository:
git clone https://github.com/Flow-Scanner/lightning-flow-scanner-app.git
2) Create a Scratch Org
sf org:create:scratch --definition-file config/project-scratch-def.json --alias FlowScanner --duration-days 7 --set-default --json
3) Push Source to Your Org:
sf project:deploy:start
4) Assign Permission Set
sf org assign permset --name Flow_Scanner
Want to help improve Lightning Flow Scanner? See our Contributing Guidelines