Everything you copy, on every computer.
An open-source clipboard manager for macOS and Windows.
Download for macOS or Windows · Install guide · Website · Roadmap · Contributing
Note
Kopi is in alpha on macOS and Windows. It's usable every day, but expect rough edges, and please report what you find. Windows support is the newest, so it has the most of them.
Kopi needs macOS 14 Sonoma or later, on Apple silicon or Intel.
The quickest way is to run this in Terminal:
curl -fsSL https://kopi.devanshuverma.in/install.sh | bashIt installs the newest release in Applications and opens it. macOS doesn't block Kopi installed this way. The script is scripts/install.sh, and it only installs a Kopi signed with Kopi's certificate.
Or download it:
- Download
Kopi_<version>_universal.dmgfrom the newest release on the releases page. - Open it and drag Kopi onto Applications.
- Open Kopi. macOS blocks it the first time, because Kopi isn't notarized: notarization needs a paid Apple developer account, and Kopi is free. On macOS 15 and later, click Done, then Open Anyway in System Settings → Privacy & Security. On macOS 14, Control-click Kopi in Applications and choose Open.
You do this once, and the .dmg window shows these steps too. Kopi installs its updates itself, and macOS doesn't block those. docs/INSTALL_ALPHA.md walks through every step, the permissions Kopi asks for and how to remove it. The reasons behind not notarizing are in ADR 0006.
Kopi needs Windows 10 or 11 on a 64-bit PC.
- Download
Kopi_<version>_x64-setup.exefrom the newest release on the releases page. - Open it. The installer isn't signed yet, so Windows may say Windows protected your PC. Choose More info, then Run anyway.
- Kopi installs for your account, without asking for an administrator, and starts. Its icon is in the notification area.
Press Ctrl+Shift+V to open it. Ctrl does what ⌘ does on a Mac. Kopi updates itself here too. docs/INSTALL_ALPHA.md has the details.
Kopi lives in the menu bar on a Mac and in the notification area on Windows. Press ⇧⌘V (Ctrl+Shift+V on Windows) in any app to open it.
- History of text, rich text, links, images, files, colors and code, with the app each copy came from.
- Search as you type, with filters by kind and app, and a preview of the selected clip.
- Text in images: Kopi reads the words in screenshots and other images you copy, on your computer, so search finds them and you can copy just the text. Turn it off in Settings → Capture.
- Paste into the app you're in with Return, as plain text with ⌥Return, or one of the first nine with ⌘1–9.
- Pins and pinboards for the clips you reuse.
- Snippets you write once and paste with a keystroke, with the date, your newest clip or a blank to fill in.
- Keyboard-first: open, search, preview and paste without touching the mouse.
- Private by default: history stays on your computer, works offline and needs no account. Copies from password managers and content marked as concealed are skipped, and you can exclude any app.
- History limits by count, age and size. Pinned clips are kept.
- Updates itself from this repository's releases, with a switch to turn that off.
- Sync between your Macs and PCs, straight over your local network and end-to-end encrypted, with no server. Off until you turn it on.
- Open source. You can read every line that touches your clipboard, and build it yourself if you'd rather.
- Cross-platform. One app with the same shortcuts and history on macOS and Windows, not two separate tools.
- Private. Your clipboard holds passwords, addresses and work you haven't shared yet. Kopi keeps it on your machine, and checking for updates sends nothing about you or your clips. How it's done is in docs/PRIVACY_DESIGN.md.
| Phase | Status |
|---|---|
| Website and waitlist | ✅ Done |
| Design and architecture | ✅ Done |
| macOS alpha | 🔨 Out now, improving |
| Windows alpha | 🔨 Out now, improving |
| Private beta | Planned |
| v1.0 public launch | Planned |
| Encrypted sync | 🔨 Out now, over the local network |
See ROADMAP.md for what's in each phase, and CHANGELOG.md for what changed in each release. The technical design is in docs/ARCHITECTURE.md.
You need macOS 14 or later, the Xcode Command Line Tools (xcode-select --install), Rust 1.90 or newer from rustup, Node.js 20.9 or newer and pnpm (corepack enable).
git clone https://github.com/code-devanshu/kopi.git
cd kopi
pnpm install
pnpm dev:desktop # run Kopi in development
pnpm build:desktop # build target/release/bundle/macos/Kopi.appQuit an installed Kopi first: a second Kopi hands over to the one that's running and quits. A local build is signed ad hoc, so macOS asks for its permissions again after every rebuild. apps/desktop/README.md has the details, and how to work on the UI in a browser.
| Command | What it does |
|---|---|
pnpm dev:desktop |
Run the desktop app in development |
pnpm build:desktop |
Build Kopi.app |
pnpm dev:web |
Start the website's dev server at http://localhost:3000 |
pnpm build:web |
Build the website |
pnpm build |
Build every package |
pnpm lint |
Lint every package |
The website needs no setup for development: the waitlist form logs sign-ups to the browser console. See apps/web/README.md.
kopi/
├── apps/
│ ├── desktop/ # Desktop app (Tauri 2, React)
│ └── web/ # Website (Next.js): kopi.devanshuverma.in
├── crates/
│ ├── kopi-core/ # Rust core: storage, search, capture, privacy filter. No Tauri.
│ └── kopi-platform/ # OS APIs behind small traits
├── docs/ # Architecture, decisions, privacy design, install and release guides
├── .github/ # Issue templates, PR template, CI and release workflows
├── Cargo.toml # Rust workspace
├── package.json # Workspace scripts
└── pnpm-workspace.yaml
The most useful help right now is using the alpha and reporting what breaks, especially on Windows. Read CONTRIBUTING.md to get started, and look for issues labelled good first issue.
Please follow the Code of Conduct. To report a security issue, see SECURITY.md and don't open a public issue.
Kopi is released under the MIT License. The Kopi name and logo are not covered by the license; forks and redistributions must use a different name and logo.