If you have a recent/high-end machine, another way to check if your game will run well on low-end machines is to disable V-Sync in the project settings and target a high framerate (like 120, 180 or more). Drops below this target should be considered unacceptable and should be fixed.
As for graphics power detection, there is unfortunately no reliable way to do this in advance. Many techniques have been attempted in the past, but they always end up falling short over time, picking unreasonable settings that don't match current day hardware. The best solution in 2022 is still to add a graphics settings menu to your game.
Changing graphics settings at run-time can be done in Godot (as said above), but it's probably not a good idea to do for particles as any changes (such as toggling particle visibility) will be instantly noticeable. Run-time graphics setting changes are best suited to things that can be smoothly increased/decreased and are barely noticeable (such as dynamic resolution scaling).