Currently, SWI-Prolog support colored messages on the command line by loading library(ansi_term). This requires a terminal devices that understand ANSI color escape sequences (\e[...m). Almost all modern terminal emulators support this. It is also supported by the Windows console application (swipl.exe). The feature is activated simply by loading the mentioned library. You may add the following snippit to your personal init file:
:- ( stream_property(user_output, tty(true)) -> load_files(library(ansi_term), [silent(true)]) ; true ).