AntreasAntoniou/cliphoard

A floating AI-native clipboard manager for macOS. Summon your clipboard history with Control+Option+Command+V.

0

stars

137

commits

Swift

primary language

Sep 2, 2026

updated

antreas.io/cliphoard/

README

Cliphoard

Copy anything. Hoard everything.
A fast, private, open-source clipboard manager for macOS — searchable by meaning, entirely on your Mac.

The Cliphoard clipboard bar

Press ⌃⌥⌘V anywhere and your clipboard history slides up from the bottom of the screen as a strip of cards. Pick one and it pastes straight back into whatever app you were in. A clipboard that hoards everything you copy — and hands it back the instant you need it (clip + hoard).

Built with Swift, AppKit and SwiftUI. No Electron, no telemetry, no account, no cloud. Everything you copy stays on your Mac.

Why Cliphoard

  • 🔎 Smart search, on-device. The default Smart mode shows your exact matches first, then the semantically closest clips — find "that database query" by meaning and still get the literal token you typed. Switch modes (Smart / Exact / Tag) right from the pill next to the search field. Three model tiers (ogma micro/small, MiniLM), each installed on first use — the ogma models from HuggingFace so their download numbers reflect real usage of a model we released, MiniLM from our GitHub release. Every model is permissively licensed (MIT or Apache-2.0). No account; your clips never touch a network.
  • 🔒 Private, and provably so. Nothing ever leaves your Mac. Every clip is encrypted at rest with a key bound to the Secure Enclave (where available) — text, rich text and metadata in the database, and image clips and their thumbnails on disk. Password managers are skipped, and being open source you can read the source and confirm there are zero network calls. (Why no sync →)
  • 🎨 17 themes, 3 layouts. A clean Swiss greyscale, One Dark, Dracula, Tokyo Night, Catppuccin and more — follows your macOS Light/Dark appearance. Card strip, compact list, or a Spotlight-style palette with live preview.
  • ⌨️ Keyboard-first. Summon, search, navigate, and paste without leaving the home row.
  • 🧱 Everything you copy. Text, rich text, links, hex colors, files and images — each detected automatically with type-appropriate previews and thumbnails.


Keyboard shortcuts

ShortcutAction
⌃⌥⌘VShow / hide the Cliphoard bar
← → / ↑ ↓Move selection
Paste selected clip
⌘C / ⌃CCopy selected clip (no paste)
⌥↩Paste selected clip as plain text
⌘1⌘9Quick-paste by position
⌘PPin / unpin selection
⌘⌫Delete selection
escDismiss (or close settings)

Click a card to select it; click again to paste. The toolbar gear opens settings right inside the bar (theme, layout, search mode, sound, history limit, permissions).

Install

Download the latest DMG from Releases, drag Cliphoard to Applications, and press ⌃⌥⌘V. Or build from source (below).

On first launch macOS asks for Accessibility access — Cliphoard needs it to send the ⌘V keystroke that pastes into the focused app (System Settings → Privacy & Security → Accessibility). Until granted, selecting a clip still copies it; you paste manually.

Build from source

Requires macOS 13+ and the Swift toolchain (Xcode 15+).

git clone https://github.com/AntreasAntoniou/cliphoard.git
cd cliphoard
make run          # builds Cliphoard.app and launches it

Other targets: make app (build build/Cliphoard.app) · make install (copy to /Applications) · make build (debug binary) · make clean.

Free, and staying that way

MIT licensed. No paid tier, no locked features, no crippled build — everyone gets everything, and make install above gives you the same app as the download.

If it earns a place on your Mac, you can sponsor the work. That is closer to Patreon than to a shop: you are not buying software you already have, you are funding the mission behind it — local-first, secure tools that are genuinely useful and a pleasure to use.

Part of that mission is research, and some of it ships here: searching your clips by meaning runs on ogma, text models I trained and distilled myself from open teachers (2.5M and 8.9M parameters), built around how much capability you can get per parameter rather than how much you can get by making everything bigger. Credit where due — reading text inside screenshots is Apple's Vision framework, and finding images from a description uses OpenVision-Tiny, openly licensed and not mine.

Not sponsoring is completely fine.

Privacy

Everything is stored locally and encrypted at rest — text clips in the database and image clips (plus their thumbnails) on disk (see PRIVACY.md). Cliphoard sends no data anywhere — its only outbound call is the optional one-time model download — and has no telemetry, analytics, or account. Password managers (transient / concealed / auto-generated pasteboards) are skipped, and you can exclude any app. See PRIVACY.md — including why there is, and will be, no cloud sync.

Deep search (on-device embeddings)

Beyond exact substring, Cliphoard searches semantically, fully on-device:

  • Smart search (default) — exact substring matches first, then the semantically closest remaining clips (full vector cosine). You always get the obvious hit, plus meaning-based suggestions below it.
  • Exact — literal case-insensitive substring only.
  • Tag search — every clip is classified at ingest across four stable semantic axes (content type, intent, time horizon, and sensitivity) plus a curated topical pool. Low-confidence labels are omitted, and a query maps to the matching facet or topical tag for an O(1) inverted-index lookup. You can also add your own encrypted user tags.

Models run locally via CoreML:

TierModelDim
Lowaxiotic/open-ogma-micro384 / 1024
Normal (default)axiotic/open-ogma-small384 / 1024

Each ogma model carries two projection heads — 384-d and 1024-d — and the app uses the 1024-d one by default (Settings → Vector detail).

The tag taxonomy and confidence threshold are configurable in Settings → Tags (curated baskets or your own). Open a clip's detail card to inspect automatic labels or add and remove personal tags. Token ids and embeddings match the PyTorch reference exactly (the tokenizer is reimplemented in Swift). To produce/bundle the models, see tools/.

How it works

PieceFile
Pasteboard polling + type detectionSources/Cliphoard/Clipboard/ClipboardMonitor.swift
History model, dedup, incremental index, trimmingSources/Cliphoard/Clipboard/ClipStore.swift
Encrypted SQLite store (Float16 vector BLOBs, WAL)Sources/Cliphoard/Clipboard/Database.swift, Crypto.swift
Global hotkey (Carbon) + slide-up panelSources/Cliphoard/App/HotKey.swift, UI/FloatingPanel.swift
Bar, cards, themes, layouts (SwiftUI)Sources/Cliphoard/UI/ContentView.swift, ClipCardView.swift, Theme.swift

Roadmap

  • Clip stack — queue several, paste in order
  • On-device OCR — search text inside image clips
  • Customizable hotkey · smart actions on links & colors

License

MIT © Antreas Antoniou. Bundled on-device models have their own licenses — see THIRD-PARTY-NOTICES.md.

Contributors

AntreasAntoniou

137 commits

AntreasAntoniou/cliphoard

A floating AI-native clipboard manager for macOS. Summon your clipboard history with Control+Option+Command+V.

0

stars

137

commits

Swift

primary language

Sep 2, 2026

updated

antreas.io/cliphoard/

README

Cliphoard

Copy anything. Hoard everything.
A fast, private, open-source clipboard manager for macOS — searchable by meaning, entirely on your Mac.

The Cliphoard clipboard bar

Press ⌃⌥⌘V anywhere and your clipboard history slides up from the bottom of the screen as a strip of cards. Pick one and it pastes straight back into whatever app you were in. A clipboard that hoards everything you copy — and hands it back the instant you need it (clip + hoard).

Built with Swift, AppKit and SwiftUI. No Electron, no telemetry, no account, no cloud. Everything you copy stays on your Mac.

Why Cliphoard

  • 🔎 Smart search, on-device. The default Smart mode shows your exact matches first, then the semantically closest clips — find "that database query" by meaning and still get the literal token you typed. Switch modes (Smart / Exact / Tag) right from the pill next to the search field. Three model tiers (ogma micro/small, MiniLM), each installed on first use — the ogma models from HuggingFace so their download numbers reflect real usage of a model we released, MiniLM from our GitHub release. Every model is permissively licensed (MIT or Apache-2.0). No account; your clips never touch a network.
  • 🔒 Private, and provably so. Nothing ever leaves your Mac. Every clip is encrypted at rest with a key bound to the Secure Enclave (where available) — text, rich text and metadata in the database, and image clips and their thumbnails on disk. Password managers are skipped, and being open source you can read the source and confirm there are zero network calls. (Why no sync →)
  • 🎨 17 themes, 3 layouts. A clean Swiss greyscale, One Dark, Dracula, Tokyo Night, Catppuccin and more — follows your macOS Light/Dark appearance. Card strip, compact list, or a Spotlight-style palette with live preview.
  • ⌨️ Keyboard-first. Summon, search, navigate, and paste without leaving the home row.
  • 🧱 Everything you copy. Text, rich text, links, hex colors, files and images — each detected automatically with type-appropriate previews and thumbnails.


Keyboard shortcuts

ShortcutAction
⌃⌥⌘VShow / hide the Cliphoard bar
← → / ↑ ↓Move selection
Paste selected clip
⌘C / ⌃CCopy selected clip (no paste)
⌥↩Paste selected clip as plain text
⌘1⌘9Quick-paste by position
⌘PPin / unpin selection
⌘⌫Delete selection
escDismiss (or close settings)

Click a card to select it; click again to paste. The toolbar gear opens settings right inside the bar (theme, layout, search mode, sound, history limit, permissions).

Install

Download the latest DMG from Releases, drag Cliphoard to Applications, and press ⌃⌥⌘V. Or build from source (below).

On first launch macOS asks for Accessibility access — Cliphoard needs it to send the ⌘V keystroke that pastes into the focused app (System Settings → Privacy & Security → Accessibility). Until granted, selecting a clip still copies it; you paste manually.

Build from source

Requires macOS 13+ and the Swift toolchain (Xcode 15+).

git clone https://github.com/AntreasAntoniou/cliphoard.git
cd cliphoard
make run          # builds Cliphoard.app and launches it

Other targets: make app (build build/Cliphoard.app) · make install (copy to /Applications) · make build (debug binary) · make clean.

Free, and staying that way

MIT licensed. No paid tier, no locked features, no crippled build — everyone gets everything, and make install above gives you the same app as the download.

If it earns a place on your Mac, you can sponsor the work. That is closer to Patreon than to a shop: you are not buying software you already have, you are funding the mission behind it — local-first, secure tools that are genuinely useful and a pleasure to use.

Part of that mission is research, and some of it ships here: searching your clips by meaning runs on ogma, text models I trained and distilled myself from open teachers (2.5M and 8.9M parameters), built around how much capability you can get per parameter rather than how much you can get by making everything bigger. Credit where due — reading text inside screenshots is Apple's Vision framework, and finding images from a description uses OpenVision-Tiny, openly licensed and not mine.

Not sponsoring is completely fine.

Privacy

Everything is stored locally and encrypted at rest — text clips in the database and image clips (plus their thumbnails) on disk (see PRIVACY.md). Cliphoard sends no data anywhere — its only outbound call is the optional one-time model download — and has no telemetry, analytics, or account. Password managers (transient / concealed / auto-generated pasteboards) are skipped, and you can exclude any app. See PRIVACY.md — including why there is, and will be, no cloud sync.

Deep search (on-device embeddings)

Beyond exact substring, Cliphoard searches semantically, fully on-device:

  • Smart search (default) — exact substring matches first, then the semantically closest remaining clips (full vector cosine). You always get the obvious hit, plus meaning-based suggestions below it.
  • Exact — literal case-insensitive substring only.
  • Tag search — every clip is classified at ingest across four stable semantic axes (content type, intent, time horizon, and sensitivity) plus a curated topical pool. Low-confidence labels are omitted, and a query maps to the matching facet or topical tag for an O(1) inverted-index lookup. You can also add your own encrypted user tags.

Models run locally via CoreML:

TierModelDim
Lowaxiotic/open-ogma-micro384 / 1024
Normal (default)axiotic/open-ogma-small384 / 1024

Each ogma model carries two projection heads — 384-d and 1024-d — and the app uses the 1024-d one by default (Settings → Vector detail).

The tag taxonomy and confidence threshold are configurable in Settings → Tags (curated baskets or your own). Open a clip's detail card to inspect automatic labels or add and remove personal tags. Token ids and embeddings match the PyTorch reference exactly (the tokenizer is reimplemented in Swift). To produce/bundle the models, see tools/.

How it works

PieceFile
Pasteboard polling + type detectionSources/Cliphoard/Clipboard/ClipboardMonitor.swift
History model, dedup, incremental index, trimmingSources/Cliphoard/Clipboard/ClipStore.swift
Encrypted SQLite store (Float16 vector BLOBs, WAL)Sources/Cliphoard/Clipboard/Database.swift, Crypto.swift
Global hotkey (Carbon) + slide-up panelSources/Cliphoard/App/HotKey.swift, UI/FloatingPanel.swift
Bar, cards, themes, layouts (SwiftUI)Sources/Cliphoard/UI/ContentView.swift, ClipCardView.swift, Theme.swift

Roadmap

  • Clip stack — queue several, paste in order
  • On-device OCR — search text inside image clips
  • Customizable hotkey · smart actions on links & colors

License

MIT © Antreas Antoniou. Bundled on-device models have their own licenses — see THIRD-PARTY-NOTICES.md.

Contributors

AntreasAntoniou

137 commits

Languages

Swift

77.5%

HTML

16.9%

Python

2.8%

Shell

2.7%