Skip to content

levitasOrg/cliphive

Repository files navigation

ClipHive

License: MIT Platform: Windows Release

A privacy-first, encrypted clipboard history manager for Windows β€” built natively in WPF/C# with zero telemetry and zero runtime dependencies (standalone build).


Features

Core

  • Instant recall β€” Press Ctrl + Shift + V (configurable) to open your clipboard history
  • Single-click paste β€” Click any item to copy it back and close the sidebar immediately
  • Live search β€” Type to filter history in real time; searches both text content and OCR-extracted image text
  • Keyboard navigation β€” ↑/↓ to navigate, Enter to paste, Delete to remove, Escape to dismiss
  • Per-item delete β€” Click the Γ— button on any item to remove it instantly
  • Pin items β€” Click the pin icon (πŸ“Œ) on any item to keep it permanently at the top of the list; click again to unpin
  • Auto-clear β€” Optional automatic history purge: 2 hours, 3 days, 15 days, 1 month, or never
  • Duplicate prevention β€” Copying the same content twice bumps it to the top instead of creating a duplicate (SHA-256 hash check, no decryption overhead)

Smart Contextual Actions

Each clipboard item detects its content type and surfaces instant actions:

  • URLs β€” "Open β†—" button launches the link in your browser
  • File paths β€” "Show in Explorer" reveals the file/folder in Windows Explorer
  • Hex colour codes β€” Live colour swatch renders the exact colour inline (#RRGGBB)

Image Support

  • Image thumbnails β€” Screenshots and copied images appear as visual previews in the list
  • Offline OCR β€” Windows' built-in OCR engine (Windows.Media.Ocr) silently extracts text from images in the background; images are fully searchable by their text content without any cloud service or network call

Code Viewer

  • Clipboard items detected as code show a "βŒ„ view" button
  • Clicking it opens an inline monospace panel (scrollable, read-only)
  • C#, Python, JavaScript, and SQL are auto-detected

Paste as Plain Text

  • Ctrl + Alt + V (configurable) strips all RTF/HTML rich formatting and pastes raw text
  • Useful when copying from Word, browsers, or design tools and pasting into code editors or plain text fields

Security & Privacy

  • AES-256-GCM encryption at rest β€” all history rows are encrypted; the database contains only base64 ciphertext
  • DPAPI-protected key β€” encryption key generated once, protected by Windows DPAPI (user scope), stored at %LOCALAPPDATA%\ClipHive\key.dat; key never leaves your machine or your Windows account
  • Zero network calls β€” netstat -an while running shows no outbound connections, ever
  • Machine-bound data β€” copying the database to another machine fails to decrypt (DPAPI user-scope isolation)

Windows Integration

  • System tray β€” lives quietly in your notification area; double-click or press the hotkey to open
  • Start with Windows β€” optional registry entry for automatic startup (configurable)
  • Windows 11 Acrylic backdrop β€” native Desktop Acrylic glass effect on Windows 11 Build 22000+ via DwmSetWindowAttribute; falls back to the dark translucent theme on Windows 10 gracefully
  • High-DPI β€” all icons use native Segoe MDL2 Assets glyphs; crisp at any DPI/scale

Usage

Action How
Open history Ctrl + Shift + V or double-click tray icon
Paste an item Single-click it (copies + closes)
Navigate items ↑ / ↓ arrow keys
Paste selected Enter
Delete item Delete key or click the Γ— button on the item
Pin / unpin item Click the πŸ“Œ icon on any item
Paste as plain text Ctrl + Alt + V
Close sidebar Escape or click elsewhere
Settings Right-click tray icon β†’ Settings

Why ClipHive Is Not a Maccy Clone

Maccy is a great macOS app β€” but ClipHive is a separate, Windows-native product built from scratch in C#/WPF. The comparison is worth reading because ClipHive goes further in almost every dimension:

Capability ClipHive Maccy
Platform Windows 10 / 11 (native WPF) macOS only
Encryption at rest AES-256-GCM, DPAPI-protected key None β€” plain SQLite
Image OCR search Yes β€” offline, via Windows.Media.Ocr No
Contextual actions URL open, file reveal, hex colour swatch No
Paste as plain text Yes (Ctrl+Alt+V) Yes
Duplicate deduplication SHA-256 hash check (no decryption cost) Yes
Pin items Yes Yes
Windows 11 Acrylic glass Native DwmSetWindowAttribute n/a
Machine-bound encryption Yes (DPAPI user scope) n/a
Zero network calls Verifiable via netstat Yes
Code viewer Inline monospace panel, auto language detect No
Runtime requirement Standalone: none bundled; Installer: .NET 8 macOS built-in
Open source MIT MIT

The key differences:

  1. Privacy: Maccy stores clipboard history as plaintext in SQLite. ClipHive stores everything as AES-256-GCM ciphertext. If someone copies your database, they get ciphertext β€” not your passwords, tokens, or sensitive text.

  2. Image intelligence: ClipHive runs Windows' built-in OCR on every image you copy. Screenshot of an error message? Search for the error text and find the screenshot. No API key, no cloud service.

  3. Platform-native: ClipHive is not a port, wrapper, or Electron app. It is a WPF application that uses Windows-specific APIs throughout β€” DwmSetWindowAttribute for Acrylic, Windows.Media.Ocr for image text, ProtectedData (DPAPI) for key storage, Win32 SendInput for paste simulation, WM_NCACTIVATE for focus tracking. Every feature is implemented at the platform level, not over a cross-platform abstraction.

  4. Windows-native stack: ClipHive uses Windows.Media.Ocr, ProtectedData (DPAPI), Win32 SendInput, DwmSetWindowAttribute, and WM_NCACTIVATE β€” every feature is implemented at the platform level, not over a cross-platform abstraction layer. The result is tight OS integration that a port or Electron wrapper cannot match.


Privacy Guarantee

Everything stays on your machine β€” no cloud, no sync, no accounts.

  • Zero network activity β€” ClipHive makes no outbound connections while running. No telemetry, no update pings, nothing.
  • Fully encrypted β€” All clipboard history is encrypted with AES-256-GCM before being saved. The raw text is never written to disk as plaintext.
  • Device-bound β€” The encryption key is protected by Windows and is tied to your user account on this machine. Copying the data to another device cannot decrypt it.
  • Offline-only OCR β€” Image text extraction uses Windows' built-in OCR engine. No image data is sent anywhere.

Installation

Option A β€” Installer (~20 MB)

Download ClipHive-1.3.2-Setup.exe from the latest release.

Requires the .NET 8 Windows Desktop Runtime. The installer detects this automatically and offers to open the download page if it's missing.

Option B β€” Standalone EXE (~90 MB)

Download ClipHive-1.3.2-Standalone.exe. No installer, no .NET required β€” the runtime is bundled and compressed inside the EXE. Just run it.


Building from Source

Prerequisites

Requirement Version Download
.NET 8 SDK 8.0.x https://dotnet.microsoft.com/download/dotnet/8
Windows 10 1809+ / 11 β€”
Inno Setup 6 (installer only) 6.x https://jrsoftware.org/isinfo.php
dotnet --version   # must print 8.x.x

Step 1 β€” Clone and restore

git clone https://github.com/levitasOrg/cliphive.git
cd ClipHive
dotnet restore

Step 2 β€” Run tests

dotnet test --configuration Release

Step 3A β€” Publish standalone EXE

dotnet publish src/ClipHive/ClipHive.csproj `
  -c Release -r win-x64 --self-contained true `
  -p:PublishSingleFile=true `
  -p:EnableCompressionInSingleFile=true `
  -p:PublishReadyToRun=false `
  -p:IncludeNativeLibrariesForSelfExtract=true `
  -o dist/standalone

Output: dist/standalone/ClipHive.exe (~90 MB, fully self-contained, no .NET required)

Step 3B β€” Publish installer payload

dotnet publish src/ClipHive/ClipHive.csproj `
  -c Release -r win-x64 --self-contained false `
  -o dist/release

Then build the installer:

& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" installer\ClipHive.iss

Output: dist/ClipHive-1.3.2-Setup.exe (~20 MB, requires .NET 8 Desktop Runtime)


Common Build Failures

dotnet: command not found or 'dotnet' is not recognized

Fix:

# Add .NET to PATH if installed but not found:
$env:PATH += ";C:\Program Files\dotnet"
dotnet --version

NETSDK1045: The current .NET SDK does not support targeting .NET 8

Fix: Install .NET 8 SDK from https://dotnet.microsoft.com/download/dotnet/8

error NU1301: Unable to load the service index (NuGet failure)

Fix:

dotnet nuget locals all --clear
dotnet restore

LINK : fatal error LNK1104: cannot open file 'ClipHive.exe' (file locked)

Fix:

Stop-Process -Name "ClipHive" -Force -ErrorAction SilentlyContinue

System.Security.Cryptography.CryptographicException at runtime

Cause: Database was written with an old key (from versions before 1.2.0 which changed how keys are derived).

Fix: Delete the history database β€” your encryption key file is fine and doesn't need to change. The app will create a fresh database on next launch. (No clipboard history is recoverable from an incompatible database, so there is nothing lost by deleting it.)

Windows Defender flags the EXE

Cause: Unsigned EXEs that simulate keyboard input and hook the clipboard match AV heuristics.

Mitigations already in place: EnableCompressionInSingleFile=true (standalone) avoids the TEMP-extraction pattern; IncludeNativeLibrariesForSelfExtract=true bundles natives without a second extraction step.

If Defender still flags it:

  1. Submit to https://www.microsoft.com/en-us/wdsi/filesubmission (false positive report)
  2. Add a Windows Security exclusion for the EXE path
  3. Sign the EXE with a code-signing certificate (removes virtually all AV false positives)

Installer says .NET 8 is missing even though it's installed

The installer checks multiple locations (standard system path, C:\Program Files\dotnet, per-user install path, and registry). If all checks fail despite .NET being present, click "Yes β€” continue anyway" in the prompt. The app will launch normally.


Project Structure

ClipHive/
β”œβ”€β”€ src/ClipHive/
β”‚   β”œβ”€β”€ Models/            # ClipboardItem, AppSettings
β”‚   β”œβ”€β”€ Services/          # ClipboardMonitor, StorageService, HotkeyService,
β”‚   β”‚                      #   PasteService, OcrService, EncryptionService
β”‚   β”œβ”€β”€ ViewModels/        # SidebarViewModel, SettingsViewModel
β”‚   β”œβ”€β”€ Views/             # SidebarWindow.xaml, SettingsWindow.xaml
β”‚   β”œβ”€β”€ Resources/         # Styles.xaml (dark theme)
β”‚   └── Helpers/           # Win32.cs (P/Invoke: DWM, SendInput, HWND hooks)
β”œβ”€β”€ tests/ClipHive.Tests/  # xUnit test suite
β”œβ”€β”€ installer/ClipHive.iss # Inno Setup 6 script
β”œβ”€β”€ assets/icon/           # ClipHive.ico (16–256 px multi-size)
└── dist/                  # Build output (gitignored)

License

MIT β€” Copyright Β© 2026 ClipHive Contributors

About

No description, website, or topics provided.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors