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