diff --git a/WolfeeCLI_arkhsoveta.pptx b/WolfeeCLI_arkhsoveta.pptx new file mode 100644 index 0000000..11e4c64 Binary files /dev/null and b/WolfeeCLI_arkhsoveta.pptx differ diff --git a/internal/cli/scan.go b/internal/cli/scan.go index 188271c..7e0843f 100644 --- a/internal/cli/scan.go +++ b/internal/cli/scan.go @@ -75,6 +75,8 @@ func runScan(ctx context.Context, args []string) error { o.token = strings.TrimSpace(os.Getenv("WOLFEE_TOKEN")) } + output.PrintBanner(o.quiet) + logger := output.NewLogger(o.quiet, o.debug) var report *sbomscan.Report diff --git a/internal/output/logger.go b/internal/output/logger.go index a0aa0bb..67e7968 100644 --- a/internal/output/logger.go +++ b/internal/output/logger.go @@ -66,6 +66,23 @@ func (l *stderrLogger) Progress(done, total int, label string) { fmt.Fprintf(os.Stderr, "\r [%d/%d] %s ", done, total, label) } +const banner = ` + __ __ _ ___ ___ ___ ___ ___ _ ___ + \ \ / /___ | || __|| __| __| __| / __| | |_ _| + \ \/\/ // _ \ | || _| | _|| _|| _| | (__| |__ | | + \_/\_/ \___/ |_||_| |___|___|___| \___|____|___| +` + +// PrintBanner writes the WOLFEE CLI ASCII banner to stderr. It stays out of +// stdout so JSON/SARIF/table output on stdout is never corrupted, and is +// silent under --quiet. +func PrintBanner(quiet bool) { + if quiet { + return + } + fmt.Fprint(os.Stderr, banner+"\n") +} + func LineWriter(emit func(string, ...any), prefix string) io.WriteCloser { r, w := io.Pipe() go func() {