A native clipboard manager for macOS, inspired by Paste. Copia runs as a menu bar agent (no Dock icon) and shows your clipboard history in a floating panel with a global shortcut.
- Automatic capture — everything you copy (plain text, rich text, images, files, URLs) is captured automatically. No extra keystrokes needed.
- Floating panel — press ⌘⇧V anywhere to open a horizontally scrolling card view of your history. The panel never steals focus from the app you're working in.
- Paste anywhere — select an item and press Return (or click it) to paste it directly into the frontmost app.
- Full-text search — FTS5-backed prefix search across content and source app, with filter tokens for type, app, and board.
- Pinboards — organize items into colored boards via drag & drop.
- Pinning — pin important items (⌘P or right-click) so they stay at the front of the list and survive history cleanup.
- Privacy-aware — content marked as concealed by password managers is never stored, and you can ignore specific apps entirely.
- Retention control — keep history for a day, a week, a month, a year, or forever; old items are pruned automatically.
- Local-only — everything stays on your Mac in a local SQLite database. No network, no accounts, no telemetry.
- macOS 14.0 or later
- Xcode 16+ to build from source
- Open
Copia.xcodeprojin Xcode. - Wait for Swift Package Manager to resolve dependencies (GRDB.swift, KeyboardShortcuts, Defaults).
- Run (⌘R). The app appears as a clipboard icon in the menu bar.
Or from the command line:
xcodebuild -project Copia.xcodeproj -scheme Copia -configuration Debug build| Action | Shortcut |
|---|---|
| Open/close the panel | ⌘⇧V (configurable in Settings) |
| Navigate items | ← / → or Tab / ⇧Tab |
| Paste selected item | Return, or click the card |
| Pin / unpin selected item | ⌘P |
| Edit selected text item | ⌘E |
| Delete selected item | ⌘⌫ |
| Copy without pasting | configurable in Settings |
| Cycle pinboards | configurable in Settings |
| Close panel / clear search | Esc |
Typing while the panel is open searches immediately.
Pasting into the active app works by synthesizing ⌘V, which requires Accessibility permission: enable Copia under System Settings → Privacy & Security → Accessibility. Without it, selecting an item only copies it to the clipboard and you paste manually.
- Database:
~/Library/Application Support/Copia/paste.sqlite(GRDB + FTS5) - Image/file payloads:
~/Library/Application Support/Copia/blobs/
- The App Sandbox is disabled (
ENABLE_APP_SANDBOX = NO) — required for global paste synthesis and Accessibility. Do not enable it. - macOS has no clipboard-change notification, so
NSPasteboard.changeCountis polled roughly every 0.4 s. - All components are wired together in
AppDelegate.applicationDidFinishLaunching— no DI container. SeeCLAUDE.mdfor a full architecture overview.
Contributions are welcome! See CONTRIBUTING.md for how to get started.
