macOS clipboard history, with a search box in it.
Hit ⌃⌥V, type two letters, press ↩. Done.
🇬🇧 English | 🇮🇹 Italiano
Taac is a macOS menu bar app that keeps a history of everything you copy and gives it back to you by searching, not by scrolling.
It is a light take on Jumpcut, the classic open source clipboard manager for the Mac. Jumpcut shows an app-switcher-style bezel and lets you cycle the stack while holding the modifiers: great with five clippings, painful with a hundred, because there is no search.
Taac keeps that core — global hotkey, persistent stack, synthetic paste — and replaces blind cycling with a Spotlight-like window: a fuzzy search field, a result list with matched characters highlighted, and ↩ to paste straight back into the app you came from.
No network, no account, no third-party dependencies: ~2,700 lines of Swift and AppKit.
- 🔍 Fuzzy search —
dcupfindsdocker compose up -d --build, with matched characters highlighted. - ⌃⌥V Global hotkey, works everywhere, rebindable with a shortcut recorder.
- 📋 Automatic capture of copied text, deduplicated: re-copying something moves it to the top instead of duplicating it.
- ⚡ Real paste — reactivates the previous app and sends
⌘V. Use⌥↩to copy only. - 📌 Pin the entries you always need (address, IBAN, email): they stay on top and survive a history wipe.
- 🔢 ⌘1…⌘9 paste the first nine results without touching the arrow keys.
- 🧠 Context on every entry: source app, how long ago, line and character count.
- 🔐 Password manager aware: clippings flagged
org.nspasteboard.ConcealedTypeare never stored. - 🌍 English and Italian interface, switchable in Settings — or left to follow macOS.
- 🪶 Light: under 1 MB universal binary, no dependencies, nothing running in the background beyond one timer.
Requires macOS 14 or later. Two ways.
You need the Xcode Command Line Tools (xcode-select --install); full Xcode is not required.
git clone https://github.com/ripu/taac.git && cd taac
./build.sh --install --runAn app you build locally never gets quarantined: no Gatekeeper warning, no extra steps.
The binary is signed with a self-signed certificate, not notarized — the Apple Developer Program costs $99/year and this is a personal project. macOS still blocks it on first launch, and since macOS 15 Sequoia the old right-click → Open trick is gone. The actual steps:
- Download the
.dmgfrom Releases, open it, drag Taac into Applications. - Launch it: you get "Apple could not verify … is free of malware" → click Done (the app won't start, that's expected).
- System Settings → Privacy & Security, scroll to the bottom: there's a line about Taac → Open Anyway.
- Authenticate and confirm. It launches normally from now on.
⚠️ The certificate is mine, not Apple's, so Gatekeeper warns anyway — but the signing identity is stable, so Accessibility survives updates signed with the same certificate. Two exceptions: building from source withoutCODESIGN_IDENTITYgives an ad-hoc signature, whose identity changes at every build; and replacing the certificate itself costs one re-grant (that happened on 2026-08-05, when it was renamed after the project). Only a Developer ID removes the Gatekeeper step.
- A clipboard icon appears in the menu bar — no windows, no Dock icon.
- macOS asks for Accessibility permission: used only to send
⌘V. Without it, Taac copies but does not paste. - Press
⌃⌥Vand you are set.
./build.sh # build into build/Taac.app
./build.sh --run # build and run without installing
./build.sh --universal # universal binary, arm64 + Intel
./build.sh --universal --dmg # produce the distribution DMG| What | Why |
|---|---|
| Swift 5 + AppKit | native UI, zero dependencies, instant launch |
Carbon RegisterEventHotKey |
the only global hotkey API that does not require Accessibility |
CoreGraphics CGEvent |
sends the synthetic ⌘V to the target app |
ServiceManagement SMAppService |
launch at login |
| JSON on disk | history in ~/Library/Application Support/Taac/ |
swiftc + hand-made bundle |
no Xcode project: builds with the Command Line Tools |
| Keys | Action |
|---|---|
⌃⌥V |
open the paste window |
⌃⌥V (while open) |
jump to next result |
| Keys | Action |
|---|---|
| type | filter live |
↑ ↓ |
navigate (wraps around) |
⇧↑ ⇧↓ |
jump by 10 |
⇞ ⇟ |
jump one screenful |
⌘↑ ⌘↓ |
first / last |
↩ |
paste |
⌥↩ |
copy only |
⌘1…⌘9 |
paste the nth result |
⌘P |
pin / unpin 📌 |
⌘⌫ |
delete entry |
⌘K |
clear the search field |
| click | paste that entry |
⌥click |
copy that entry only |
esc |
close |
⌘, Settings · ⌘Q Quit
Logs are plain daily files:
~/Library/Logs/Taac/2026-07-30.txt # normal use
./log/2026-07-30.txt # when launched with TAAC_LOG_DIR="$PWD/log"
Format [HH:mm:ss.SSS] [LEVEL] message, levels DEBUG INFO WARN ERROR PERF. Heavy operations (window open, search, menu rebuild, ⌘V dispatch) log their duration in milliseconds.
Open them from the menu bar → Open log folder.
Development flags:
./build/Taac.app/Contents/MacOS/Taac --show-panel # open the window
./build/Taac.app/Contents/MacOS/Taac --query "arch" --show-panel # with a pre-filled query
./build/Taac.app/Contents/MacOS/Taac --snapshot out.png # render the window to PNG, then exit
./build/Taac.app/Contents/MacOS/Taac --icon-preview icon.png # render the menu bar icon at 8×
./build/Taac.app/Contents/MacOS/Taac --demo out/ # re-record the README tour GIF- SODE.md — architecture, flows, decisions (Italian). Read before changing anything.
- CHANGELOG.md · CONTRIBUTING.md · SECURITY.md
- User guide — opens from the app: menu bar icon → Guide. It follows the language you picked in Settings. It is a self-contained HTML page in
docs/guide/; GitHub shows its source rather than the rendered page, so open it from the app or locally in a browser.
The paste window — full history, pinned entries on top, shortcuts always visible:
Search — filters as you type, matched characters highlighted, window shrinks to fit:
Fuzzy search — dcup finds docker compose up -d --build:
MIT · inspired by Jumpcut