Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/projectdiscovery/nuclei-action
Vulnerability ScannersWeb SecurityDevSecOps
GitHubprojectdiscovery/nuclei-action

nuclei-action

Vulnerability Scan with Nuclei

View RepositoryWebsite
2888015 days agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

nuclei

This Nuclei Action makes it easy to orchestrate Nuclei with GitHub Action. Integrate all of your Nuclei Templates into powerful continuous security workflows and make it part of your secure software development life cycle.

Nuclei Action

Compatibility

  • v3.0.0+ runs on Node.js v24 and adopts a CLI-first interface, accepting inputs like version, install-only, args, etc., and outputs only to stdout and stderr.
  • v2.0.0+ and v2.x relies on action-specific inputs such as target, urls, templates, workflows, flags, and various exporter/reporting toggles; v2.x are deprecated and unsupported after March 1, 2026. See MIGRATION.md before upgrading.
  • v1+ runs on Node.js v16 and uses inputs like target, urls, templates, workflows, output, json, include-rr, config, report-config, github-report, github-token, sarif-export, markdown-export, and flags.

Inputs

[!IMPORTANT]

  • config and config-path must not be set together.
  • args always take precedence over config or config-path.

[!NOTE] When debug logging is enabled, this action automatically adds -debug and -verbose flags to Nuclei.

Outputs

namedescription
stdout

The standard output from running Nuclei

stderr

The standard error from running Nuclei

Runs

This action is a node24 action.

Usage

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version:
    # Setup with specific version ("latest" or in format "vX.Y.Z").
    #
    # Required: true
    # Default: latest

    install-only:
    # Install Nuclei without running scans.
    #
    # Required: false
    # Default: false

    args:
    # Arguments to pass to Nuclei.
    #
    # Required: false
    # Default: ""

    config:
    # Nuclei configuration file content.
    #
    # Required: false
    # Default: ""

    config-path:
    # Path to Nuclei configuration file.
    #
    # Required: false
    # Default: ""

    cache:
    # Enable caching of Nuclei caches, configs, templates, and browser.
    #
    # Required: false
    # Default: true

    token:
    # GitHub Token. It is used to fetch Nuclei releases from GitHub.
    #
    # Required: true
    # Default: ${{ github.token }}

Example

Default setup (latest Nuclei)

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    args: -u http://scanme.sh

Setup with specific version

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: v3.6.0
    args: -u http://scanme.sh

Setup or install Nuclei without running scans

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: v3.6.0
    install-only: true

- run: nuclei -version

or install only and without cache:

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: v3.6.0
    install-only: true
    cache: false

- run: nuclei -version

Setup with Nuclei configuration

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: latest
    config: |
      target:
        - http://scanme.sh
      sarif-export: results.sarif

or pass it via variables:

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: latest
    config: ${{ vars.NUCLEI_CONFIG }}

or via repo-managed config file:

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: latest
    config-path: path/to/nuclei.yaml

Setup with GitHub code scanning

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    version: latest
    config: |
      target:
        - http://scanme.sh
      sarif-export: results.sarif

- uses: github/codeql-action/upload-sarif@v3
  if: success()
  with:
    sarif_file: results.sarif
    category: nuclei-results

Setup with reporting

root@kitploit:~
- uses: projectdiscovery/nuclei-action@v3
  with:
    args: -u http://scanme.sh
    config: |
      report-config: issue-tracker-config.yaml
  env:
    GITHUB_BASE_URL: https://localhost:8443/github
    GITHUB_USERNAME: test-username
    GITHUB_OWNER: test-owner
    GITHUB_TOKEN: ${{ secrets.GITHUB_PAT }}
    GITHUB_PROJECT_NAME: test-project
Example issue-tracker-config.yaml (repository file):
root@kitploit:~
github:
 # base-url is the optional self-hosted GitHub application url
 base-url: $GITHUB_BASE_URL # read from environment variable
 # username is the username of the GitHub user
 username: $GITHUB_USERNAME # read from environment variable
 # owner is the owner name of the repository for issues
 owner: $GITHUB_OWNER # read from environment variable
 # token is the token for GitHub account
 token: $GITHUB_TOKEN # read from environment variable
 # project-name is the name of the repository
 project-name: $GITHUB_PROJECT_NAME # read from environment variable

 # issue-label is the label of the created issue type
 issue-label: bug
 # allow-list sets a tracker level filter to only create issues for templates with
 # these severity labels or tags (does not affect exporters. set those globally)
 allow-list:
   severity: high, critical
   tags: network
 # deny-list sets a tracker level filter to never create issues for templates with
 # these severity labels or tags (does not affect exporters. set those globally)
 deny-list:
   severity: low
 # duplicate-issue-check flag to enable duplicate tracking issue check.
 duplicate-issue-check: false

Refer to https://github.com/projectdiscovery/nuclei/blob/dev/cmd/nuclei/issue-tracker-config.yaml.

Contributing

We welcome contributions! Please see our Contributing Guide for details on how to get started.

License

MIT. See LICENSE for more details.

Download Tool
namedescriptionrequireddefault
version

Setup with specific version ("latest" or in format "vX.Y.Z").

truelatest
install-only

Install Nuclei without running scans.

falsefalse
args

Arguments to pass to Nuclei.

false""
config

Nuclei configuration file content.

false""
config-path

Path to Nuclei configuration file.

false""
cache

Enable caching of Nuclei caches, configs, templates, and browser.

falsetrue
token

GitHub Token. It is used to fetch Nuclei releases from GitHub.

true${{ github.token }}