CLI Reference
Create and read zero-knowledge notes from your terminal, scripts, Dockerfiles, and CI pipelines.
Installation
brew tap quantum-encoding/tap && brew install voidnote go install github.com/quantum-encoding/voidnote-cli@latest Pre-built binaries for macOS, Linux (amd64/arm64), and Windows are available on the releases page.
Authentication
Log in once. The CLI stores credentials in ~/.config/voidnote/credentials.
voidnote login
VOIDNOTE_TOKEN=<api-token> voidnote send ...
voidnote send
Encrypt content and return a share link. Content is never sent in plaintext.
# pipe stdin
echo "deploy key: abc123" | voidnote send# send a file
voidnote send --file secrets.env# 3 views, expires in 6 hours
voidnote send --views 3 --expires 6h --title "DB creds"# output just the URL (useful for scripting)
voidnote send --quiet < secret.txt| Flag | Default | Description |
|---|---|---|
| --file, -f | stdin | File to encrypt and send |
| --title, -t | — | Optional title (stored in plaintext) |
| --views, -v | 1 | Max views before destruction (1–100) |
| --expires, -e | 24h | Expiry: 1h, 6h, 24h, 3d, 7d, 30d |
| --quiet, -q | false | Print only the URL, no decoration |
| --json | false | Output result as JSON |
voidnote read
Fetch and decrypt a note by URL. Counts as one view.
# print to stdout
voidnote read https://voidnote.net/note/<token># save to file
voidnote read <url> --out secrets.env# pipe into a command
voidnote read <url> | source /dev/stdinOther commands
| Command | Description |
|---|---|
| voidnote login | Authenticate and store credentials |
| voidnote logout | Remove stored credentials |
| voidnote status | Show auth status and credit balance |
| voidnote list | List your recent notes (title, expiry, views remaining) |
| voidnote version | Print CLI version and check for updates |
CI / CD examples
GitHub Actions — send secrets to a teammate without storing them in logs:
- name: Share deploy key
run: |
echo "${{ secrets.DEPLOY_KEY }}" \
| voidnote send --views 1 --expires 1h --quiet
env:
VOIDNOTE_TOKEN: ${{ secrets.VOIDNOTE_TOKEN }} Dockerfile — inject secrets at runtime without baking them into the image:
RUN curl -sL https://dl.voidnote.net/cli/install.sh | sh
ARG VOID_URL
RUN voidnote read "$VOID_URL" > /run/secrets/app.env Environment variables
| Variable | Description |
|---|---|
| VOIDNOTE_TOKEN | API token — overrides stored credentials (use in CI) |
| VOIDNOTE_API_URL | Override API base URL (self-hosted instances) |
| NO_COLOR | Disable colour output (standard NO_COLOR convention) |