Open-source clipboard manager for macOS — visual shelf, pinboards, paste stack
Swift
11
236 commits
updated Oct 1, 2026
Copy is a free, open-source clipboard manager for macOS. Press ⇧⌘V and a shelf of cards slides up from the bottom of your screen showing everything you have copied, ready to search, pin, edit, and paste back. It is local-first, native, and deliberately quiet: no account, no cloud, no telemetry.
Website · Download · Install · Shortcuts
Watch the one minute demo (MP4, 11 MB). The video is built from code in video/.
The built-in clipboard remembers one thing. Copy remembers all of it, as a visual shelf you summon from any app. Every copy becomes a card the moment you make it: text, images, links, files, colors, all captured automatically, newest first, and instantly searchable, including the text inside screenshots.
The shelf
Organizing
Editing and power tools
#4C9DFF and the card shows the actual colorPasting
Private by design
brew install --cask tarikbc/tap/copy
Grab the latest DMG from Releases, open it, and drag Copy to Applications. Requires macOS 14 (Sonoma) or later.
On first launch, Copy asks for Accessibility access (to paste for you) and, on macOS 15.4+, pasteboard access. Summon it any time with ⇧⌘V.
| Shortcut | Action |
|---|---|
| ⇧⌘V | Open the shelf |
| ← / → | Move selection |
| ⌘C | Copy the selection to the clipboard |
| ⌘V | Paste the selection |
| ⏎ | Paste selected card |
| ⌥⏎ | Paste as plain text |
| Space | Preview selected card |
| 1–9 | Quick-paste the Nth card |
| ⌘1–⌘9 | Switch to history / pinboard tab |
| ⌘E | Edit selected card |
| ⌘R | Rename selected card |
| ⌘O | Open selected link or file |
| ⌘Z | Undo the last delete |
| ⌫ | Delete selected card (when the search box is empty) |
| ⌘⌫ | Clear the search, or delete the selected card |
| ⌘N | New item |
| ⇧⌘C | Toggle the paste stack |
Requirements: macOS 14+, Xcode 16+, and XcodeGen (brew install xcodegen).
xcodegen generate
xcodebuild -project Copy.xcodeproj -scheme Copy -configuration Debug build
Core engine tests:
swift test --package-path CopyCore
The app is a thin SwiftUI + AppKit shell over CopyCore, a local Swift package (GRDB / SQLite + FTS5) that holds the clipboard engine, storage, and all the logic that carries a test suite. UI lives in the app target; behavior lives in CopyCore.
Pushing a version tag (vX.Y.Z) runs .github/workflows/release.yml, which builds,
signs, notarizes, and publishes the full release: a Developer ID signed and notarized
DMG, a signed Sparkle update zip, an updated docs/appcast.xml committed back to main,
and a GitHub release with both artifacts attached. See RELEASING.md for the
required secrets and the release ritual, and Scripts/release.sh for the underlying
pipeline (the same script CI runs).
Copy is local-only, with one exception: link previews fetch the page title and favicon for copied links directly from the web. This is on by default and can be turned off in Settings under History. Aside from that and checking for app updates, Copy makes no network calls, has no analytics or crash reporting, and your clipboard history never leaves your Mac. Any app that marks its pasteboard content as concealed, such as a password manager, is skipped entirely, and you can add per-app exclusions for anything else you would rather Copy ignore.
Copy is built in the open and contributions are welcome. Good places to start:
CopyCore and has its own test suite
(swift test --package-path CopyCore); please add or update tests for any engine changeThe design language is deliberately quiet and native (no colored card stripes, no clutter), and the app keeps a macOS 14 floor with newer-OS features gated behind availability checks.
Commits need a Signed-off-by trailer, which git commit -s adds for you. CI
checks it. CONTRIBUTING.md has the build commands and explains
what the sign-off certifies.
GPL-3.0. © 2026 Tarik Caramanico.
Forks are welcome and the code is yours to take. The name and the artwork are not part of that grant: NOTICE records an additional term under GPL-3.0 section 7(e), and TRADEMARK.md says what it means in practice. The short version is to ship your fork under your own name.
Swift
86.0%
TypeScript
10.4%
Shell
3.4%
Open-source clipboard manager for macOS — visual shelf, pinboards, paste stack
Swift
11
236 commits
updated Oct 1, 2026
Copy is a free, open-source clipboard manager for macOS. Press ⇧⌘V and a shelf of cards slides up from the bottom of your screen showing everything you have copied, ready to search, pin, edit, and paste back. It is local-first, native, and deliberately quiet: no account, no cloud, no telemetry.
Website · Download · Install · Shortcuts
Watch the one minute demo (MP4, 11 MB). The video is built from code in video/.
The built-in clipboard remembers one thing. Copy remembers all of it, as a visual shelf you summon from any app. Every copy becomes a card the moment you make it: text, images, links, files, colors, all captured automatically, newest first, and instantly searchable, including the text inside screenshots.
The shelf
Organizing
Editing and power tools
#4C9DFF and the card shows the actual colorPasting
Private by design
brew install --cask tarikbc/tap/copy
Grab the latest DMG from Releases, open it, and drag Copy to Applications. Requires macOS 14 (Sonoma) or later.
On first launch, Copy asks for Accessibility access (to paste for you) and, on macOS 15.4+, pasteboard access. Summon it any time with ⇧⌘V.
| Shortcut | Action |
|---|---|
| ⇧⌘V | Open the shelf |
| ← / → | Move selection |
| ⌘C | Copy the selection to the clipboard |
| ⌘V | Paste the selection |
| ⏎ | Paste selected card |
| ⌥⏎ | Paste as plain text |
| Space | Preview selected card |
| 1–9 | Quick-paste the Nth card |
| ⌘1–⌘9 | Switch to history / pinboard tab |
| ⌘E | Edit selected card |
| ⌘R | Rename selected card |
| ⌘O | Open selected link or file |
| ⌘Z | Undo the last delete |
| ⌫ | Delete selected card (when the search box is empty) |
| ⌘⌫ | Clear the search, or delete the selected card |
| ⌘N | New item |
| ⇧⌘C | Toggle the paste stack |
Requirements: macOS 14+, Xcode 16+, and XcodeGen (brew install xcodegen).
xcodegen generate
xcodebuild -project Copy.xcodeproj -scheme Copy -configuration Debug build
Core engine tests:
swift test --package-path CopyCore
The app is a thin SwiftUI + AppKit shell over CopyCore, a local Swift package (GRDB / SQLite + FTS5) that holds the clipboard engine, storage, and all the logic that carries a test suite. UI lives in the app target; behavior lives in CopyCore.
Pushing a version tag (vX.Y.Z) runs .github/workflows/release.yml, which builds,
signs, notarizes, and publishes the full release: a Developer ID signed and notarized
DMG, a signed Sparkle update zip, an updated docs/appcast.xml committed back to main,
and a GitHub release with both artifacts attached. See RELEASING.md for the
required secrets and the release ritual, and Scripts/release.sh for the underlying
pipeline (the same script CI runs).
Copy is local-only, with one exception: link previews fetch the page title and favicon for copied links directly from the web. This is on by default and can be turned off in Settings under History. Aside from that and checking for app updates, Copy makes no network calls, has no analytics or crash reporting, and your clipboard history never leaves your Mac. Any app that marks its pasteboard content as concealed, such as a password manager, is skipped entirely, and you can add per-app exclusions for anything else you would rather Copy ignore.
Copy is built in the open and contributions are welcome. Good places to start:
CopyCore and has its own test suite
(swift test --package-path CopyCore); please add or update tests for any engine changeThe design language is deliberately quiet and native (no colored card stripes, no clutter), and the app keeps a macOS 14 floor with newer-OS features gated behind availability checks.
Commits need a Signed-off-by trailer, which git commit -s adds for you. CI
checks it. CONTRIBUTING.md has the build commands and explains
what the sign-off certifies.
GPL-3.0. © 2026 Tarik Caramanico.
Forks are welcome and the code is yours to take. The name and the artwork are not part of that grant: NOTICE records an additional term under GPL-3.0 section 7(e), and TRADEMARK.md says what it means in practice. The short version is to ship your fork under your own name.
Swift
86.0%
TypeScript
10.4%
Shell
3.4%