Clipman is a small accessible clipboard management tool for Windows, macOS, Linux, Android, iPhone, and iPad, designed for fast keyboard and screen-reader use. It keeps a searchable clipboard history and can share that history through a cloud service or network share on Windows and macOS, or through optional Clipman Server storage across all supported platforms. Add, remove, move, rename, group, pin, or edit an entry on one device, and other devices watching the same shared history can pick up the change automatically.
Project page: https://github.com/OnjLouis/Clipman
iPhone and iPad users can join the Clipman public beta through TestFlight.
Alt+F label to Alt+G. The filter shortcut now agrees with the existing command and manual without colliding with the File menu.Ctrl+Shift+I for Import and replace and Ctrl+Shift+O for Open settings folder.Ctrl+Enter on Windows or Linux, or Command+Enter on Mac, to copy each non-empty entry Name followed by its resolved content and close history. Multiple selections are separated by one blank line, and the existing optional paste-after-Enter behavior is honoured. The same shortcuts continue to mean Go to file in File History.Settings folder beside clipman.exe; a newer build marker in a separate data folder can no longer make an older local copy exit while waiting for an executable that will never arrive. Malformed update state is ignored safely, and Syncthing conflict names are recognized. This closes issue #56.clipmanserver setup-link and clipmanserver revoke-setup-link. The accessible setup page downloads the existing private .clpconf connection file, expires by time and download count, stores only a hash of its random setup code, redacts that code from logs, requires HTTPS for public addresses, and preserves dedicated service-account ownership on hardened system installations.https://example.com link in Links history across every client. Clipman recognizes only that narrow role suffix, preserves the original stored and copied text, and does not mistake ordinary surrounding sentences for standalone links.Control+number shortcuts to match.clipman:// server addresses now appear consistently in Links history on Windows, Mac, Android, and iOS.Enter on a Text or Links history entry copy it, close Clipman, return to the previously active application, and paste it there. The selected entry remains on the clipboard, and existing Enter behavior is unchanged when the preference is off.F4 text review window now includes a separate Details list or table after the text, showing metadata such as source machine, added and last-used times, text length, link count, pinned/template state, and entry ID.host:port; Clipman saves private-network addresses as clipman://host:port. Public or VPS deployments should use HTTPS.Ctrl+Left/Ctrl+Right on Windows and Option+Left/Option+Right on Mac stop at punctuation and symbol boundaries inside long links, paths, and tokens.http or https link. Links history is off by default, and links remain part of the normal shared text-history database. Closes issue #18.Clipboard Viewer Ignore, ExcludeClipboardContentFromMonitorProcessing, CanIncludeInClipboardHistory set to zero, or CanUploadToCloudClipboard set to zero are excluded from Clipman's text and file history and play the exclude sound when sounds are enabled.exclude.wav as a dedicated sound for sensitive-data exclusions, with fallback to skip.wav when the custom or bundled exclude sound is missing..clipdb files into an unencrypted or empty Clipman session. Clipman now asks for the import file's history password instead of failing silently..clipdb backups: use the current history password, set a new export-only password, or export without a password. When the current history is password protected, Clipman requires the current history password before creating any .clipdb export..clipdb export filenames so the save dialog does not produce a duplicated .clipdb.clipdb extension.IsTemplate text-entry field so Windows and Mac can keep template status in sync without changing the stored template text.Command+V work in settings text fields.sounds folder is updated file-by-file instead of being deleted and replaced as one folder. This should make updates less fragile in cloud-synced folders where OneDrive or another sync client may briefly lock the folder.Backups folder when no user files need preserving.Logs\Runtime.log; Mac writes to Clipman's Application Support log folder.Clipman.app..clipdb file path. Closes issue #5..clipdb file. Clipman derives clipman-history.clipdb inside that folder while keeping existing explicit file paths compatible.clipman-history.clipdb, with a small pointer in the app's local Settings folder so shared or synced Clipman data stays self-contained.Backspace on the File history tab to jump to the first normal file event below pinned file events, matching Text history navigation.Ctrl+Shift+S. It removes tracking parameters and YouTube share-state parameters such as timestamps, so shared video links can open from the start instead of the copied playback position.Ctrl+Shift+1 through Ctrl+Shift+0 to copy pinned file-event paths as text.Shift+Enter, moved with Alt+Up and Alt+Down, and restored from the first ten pinned file events with Ctrl+1 through Ctrl+0.Shift+Enter to Ctrl+Enter so Shift+Enter consistently means pin or unpin in both history tabs.Shift+Enter, plus multi-selection support for restoring several file events or copying their paths in one operation.Ctrl+I for Import and Ctrl+E for Export.Alt+Del now removes non-restorable non-file clipboard events as well as file events whose paths no longer exist.Esc to screen readers without adding shortcut text to the visible button labels.Ctrl+Del clears file history and Alt+Del removes unavailable events.Settings\clipman-history.clipdb path now follows the app folder when Clipman is moved..clipdb file no longer looks like an overwrite operation.F2, where names display before entries but are not copied with clipboard text, and stored clipboard text can be cleaned up in place..clipdb history database so the live clipboard history is not stored as plain searchable text.Settings\sounds, with fallback to the bundled default sounds.Clipman runs as a portable Windows app, a Mac menu bar app, or a per-user Linux desktop app. It stores device-specific settings separately from shared clipboard history, so several computers can share history without sharing hotkeys, startup choices, or local-only preferences.
Enter to put it back on the clipboard. An optional preference can also paste it into the application that was active before Clipman opened. Press Esc or close the window to hide history without quitting.Option+M opens the history window's Clipman command menu directly.Most commands are shared between Windows and Mac, but the modifier keys follow each platform's conventions. Windows uses Ctrl, Alt, Shift, and sometimes Win. Mac uses Command, Option, and Control. Global hotkeys can be changed in Preferences where supported. The Linux download includes a dedicated manual with its GTK and X11 shortcuts.
| What it does | Windows shortcut | Mac shortcut |
|---|---|---|
| Show or hide clipboard history | Ctrl+Alt+\ | Option+Shift+` |
| Toggle monitoring on or off | Ctrl+Alt+` | Option+Shift+\ |
| Save the current clipboard to history, even while monitoring is off | User-assigned in Preferences; unset by default | User-assigned in Preferences; unset by default |
| Paste an entry assigned to Quick Paste | User-assigned in Entry Properties | User-assigned in Entry Properties |
| Paste a saved secret | User-assigned in Secrets | User-assigned in Secrets |
| Open Secrets | Ctrl+Shift+E | Command+Shift+E |
| Switch to Text history | Ctrl+Tab, Ctrl+Shift+Tab, or Alt+T | The Control+number shown in the Clipman menu |
| Switch to Links history | Ctrl+Tab, Ctrl+Shift+Tab, or Alt+L when Links history is enabled | The Control+number shown in the Clipman menu |
| Switch to Rich Text history | Ctrl+Tab, Ctrl+Shift+Tab, or Alt+R when Rich Text history is enabled | The Control+number shown in the Clipman menu |
| Switch to File history | Ctrl+Tab, Ctrl+Shift+Tab, or Alt+I | The Control+number shown in the Clipman menu |
| Move the current history tab left or right | Alt+Left or Alt+Right | Option+Left or Option+Right |
| Open Preferences | Ctrl+, | Command+, |
| Open search | Ctrl+F | Command+F |
| Find next search result | F3 | F3 |
| Find previous search result | Shift+F3 | Shift+F3 |
| Move to the first visible history row | Home | Home |
| Move to the last visible history row | End | End |
| Move up by one visible page | Page Up | Page Up |
| Move down by one visible page | Page Down | Page Down |
| Jump to first normal item below pinned items | Backspace | Backspace |
| Open this manual | F1 | F1 |
| Check for updates | Shift+F1 | Shift+F1 |
| Open the project page | Ctrl+F1 | Command+F1 |
| Open diagnostics | Alt+F1 | Option+F1 |
| Close or hide the history window | Esc | Escape |
| Switch Preferences tabs | Ctrl+1 to Ctrl+6 | Tab control navigation |
| Copy selected text entry and close history; optionally paste into the previous application | Enter | Enter |
| Copy selected text entry without closing history | Ctrl+C | Command+C |
| Copy each selected entry's Name and resolved content, then close history | Ctrl+Enter | Command+Enter |
| Cut selected unpinned text entries | Ctrl+X | Command+X |
| Paste clipboard text into history | Ctrl+V | Command+V |
| Push selected text entry to other synced devices | Ctrl+P | Command+P |
| Pin or unpin selected entry | Shift+Enter | Shift+Enter |
| Open Entry Properties | F2 | F2 |
| View selected text in a read-only window | F4 | F4 |
| Move by URL/code boundary in text review or Entry Properties text | Ctrl+Left or Ctrl+Right | Option+Left or Option+Right |
| Assign selected entries to a group | Ctrl+G | Command+G |
| Move focus to the group filter | Alt+G | Option+G |
| Jump to one of the first ten group filters | Alt+1 to Alt+0 | Option+1 to Option+0 |
| Copy one of the first ten pinned text entries | Ctrl+1 to Ctrl+0 | Command+1 to Command+0 |
| Move selected entries in manual order | Alt+Up or Alt+Down | Option+Up or Option+Down |
| Delete selected unpinned text entries | Del | Command+Backspace |
| Import clipboard entries | Ctrl+I | Command+I |
| Import and replace clipboard entries | Ctrl+Shift+I | Not available |
| Open settings folder | Ctrl+Shift+O | Use the Clipman status menu |
| Export clipboard entries | Ctrl+E | Command+E |
| Clean URL tracking from selected text | Ctrl+Shift+R | Command+Shift+R |
| Clean link for sharing | Ctrl+Shift+S | Command+Shift+S |
| Restore selected file-history event to the clipboard | Enter | Enter |
| Pin or unpin selected file-history event | Shift+Enter | Shift+Enter |
| Go to selected file or folder | Ctrl+Enter | Command+Enter |
| Remove selected unpinned file-history events | Del | Command+Backspace |
| Clear normal file history | Ctrl+Del | Control+Backspace |
| Remove unavailable unpinned file-history events | Alt+Del | Option+Backspace |
| Restore one of the first ten pinned file events | Ctrl+1 to Ctrl+0 | Command+1 to Command+0 |
| Copy paths from one of the first ten pinned file events | Ctrl+Shift+1 to Ctrl+Shift+0 | Command+C after selecting the event |
Open Preferences from Options, Preferences on Windows, from the Clipman status menu on Mac, or with Ctrl+, on Windows and Command+, on Mac. Preferences controls monitoring, sounds, hotkeys, storage, history password, ignored applications, optional Links and Rich Text history, startup, update checks, and shared-database behavior. In hotkey fields, press a valid shortcut to assign it, or press Delete or Backspace to clear it.
After Enter, paste into the previous application is off by default. When enabled, pressing Enter on a Text, Links, or Rich Text history entry copies it, closes Clipman, returns to the application that was active before history opened, and sends the normal paste command. On Mac, macOS asks for permission before Clipman can send that command; allow Clipman to control the computer when prompted, then quit and reopen Clipman if the first paste is blocked. Clipman only sends the paste command when the destination has an editable text control in focus. The selected entry remains on the clipboard. This does not change double-click, Copy, pinned-number shortcuts, or File history.
Open history to the most recent clipboard type is also off by default. When enabled, a newly accepted clipboard event selects Text, Links, Rich Text, or Files the next time history opens. That automatic selection is used once; afterward, a section you choose manually remains selected until another new clipboard event arrives. Ignored, excluded, or failed captures do not change the destination. If an optional history view is disabled, its entries open through their plain-text fallback in Text history.
Quick Paste: Assign Quick Paste from Entry properties or the selected entry's menu. Each assignment is stored in this machine's settings, so several entries can have their own global hotkeys, and each computer can use different Quick Paste assignments even when several computers share the same clipboard database. Quick Paste still works while clipboard monitoring is off, because it is an explicit user command rather than automatic capture.
Save Current Clipboard to History is another deliberate command that works while monitoring is off. Use it from the Clipman menu, or assign its optional global hotkey in Preferences. It reads the clipboard once and sends supported text, links, rich text, or files through normal duplicate, storage, and synchronization handling without turning monitoring on. Ignored-application and sensitive-pattern rules apply to automatic capture, so they do not block this explicit save; cooperative private-clipboard markers and concealed pasteboard data remain protected.
Each Quick Paste target has a mode. Paste and restore previous clipboard temporarily places the entry on the system clipboard, sends the normal paste command to the active app, and then restores the previous clipboard contents where possible. Paste and keep target on clipboard pastes the entry and leaves that entry on the clipboard. Copy to clipboard only places the entry on the clipboard without sending a paste command.
Use the Quick Paste menu on Windows, or Quick Paste Targets from the Mac Option+M Clipman menu, to review all entries that currently have Quick Paste hotkeys. Choosing one of those menu items moves focus to the matching entry so you can press F2 to edit or remove its Quick Paste assignment. Entries with Quick Paste targets include the assigned hotkey and mode in the row text; entries without Quick Paste targets do not carry that extra wording.
Template entries: In Entry Properties, mark a text entry as a template when you want variables to resolve at copy or paste time. The stored text remains unchanged in the database, exports, search, and Entry Properties. Clipman resolves the template only when the entry is copied, quick-pasted, or automatically copied as a new remote entry.
Template variables include {{year_full}}, {{year_short}}, {{month_name}}, {{month_name_full}}, {{month_name_short}}, {{month_num}}, {{month_num_padded}}, {{day_of_month}}, {{day_of_month_padded}}, {{day_name_full}}, {{day_name_short}}, {{hour_24}}, {{hour_24_padded}}, {{hour_12}}, {{hour_12_padded}}, {{minute}}, {{minute_padded}}, {{second}}, {{second_padded}}, {{utc_offset}}, {{time_zone}}, {{time_zone_short}}, {{os_name}}, {{os_version}}, and {{username}}. Unknown variables are left alone.
Example templates: {{year_full}}-{{month_num_padded}}-{{day_of_month_padded}}, Today is {{day_name_full}}, {{month_name_full}} {{day_of_month}}, {{year_full}}, or {{os_name}} version {{os_version}}. Entry Properties includes buttons to insert sample templates, insert individual fields at the current cursor, preview the resolved template, and view the variable list. Built-in samples include {{year_full}}/{{month_num_padded}}/{{day_of_month_padded}}, {{day_of_month_padded}} {{month_name_short}} {{year_full}}, and {{month_name_short}} {{day_of_month_padded}}, {{year_full}}.
Automatically group new clips by source application is enabled by default for new installs where the setting is exposed. It places newly captured clipboard text into a group named after the application Clipman believes supplied the clipboard text, such as Chrome, Thunderbird, Outlook, Safari, TextEdit, or Logic. Disable it if you prefer all new entries to start ungrouped.
Windows first asks for the clipboard owner application, then falls back to the foreground application if Windows does not expose a useful owner. Mac uses the foreground application reported by macOS when the clipboard change is captured. Some background hotkeys or automation tools may still be attributed to the foreground application because operating systems do not always preserve reliable source metadata.
Global hotkey fields accept combinations with modifiers and one real key, such as Ctrl+Alt+\, Ctrl+Shift+H, Option+Shift+1, or Control+Option+F1. Two modifiers are safest. For compatibility with existing clipboard-manager habits, Clipman also allows one modifier with function keys or with the grave/accent and backslash-style punctuation keys. Single-modifier letters, numbers, comma, space, Tab, Delete, Backspace, Escape, and reserved operating-system shortcuts are rejected. Clipman warns before saving a single-modifier global hotkey because it may conflict with another app or keyboard layout.
Storage and Password: Choose the shared Clipman data folder, set or change the history password, choose whether this computer remembers the password, remove password encryption, and manage ignored applications. Clipman stores shared text history as clipman-history.clipdb inside the chosen folder.
The Remember history password on this computer checkbox controls convenience versus exposure. When unchecked, Clipman asks for the history password when it starts and keeps the password only for the current run. When checked, Windows stores an unlockable password protected by Windows for the current user and machine, including on Windows 7, and Mac stores it in that user's Keychain for the selected database path. That is convenient for automatic startup, but it cannot protect against malware already running as the same signed-in user. The Use no password button clears the saved history password, clears any session-only password, and rewrites the current database without password encryption. It exists because blank password fields mean "keep the current password"; the explicit button prevents accidental decryption when you only meant to change another setting.
Sensitive data: Sensitive-data exclusions are off by default and device-specific. When the mode is set to Exclude from history, Clipman checks automatic clipboard text capture against the presets you enable. Matching text is not stored in Clipman history, and the system clipboard is not changed, so your immediate paste still works. This filter does not apply to existing history, imports, Send To, Quick Paste, Push to other devices, or entries manually copied from Clipman.
The built-in presets include credit card numbers with Luhn validation, US Social Security numbers, international phone numbers, long API keys or tokens, software license keys, and approximate US driver-license shapes. International phone numbers include compact E.164-style numbers such as +447890123456 and common spaced, dashed, dotted, or bracketed variants. Built-in presets are deliberately unchecked by default because pattern matching can have false positives.
The same manual ships with the Windows and Mac builds. The app name, shared history format, sounds folder behavior, password model, and database sync model are intended to stay aligned across platforms.
Windows: Clipman runs in the notification area and opens the history window with the configured global hotkey. Windows Preferences includes Send To integration, Windows startup registration, command-line import/export support, and Windows-protected password remembering when explicitly enabled.
Mac: Clipman is packaged as a signed and notarized Clipman.app and runs as a menu bar app. After unzipping, move or drag Clipman.app to /Applications, then open it normally.
Linux: Clipman is a GTK 4 desktop app that connects to Clipman Server and keeps an encrypted offline read cache. Its archive includes a per-user installer and a dedicated accessible manual covering desktop dependencies, X11 and Wayland differences, shortcuts, updates, File History, Secrets, and installed files.
The Mac status menu includes Show History, Show File History, Toggle Monitoring, Secrets, Open Manual, Check for Updates, Version History, Project Page, Contact, Donate, Diagnostics, Preferences, About, and Quit. The history window also has a tabbable Clipman menu button because menu bar access can be less reliable for an accessory app. Press Option+M in the history window to open that menu directly. Mac Preferences uses Keychain only when password remembering is explicitly enabled.
Mac VoiceOver notes: Clipman is an accessory menu bar app, so it may not always appear in the normal app switcher like a full document app. Use the Show History global hotkey to bring the history window forward. If VoiceOver reports that the system has a new window but focus lands badly, press the Show History hotkey once to dismiss Clipman and press it again to reopen with a fresh focus attempt. In the history window, Option+M opens the Clipman command menu and Command+F opens search. The Clipman menu shows the current Control+number for each visible history area; those numbers update immediately when tabs are moved. The status line shows the active history area and visible entry count. It is not part of normal Tab navigation, but VoiceOver can reach it with VoiceOver navigation. Pressing Enter from search returns focus to the history list.
Mac global hotkeys are stored by physical key code so the displayed shortcut remains readable on different keyboard layouts. Default Mac global hotkeys avoid common VoiceOver conflicts, but they can be changed in Preferences.
Clipman remembers whether monitoring was on or off. When sounds are enabled, it plays the on or off sound at launch so you know the app is running and which state it restored.
Use Preferences, Startup and updates, Run Clipman at Windows startup on Windows or Run Clipman at login on Mac to start Clipman automatically when you sign in. Windows creates a per-user startup entry for the current clipman.exe path. Mac creates a per-user LaunchAgent for the current Clipman.app. Neither requires administrator permission.
Use Add current clipboard item to Clipman on start if you want Clipman to try to save whatever is already on the system clipboard when Clipman launches. This is off by default. When enabled, it still follows normal monitoring state, ignored-application rules, clipboard privacy signals where supported, concealed pasteboard handling where supported, and Sensitive Data preferences.
Pinned entries are grouped at the top of the history list. A separator marks the start of normal entries. Pinned entries are numbered when they can be copied by shortcut, so the first pinned entry starts with 1, the second with 2, and so on through 0 for the tenth. Pinned state is still shown in the Pinned column or metadata, but not before the item text.
Pinned entries are protected from normal cleanup: Delete skips them, and history size or age limits do not remove them. Use Shift+Enter or the menu command to change the pinned state. Use the pinned-entry shortcuts in the Keyboard Shortcuts table to copy one of the first ten pinned entries and close history.
Deletion confirmation is enabled by default. Android and iOS provide a Settings toggle. Windows, Mac and Linux also let you turn future entry confirmations off from the first confirmation dialog; the preference can be restored later. Commands that clear an entire history area keep their separate stronger confirmation.
Use F2 to open Entry Properties for the selected entry. You can add a short name or hint, assign a group, configure a Quick Paste hotkey, and edit the stored clipboard text itself. This is useful when a clip contains extra lines or unwanted surrounding text and you want to clean it without using another editor.
In Entry Properties and the F4 text review window, word navigation is tuned for URLs and code-like strings. On Windows, Ctrl+Left and Ctrl+Right stop at punctuation and symbol boundaries such as slashes, question marks, ampersands, equals signs, dashes, and underscores. On Mac, use Option+Left and Option+Right. Add Shift on either platform to extend the selection.
The F4 text review window shows the clipboard text first, followed by a separate Details list or table in tab order. Details include useful metadata such as name, group, source device, pinned/template state, added and last-used times, manual order where present, text length, link count, and entry ID.
For example, an entry containing 1234 can be shown as Test: 1234. The name is metadata only: copying, cutting, exporting to text, and viewing full text use the clipboard text without the name.
Type-to-jump navigation normally uses the original clipboard text. Links use their assigned name or readable offline label, and image entries use their assigned name or filename, so those filtered lists remain practical without listening to a URL or content fingerprint first. Search checks names, original text, readable link labels, destinations, and image filenames.
For quick named lookup, type a slash followed by the entry name prefix, such as /Test. Clipman jumps to the matching named entry when it is visible in the current group filter.
Links history is an optional view controlled by Show Links history tab in Preferences or Settings. When enabled, Clipman adds a separate Links history view for entries where the whole clipboard text is a single absolute http, https, or clipman URL. Prose that merely contains a link, multiline text, mailto:, file:, and other custom schemes remain in Text history.
Links are not stored in a separate database and are not removed from shared text history. The Links tab is a filtered view of the same entries, so copy, cut, paste after selected, grouping, pinning, Quick Paste, templates, search, sorting, cleanup actions, and sharing across machines work like Text history wherever applicable. If the Links tab is disabled, links simply appear in Text history as before.
Clipman gives unnamed links a readable label from the address itself, such as Issues 50; github.com/OnjLouis/Clipman/issues/50. This works immediately, including for existing history, and never contacts the website. An F2 name remains first and always takes precedence.
For an unnamed HTTP or HTTPS link, use Use website title as name from the entry menu when you deliberately want Clipman to contact that site once. Clipman explains that the website can see the request and asks before continuing. The desktop confirmation includes Do not show this again; restore it with Ask before contacting a website for its title in Preferences. Clipman sends the selected link request without cookies, credentials, or other clipboard content, and refuses local or private addresses, non-standard ports, credential-related parameters, signed requests, and token-like paths. Ordinary public articles are not blocked merely because their paths contain several readable words and a date or number, or because their subject mentions sign-in or password reset. A useful returned title is stored in the ordinary Name field, where it is visible and editable in Entry Properties. The exact URL is never replaced and remains available in F4, Entry Properties, and copy operations. Because this is an ordinary name rather than a separate preview file, it follows the entry to other synced clients.
Windows, Mac and Linux also offer Automatically name copied website links from page headings. This per-device option is off by default. When enabled, it considers only newly captured, unnamed, link-only public HTTP or HTTPS entries and processes them one at a time in a small background queue. It does not scan existing history, imports, synchronized entries, manually added exceptions, or any address that the manual command would refuse. Automatic lookups do not delay clipboard capture, change the clipboard, play another sound, or display a failure dialog.
Enabling Links history adds its tab at the saved per-device position. On Mac, the Clipman menu shows its current Control+number shortcut. On Windows and Linux, Alt+L always opens Links when enabled, Alt+I always opens File history, and Ctrl+Tab or Ctrl+Shift+Tab moves through the visible history areas in their current order.
Rich Text history is optional and off by default on Windows, Mac, Linux, Android and iOS. Enable Preserve copied formatting and show Rich Text history in Preferences or mobile Settings when you want Clipman to retain formatting supplied by applications such as browsers, word processors, email clients, and rich-text editors. Enable it before copying formatted content; entries captured earlier as plain text cannot have their original formatting reconstructed. Clipman stores bounded rich data alongside the normal plain-text fallback in the shared text-history database. The separate Rich Text section is an accessible filtered list, not a second database.
For example, enable the preference, copy a formatted heading or link from a browser, and then select that new entry in Rich Text History. Press Enter or Copy and paste into a word processor or another rich-text destination. Clipman puts the available plain and rich formats on the clipboard together, so the destination chooses the richest format it supports.
Pressing Enter, Copy, Quick Paste, or receiving a newly created remote rich-text entry can place the available formats on the clipboard together. Templates and copies that combine several entries remain plain text. F4 shows the normal text and entry details; Windows and Mac safely preview stored RTF, while Linux safely presents common stored HTML formatting. Clipman does not load stored HTML into an active browser or execute scripts, remote content, or embedded objects.
Formatting belongs to the exact stored text. Editing the text in Entry Properties or applying a text transformation clears the old rich payload so stale formatting cannot be attached to different content. If HTML exceeds 768 KiB, RTF exceeds 1 MiB, the combined payload exceeds 1.75 MiB, or a payload is invalid, Clipman keeps the plain text and discards the rich data. Diagnostics reports aggregate rich-entry counts and byte totals but never includes the formatted payload itself.
Android captures and restores HTML, the rich-text format supported by Android's standard text clipboard. It preserves RTF received from desktop or iOS clients but uses the plain-text fallback when an entry contains only RTF. iPhone and iPad capture and restore both HTML and RTF through Apple's explicit Paste control. On mobile, use the section-switch button or the screen-reader page gesture to move through Text, Rich Text and Links while the option is enabled.
Include copied images in rich text history is a separate option beneath Rich Text history and is also off by default. When enabled, Clipman can store a standalone PNG or JPEG clipboard image inside the existing history database. On Android or iPhone, choose Clipman from the system Share sheet to add one selected photo directly; Clipman waits for the normal device unlock and history load before storing it. The Rich Text row announces its filename rather than a content fingerprint, F4 or View provides an accessible image preview and dimensions, and copying the entry restores a native image format alongside its plain-text fallback. On mobile, an image row also provides Save to Photos followed by Share after the standard entry actions in both TalkBack and VoiceOver. These image-only actions save the stored image to the device photo library or open the system Share sheet without changing the history entry. The stored image follows the same local, shared-folder, or Clipman Server storage path as the rest of the history; no sidecar image folder or server change is required.
Image capture accepts at most 16 MiB, 16 megapixels, and 4096 pixels in either dimension. An image already within 512 KiB and 2048 pixels keeps its original PNG or JPEG bytes and metadata. Larger accepted images are reduced to at most 2048 pixels and 512 KiB, retaining a bounded amount of metadata where the platform supports it. Metadata can include camera or location information and follows the history's encryption and sync choices. Clipman refuses another locally captured image when embedded images already occupy 8 MiB of the current database. Concurrent additions from several syncing devices can take a merged history beyond that threshold; Clipman keeps those existing entries and refuses further image capture rather than silently deleting data.
On Windows, Mac and Linux, copying one embedded-image entry also supplies a temporary file representation without removing its native image or rich-text formats. Paste normally into Explorer, Finder, or a Linux file manager to create an image file named from the capture date and source device; paste into a document or image editor to use the richest format that application supports. Clipman preserves the stored PNG or JPEG bytes where possible and clears its bounded temporary file cache automatically. This does not turn File History into arbitrary cross-device file transfer.
Copying a PNG or JPEG file in Explorer, Finder, or a Linux file manager normally records it in machine-local File History, like any other file. To share that image through Rich Text history as well, open Clipman, switch to Rich Text, select the position where it belongs, and press Ctrl+V on Windows or Linux or Command+V on Mac. Clipman accepts exactly one available PNG or JPEG file and applies the same image limits and metadata rules described above. Other files, folders, and multi-file selections remain File History only.
Also add copied PNG and JPEG files to Rich Text history is a separate desktop preference and is off by default. When enabled, copying exactly one supported image file records the normal File History event and also adds the image to shared Rich Text history automatically. The Rich Text and image-history options must also be enabled. Leave this preference off when you want explicit Rich Text paste to be the only way copied image files are shared.
Use Ctrl+G on Windows, Command+G on Mac, or the group command in the history window to assign selected entries to a group. Type a new group name, or choose an existing group from the list and press Enter or OK. Choose No group, or leave the group name blank, to remove the group. The Filter control can show all entries, pinned entries, named entries, ungrouped entries, one custom group, or entries attributed to one device. Filter choices keep their names short for fast typed navigation, with device choices presented separately from groups.
Group names are case-insensitive. For example, GitHub, Github, and github are treated as one group instead of three. When old entries contain several capitalizations, Clipman displays the spelling used most often; the newest spelling resolves a tie. Assigning an entry with different capitalization reuses that displayed spelling.
On Windows, the Groups menu lists the same filters as the Group field. The first ten filters show their Alt+1 through Alt+0 shortcuts in the menu; additional groups appear by name without a numbered shortcut. The top-level Groups menu deliberately does not use Alt+G, because Alt+G moves focus directly to the Group field.
Use Alt+1 through Alt+0 on Windows, or Option+1 through Option+0 on Mac, to jump to one of the first ten group filters. These follow the same order as the Group filter field: All, Pinned, Named, Ungrouped, then custom groups.
On Windows, the Group filter applies when you press Enter in the group field or move focus away from it. Arrowing through the group list does not immediately throw focus back to the history list. On Mac, open the group filter with Option+G or the toolbar Filter button, then choose the filter from the menu.
Each Clipman client includes a Device name setting for new clipboard events. Changing it does not rewrite old history or move machine-specific data; it only changes the device label recorded on future entries from that client.
The Text history list includes the entry text, name, group, device, added time, and last-used time. The Device column records the computer, phone, or tablet that added or most recently re-added the entry, which helps when several devices share the same database.
The View menu on Windows includes Text history, Links history, Rich Text history, and File history commands with Alt+T, Alt+L, Alt+R, and Alt+I where those areas are enabled. Linux provides the same four history commands and shortcuts. Focus a tab and move it with Alt+Left or Alt+Right on Windows and Linux, or Option+Left or Option+Right on Mac. Mac keeps keyboard focus on the moved tab instead of entering its history list. The selected Mac tab is part of the normal Tab and Shift+Tab sequence; use Left or Right Arrow while it is focused to switch history areas, then Tab onward to the history list. Tab order is stored for the current device. Disabled optional tabs keep their place and return there when enabled; moving a tab does not change the fixed named shortcuts on Windows or Linux, while Mac updates the visible Control+number shortcuts immediately. The View menu on Windows and Linux, and the Sort controls or Clipman menu on Mac, can sort normal Text, Links, or Rich Text history entries by last used, added date, text, group, device, or manual order. On File history, the same controls sort by time captured, file count, name, operation, source application, or manual order.
Sort direction labels describe the next result plainly, such as oldest first, newest first, A first, Z first, fewest files first, or most files first. Pinned entries and pinned file events stay above normal items and keep their own manual order. Move pinned and normal items separately.
Android and iOS can show normal entries in Manual, Newest first, Oldest first, or Text order. Choose the mode directly in mobile Settings, cycle it from the history controls, or long-press the status bar. VoiceOver and TalkBack also expose a named action for each mode. The choice is saved on that phone or tablet and changes only the displayed list; it does not rewrite shared history or disturb pinned-entry order.
Ctrl+C and Ctrl+X on Windows, or Command+C and Command+X on Mac, put normal text on the system clipboard, so the text can be pasted into other applications. On Windows, Mac and Linux, General preferences can join multiple selected entries with no separator, one new line, one blank line, a space, comma and space, or a custom separator. Custom separators accept \n, \r\n, \r, and \t. Windows also stores a private clipboard format at the same time, so if multiple entries are copied or cut and then pasted back into Clipman with Ctrl+V, they return as separate history entries regardless of the visible separator.
ClipMerge is an optional Windows, Mac and Linux feature for building one clipboard value while moving through a document or file list. It is off by default. Enable it in General preferences, copy the first text or file selection normally, then copy the next selection twice within the configured merge window. Clipman replaces the clipboard with the combined result and plays merge.wav. The default window is 500 milliseconds and can be set from 200 to 2000 milliseconds.
Text can be separated by one new line, one blank line, a space, comma and space, or a custom separator. Custom separators accept \n, \r\n, \r, and \t. Combining separately copied formatted selections safely produces plain text; Clipman does not splice unrelated HTML or RTF documents.
File merging removes duplicate paths. Copy operations merge normally. Cut operations merge only while every source path in both selections still exists; if an earlier cut has already been pasted or moved, Clipman keeps the newer valid cut and does not combine it with the dead path. Clipman also requires both quick copies to contain the same payload and come from the same source application. Rapid duplicate clipboard notifications generated by one application command are coalesced without another history write or sound. A different application, clipboard type, operation, expired interval, ignored application, sensitive-data exclusion, deliberate Save Current Clipboard command, or clipboard value written by Clipman resets the pending merge. These rules favour missing an uncertain merge over combining unrelated or private data.
The first copy is stored normally so ordinary copying is never delayed. When the second copy completes the gesture, Clipman updates an unpinned history entry and removes the temporary partial entry. A pinned base is never modified; the merged result uses an unpinned entry instead. Text results use the shared text database, while file results remain in machine-local File History.
Preferences can limit the maximum number of entries or maximum entry age. Use 0 for no limit. Pinned entries and named entries are kept even when limits are applied.
On Windows, the Actions menu contains simple text cleanup tools for selected entries: copy as plain text, trim whitespace, convert to single line, remove blank lines, remove URL tracking, clean links for sharing, line endings, uppercase, lowercase, HTML encode, HTML decode, HTML to readable text, URL encode, and URL decode. The most common actions also have shortcuts: Ctrl+Shift+C for plain-text copy, Ctrl+Shift+T for trim, Ctrl+Shift+L for single line, Ctrl+Shift+B for remove blank lines, Ctrl+Shift+R for remove URL tracking, Ctrl+Shift+S for clean link for sharing, Ctrl+Shift+H for HTML to readable text, and Ctrl+Shift+U for URL encode. Transform actions update the stored entry and also put the transformed result on the Windows clipboard. Mac includes URL cleanup and line-ending actions in the Clipman menu; Command+Shift+R removes URL tracking and Command+Shift+S cleans links for sharing. These update the stored entry and put the transformed result on the Mac clipboard.
On Windows, Copy as plain text copies the selected entry using only the Windows plain-text clipboard format. It does not strip HTML tags from stored HTML source. Use HTML to readable text when you want Clipman to remove HTML tags and keep the readable text.
On Windows, Mac and Linux, Copy Name and Content puts each selected entry's non-empty Name on one line followed by its content. Template content resolves when copied. Multiple selected entries use the separator chosen in General preferences. The command closes history and follows the existing paste-after-Enter preference; in File History, the same shortcut remains Go to file.
Text transforms change the stored plain text and therefore clear any previous Rich Text formatting for that entry. Copy as plain text does not modify the stored entry.
Remove URL tracking removes common tracking query parameters from web links, including utm_*, fbclid, gclid, msclkid, and similar marketing identifiers. It works on plain links and common HTML link attributes such as href and src. Automatic URL-tracking removal is opt-in from Preferences; when enabled, newly copied text is cleaned before Clipman stores it, and the cleaned text is placed on the Windows clipboard.
Clean link for sharing removes tracking parameters and also removes share-state parameters that can change how a shared link opens. For YouTube links this includes timestamp parameters such as t, start, and time_continue, plus common share metadata such as pp, si, and feature. Use this when you want to share the clean video or page URL rather than a link that opens from the middle of a video.
Line endings normalizes selected text entries to Windows CRLF, Unix LF, or old Mac CR. Use Windows CRLF when text copied from macOS, Linux, web tools, or scripts appears as one long line in an older Windows editor. This is an explicit action rather than an automatic default, because code, scripts, patches, and configuration files may need their original line endings preserved.
URL encode is for text that needs to be safe inside a URL. For example, Where's My Car? becomes Where%27s%20My%20Car%3F. HTML encode is for text that needs to be safe inside HTML source, where characters such as ampersands and quotes may need to become HTML entities. Use URL encode for web links, query strings, podcast episode links, and similar copy/paste jobs.
| Menu | What it contains |
|---|---|
| File | Import, import and replace, export, clear text history, close the history window, or exit Clipman completely. |
| Edit | Clipboard entry commands on Text history, including copy, cut, paste after selected, edit entry, group entry, properties, push to other devices, view full text, pin or unpin, delete, and search. On File history it changes to file-event commands: restore files to the clipboard, copy file paths, view event details, delete selected events, remove unavailable events, and clear file history. When a selected pinned text entry or file event is in the first ten pinned items, the menu also shows the relevant pinned shortcut. |
| Actions | Text cleanup and transformation commands for selected Text history entries, including plain-text copy, trim, single line, remove blank lines, remove URL tracking, clean link for sharing, line-ending normalization, uppercase, lowercase, HTML encode, HTML decode, HTML to readable text, URL encode, and URL decode. |
| View | Sort Text history or File history entries from the Sort by submenu, toggle the sort direction with plain first-style labels such as oldest first or A first, and move selected entries up or down in manual order. The sort fields change to match the active tab. |
| Options | Open Preferences or toggle clipboard monitoring on and off. |
| Help | Open the manual, check for updates, review version history, open the project page, contact the project, donate, show diagnostics, or view About Clipman. |
Sensitive-data exclusions live in Preferences. They are off by default. Set the mode to Exclude from history, then check the presets you want. When automatic clipboard text matches a checked preset, Clipman does not save that text to history. The system clipboard or Mac pasteboard is not changed, so your immediate paste still works.
This feature is deliberately conservative. It applies only to automatic text capture. It does not filter existing history, imports, Send To, Quick Paste, Push to other devices, or entries manually copied from Clipman. Presets can have false positives, so enable only the ones that fit the work you do.
| Preset | What it looks for | Notes |
|---|---|---|
| Credit card number | 13 to 19 digits, with optional spaces or dashes | Uses a Luhn checksum, so random 16-digit numbers usually do not match. |
| US Social Security number | Three digits, two digits, four digits | Can match dashed, spaced, or run-together forms. |
| International phone number | A plus sign followed by 8 to 15 digits, allowing common separators | Examples include compact E.164-style numbers such as +447890123456. |
| Long API key or token | A run of 32 or more letters and numbers | Useful for many raw tokens. Complete http and https URLs are not excluded by any sensitive-data preset, so ordinary shopping/search/archive links with long tracking parameters or date-like path segments can still be saved as links. |
| Software license key | Five groups of five letters or numbers separated by hyphens | Covers common Windows-style product keys and similar software serials. Clipman checks the shape only; it does not validate vendor-specific keys. |
| US driver license, approximate | One letter followed by 6 to 13 digits | Approximate because US license formats vary by state. |
Use these harmless test values to check that a preset is enabled and that the exclude sound plays. Copying one of these from the button should trigger exclude.wav when that preset is checked and sounds are enabled. If the browser or reader blocks clipboard buttons, select the text manually and copy it.
4111111111111111+447890123456AAAAA-BBBBB-CCCCC-DDDDD-EEEEE0123456789ABCDEF0123456789ABCDEFThe credit-card test number is a common non-real test value that passes the Luhn checksum. It is useful precisely because Clipman should exclude it while ignoring most random 16-digit strings.
On Windows, Clipman also honors standard clipboard privacy signals added by the application that placed data on the clipboard. If a clipboard update contains Clipboard Viewer Ignore, ExcludeClipboardContentFromMonitorProcessing, CanIncludeInClipboardHistory set to zero, or CanUploadToCloudClipboard set to zero, Clipman treats that update as private, plays exclude.wav when sounds are enabled, and stores nothing in text history or file history.
This helps with password managers and secure-copy workflows that mark their own clipboard data as not suitable for history or sync. It is still cooperative: if Chrome, a webpage, a password manager, or another app puts only ordinary text on the clipboard with no privacy format, Clipman cannot reliably tell whether that text came from a password field or a normal webpage. Use ignored applications and Sensitive Data Exclusions for cases where the source app does not mark private clipboard updates itself.
Preferences can list applications that Clipman should ignore, one per line. This is useful for password managers, banking tools, private notes, or any app where clipboard history should not be recorded.
On Windows, enter process names with or without .exe, or use Add running app to choose from currently running processes. On Mac, enter the app name, bundle identifier, or executable name, such as Safari, com.apple.TextEdit, or KeePassXC. Ignored applications are machine-specific settings. Clipman also treats related helper names as ignored when they use the same name or bundle/process prefix. On Mac, Clipman also refuses concealed pasteboard data and can use pasteboard type metadata from password-manager quick-access panels where macOS does not report the password manager as the foreground app.
Ignored applications and sensitive-data exclusions solve different problems. Ignored applications are best when an entire app should never be captured. Sensitive-data exclusions are best when ordinary apps sometimes copy text matching a known sensitive pattern.
Clipman supports three storage approaches. Local storage keeps history on one device. Shared-folder storage lets the Windows and Mac clients use a folder provided by a cloud-sync service, network share, or filesystem mount. Clipman Server lets Windows, Mac, Linux, Android, and iOS clients synchronize through a separately hosted server while retaining a local cache. Clipman does not contain a WebDAV client and cannot connect directly to a WebDAV URL; WebDAV works only when the operating system or another tool has already mounted it as a normal folder.
On Windows, Clipman defaults to a portable Settings folder beside clipman.exe. On Mac, Clipman stores a small pointer under Application Support and keeps the active machine settings in the selected Clipman data folder. Settings are machine-specific and use the computer name, such as Settings\Desktop-settings.json, Settings\Laptop-settings.json, or MacBook-settings.json. This lets multiple computers share one data folder without fighting over hotkeys, monitoring state, startup choices, or window position. The shared text history database is clipman-history.clipdb.
If you choose a different data folder, Clipman stores this machine's active settings in that folder beside clipman-history.clipdb and the machine-specific file-history database. A small settings-location.json pointer remains in the app's local Settings folder so Clipman can find the selected data folder on the next launch. That pointer stores locations per computer name, so two machines using different local paths to reach the same cloud or network data folder do not overwrite each other's location. If a cloud service creates a conflict copy of the pointer, Clipman merges the known clients back into one pointer file. If the selected folder is unavailable when Clipman starts, Clipman reports that location and stops rather than silently switching to the default folder; reconnect the drive, cloud service, mounted filesystem, or network share and start Clipman again.
If the default data folder is in use, Clipman treats it as portable and relocates it when the app folder is moved. If you choose or type a different data folder, Clipman stores the shared history as clipman-history.clipdb inside that folder. Existing explicit .clipdb file paths remain readable for compatibility. If an explicit data location is missing at startup, Clipman asks whether to browse for the data folder in a new location, use the default database beside Clipman, or stop startup.
The live history database uses Clipman's compressed .clipdb format. By default, compression keeps clipboard text out of casual plain-text searches by Windows Search, Spotlight, cloud sync indexers, archive tools, or similar tools. To share clipboard history between machines, set each machine's data folder to the same synced or network-shared folder. Clipman uses the clipman-history.clipdb file inside that folder for shared text history.
Multiple running Clipman instances can use the same history database. When one device writes a new entry, the database is saved atomically and the other devices reload it when the changed file arrives. Each text entry stores the device name that added or most recently re-added it, and the history list includes a Device column and device sort mode so shared setups can tell which computer, phone, or tablet supplied an entry.
Preferences can optionally put newly created text entries received from another device onto this device's clipboard. On Windows, the same option also puts successful Send To and --add additions onto the originating computer's clipboard. This is off by default. When enabled, Clipman baselines the current newest remote entry first, so enabling the option does not unexpectedly copy older history. Reusing an older entry with Quick Paste on another device updates that entry's last-used time, but it does not trigger remote auto-copy because it is not a newly created entry. To intentionally send an existing selected entry to other devices, use Push to other devices from the entry menu, or press Ctrl+P on Windows and Command+P on Mac. This creates a fresh shared-history event from the selected text so other opted-in devices can receive it as the latest remote text. When duplicate removal is enabled, Clipman refreshes the selected entry instead of leaving an extra duplicate behind. This preference is device-specific and does not change the shared database format.
If the shared database file is missing but its folder is available, Clipman starts with an empty history and creates the file when it next saves. If the shared folder or drive is temporarily unavailable, Clipman keeps running, reports the storage problem in diagnostics, and avoids crashing. Background clipboard captures do not display blocking error dialogs while storage is missing. On Mac, Clipman pauses monitoring and adds a Retry Storage command to the status menu until the data folder returns. On Windows, the notification-area menu and tooltip report that storage is unavailable and offer Retry storage. When the location becomes available again, Clipman merges the existing database before saving so it does not blindly overwrite a shared history file.
History password: Preferences can encrypt the shared history database with a password. With local or shared-folder storage, leaving the password fields blank on a new database means Clipman uses compressed .clipdb storage without password encryption. Clipman Server requires a nonblank password before a connection can be applied. If you enter and confirm a history password, the database is encrypted with AES and checked with a message authentication code before loading. The password is not stored inside the shared .clipdb file.
New settings do not remember the history password by default. In that mode, Clipman prompts for the password when it starts, keeps it only while Clipman is running, and clears any saved platform password. If you check Remember history password on this computer, Windows stores the password using Windows user protection for this account and machine, including on Windows 7, and Mac stores it in that user's Keychain for the selected database path. On Mac, Preferences reports whether database encryption is on and whether the password is saved in Keychain; the password field stays blank for security even when a remembered password exists. Copying a settings file to another computer does not copy a working key; that computer must be given the same history password through its own Preferences window. Remembered passwords are still recoverable by software already running as the same signed-in user, so leave Remember unchecked if you prefer startup prompts over same-user recoverability.
The Generate password button, where available, creates a random history password, fills both password fields, and copies it to the clipboard. Clipman deliberately ignores that generated password copy, so it is not added to clipboard history. You are responsible for saving that password somewhere safe and entering it on each computer that shares the encrypted history. If the password is lost, Clipman cannot recover the encrypted history.
When typing a history password manually, enter it in both password fields. The Show history password checkbox temporarily reveals both fields so you can verify what you typed. Leave both password fields blank to keep the current encrypted database password. Use the Use no password button if you want to remove password encryption and rewrite the current database without a history password. Windows command-line import, export, and Send To operations can open encrypted databases only when this computer is set to remember the password; the already-running Clipman window can use a session-only password.
If a sync service creates conflict copies of Clipman's settings or history database, Clipman attempts to tidy them automatically when it next loads the affected file. History database conflicts are merged by entry, then the conflict copies are removed. Machine settings conflicts use the newest copy for that machine, then remove the extra files. This is intended only for Clipman's own settings and .clipdb files.
When Windows uses the install-local Settings folder beside clipman.exe, Clipman writes a small shared update-state file there. It records the current public version, an internal UTC build stamp, the machine that published it, and the expected executable hash. If another running Clipman instance from that same shared installation sees a newer build stamp and the updated executable has synced to that machine, it restarts itself so it runs the current copy. A custom data folder elsewhere may still share history and settings, but it does not coordinate executable replacement; each separately installed Clipman updates normally without being stopped by another machine's build marker.
During an online or automatic update, Clipman downloads the release ZIP to a temporary folder, asks other instances running from the same install-local shared folder to close briefly, replaces the app files while preserving Settings, then starts the updated copy. When the new copy starts it publishes the new shared update state, so other computers using that same shared installation can restart after their cloud service or network share exposes the updated executable. Separately installed clients that share only a custom data folder remain running and use their own updater.
Clipman 2.0 includes a small optional Secrets area for short private snippets that you type deliberately, such as a system password or code that you sometimes need to paste quickly outside a web browser. Secrets are not captured automatically from the clipboard, are not shown in normal Text history, and are not included in ordinary history import or export. Open Options, Secrets on Windows, Secrets from the Mac status menu, or Secrets from the Mac in-window Clipman menu with Option+M. You can also open Secrets directly with Ctrl+Shift+E on Windows or Command+Shift+E on Mac.
Secrets require a history password. They are stored in a separate per-machine <computer-name>-secrets.clipdb file beside the active settings/history files and use the same history password as the main database. They do not sync through the shared text-history database. Opening the Secrets manager asks for the current history password so names and assigned hotkeys are not shown casually from an unlocked desktop. The secrets list shows names and assigned hotkeys only; secret values are hidden in the list and are edited in password fields. If you remove the history password, Clipman does not rewrite secrets as an unencrypted file.
In the Secrets manager, press Insert to add a secret, F2 to edit the selected secret, Delete to remove it, Enter to Quick Paste it immediately, and Esc to close the window. The secret editor has fields for a name, the secret value, confirmation, and an optional Quick Paste hotkey. Ctrl+A on Windows and Command+A on Mac work in the password and secret text fields so a mistyped value can be selected and replaced without holding Backspace.
Each secret can have its own Quick Paste hotkey. Pressing that hotkey temporarily places the secret value on the system clipboard, sends the normal paste command to the active app, then restores the previous clipboard where the platform allows it. This is meant for convenience, not as a full password manager: any app that can monitor keystrokes, inspect the clipboard at the wrong moment, or run as the same signed-in user may still be able to see what you paste.
Clipman 2.0 adds an optional Clipman Server path for people who want to host the shared history database from one machine, a Raspberry Pi, or a VPS instead of relying only on a cloud service, synced folder, or network share. This is an additional storage path, not a replacement for the existing local and shared-folder workflow.
The normal Clipman app packages are client-only. Clipman Server is distributed as a separate cross-platform server package from the Clipman releases page. That package runs the same Python server on Linux, macOS, and Windows so the safety model stays consistent: random high port and random bearer token on first run, password-scoped database buckets, cheap revision polling, rolling backups, private file permissions where supported, rotating logs, database-ID log redaction, lightweight runtime counters, and optional direct TLS.
The server stores and serves raw .clipdb files. It does not know, request, or store the history password. Encrypted databases remain encrypted on the server; Clipman clients unlock, merge, and save history locally, then upload the updated database with a revision check. If another client has already uploaded a newer copy, the server rejects the stale upload so the client can download, merge, and try again instead of overwriting newer history.
Each server token plus each history password maps to a separate server-side database bucket. That means two clients using the same server token and same history password see the same history, while a wrong password or intentionally different password does not overwrite the existing database. Clipman Server requires a nonblank, preferably unique history password; passwordless history remains available only with local or shared-folder storage.
Backups are written under each database bucket. The default backup schedule is hourly, with roughly 24 hours of backups kept and a maximum of 48 backup files.
For private LAN, localhost, or VPN-only use, clients can use clipman://host:port. Clipman displays that form to avoid making the server look like a normal web page, then uses the local server transport internally. Do not expose plain clipman:// or plain HTTP to the public internet. For VPS or internet-facing use, put the server behind HTTPS or start the server with --cert-file and --key-file so clients connect using an https:// address.
Clipman Server 2.4 can embed its public private-certificate authority in the generated .clpconf connection file. Current clients validate that authority and trust it only inside Clipman, only for the HTTPS host shown during import, while still requiring a valid server certificate and matching host name. It is not installed as a device-wide root, and public HTTPS connections continue to use the operating system trust store. Transfer the connection file through a channel you trust because it also contains the private server token. The older operating-system certificate installation and share-ca flow remain available for older clients and recovery; after a current client connects with the embedded authority, an old Clipman authority can be removed from the operating-system trust store.
On Linux, Linux/install-clipman-server.sh installs the server and its startup helper. On first setup, Clipman Server creates clipman-server-connection.clpconf beside its settings file. In Clipman Preferences, choose Import server file on Windows or Import Server File on Mac, review the server address, enter a unique history password if one is not already configured, then apply the settings. On Android or iOS, tap the .clpconf file in the system file browser to open it in Clipman, or use Import server connection file in Clipman Settings. Clipman can export the currently configured connection from the same Preferences or Settings area on Windows, Mac, Android, and iOS. Mobile export offers both Save to Files and the native share sheet, so the connection can be sent through Messages, WhatsApp, AirDrop, Nearby Share, or another chosen app. Clipman warns before export because the file contains the private server token; store and share it securely, and never keep it beside an exported clipboard history. Imported details still require review and Save before synchronization begins. The server also writes a readable clipman-server-connection.txt file for manual setup and older clients. Both files contain the private server token; delete them or move the details to a password manager once every client is configured.
The Linux server installer supports systemd and runit. It detects the active service manager automatically, or an administrator can select systemd or runit with CLIPMAN_SERVER_INIT_SYSTEM. Per-user runit supervision uses turnstile and service directories under ~/.config/service. A system-wide runit service uses /etc/sv and /var/service and does not require turnstile.
The generated clipmanserver helper uses the selected service manager for starting, stopping, restarting and checking the server, as well as for enabling or disabling automatic updates. If runit is present without turnstile, the normal user-local program and helper are installed without claiming that a persistent per-user service is available.
To start a server from an existing history, connect first from the Clipman client that already has the desired history and history password. Do not manually copy a .clipdb into the server's database folders; clients derive the correct server bucket from the server token and the history password, and the server deliberately does not know the history password.
To use a server from the Windows or Mac client, open Preferences, set Storage type to Clipman Server, enter the server host and token, and keep the data folder set to a local cache/settings folder. The host can be typed as home-server:49152; Clipman infers the local server protocol. The server token field is hidden on screen and saved with per-user protection: Windows uses current-user DPAPI protection, and Mac uses the user's Keychain. The client still watches and saves a local cache, but text history is synchronized through the server.
Clients normally poll the server cheaply by checking the database revision. If the server, network, or VPN is temporarily unavailable, Clipman keeps its local cache, backs off repeated polling failures, and retries automatically. Diagnostics include the last server poll, last successful sync, last upload, current server revision, and failure count so sync problems can be diagnosed without guessing.
Android and iOS clients can choose Local or Server in Settings. Local mode keeps clipman-history.clipdb in the mobile operating system's private app storage and does not require a server. Server mode uses the same private file as an offline cache. Server details remain saved while Local mode is selected, and switching back to Server merges local additions, edits, pins, and deletions with the server history before uploading, so work done without a connection is not blindly replaced.
Android and iOS Settings can optionally back up encrypted history to a folder you choose through the system file picker, including supported cloud and document providers. A nonblank history password is required. Clipman writes one Clipman History.clipdb file containing history only; server details, tokens, settings, and passwords are never included. Use Restore and merge history backup to combine its entries and deletion records with current history instead of replacing newer information.
When a mobile client starts in Server mode, it displays its encrypted on-device cache first and refreshes from the server in the background. A normal launch therefore does not show an empty history merely because the network response has not arrived yet.
After a normal Android or iOS addition, edit, pin, title change, or deletion, Clipman writes the encrypted local cache and uploads that database against the last server revision it received. It does not download and process the complete history again unless another client changed the server first. In that conflict case, Clipman downloads, decrypts, merges, and retries through the normal conflict resolver. Mobile status reports synchronization in progress and does not claim the change is synced until the server accepts it.
Clipman iOS provides Add Clipboard to Clipman and Copy Latest Clip actions through Apple's Shortcuts app and Siri. Either action can be assigned to the iPhone Action Button. Add Clipboard stores the current iOS clipboard text and available formatting; Copy Latest places the newest Clipman history entry on the iOS clipboard. Both honour Clipman's biometric or device-authentication setting, save through the encrypted local cache, and continue safely when the server is temporarily unavailable. Long-press the Clipman Home Screen icon to use the same two commands without creating a shortcut. Suggested Siri phrases include Add clipboard to Clipman and Copy latest from Clipman. Clipboard access follows the Paste from Other Apps choice in iOS Settings; Clipman does not add a second confirmation screen.
Android and iOS Settings also offer Require biometric or device authentication. It is off by default. When enabled, Clipman asks for Face ID, Touch ID, biometrics, or the device credential before showing history after the app returns to the foreground.
Mobile Settings includes optional ways to support Clipman. Android opens Clipman's donation page, while iOS presents one-time tips through Apple's in-app purchase system. Tips do not unlock features, content, or services.
Android and iOS Settings include Open Manual in a separate Help section. It opens the rendered Clipman manual in the default browser and does not save or discard Settings changes.
Clipman Android can check GitHub for updates automatically while the app is open, at most once per day. Use Check Now in Settings for an immediate check. Clipman verifies the downloaded package name, version, digest when supplied by GitHub, and application signing key before opening Android's installer. Android always asks the user to approve the installation; Clipman does not silently replace itself. TestFlight provides update delivery for iPhone and iPad.
Read the server package's Manual.html for setup, security, service-path, TLS, logging, backup, and API details.
Send To is a Windows feature. Windows Preferences can add Clipman to the Windows Send To menu. Sending a supported text-oriented file to Clipman adds the file's text content to clipboard history. Supported examples include plain text, logs, Markdown, CSV, JSON, XML, HTML, CSS, JavaScript, PowerShell, batch files, INI/config files, AutoHotkey scripts, registry files, common source-code files, and extensionless documents named README, LICENSE, LICENCE, NOTICE, CHANGELOG, COPYING or AUTHORS. The imported text uses the current duplicate and history-limit preferences.
The Send To shortcut is named Clipman - add text to history with C as its menu accelerator.
The Send To entry calls Clipman with the selected file path. The file is imported into the active local, shared-folder or server-cache history database. Preferences can choose whether a successful Send To import also brings the history window to the front. If Clipman is not already running, it imports the file using the settings in the Settings folder beside clipman.exe. When automatic grouping is enabled, Send To imports are placed in a group named Send To. Mac does not currently ship a Send To equivalent.
The File history tab shows file, folder, and non-text clipboard events captured by Clipman. File history is stored separately from text history in a machine-specific database named like Settings\Desktop-file-history.clipdb, Desktop-file-history.clipdb inside a custom data folder, or MacBook-file-history.clipdb inside the selected Mac data folder. If you set a history password, file history uses the same password; there is not a second password to remember. File history stores paths and clipboard-format details only. It does not copy or preserve the actual file contents.
Copying the same file set again moves the existing event to the top instead of adding another duplicate. File history rows start with the file or folder name, then show the operation and file count. Press Enter to restore all existing files and folders from the selected file events to the clipboard and close the history window, matching Text history behavior. Press Ctrl+C on Windows or Command+C on Mac to copy all selected file paths as text without closing. Use the View menu on Windows, or the Sort controls and Clipman menu on Mac, to sort normal file events by time captured, file count, name, operation, source application, or manual order. Press Home, End, Page Up, and Page Down for larger list jumps. Press Backspace to jump to the first normal file event below pinned file events. Press Shift+Enter to pin or unpin selected file events. Press Ctrl+Enter on Windows or Command+Enter on Mac to go to a single selected file or folder in Explorer or Finder. Press Alt+Up or Alt+Down on Windows, or Option+Up or Option+Down on Mac, to move selected file events within the pinned or normal section. Moving file events switches File history back to manual order. Press Del on Windows or Command+Backspace on Mac to remove selected unpinned file-history events from the list.
Pinned file events are grouped at the top of File history, with the same normal-entries separator used by Text history. They are numbered when they can be restored by shortcut, and their pinned state is shown in the Pinned column or metadata rather than before the event name. They are protected from delete, clear-normal cleanup, automatic unavailable-event cleanup, and file-history size trimming. Use Ctrl+1 through Ctrl+0 on Windows, or Command+1 through Command+0 on Mac, from the File history tab to restore one of the first ten pinned file events and close history. Windows also supports Ctrl+Shift+1 through Ctrl+Shift+0 to copy paths from one of the first ten pinned file events as text and close history.
File history can clear normal file-history events or remove unavailable unpinned events. Unavailable events include non-file clipboard events that cannot be restored as files, and file events where all referenced files and folders are now missing. These actions are also available from the keyboard with Ctrl+Del and Alt+Del on Windows, or Control+Backspace and Option+Backspace on Mac. Windows Preferences can also remove unavailable unpinned events automatically as new file-history events are captured.
.clipdb, JSON, or text file on both platforms. Windows can also import old Clipman clipman.db or Ditto SQLite databases..clipdb, JSON, or text on both platforms.When importing an encrypted .clipdb, Clipman asks for that import file's password if it is different from the current database password. When exporting a .clipdb from the app, Clipman asks whether to use the current history password, a new export-only password, or no password. If the current history database is password protected, Clipman asks you to re-enter the current history password before creating any .clipdb export, including an export that uses no password. JSON and text exports are deliberately readable interchange formats, so use .clipdb when exporting private history that should stay encrypted.
Old Clipman and Ditto imports are Windows-only and read text entries only. They do not import images or every custom clipboard format. Imported entries are grouped as Imported from old Clipman or Imported from Ditto so they are easy to review after import.
Use Help, Check for updates on Windows, the Clipman status or history-window menu on Mac, or Shift+F1 on either platform to check GitHub releases. If a newer release includes a Clipman ZIP package for your platform, Clipman can download it and update the app.
Use Preferences, Startup and updates to choose whether Clipman checks for updates never, at startup, hourly, or daily. If Install updates silently when possible is enabled, automatic checks can install a newer ZIP release without prompting where supported. Manual update checks still show the normal update dialog.
Use Help, Version history on Windows or Version History on Mac to review the latest release notes. Use Help, Project page or Ctrl+F1 on Windows and Project Page or Command+F1 on Mac to open the GitHub project page. Use Help, Contact on Windows or Contact on Mac for feedback, and Help, Donate on Windows or Donate on Mac to support Clipman. Use Help, Diagnostics or Alt+F1 on Windows and Diagnostics or Option+F1 on Mac to open diagnostics.
Clipman can play short sounds when text is copied, selections are merged, remote text is copied from another synced machine, monitoring is turned on, monitoring is turned off, a clipboard item is ignored because monitoring is off, or a sensitive-data exclusion blocks automatic capture. Sounds can be enabled or disabled in preferences.
The default sounds are ordinary WAV files. On Windows they live in the sounds folder beside clipman.exe. On Mac they are bundled inside Clipman.app. To keep custom sounds safe across updates, create a sounds folder inside Clipman's active settings/data folder and put any replacement WAV files there. For a default Windows portable install this is usually Settings\sounds beside clipman.exe; if you choose a different data folder, use the sounds folder inside that chosen data folder instead. Clipman checks custom sounds first, then falls back to the bundled/default sounds for any missing file. Keep the same file names: copy.wav, merge.wav, remote.wav, on.wav, off.wav, skip.wav, and exclude.wav. If merge.wav is missing, Clipman falls back to copy.wav; if exclude.wav is missing, Clipman falls back to skip.wav.
A normal Windows portable Clipman folder contains only the files needed to run the app. A Mac package contains Clipman.app, which bundles the executable, manual, sounds, and supporting resources inside the app package.
| File or Folder | Purpose |
|---|---|
clipman.exe |
The Windows Clipman application. |
Clipman.app |
The Mac Clipman application bundle. Move or drag this to /Applications for normal use. VoiceOver users can copy and paste the app in Finder instead of dragging if preferred. |
Manual.html |
This user manual. Press F1 in Clipman to open it. On Mac, the manual is bundled inside Clipman.app. |
LICENSE.txt |
The MIT License text for Clipman. |
sqlite3.dll |
Windows SQLite runtime used only when importing old Clipman or Ditto SQLite databases. |
sounds |
Default WAV files for copy, remote sync copy, on, off, and skipped-copy feedback. |
Settings |
Created on first run on Windows. By default it stores machine-specific settings, the shared text-history database, the machine-specific file-history database, optional custom sounds, logs, and shared update state. If you choose a custom data folder, this folder keeps a small settings-location.json pointer and the active data moves to the selected folder. The pointer stores one location per computer name so machines with different local cloud paths can share the same app folder without fighting. On Mac, the active settings and databases live in the selected data folder, with a small Application Support pointer back to that folder. |
The source package also includes README.md, source files, and build project files. Those source-only files are not required in the portable runtime folder.
Clipman stores text history in the main history database and stores file or non-text clipboard events in a separate machine-specific file-history database. Use the File history tab to review those events. It can show files copied or cut in Windows Explorer or macOS Finder, file-like clipboard operations from other programs, and specialist formats such as audio-editor clipboard data. Clipman cannot retrieve events from before it was running, and file events are useful only while the referenced files still exist at the same paths.
Press Enter on a file event to put its files back on the clipboard, ready to paste into Explorer, Finder, or another file-aware application. Press Ctrl+C on Windows or Command+C on Mac to copy the file paths as text, Shift+Enter to pin or unpin selected events, Del on Windows or Command+Backspace on Mac to remove selected unpinned events from file history, F4 to view event details, or Ctrl+Enter on Windows and Command+Enter on Mac to go to one selected file or folder. Non-file events are informational; they can be reviewed, pinned, moved, or deleted, but they cannot be restored as files. Open diagnostics for a text report of the same events.
The command-line interface is currently Windows-focused. The Mac app is intended to be used through Clipman.app, the menu bar item, global hotkeys, and the history window.
| Command | Effect |
|---|---|
clipman.exe --show |
Shows the history window for the running Clipman instance. |
clipman.exe --close |
Closes the running Clipman instance. |
clipman.exe --pause |
Turns clipboard monitoring off in the running Clipman instance. |
clipman.exe --resume |
Turns clipboard monitoring on in the running Clipman instance. |
clipman.exe --toggle |
Toggles clipboard monitoring in the running Clipman instance. |
clipman.exe --add "Some text" |
Adds the provided text directly to Clipman history. |
clipman.exe --export "C:\Path\backup.clipdb" |
Exports the current Clipman database to a compressed .clipdb file. Existing files are not overwritten. |
clipman.exe --import "C:\Path\backup.clipdb" |
Imports entries from a .clipdb, JSON, or text file into the current database without replacing existing entries. |
clipman.exe --import-replace "C:\Path\backup.clipdb" |
Asks for confirmation, creates a timestamped backup of the current database, then replaces the current database with entries from the selected .clipdb, JSON, or text file. |
clipman.exe --import-replace "C:\Path\backup.clipdb" --yes |
Runs the same replacement silently for scripts. A timestamped backup is still created first. |
clipman.exe "C:\Path\Example.txt" |
Adds supported text-oriented file content to Clipman history. Examples include .txt, .log, .md, .csv, .json, .xml, .html, .ps1, .cmd, .bat, .ini, .ahk, .reg, and common source-code files. |
Clipman is released under the MIT License. The portable and source packages include the full license text in LICENSE.txt.
Clipman is based on work initially by Tyler Spivey. The original Clipman served as the practical foundation for this rebuilt version.
SQLite import support uses the public-domain SQLite runtime from the SQLite project.
Questions and feedback can be sent through Help, Contact in the app or https://onj.me/contact.
Clipman is free software. If you want to support Andre's work, use Help, Donate in the app or visit https://onj.me/donate.