A fast CLI for storing, syncing, and injecting API keys. No cloud, no config files. Everything stays on your machine.
SQLite database in ~/.keys. Nothing leaves your machine. Touch ID authentication on macOS.
Sync keys between machines over the local network or Tailscale. Encrypted with a one-time passphrase.
Inject keys into commands, audit access history, and verify required keys before running agents.
Browse, search, and copy keys with a terminal UI. Peek mode for screen-sharing.
Import from .env files, export back. Generate .env files for any project directory.
Isolate keys by project or environment. Switch with one command.
keys add NAME value
Store a key
keys get NAME
Print a key's value (or interactive picker with no args)
keys see
Browse keys with fuzzy search, copy to clipboard
keys peek
Masked view — press r to reveal
keys inject API_KEY DB_URL
Output as inline env vars for command substitution
keys sync serve / pull
Sync keys between machines over the network
keys audit
View key access history and usage
keys check
Verify required keys exist before running
keys import .env
Bulk import from .env files
keys profile use dev
Switch between key profiles
Transfer keys between machines. No cloud required.
$ keys sync serve Serving 12 keys from profile "default" Passphrase: olive-quilt-haven Port: 7331 Waiting for connections... ✓ Synced with Satyam's Mac Mini
$ keys sync pull Scanning for peers... 1. Satyam's MacBook Pro (192.168.1.10) Enter passphrase: olive-quilt-haven Synced. 12 keys: 10 added, 2 updated, 0 skipped.