Skip to content

fnoxFort Knox for your secrets

Manage secrets with encryption or cloud providers - or both!

fnox

Quick Example โ€‹

bash
# Initialize fnox in your project
fnox init

# Set a secret (stores it encrypted in fnox.toml)
fnox set DATABASE_URL "postgresql://localhost/mydb"

# Get a secret
fnox get DATABASE_URL

# Run commands with secrets loaded as env vars
fnox exec -- npm start

# Enable shell integration (auto-load secrets on cd)
eval "$(fnox activate bash)"  # or zsh, fish โ€” see docs for Nushell

The Golden Path โ€‹

The recommended setup: keep secrets in a vault like 1Password, commit only references to them in fnox.toml, and cache them locally with fnox sync under a personal age key โ€” which can even live in hardware like a Secure Enclave, YubiKey, or TPM.

bash
fnox sync --provider sync-age --local-file

The vault stays the source of truth, but secrets load instantly and offline on every cd. See The Golden Path for details, or jump straight to the setup walkthrough.

How It Works โ€‹

fnox uses a simple TOML config file (fnox.toml) that you check into git. Secrets are either:

  1. Encrypted inline - The encrypted ciphertext lives in the config file
  2. Remote references - The config contains a reference (like "my-db-password") that points to a secret in AWS/1Password/etc.

You configure providers (encryption methods or cloud services), then assign each secret to a provider. fnox handles the rest.

toml
# fnox.toml
[providers]
age = { type = "age", recipients = ["age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p"] }

[secrets]
DATABASE_URL = { provider = "age", value = "YWdlLWVuY3J5cHRpb24uLi4=" }  # โ† encrypted ciphertext, safe to commit
API_KEY = { default = "dev-key-12345" }  # โ† plain default value for local dev

Supported Providers โ€‹

fnox works with over 20 providers across four categories:

  • ๐Ÿ” Encryption (secrets in git) โ€” age (with SSH keys and hardware plugins), FIDO2, YubiKey, AWS/Azure/GCP KMS
  • โ˜๏ธ Cloud secret storage โ€” AWS Secrets Manager & Parameter Store, Azure Key Vault, GCP Secret Manager, HashiCorp Vault, Doppler, and more
  • ๐Ÿ”‘ Password managers โ€” 1Password, Bitwarden, Proton Pass, Infisical
  • ๐Ÿ’ป Local storage โ€” OS keychain, KeePass, password-store

See the Providers Overview for the full list and a comparison of trade-offs.

MIT LicenseCopyright ยฉ 2026jdx.dev