By default, the following packages are treated as development ones and are thus candidates for removal: any package whose name matches "-devel\b", "-debuginfo\b", "-sdk\b", or "-static\b" (case insensitively) except gcc requirements; any package whose name starts with "perl-(Devel|ExtUtils|Test)-"; any package whose name starts with "compat-gcc"; packages in the internal list of known development oriented packages (see def_devpkgs in the source code); packages determined to be development ones based on some basic heuristic checks on the package's contents.
The default set of packages above is not intended to not reduce a system into a minimal clean build root, but to keep it usable for general purposes while getting rid of a reasonably large set of development packages. The package set operated on can be configured to meet various scenarios.
To include additional packages in the list of ones treated as development packages, use the "devpkgs" option in the configuration file. To exclude packages from the list use "nondevpkgs" in it. Exclusion overrides inclusion.
The system wide configuration file is ,/etc/rpmdevtools/rmdevelrpms.conf/, and per user settings (which override system ones) can be specified in ~/.config/rpmdevtools/rmdevelrpms.conf or ~/.rmdevelrpmsrc (deprecated). These files are written in Python.