zenveil fix requires a Pro plan. Run zenveil upgrade to unlock it, or zenveil whoami to check your current plan.Overview
zenveil fix uses Claude to generate a production-ready fix for a specific finding from the last scan. The fix is rendered with syntax-highlighted code blocks in your terminal. With --auto-pr, it creates a GitHub pull request with the fix applied.
Usage
Arguments
| Argument | Description |
|---|---|
finding_id | The finding ID from zenveil list or scan output (e.g., ZG-A1B2C3) |
Flags
| Flag | Description |
|---|---|
--auto-pr | Open a GitHub pull request with the fix. Requires --repo. |
--repo <r> | GitHub repository (owner/repo or full URL). Required with --auto-pr. |
--token <tok> | GitHub token. Defaults to GITHUB_TOKEN env var. |
Examples
How it works
Load finding from cache
ZenVeil loads the finding from
.zenveil-last-scan.json. Always run a fresh scan before fix if the codebase has changed.Generate fix (AI)
The finding — including its title, description, evidence, OWASP category, location, and remediation guidance — is sent to Claude. The response streams token-by-token to your terminal.For secret findings (AWS keys, GitHub tokens, JWT tokens, Slack tokens), ZenVeil uses deterministic redaction instead of AI — faster and more accurate for these specific cases.
Open pull request (if --auto-pr)
If
--auto-pr is provided, ZenVeil opens a GitHub PR:- Secret findings — redacts the secret directly in the file
.gitignorefindings — adds the missing exclusion pattern- Other findings — adds the AI-generated fix as the PR description for a developer to apply
Sample output
Opening pull request… Opened pull request: https://github.com/owner/my-app/pull/18