CLI reference
Command-line interface
The Vulnara CLI lets you run scans, retrieve results, and integrate security testing into your own scripts or deployment pipeline.
Installation
npm install -g @vulnara/cli
Requires Node.js 18 or later. Verify the install:
vulnara --version
Authentication
Log in once to store your API token. All subsequent commands use the saved token automatically.
vulnara login
Or set the VULNARA_API_TOKEN environment variable directly if you prefer not to use the interactive login.
vulnara scan
Start a security scan on a target URL. The URL must match a domain you have verified in your account.
vulnara scan <url> [options]
Examples
# Basic scan with default checks vulnara scan https://yourapp.com # Run specific checks vulnara scan https://yourapp.com --checks encryption,access-control,database # With test account credentials vulnara scan https://yourapp.com \ --user-a user_a@yourapp.com:password123 \ --user-b user_b@yourapp.com:password456 # Save results to a file vulnara scan https://yourapp.com --output results.json
Options
--checks <list>stringdefault: all availableComma-separated list of checks to run. See the Modules page for valid values. Omit to run all checks your plan allows.
--user-a <email:password>stringCredentials for the primary test account on the target site. Required for checks that test authenticated behaviour.
--user-b <email:password>stringCredentials for the secondary test account. Required for the access control check (tests if users can see each other's data).
--no-authbooleandefault: falseSkip account-based checks entirely. Vulnara will only test pages accessible without logging in.
--output <file>stringWrite the full scan result to a JSON file. Defaults to printing a summary in the terminal.
--rate <n>numberdefault: 1Maximum requests per second during the scan. Increase with care - aggressive scanning can affect site performance.
--waitbooleandefault: trueWait for the scan to finish before exiting. Use --no-wait to queue the scan and exit immediately.
vulnara scans
List your recent scans.
vulnara scans [--limit 20]
vulnara results
Get the findings from a completed scan.
vulnara results <scan-id> # Filter by severity vulnara results <scan-id> --severity critical,high # Output as JSON vulnara results <scan-id> --format json
CI/CD integration
Add Vulnara to your deployment pipeline so every release is automatically checked for new security issues.
GitHub Actions example
name: Security scan
on:
push:
branches: [main]
jobs:
vulnara:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Vulnara CLI
run: npm install -g @vulnara/cli
- name: Run security scan
env:
VULNARA_API_TOKEN: ${{ secrets.VULNARA_API_TOKEN }}
run: |
vulnara scan https://yourapp.com \
--checks encryption,database,scripts \
--no-auth \
--output scan-results.json