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
-
clipshift
brew tap getclipshift/tap brew install clipshift
-
clipshift-tray
brew tap getclipshift/tap brew install --cask --no-quarantine clipshift
-
-
With Scoop (installs both
clipshift
andclipshift-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 sync
orclipshift-tray
to have clipboard contents synced automatically - Run
clipshift send
to manually send the current clipboard - Run
clipshift get
to 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.