new ExternalProgramsPlugin implementation