August 21, 2026
5 Mac Terminal Apps That Replaced My Biggest Memory Hogs
The apps costing your Mac memory aren’t the ones you open. They’re the ones you never close.

By Aditya Darekar
10 min read
When I bought the MacBook Neo with 8GB memory a few months back, I knew what I was getting into. The memory was not going to be able to handle all my Pro workflows. And so I decided I was not going to make the same few mistakes I made when setting up my MacBook Pro a few years ago.
The top one being installing useless memory-hogging apps with their good-for-nothing, many a time unoptimised, GUIs. Until a few years ago, most third-party app developers were shipping both Intel and Apple Silicon binaries for their apps, which ended up taking more disk space.
All in all, I decided I didn't want any of these memory-hogging, unoptimised, disk-cluttering apps on my Neo, which was already limited in memory, disk space, and battery capacity compared to my Pro. But that didn't mean I stopped certain workflows on the Neo.
Instead, I started using Terminal apps to replace those GUI apps and workflows. To be precise, fiveterminal apps replaced their GUI counterparts.
Why does that matter? A Mac app is usually a resident. It moves in. A terminal app, on the other hand, is a visitor. You type its name, it does the job, it exits. And between uses it costs you exactly nothing — no background processes, no helpers, no extra bytes.
That distinction, not any romance about green text on black, is why the following five tools earned a place on a machine with no memory to spare. Some of them are also faster and better than what they replace. Here's the list of those awesome terminal apps that I have been rocking on my Neo for the past few months…
1. Mole
The one app that I replaced instantly while setting up my Neo was CleanMyMac. For years it's been the app people install when their Mac feels slow — a beautiful interface wrapped around a set of jobs macOS mostly handles by itself, and one that makes you feel like an overseer when you're mostly watching a progress bar. But in many ways, you are not the overseer it makes you think.
So I replaced it with Mole on Terminal.
brew install molebrew install moleIt does the same routine system scan for caches, logs, browser cookies and temporary files, but unlike other cleaner apps, it shows you exactly what it's going to delete. You can even run a dry run before committing a delete so that critical system files are not deleted.
But Mole doesn't stop there. It also does system monitoring and analysis—basically, a pretty-looking Activity Monitor within Terminal. I found the CPU, Disk, Network and Memory breakdowns quite easy to read compared to the graphs on Activity Monitor.
Mole developers themselves say that their project "combines CleanMyMac, AppCleaner, DaisyDisk, and iStat Menus." — that's 4 apps in one. And best of all, no premium subscriptions and no background helper agents. That's the beauty of open source apps.
**GitHub - tw93/Mole: 🐹 Clean, uninstall, analyze, optimize, and monitor your Mac. **
- Clean, uninstall, analyze, optimize, and monitor your Mac. - tw93/Molegi*
Hey Readers! Aditya here 🙋♂️
Tenth story in my Apple's Intelligent User 🧐 series — underrated tools that unlock what our Apple devices can really do. And nothing on a Mac is more underrated than the app already sitting in it: Terminal. Claps 👏, highlights 🖍️, responses 💬 and reposts 🔁 all help this reach people before they buy another cleaner app.
2. Hazelnut
Last year, I mentioned an AI-powered app called Riffo that I had begun using to organise my desktop clutter. It would create folders based on the file types and move them into the appropriate folders. It even did file renaming if necessary.
It was all good until I realised I was giving away a lot of private information about things on my Mac to a random AI app. Also, it had a lot of power overall. What if there were some important files I needed, and the app just decided to rename or move them into a folder I couldn't find at a critical time? That's not the kind of file organisation I had hoped for.
So I started looking for apps that do the job more locally and rely on RegEx rather than AI. I found a bunch, and Hazel seemed to be the best among them. But it had issues: it was another GUI app, separate from Finder, that I would have to manage, and it was paid. I wasn't sure if I wanted to pay for a File organiser app/tool.
That's when I discovered an open-source alternative for Hazel — Hazelnut.
brew install ricardodantas/tap/hazelnutbrew install ricardodantas/tap/hazelnutJust like its name, it's a Rust rebuild of Hazel's idea but for the terminal. It has a proper interface: four tabs for your dashboard, rules, watched folders and activity log, and fifteen themes, so you're clicking rules together rather than hand-writing config.
Rules match on glob patterns, regex, extension, file size and age; actions move, copy, rename with {date} and {name} tokens, trash, archive, or run a command of your own. Here's a simple one I created for moving all the screenshots I took into the MISC (Miscellaneous) folder on my Desktop.
But Rules don't work on their own. You also need to set up watch folders within the config. toml file before applying the rules on a run. You can edit the config file using nano or any editor of your choice:
nano ~/.config/hazelnut/config.tomlnano ~/.config/hazelnut/config.toml
Hazelnut is not a pure visitor terminal app. It runs a daemon and watches your folders continuously when it's active — more like a resident, but the best part is that you can choose the rules you want to enable, and only when you run hazelnut in the terminal, those would be applied. So, it requires user input before it does its job.
And if you fear some rules overriding or manipulating your critical files, you could do a dry run of hazelnut where it just shows you what it would do without applying the actual changes according to the rules mentioned:
hazelnut run
hazelnut run --apply.hazelnut run
hazelnut run --apply.**GitHub - ricardodantas/hazelnut: 🌰 Terminal-based automated file organizer inspired by Hazel… **
- Terminal-based automated file organizer inspired by Hazel. Watch folders and organize files with rules. …gi*
3. Apple Frames CLI
This one's actually my favourite.
As someone who writes about Apple tech so much, I need an app that can perfectly frame my screenshots according to the devices they were taken on. I have explored a bunch of these apps, and most of them require a subscription. Even after a subscription, many of them have a wonky UI that doesn't get support for long, and you are stuck with iPhone frames from 2 years ago…
Federico Viticci solved that problem by turning his famous Apple Frames shortcut into a command-line version earlier this year. It reads your screenshot(s), determines which device it came from based on its dimensions, and wraps it in the correct bezel. From iPhone 17 to iPhone 12, from MacBook Air 2020 to MacBook Neo, from iMacs to Studio Displays, and from iPad Pros to Apple Watch Series as well as Ultra, with all their flagship colours — it has it all.
git clone https://github.com/viticci/frames-cli.gitgit clone https://github.com/viticci/frames-cli.gitIt can do a single screenshot, or an entire folder. Also, you can drop multiple device screenshots in the same command, and it identifies the device and applies the default frame with colour (defaults can be changed too).
Confused about what device the screenshots came from? Again, Frames CLI can help you find out that information. After connecting to the device, you can even change the device frame colour before framing the screenshot.
It requires Python 3.8+, Pillow, and an additional installation of ffmpeg as a terminal tool if you want a video mockup. Frames setup pulls about 40MB of assets once and then never touches the network again.
Whether you are a tech writer like me, a developer looking to create good mockups with your screenshots, or just someone who wants their screenshots to look clean with nice bezels and frames around them, Frames CLI is the best lightweight Apple device frames generator you will find.
GitHub - viticci/frames-cli: Frame screenshots and screen recordings taken on Apple devices with… Frame screenshots and screen recordings taken on Apple devices with official product bezels. - viticci/frames-cli
4. Croc
What are your options when you want to quickly send some files to your friend's laptop that's sitting nearby?
AirDrop is excellent right up to the moment it isn't, and it only speaks to Apple hardware.
WeTransfer caps free transfers and forces you to view ads.
A Dropbox or Drive link means uploading three gigabytes to a company's computer so that someone else can download those same three gigabytes back out.
The answer here is: Croc.
brew install crocbrew install crocA CLI file transfer tool that allows any two computers to transfer files and folders securely. It prints a short code phrase. On the other machine — any machine, any operating system- you run croc with that phrase, and the file transfers directly, end-to-end encrypted.
No account. No size limit. No Cloud so nothing is ever uploaded to anybody's server.
I tried transferring (croc-ing?) a 2GB file from my Neo to my Pro. It took about 5 minutes to download on the Pro, at an average of 7 MB/s. That's pretty decent for a no-GUI, no-server terminal tool.
GitHub - schollz/croc: Easily and securely send things from one computer to another :package: Easily and securely send things from one computer to another :crocodile: :package: - GitHub - schollz/croc: Easily and…
5. Aria2
This one was a lifesaver when I discovered it.
When your browser downloads a file over a single connection, it does so at whatever speed that single connection is throttled to, and if your Wi-Fi drops at 94%, it frequently starts again from zero. That's the baseline everyone accepts.
aria2 splits the file into segments and pulls them simultaneously — up to sixteen parallel connections across mirrors or a BitTorrent swarm — which routinely turns a per-connection speed cap into a non-issue.
brew install aria2brew install aria2It supports HTTP, HTTPS, FTP, SFTP, BitTorrent, and Metalink, so it's also a complete torrent client with DHT, peer exchange, encryption, and magnet links. Add -c to resume interrupted downloads from where they stopped.
I discovered this tool while trying to get hold of an .ipa file over an old server that constantly kept crashing and making the download fail at ~80%, only to start again, and again… and then again. With aria2, I was able to drop it in the terminal and let the tool handle the download. I wish I had learnt about this earlier, so I wouldn't have wasted my precious 40 minutes retrying the failed downloads over and over again.
But here's the number that actually should end the argument. The project publishes its own footprint: 4 to 9 MiB of physical memory, and around 6% CPU while running BitTorrent at 2.8 MiB/sec. That's better than any of the free/paid download managers on the Mac. In fact, most download managers like Motrix tend to use aria2 or some sort of engine at its core, so even if you are using any of those download managers, you are just adding more windows to give your GPU a run for its money.
GitHub - aria2/aria2: aria2 is a lightweight multi-protocol & multi-source, cross platform download… aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It…
What my RAM & GPU have to say about the setup
Well, they can't speak so much in words. But the numbers they leave behind are a strong indicator of what it means for a machine with limited memory and storage.
Terminal apps tend to be less of a memory hog because they are not permanent residents and don't have constant background processes and login items queued up on restart. Once you hit ^C or quit Terminal, that's the end of that app's process. You can be sure of that with Mole and Hazelnut.
There's also the added GUI cost for certain apps. Every screenshot-generating app used a lot of GPU resources to render device mockup previews. With Frames CLI, you reduce GPU load by focusing solely on the frame generation task and saving the output.
Then there are the Safari Browser tabs that easily take up 500MB to 1GB of memory when left alone. Multimedia tabs with video players like YouTube or Netflix could cost even more. And for services like Google Drive, multiple service daemons are initialised, which end up costing you not just actual memory but swap memory. With apps like croc and aria2, you save on memory space.
The result's a much lighter-weight app interface on the terminal that doesn't reach for your swap memory during peak memory usage. On a machine with 8GB, the difference between an app that leaves and an app that stays is the difference between enough and not enough.
It doesn't feel much of a compromise either compared to my MacBook Pro apps and their workflow. Fewer GUI apps on the 13" display only means I don't have to squint hard at the different options, and hitting the keys helps me navigate the terminal apps much faster. It feels like a match made in Cupertino.
If this one saved you a subscription, some claps 👏, a highlight 🖍️, or a response 💬 would mean the world and help more Mac users find it.
And if you'd like the rest of my MacBook Neo series, do consider following me here on Medium 🙋♂️ and subscribing to my Newsletter 📬 — I'd love to have you along for the next one.
-Aditya Darekar