Skip to content

Conversation

@utsavmaniyar
Copy link
Contributor

@utsavmaniyar utsavmaniyar commented Jan 13, 2026

Solving: #196

  • We have added --list-available-module to cli to list all available modules from the configuration.
  • Updated docs for the usage on the cli

This will be useful when applying config via -config and need to see the available module.

Example

Command:
earlybird git:(feat/module-list-flag) go run go-earlybird.go --config=/Users/utsav/projects/eb/earlybird/config-examples --list-available-modules

Output:

2026/01/13 07:53:16 Go-EarlyBird version:  dev
Severity Fail threshold (at or above):  low
Confidence Fail threshold (at or above):  low
Severity Display threshold (at or above):  low
Confidence Display threshold (at or above):  low
Max file size to scan:  10240000  bytes


Available Module List

ccnumber: 
This module identifies potential American Express credit card numbers in files. It uses a regular expression to match patterns that resemble American Express card numbers, which typically start with 34 or 37 and are 15 digits long. The rule also includes a post-processing step to validate the matched numbers using the Luhn algorithm (mod10). If a potential credit card number is found, it will be redacted in the output to protect sensitive information. 

content: 
This module check for the presence of potential sensitive information in files. It uses a variety of regular expressions to identify patterns that may indicate the presence of sensitive data, such as keys, passwords, phone numbers, email addresses, IP addresses, social security numbers, national IDs, passport numbers, and deprecated cryptographic methods. The rules are designed to help identify potential security risks and protect sensitive information from being exposed. Each rule includes a post-processing step to further analyze the matched data and determine if it is indeed sensitive information. 

filename: 
This module check for the presence of sensitive files and cryptographic keys based on filename patterns. It uses regular expressions to identify filenames that are commonly associated with private keys, configuration files, log files, database dumps, and other sensitive information. The rules in this module can help identify potential security risks where sensitive files may have been inadvertently included in a code repository or exposed in a file system. Each rule includes a severity level and confidence score to help prioritize findings. 

inclusivity-rules: 
This module checks for the presence of the terms "whitelist", "blacklist", "master", and "slave" in code, which are considered oppressive metaphors. The use of these terms can perpetuate harmful stereotypes and contribute to an unwelcoming environment. The rules in this module aim to promote inclusivity by encouraging developers to use more neutral language in their coding practices. 

password-secret: 
This module checks for passwords and secrets in files. It includes rules for identifying potential default passwords, as well as patterns that may indicate the presence of sensitive information such as API keys, access tokens, and database connection strings. The rules use regular expressions to match common naming conventions for passwords and secrets, and they also include post-processing steps to extract the relevant information for further analysis or redaction. 

@utsavmaniyar utsavmaniyar linked an issue Jan 13, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a --list-available-modules option

2 participants