Interesting concept! As for listing out the programs available at a selected location, you might look at the fs package, which has some handy tools for file system operations.
Then for executing the program, you will probably need to use system() or system2() to execute the program at the system level. You could probably create a wrapper function that is more "SAS aware", and there may be packages out there that are related and which I am unfamiliar with.
As for parsing / displaying the output in Shiny, you might look at the haven package for reading SAS datasets, and there should be a way to present PDFs / etc. into Shiny as well.
I think you could find some really useful widgets / UI patterns and their code (to use as a foundation if you're interested) in the Shiny gallery here: https://shiny.rstudio.com/gallery/
As you get started, I'm sure many here would be curious to hear about your progress. Please feel free to share what you come up with, or to ask more specific questions if you run into trouble!