projectdiscovery/subfinder · error
both verbose and silent mode specified
Error message
both verbose and silent mode specified
What it means
Conflicting-flags validation in Options.validateOptions: both -verbose and -silent were set on the command line. These modes are mutually exclusive (verbose increases log output while silent suppresses everything but results), so the options are rejected before enumeration starts.
Solutions
- Remove one of the two flags — use -silent for script/pipe usage or -verbose for debugging, never both
- If embedding subfinder as a library, ensure the Options struct does not set both Verbose and Silent to true
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at pkg/runner/validate.go:27 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of projectdiscovery/subfinder@7a0b91f0fa (2026-09-06).
Data as JSON: /api/errors/a57e48d82fdbbb63.
Report an issue: GitHub.
Appendix: source
Thrown at pkg/runner/validate.go:27
"github.com/projectdiscovery/gologger"
"github.com/projectdiscovery/gologger/formatter"
"github.com/projectdiscovery/gologger/levels"
"github.com/projectdiscovery/subfinder/v2/pkg/passive"
mapsutil "github.com/projectdiscovery/utils/maps"
sliceutil "github.com/projectdiscovery/utils/slice"
)
// validateOptions validates the configuration options passed
func (options *Options) validateOptions() error {
// Check if domain, list of domains, or stdin info was provided.
// If none was provided, then return.
if len(options.Domain) == 0 && options.DomainsFile == "" && !options.Stdin {
return errors.New("no input list provided")
}
// Both verbose and silent flags were used
if options.Verbose && options.Silent {
return errors.New("both verbose and silent mode specified")
}
// Validate threads and options
if options.Threads == 0 {
return errors.New("threads cannot be zero")
}
if options.Timeout == 0 {
return errors.New("timeout cannot be zero")
}
// Always remove wildcard with hostip
if options.HostIP && !options.RemoveWildcard {
return errors.New("hostip flag must be used with RemoveWildcard option")
}
// The per-source results limit cannot be negative.
if options.MaxResults < 0 {
return fmt.Errorf("max-results cannot be negative")View on GitHub (pinned to 7a0b91f0fa)