Getting Started with the CLI
Install the Pinner CLI, walk through the setup wizard, and confirm everything works.
If you just want to pin a file right now, see Quickstart.
Install
curl -fsSL https://get.pinner.xyz | shirm https://get.pinner.xyz/install.ps1 | iexThe installer detects your package manager and uses it automatically. On macOS it prefers Homebrew; on Linux it tries dpkg then rpm before falling back to a binary download. On Windows it tries winget, then Scoop, then falls back to a binary download. All methods verify SHA256 checksums.
Other install methods
The universal installer handles most cases. Use these when you need more control.
| Method | Command |
|---|---|
| Homebrew | brew install lumeweb/tap/pinner |
| winget | winget install Pinner.Cli |
| Scoop | scoop bucket add lumeweb https://github.com/LumeWeb/scoop-bucket then scoop install pinner |
| Debian/Ubuntu | sudo dpkg -i pinner-cli_VERSION_linux_amd64.deb |
| Fedora/RHEL | sudo rpm -i pinner-cli_VERSION_linux_amd64.rpm |
| Go | go install go.lumeweb.com/pinner-cli/cmd/pinner@latest |
| Binary | Download from GitHub Releases |
Installer flags
macOS / Linux (install.sh):
| Flag | Description |
|---|---|
--system | Install to /usr/local/bin (requires sudo if not writable) |
--bin-dir DIR | Install to a custom directory |
--arch ARCH | Override detected architecture (amd64 or arm64) |
--no-pkg | Skip package manager detection, use binary install |
--uninstall | Remove the Pinner CLI |
--debug | Enable verbose output |
Windows (install.ps1):
| Flag | Description |
|---|---|
-System | Install to Program Files (requires admin) |
-NoPkg | Skip winget/scoop detection |
-CI | Enable CI mode (also activated by CI=true env var) |
-Uninstall | Remove the Pinner CLI |
Set up
After installing, run the setup wizard:
pinner setupThe wizard walks you through:
- Authentication: log in or register
- Configuration: set API endpoint, memory limits, and other options
If you've already authenticated or configured, the wizard detects that and skips the step.
Skip steps
# Skip authentication (already logged in)
pinner setup --skip-auth
# Skip configuration (already configured)
pinner setup --skip-config
# Reset everything and start fresh
pinner setup --resetNon-interactive environments
For CI, Docker, or scripts, skip the wizard and use individual commands:
# Authenticate with a JWT token
pinner auth YOUR_TOKEN
# Or log in interactively
pinner auth --email you@example.com
# Configure
pinner config set memory_limit 256
pinner config set secure trueVerify
# Print version
pinner --version
# Display diagnostic information for troubleshooting
pinner doctorIf pinner doctor reports problems, see CLI Doctor for troubleshooting.