> About the internal logger, which would store everything in memory.

Oh no, I not what I meant.  For example,  log all commands into 'DEBUG' log, but only display 'INFO' and higher on console.  So we can have a pretty console and still have a record of what happened.  If you want to see both, you run with --verbose.

Really the only issue here is about logging non-test-subject output, which seems unnecessary to me.  For example, if the test is about the 'attach' command, it's unnecessary to see all the details about every call into 'images' - because we have tests for 'images' that presumably would show more detail.  

Remember, these are functional & integration tests, they're not intended to be a primary debugging tool for engineering, they have their own unittests and debug environments for that.  Our mission is just to exercise code-paths, and cause any hidden bugs to be known.  Figuring out the cause of bugs is engineering's burden.