Zynk CLI

Setting up the Zynk CLI

Install Zynk, set up your account, and send your first transfer from the terminal.

Install Zynk

Run the installer in a terminal. It detects your operating system and CPU, downloads the matching binary, then drops you into a one-time setup that records your phone number and writes local config.

Your phone number is your Zynk account, and each computer or phone you set up becomes one device under that account. Numbers must start with + and contain digits only, such as +15551234567. The setup step validates the format and writes local config; it does not ask for an SMS code.

Set ZYNK_NO_SETUP=1 if you are provisioning unattended and only need the binary, then run zynk install later to finish setup.

macOS, Linux, or FreeBSD

$ curl -fsSL https://zynk.it/install.sh | bash

Windows PowerShell

PS> irm https://zynk.it/install.ps1 | iex

What the setup wizard asks

$ zynk install> Select [1-2] [default: 1]: 1> Enter phone number (start with +, e.g., +1234567890): +15551234567Appearance> Theme [0-8] default Classic: 1Phone number verifiedConfiguration saved to <user-config-file>Installation Complete

Abbreviated around the theme preview table. The installer launches this wizard for you; you only need to run zynk install directly if you skipped setup or want to redo it.

Where it installs

  • macOS, Linux, and FreeBSD use ~/.local/bin unless ZYNK_INSTALL_DIR is set.
  • Windows uses %USERPROFILE%\.zynk\bin and updates your user PATH.

Send a file or folder

zynk send takes a destination first, then one or more paths. The path can be a file, a folder, or many paths from stdin.

For a real first send, use another Zynk account phone number or a second device that is already set up under your account. A single configured machine cannot receive its own first transfer unless another target exists.

Send to a phone number

$ zynk send +1234567890 ~/Projects/site-backupSuccessfully requested Folder send to +1234567890

Contact names work too, but a phone number is the explicit target. This line means Zynk accepted the send request locally; the recipient still needs to come online and accept before files are saved there.

Send to your own device

$ zynk send my:iphone ~/Videos$ zynk send my:"Mac Home" ~/Videos

Prefix any of your own device names with my: to target that device. Quote the name when it contains spaces. Run zynk devices to see the names registered under your account.

If your device is missing

  • If zynk devices is empty or only shows this machine, set up Zynk on the other device with the same phone number.
  • If the expected device is missing, run zynk about on both machines and confirm they use the same account.
  • Use a phone number target for another person, and my:devicename only for a device under your own account.

Receive a file

Incoming transfers wait in your inbox until you accept them. Nothing is saved to disk until you choose it.

Accept one transfer

$ zynk pendingID    NAME           SIZE      STATE      SENDER0     site-backup    1.4 GB    pending    Alice$ zynk pending --contact NobodyNo pending transfers.$ zynk accept 0 ~/DownloadsAccepting file transfer from Alice: site-backup to ~/DownloadsPlease use showprogress|sp to see the file's progress

The 0 is the pending row ID. The final argument is the folder where Zynk saves the accepted transfer.