This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.

When designing a tools pipeline for your game, you could do worse than to adopt The Unix Philosophy as stated by Douglas McIlroy.

One way to interpret this philosophy is to separate each step of the pipeline into a single command line application, which takes a input file (or set of files) and produces an output file (or set of files). Running your export pipeline then is a case of defining a script which calls each executable in turn, passing the output of one as the input of the next. You can write a GUI that is used to set up any options parsed to the individual steps to provide an interface to the user and as each executable will be writing out data your GUI can pull that data from stdout and display any warnings or errors that were generated along the way.