cli.go
func NewCLI(out, err io.Writer) *CLI {
	return &CLI{
		outStream: out,
		errStream: err,
		signalCh:  make(chan os.Signal, 1),
		stopCh:    make(chan struct{}),
	}
}
func NewCLI(out, err io.Writer) *CLI {
	return &CLI{
		outStream: out,
		errStream: err,
		signalCh:  make(chan os.Signal, 1),
		stopCh:    make(chan struct{}),
	}
}
func NewCLI ( out , err io . Writer ) * CLI { return & CLI { outStream : out , errStream : err , signalCh : make ( chan os . Signal , 1 ) , stopCh : make ( chan struct { } ) , } }
// NewCLI creates a new CLI object with the given stdout and stderr streams.
NewCLI creates a new CLI object with the given stdout and stderr streams .