Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

33 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Taac โ€” macOS clipboard manager with search built in

Taac logo

Taac

macOS clipboard history, with a search box in it.
Hit โŒƒโŒฅV, type two letters, press โ†ฉ. Done.

Build macOS 14+ Swift 5 MIT

๐Ÿ‡ฌ๐Ÿ‡ง English | ๐Ÿ‡ฎ๐Ÿ‡น Italiano


A tour of every shortcut: filtering, navigating, pinning, deleting and pasting

Overview

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.

Features

  • ๐Ÿ” Fuzzy search โ€” dcup finds docker 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.ConcealedType are 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.

Installation

Requires macOS 14 or later. Two ways.

A. Build from source (recommended)

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 --run

An app you build locally never gets quarantined: no Gatekeeper warning, no extra steps.

B. Download the DMG from Releases

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:

  1. Download the .dmg from Releases, open it, drag Taac into Applications.
  2. Launch it: you get "Apple could not verify โ€ฆ is free of malware" โ†’ click Done (the app won't start, that's expected).
  3. System Settings โ†’ Privacy & Security, scroll to the bottom: there's a line about Taac โ†’ Open Anyway.
  4. 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 without CODESIGN_IDENTITY gives 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.

First launch (either way)

  1. A clipboard icon appears in the menu bar โ€” no windows, no Dock icon.
  2. macOS asks for Accessibility permission: used only to send โŒ˜V. Without it, Taac copies but does not paste.
  3. Press โŒƒโŒฅV and you are set.

Other build commands

./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

Tech stack

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

Keyboard shortcuts

Global

Keys Action
โŒƒโŒฅV open the paste window
โŒƒโŒฅV (while open) jump to next result

In the window

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

Menu

โŒ˜, Settings ยท โŒ˜Q Quit

Logs and debugging

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

Documentation

  • 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.

Screenshots

The paste window โ€” full history, pinned entries on top, shortcuts always visible:

Paste window

Search โ€” filters as you type, matched characters highlighted, window shrinks to fit:

Search

Fuzzy search โ€” dcup finds docker compose up -d --build:

Fuzzy search


MIT ยท inspired by Jumpcut

About

macOS clipboard history, with a search box in it

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages