A software/tool design where the core functionality runs without a graphical user interface, so it can be driven via scripts, the command line, or another application’s UI.