Cut and paste files in Finder, the way you expect.
Press ⌘X on a file or folder, then ⌘V where you want it. The items move — they are removed from the original location, exactly like Windows.
Free, open source, no ads, no tracking. Speaks eleven languages.
New in 1.2: a shelf for gathering files, favourite folders on a key, a searchable move log, and recent cuts you can put back. What changed →
macOS has no cut for files. Finder's ⌘X is permanently greyed out, and the real move gesture is ⌘C followed by ⌥⌘V — which almost nobody knows about, and which your fingers will not learn if they grew up on Windows.
CutX makes the obvious shortcut do the obvious thing.
CutX never touches your files. It asks Finder to do the move.
On ⌘X it presses Finder's own Copy for you and reads what Finder put on the clipboard. On ⌘V it presses Finder's own Move Item Here. That means undo (⌘Z), the progress window for large transfers, the Replace / Keep Both dialog, authentication for protected folders, and permission preservation all work exactly as they normally do — because it really is Finder doing the work.
Outside Finder, CutX is invisible. ⌘X in your editor cuts text, as always. That guarantee is the most heavily tested part of the codebase.
CutX reads the physical key, not the character on it, so it works on any keyboard layout — Arabic, AZERTY, QWERTZ. Press wherever X lives on your keyboard.
| Shortcut, in Finder | What it does |
|---|---|
| ⌘X | Cut the selected files and folders |
| ⌘V | Move them into the window you're in |
| ⇧⌘X | Put the selection on the shelf — from as many folders as you like |
| ⇧⌘V | Move everything on the shelf into the window you're in (direct download) |
| ⇧⌘1 … ⇧⌘9 | Send what's cut — or the whole shelf — straight to a favourite folder |
All of them are CutX's own: Finder uses none of these combinations, so nothing it does is taken away. (⌥⌘ digits were the obvious choice and were rejected — Finder already sorts with them.)
The shelf. Finder can only move things from one folder at a time. Press ⇧⌘X in one folder, then another, then a third; the shelf keeps them all (up to 200) until you send the lot somewhere in one go. Its window lists every file with where it lives, and lets you take any one of them off.
Favourite folders. Up to nine, chosen in Settings ▸ Destinations. Their order is their shortcut: the first answers to ⇧⌘1. Cut something, press the key, and it lands there without you opening the folder.
The move log. The last 500 moves CutX made — by cut, by shelf or by favourite folder — searchable by file name or by the folder it came from. Each entry shows where the file is now, even if you moved it again since, with Show in Finder and Put it back.
Recent cuts. The last 20 things you cut, in the menu. Pick one to see where it came from and where it is now, then cut it again, copy it, or put it back.
Finder still performs every move, so all of it is undoable with ⌘Z. CutX follows each file by its identity on disk rather than its path — that is how it knows where something went, and it needs no extra permission to do it. The four lists stay on your Mac and each can be cleared from the app.
From the Mac App Store: apps.apple.com — one click, free.
Or download directly:
- Download
CutX.zipfrom Releases. - Unzip and drag CutX.app to Applications.
- Open it. It lives in the menu bar — no Dock icon, no window on launch.
- Grant the one permission it asks for — Accessibility, so it can see ⌘X and ⌘V. The setup screen shows a live checklist and walks you through it; the row turns green the moment you flip the switch. That is the only permission CutX ever needs.
Requires macOS 13 or later. Signed and notarized by Apple, so it opens with one click.
The same app and the same features, free either way. The App Store build runs in Apple's sandbox, and a sandboxed app cannot see Finder's windows — so it cannot know which folder you are looking at. Four things follow from that:
| Direct download | Mac App Store | |
|---|---|---|
| ⇧⌘V | Empties the shelf into the window you're in | Not available — send the shelf with ⇧⌘1…⇧⌘9 or Send to… |
| Put back | Back to wherever the files came from | Into folders you've added as favourites |
| Cut indicator | Over the Finder window you cut from | Near the pointer |
| Buy me a coffee | In the menu and the About tab | Not included |
Left-click the scissors in the menu bar to open the window.
| Tab | What's in it |
|---|---|
| General | Whether CutX is active, the permission checklist, Also use ⌃X, Show cut indicator, Launch at login |
| Sounds | On/off, volume, and six cut sounds with a ▶ on every row |
| Destinations | Your favourite folders — add, reorder, remove. The order is the shortcut |
| About | Version, links, and — in the direct download — the coffee button |
Right-click the icon for the menu: what's currently cut and Clear, then Recent, Shelf and Favourite folders, Open the move log…, Open CutX, Buy me a coffee, and Quit.
CutX speaks English, العربية, Español, Français, Deutsch, Português (BR), Русский, 中文 (简体), 日本語, Türkçe and Italiano. It follows your Mac's language by default, and you can override it in the General tab.
English and Arabic were written by the author. The other nine are machine-translated and have not been reviewed by a native speaker — corrections are very welcome, and take one line. See TRANSLATIONS.md.
- It does not dim the cut files inside the Finder window. macOS exposes no API for that — the greyed-out look in Windows is part of Explorer itself. The menu-bar badge and the on-screen indicator are the honest alternative.
- It does not work in third-party file browsers or Open/Save dialogs.
- Pasting into a non-Finder app copies rather than moves. This is deliberate — it is the safe direction to fail in.
git clone https://github.com/helalrules7/cutx.git
cd cutx
./scripts/test.sh # the unit tests — 117 of them at 1.2.0
./scripts/build-app.sh # produces dist/CutX.app./scripts/integration-test.sh drives a real Finder end to end with synthetic
keystrokes — run it on a Mac nobody is using at the time.
python3 scripts/make-sounds.py regenerates every file in Resources/sounds/, and
./scripts/make-icon.sh regenerates the app icon.
Releases are produced by ./scripts/sign-and-notarize.sh, which needs a Developer
ID certificate and a notarytool keychain profile. ./scripts/build-appstore.sh
makes the sandboxed App Store package, without the donation link, in
dist/appstore/.
Before tagging a release, work through docs/manual-testing.md.
Everything that can be tested without a keyboard, a Finder, or a granted permission
lives in Sources/CutXCore. Sources/CutX is the thin, untestable shell around it.
The whole behavior of the app funnels through one pure function:
func decide(event: KeyEvent, context: Context) -> Decision
// .passThrough | .cut | .paste | .addToShelf | .pasteShelf | .sendToDestination(n)When anything is uncertain the answer is .passThrough. A key that behaves
normally is always better than a key that surprises you.
CutX is free and always will be. If it saves you some clicks:
MIT — see LICENSE. Bundled sound credits are in ATTRIBUTIONS.md; translation credits and status are in TRANSLATIONS.md.
CutX sends nothing anywhere — see PRIVACY.md. Every release is described in CHANGELOG.md.
Made by Ahmed Helal.








