Repository navigation
Releases: getveil/veil
Releases · getveil/veil
Release list
v0.2.0
First public release. Veil moves the Bearer API keys in your .env into your OS keychain, leaves format-preserving placeholders behind, and injects the real values at a local HTTPS proxy — so your AI agent never sees them.
How it works
brew install getveil/tap/veil
veil init # scan .env, vault Bearer secrets, drop in placeholders
veil run claude # launch agent through the proxy — credentials injected at the wire
veil log # query the audit trail
Any HTTP client that respects HTTPS_PROXY works unchanged — Claude Code, Cursor, Copilot, Windsurf, curl, gh, npm, pip.
What's in scope
- Bearer providers: OpenAI · Anthropic · Stripe · Slack · Google · GitHub PATs · Resend · Vercel · Replicate · Hugging Face · GitLab · SendGrid · Supabase
- Unknown Bearer secrets detected and reported by
veil init; runveil add NAME --host <host>to vault and scope them - Keychain: macOS Keychain, Linux Secret Service, age-file fallback on headless Linux
- Audit: every credential injection and proxy decision logged to local SQLite, queryable with
veil log
Highlights
- Format-aware placeholders — correct prefix, length, and charset per provider so regex-based consumers still see the right type
- Value shape gate — pre-filters by credential shape to minimize false positives across providers
- Fail-closed guard — if a placeholder somehow survives rewriting, the request is rejected rather than forwarded raw
- Per-session CA — generated locally, injected into the child process only via
SSL_CERT_FILE/NODE_EXTRA_CA_CERTS/CURL_CA_BUNDLE/REQUESTS_CA_BUNDLE; your system trust store is untouched - CLI:
init,run,status,add,list,log,remove,uninstall— with--dry-runpreviews,--jsonoutput, and shell completions
What's not in scope
Veil v1 mediates Authorization: Bearer credentials sourced from .env files. HTTP Basic, AWS SigV4, GitHub App JWTs, HMAC webhooks, shell environment variables, MCP config files, and non-HTTP protocols are left alone. See docs/MVP.md for the full contract.
Install
brew install getveil/tap/veil
Or: go install github.com/getveil/veil/cmd/veil@v0.2.0
See the full changelog in CHANGELOG.md.