dotvault encrypts your .env files, config files (.npmrc, kubeconfig, certs) and structured secrets server-side (DynamoDB + KMS), then lets any authorized teammate pull them to their laptop or CI runner with a single dotvault pull. No AWS account required.
AWS accounts required
command to sync (dotvault pull)
official SDKs (Go, Python)
built-in roles
Everything you need to distribute secrets safely, in one CLI.
dotvault pull writes every declared file to disk. Hand-written lines outside the managed markers are always preserved.
dotvault run -- npm run dev injects secrets straight into the child process environment. Ideal for local dev.
dotvault versions shows the full history of a key; dotvault rollback --to <version> restores any prior value.
.npmrc, kubeconfig, certs — sync any file as-is with dotvault push, no extra configuration.
From solo developers to organizations running many projects.
Personal Owner, Org Admin, Org Member, and Platform Admin — each with clearly scoped permissions.
Mint an est_... service token, store it as DOTVAULT_TOKEN in your CI secrets, and pull production secrets with no interactive login.
Credentials shared across projects (Cloudflare, Sentry, ...) live once in the org's global key pool — each project explicitly binds only what it needs.
Track who changed which value, and when, from the Audit Log.
The platform_admin role covers plan catalog management, cross-org visibility, org suspension, and SCIM.
Auth tokens are stored in macOS Keychain, Linux libsecret, or Windows Credential Manager — never in a plain file.
Values are encrypted server-side. Only permitted members can pull them — no more secrets flying around in copy-paste.
A new developer runs dotvault login && dotvault pull and every environment variable they need is there.
Run dotvault scan as a pre-commit hook to catch secrets before they land in a commit — fully offline.
Every key is versioned, so a mistake is one dotvault rollback away from being fixed.
Run dotvault init, login, and pull to keep .env in sync across every machine you code on.
Onboarding a new teammate is login + pull — no more sending .env files over Slack.
Store a service token as DOTVAULT_TOKEN in your CI secrets, then dotvault pull --env production for production secrets.
Shared credentials like a Cloudflare token live in the global key pool — only the projects that need them bind in.
.npmrc, kubeconfig, certificates — dotvault push brings them into the same sync flow.
Stop pasting .env files into Slack. Secrets shouldn't be copied around — they should be pulled by whoever's authorized. That's dotvault.
No. dotvault users don't need an AWS account. Authentication is Cognito email + password, and storage/encryption (DynamoDB + KMS) is handled entirely by dotvault's infrastructure.
Stop sharing .env files. Start pulling them.
Get started free