Overview
zenveil scan is the primary command. It dispatches the appropriate scanners based on the target type and returns a prioritized list of findings.
Scan a local repository
Arguments
Flags
Examples
Sample output
What the secrets scanner checks
- Hardcoded credentials — AWS keys, GitHub tokens, Slack tokens, private key blocks, hardcoded passwords, API keys, JWT tokens
- Environment file hygiene —
.envfiles committed to the repo, missing.env*in.gitignore - OWASP patterns — XSS-accessible token storage, predictable JWT secrets, client-side admin gates, weak password hashing, debug mode, open redirects, long-lived sessions
What the supply chain scanner checks
- Missing lockfiles —
package-lock.json,yarn.lock,pnpm-lock.yaml,Pipfile.lock,poetry.lock - Floating npm versions —
^,~,*,latestranges that allow breaking updates - Dependency confusion — internal package names that could be squatted on public registries
- Known CVEs — OSV.dev lookups for pinned versions (requires
--check-cves)
Scan a GitHub repository
Arguments
Flags
Examples
Context-aware scanning
ZenVeil scans all files by default — including test, fixture, mock, and example directories. This is intentional. Some of the most damaging credential leaks in the industry originated in files developers considered “safe”:How severity is downgraded
Context labels in output
Every finding includes a context badge so you know exactly where it came from:Example output
When to use --exclude-tests
Use --exclude-tests only when:
- You have already audited your test files and confirmed no real credentials exist
- You want a tighter signal-to-noise ratio for a specific scan
GitHub token permissions
Create a token with minimum required scopes at github.com/settings/tokens/new.
Rate limits
Without a token, GitHub allows ~60 requests/hour. With a token, this increases to ~5,000. For CI/CD pipelines, always setGITHUB_TOKEN.
Scan an API endpoint
Arguments
Flags
What it checks
Strict-Transport-Security— HSTS presence and configurationX-Content-Type-Options— MIME sniffing protectionX-Frame-Options— clickjacking protectionContent-Security-Policy— XSS policyReferrer-Policy— referrer information leakagePermissions-Policy— browser feature controlX-XSS-Protection— legacy XSS filter header- CORS misconfiguration — wildcard
Access-Control-Allow-Origin
Examples
Sample output
API scanning only tests publicly reachable endpoints. Private or localhost URLs are blocked (SSRF protection). Use
scan repo for scanning application code.