Environment Variables Managed Right

A self-hosted CLI tool for managing environment variables across projects and teams. Organize with projects and environments, sync with your team, and stop passing .env files over chat.

user@devbox:~/my-project
➜ ~ envoy setup connect --url http://localhost:8080
> Connected
➜ ~ envoy setup login
> Email: user@example.com
> Password: ********
> Logged in
➜ ~ envoy link --project demo
> Linked to 'demo/dev'
➜ ~ envoy vars push -f .env
> Pushed to 'demo/dev'

Features

Everything you need to manage environment variables.

Projects

Organize your variables into projects. Link directories to a project for automatic context.

Environments

Create dev, staging, production environments. Keep configs separate — misspelled names fail closed, never create strays.

Variables

Set, get, list, and unset variables per environment. Script-friendly output for CI.

Push / Pull

Push .env files in seconds with vars push. Pull them back down when deploying or onboarding.

Team Sharing

Invite teammates with one-time tokens. Control who can view or edit each project.

Secure Auth

JWT-based authentication. Your session, your access.

Why Envoy?

Stop managing .env files manually.

No more scattered .env files

Keep environments in sync

Share configs with your team

One source of truth

Security

JWT auth. Team access controls. Your data, your rules.

JWT Authentication

Secure token-based sessions.

Team Access

Control who can view or edit.

Project Ownership

Clear ownership boundaries.

Note

Variables are not currently encrypted at rest.

Use Cases

Solo Developers

Manage env vars across all your projects in one place.

Small Teams

Share configs securely without sending secrets over chat.

DevOps

Keep dev, staging, and production in sync.

Get Started

Build from source with Rust and start managing your env vars.

make build-release
./target/release/envoy-server
envoy setup connect --url http://localhost:8080
envoy setup init
envoy setup login

Requires Rust stable. Binaries land in target/release/: envoy, envoy-server.