A cross-platform clipboard syncing application written in Go
There are two flavors: a CLI named clipshift and a version that will show an icon in the system tray while syncing name clipshift-tray. The clipshift-tray version also includes the ability to start sync at login.
-
With Go:
go install github.com/getclipshift/clipshift@latest -
With Homebrew
-
clipshiftbrew tap getclipshift/tap brew install clipshift
-
clipshift-traybrew tap getclipshift/tap brew install --cask --no-quarantine clipshift
-
-
With Scoop (installs both
clipshiftandclipshift-tray)scoop bucket add clipshift https://github.com/getclipshift/bucket.git scoop install clipshift
-
Bash or zsh Download and extract the binary for your platform/arch to some place that is in your
$PATH, example:curl -o clipshift.tar.gz "https://github.com/getclipshift/clipshift/releases/latest/download/clipshift_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m).tar.gz" sudo tar -C /usr/local/bin -xzf clipshift.tar.gz rm clipshift.tar.gz
- Configure at least one backend:
clipshift config add-backend - Run
clipshift syncorclipshift-trayto have clipboard contents synced automatically - Run
clipshift sendto manually send the current clipboard - Run
clipshift getto manually receive the latest clipboard
You can use clipshift help to see all commands and their options
A backend server must be configured for clipshift to connect to and send/receive clipboard contents.
A backend can operate in 4 different ways:
- Sync - will send and receive clipboard contents automatically during sync or a manual send/get command
- Push - will send clipboard contents automatically during sync or a manual send command
- Pull - will receive clipboard contents automatically during sync or a manual get command
- Manual - will only be used when a manual send/get command is run
ntfy.sh (recommended)
A push notification service. Currently the best option to use as a backend.
Nostr relay (advanced)
A flexible protocol using websockets with encrypted direct message support.