❯envpilot
featurespricing❯docsblogchangelogwishlistfaq
sign-inget-started
// documentation
Start Here
  • Quickstart
  • Core concepts
  • Architecture: the machine surfaces
Platform
  • Data model
  • Variables
  • Secret files
  • Shared Accounts
  • Secret Sharing Links
  • Diagrams in documentation
  • Sharing documentation
  • Roles & permissions
  • Requests & approvals
  • Rotation & expiry
  • Security
Plans & Limits
  • Plans & Limits
  • Rate limits
CLI
  • CLI overview
  • Authentication & accounts
  • Linking projects
  • Pull & push
  • Running commands with secrets
  • Single secrets
  • Requests
  • Secret files
  • Command reference
  • CLI in CI & troubleshooting
VS Code
  • VS Code overview
  • Linking & sync
  • Protection
  • Editor features
  • Commands
  • Settings
  • Troubleshooting
GitHub Action
  • GitHub Action overview
  • Inputs & outputs
  • Secret files in CI
  • Recipes
  • Action security
Docker
  • Docker overview
  • Build time
  • Runtime
  • Docker Compose
  • Docker reference
API Reference
  • API overview
  • API Quickstart
  • Authentication
  • Errors
  • Organization
  • Projects
  • Variables
  • Shared accounts
  • Secret files
MCP Server
  • MCP overview
  • MCP setup
  • Connecting a client
  • Tools
  • Agent requests
Web Dashboard
  • Dashboard overview
  • Working in a project
  • Organization administration
Integrations
  • Slack & Discord Notifications
Guides
  • How to Share Environment Variables Securely
  • Next.js Environment Variables Best Practices
  • Android keystore in CI
  • Giving an agent secrets safely

// resources

  • github
  • npm
  • vs code marketplace
Start HerePlatformPlans & LimitsCLIVS CodeGitHub ActionDockerAPI ReferenceMCP ServerWeb DashboardIntegrationsGuides
❯envpilot

Encrypted environment variables for teams that live in the terminal. No .env files, no secrets in Slack.

$npm install -g @envpilot/cli

// product

  • Features
  • Pricing
  • Changelog
  • Wishlist

// resources

  • Getting Started
  • CLI Reference
  • VS Code Extension
  • Security

// compare

  • vs Doppler
  • vs Infisical
  • vs .env files

// support

  • FAQ
  • Support
  • Contact
  • Docs
  • Status

// legal

  • Privacy Policy
  • Terms of Service

© 2026 Envpilot · Built at Syntax Lab Technology · Abdul Rafay

ENVPILOT

❯envpilot
featurespricing❯docsblogchangelogwishlistfaq
sign-inget-started
// documentation
Start Here
  • Quickstart
  • Core concepts
  • Architecture: the machine surfaces
Platform
  • Data model
  • Variables
  • Secret files
  • Shared Accounts
  • Secret Sharing Links
  • Diagrams in documentation
  • Sharing documentation
  • Roles & permissions
  • Requests & approvals
  • Rotation & expiry
  • Security
Plans & Limits
  • Plans & Limits
  • Rate limits
CLI
  • CLI overview
  • Authentication & accounts
  • Linking projects
  • Pull & push
  • Running commands with secrets
  • Single secrets
  • Requests
  • Secret files
  • Command reference
  • CLI in CI & troubleshooting
VS Code
  • VS Code overview
  • Linking & sync
  • Protection
  • Editor features
  • Commands
  • Settings
  • Troubleshooting
GitHub Action
  • GitHub Action overview
  • Inputs & outputs
  • Secret files in CI
  • Recipes
  • Action security
Docker
  • Docker overview
  • Build time
  • Runtime
  • Docker Compose
  • Docker reference
API Reference
  • API overview
  • API Quickstart
  • Authentication
  • Errors
  • Organization
  • Projects
  • Variables
  • Shared accounts
  • Secret files
MCP Server
  • MCP overview
  • MCP setup
  • Connecting a client
  • Tools
  • Agent requests
Web Dashboard
  • Dashboard overview
  • Working in a project
  • Organization administration
Integrations
  • Slack & Discord Notifications
Guides
  • How to Share Environment Variables Securely
  • Next.js Environment Variables Best Practices
  • Android keystore in CI
  • Giving an agent secrets safely

// resources

  • github
  • npm
  • vs code marketplace
Start HerePlatformPlans & LimitsCLIVS CodeGitHub ActionDockerAPI ReferenceMCP ServerWeb DashboardIntegrationsGuides
❯envpilot

Encrypted environment variables for teams that live in the terminal. No .env files, no secrets in Slack.

$npm install -g @envpilot/cli

// product

  • Features
  • Pricing
  • Changelog
  • Wishlist

// resources

  • Getting Started
  • CLI Reference
  • VS Code Extension
  • Security

// compare

  • vs Doppler
  • vs Infisical
  • vs .env files

// support

  • FAQ
  • Support
  • Contact
  • Docs
  • Status

// legal

  • Privacy Policy
  • Terms of Service

© 2026 Envpilot · Built at Syntax Lab Technology · Abdul Rafay

ENVPILOT

// documentation
Start Here
  • Quickstart
  • Core concepts
  • Architecture: the machine surfaces
Platform
  • Data model
  • Variables
  • Secret files
  • Shared Accounts
  • Secret Sharing Links
  • Diagrams in documentation
  • Sharing documentation
  • Roles & permissions
  • Requests & approvals
  • Rotation & expiry
  • Security
Plans & Limits
  • Plans & Limits
  • Rate limits
CLI
  • CLI overview
  • Authentication & accounts
  • Linking projects
  • Pull & push
  • Running commands with secrets
  • Single secrets
  • Requests
  • Secret files
  • Command reference
  • CLI in CI & troubleshooting
VS Code
  • VS Code overview
  • Linking & sync
  • Protection
  • Editor features
  • Commands
  • Settings
  • Troubleshooting
GitHub Action
  • GitHub Action overview
  • Inputs & outputs
  • Secret files in CI
  • Recipes
  • Action security
Docker
  • Docker overview
  • Build time
  • Runtime
  • Docker Compose
  • Docker reference
API Reference
  • API overview
  • API Quickstart
  • Authentication
  • Errors
  • Organization
  • Projects
  • Variables
  • Shared accounts
  • Secret files
MCP Server
  • MCP overview
  • MCP setup
  • Connecting a client
  • Tools
  • Agent requests
Web Dashboard
  • Dashboard overview
  • Working in a project
  • Organization administration
Integrations
  • Slack & Discord Notifications
Guides
  • How to Share Environment Variables Securely
  • Next.js Environment Variables Best Practices
  • Android keystore in CI
  • Giving an agent secrets safely

// resources

  • github
  • npm
  • vs code marketplace
Start HerePlatformPlans & LimitsCLIVS CodeGitHub ActionDockerAPI ReferenceMCP ServerWeb DashboardIntegrationsGuides
CLI overviewAuthentication & accountsLinking projectsPull & pushRunning commands with secretsSingle secretsRequestsSecret filesCommand referenceCLI in CI & troubleshooting
docs/CLI

Secret files

Upload, inspect, and materialise keystores, SSH keys and certificates from the terminal.

open in claudeopen in chatgptopen in cursor

Secret files

Keystores, SSH keys, .p12 certificates, service-account JSON — the secrets that do not fit in a .env. Each carries a destination path and a mode, so one command turns a fresh clone into a buildable checkout.

Concepts and storage model: Secret files.

Inspect without decrypting#

❯terminal
envpilot files list              # alias: envpilot files ls
envpilot files list -e production
envpilot files status

Both are metadata-only: path, size, mode, checksum, environments. Nothing is decrypted, and nothing is recorded as a download — exploring what a project holds is free.

status compares each recorded file against your working directory and reports missing, in sync, or modified.

Materialise them#

❯terminal
envpilot files pull
envpilot files pull -e production
envpilot files pull --force

Writes every in-scope file to its recorded path with its recorded mode. Two safeguards:

  • Paths are gitignored before they are written, not after.
  • A local file that differs from the server is never silently replaced. The pull refuses, lists the conflicting paths, and exits non-zero until you pass --force. Someone's debug keystore is worth more than a tidy diff.

One file at a time:

❯terminal
envpilot files get android/app/upload.jks
envpilot files get android/app/upload.jks --force

Upload#

❯terminal
envpilot files add ./upload.jks \
  --path android/app/upload.jks \
  --env production \
  --mode 0600 \
  --name "Play upload keystore" \
  --description "Signing key for release builds"
FlagDefaultMeaning
--path <path>the file's own pathWhere clients will write it
-n, --name <name>the filenameDisplay name
-e, --env <list>the linked environmentComma-separated environments
--mode <mode>06000600 or 0400 — nothing else
-d, --description <t>—Optional note
--project <name-or-id>active linkUse a specific linked project

Remove#

❯terminal
envpilot files rm android/app/upload.jks
envpilot files rm android/app/upload.jks -e staging --yes
envpilot files rm android/app/upload.jks --all-envs

Like variables, removal is environment-aware: by default only the selected environment is detached, and the file stays live in the others. --all-envs trashes it everywhere.

Limits#

  • Reading contents is audited. Every pull and get is recorded against you. list and status are not.
  • File size: 256 KB on Free, 8 MB on Pro. Count: 3 files on Free, unlimited on Pro — with a hard ceiling of 1000 active files per project that no plan lifts.
  • Rate: content reads refill at 60/min with a burst of 1000; uploads are 20/min per user.
  • Paths are strict — relative only, forward slashes, no .., and .git, .gitignore, .envpilot are reserved. Rejected paths are refused, never sanitised.
  • Modes are 0600 or 0400. There is no 0755; these are secrets, not scripts.
  • Uploading is CLI or dashboard only. The VS Code extension writes secret files during sync but cannot upload, edit, or delete them.

Next#

  • Android keystore in CI
  • GitHub Action: secret files
← cliRequests
cli →Command reference

// on this page

  • Inspect without decrypting
  • Materialise them
  • Upload
  • Remove
  • Limits
  • Next