Putting Raycast and Alfred in the Spotlight

A while back I was trying to use Spotlight for a bit more than just launching applications or opening websites: I wanted it to trigger Shortcuts! Man, imagine what I could do with all this time not doing things manually… automations like this yield a huge ROI, right?

The idea was simple:

  1. Piece together a shortcut for creating a new journal note in Bear with predefined content
  2. Trigger that shortcut from Spotlight
  3. ???
  4. Profit

In practice though? Not so simple. The only way to get my newly created shortcut to appear in the list of results was to add it to the Dock or as an application. According to Apple’s documentation, shortcuts should just appear, so why didn’t they?

Turns out that, if you have Other deselected as search category, your shortcuts won’t be included in the search result. This in turn, made me wonder, “why do I have so many search categories disabled?” I re-enabled all categories and tried again, only to realise: “Right. This is why.”

This is what trying to open the ~/Downloads folder with Spotlight looks like with all search categories enabled: Spotlight search for "downlo" These results are whack.

Why would I be interested in a random application from the App Store? How could that possibly be what I’m after? What are these suggestions? It’s only at the bottom that we’re seeing what I’m actually after. But uhm, I see not one but two Downloads folders? The first one’s the one from my home directory, the second one’s located in my iCloud Drive, apparantly. I could only differentiate between the two after hitting the spacebar with a folder highlighted or keeping Command ⌘ pressed.

Okay, fair, I hear ya, Spotlight adapts as you use it. If I were to select the right folder, it would be sitting there near the top the next time, waiting for me. But still, this isn’t exactly a great experience. Why isn’t it great? Well, because Spotlight misses context and intent. It has to make do with the search query you’ve so graciously entered. Are you searching for a specific file? Do you intend to search the web? It doesn’t know! So, it just throws all these things in your face and you’re left to figure it out.

Anyway, I figured that I wasn’t going to get the timesaving experience that I was after, not to mention all the time I had wasted trying to get it all to work. It was time to look for alternatives! The ROI of all this research will be huge, I can feel it in my bones!

Raycast

Raycast is one of the most prominent alternatives that jump out when looking for a Spotlight alternative. It looks clean, allows for developing your own extensions and fixes one of the shortcomings of Spotlight: it’s possible to provide intent. Searching for files? It’ll only show you folders and files. Looking for an application? Only applications will be listed in the result.

There are also some other niceties that I’m sure many people will appreciate, like the ability to bind keyboard shortcuts to practically everything and a very decent clipboard manager that you can search through. It even works with images using OCR! Cool.

After triggering Raycast, selecting the Search Files command and entering our downlo query (which is now the official benchmark), I get: Raycast search for "downlo" This is more like it! I’ve provided Raycast with intent, and it returns results matching the criteria. Even my Shortcut, which made me go down this rabbit hole in the first place, shows up as the first result when searching for it! Noice.

So, that’s it right? Alternative found? Well, not quite. The core features of Raycast are free (forever, according to the pricing page) but there’s bit of a push to go “Pro”, which starts at $8/month. The things you’ll gain with this membership is AI (of course), cloud sync and some more customisation options. Okay, fine, the core features are more than enough to get me by, so I can completely ignore the subscriptions. Not necessarily a dealbreaker.

Second, Raycast is a VC backed company that has raised a total of $47.8M over four funding rounds. This means that, at some point, those backers want to see some ROI sooner or later. I mean. that’s what I’m after too! I want my time savings! So, it seems safe to assume that most of the development effort is going to be spent to raise shareholder value. Seeing as I don’t see myself subscribing just yet makes me conclude that I’m not the target audience. Also, not a dealbreaker. Like I said: the core features suit me just fine. It’s just something that I’m keeping in mind.

Third, and this is where it gets a bit more serious, you need a Raycast account for custom extensions and accessing the API. I can see why, but I personally don’t feel like creating an account for something that’s essentially an app launcher. There’s even a privacy policy that states: “In certain circumstances we may share your Personal Data with third parties”. Okay, cool, probably nothing to worry about, right? Still, important to keep in mind, especially when comparing alternatives.

Lastly, those extensions that I’ve mentioned earlier, the ones that you can install from the store? They can all be found on GitHub and Raycast says that they review each and every submission and update, but it’s important to know that these extensions basically have the same permissions as the Raycast application. Personally, not something I’m thrilled with. Remember the XZ Utils backdoor? Yeah.

I’m not dismissing Raycast just yet, but I’m not sold on it either, at least not yet. Let’s keep looking for alternatives!

Alfred

One of the results that the interwebz offers as an alternative is Alfred which is, funnily enough, one of the first Mac applications that I’ve ever bought, back in 2013. That’s 12 years ago! Initally I bought v3, and later bought the “mega supporter” powerpack, granting me a lifetime of free upgrades. I’m guessing that I’ve stopped installing it when I switched hardware? I’m not sure.

Anyway, enough dwelling on the past! Time to put Alfred in the spotlight and see how it compares, today!

Let’s start with our very serious and official benchmark: opening up the downloads folder Alfred search for "downlo"

This is pretty much spot on. The one in my home directory is first in line, followed by the one in iCloud Drive. Better yet: I’m able to differentiate immediately without moving the selection or hitting any modifier keys. One major difference here with Raycast is that I’ve not provided any context or intent. Alfred searches through applications, preferences, contacts and folders by default. These are actually very sane defaults, nine times out of ten you’re probably hunting for an application or a specific directory (at least, I am).

And for the times that you’re not? Well, you provide intent! Let’s say that I want to do a web search, then you’ll just prefix your query with google: Google search with Alfred Entering opens up your default browser with the Google results page. Neat.

This is generally how Alfred works across the board; prefix your query with the intent and you’re off to the races. I’m not going to go over each and every feature Alfred offers, but if you’re interested, the features page will tell you all there is to know.

Now, can I use it to run Shortcuts? Which is, if I remember correctly, the main quest. Unfortunately, it can’t. A shortcut is neither an application, directory, preference nor a contact. There’s also no keyword to provide Alfred with some context about what we’re trying to do. However, Alfred does allow creating your own using Workflows! Just a matter of investing a little bit more time before we get to that sweet-sweet ROI!

Alfred's workflow editor

That’s it. As far as workflows go, this one’s pretty straightforward. The journal keyword triggers the shortcut! You can get pretty crazy with these, and, again, the docs will explain it way better than I possibly can.

There are some downsides too, although nothing too serious. First, the UI looks a little dated, as you can see in the screenshot above. Luckily, you can customise the theme of the search window any way you like, so you can make it look like it fits in with the rest of the crowd, save for the icons. Second, Raycast allows extensions to have their own UI within the application, while Alfred does not. You’re pretty much limited to lists and a few predefined views.

Going on this little adventure made me remember why I bought Alfred in the first place: it’s customisable, workflows offer a lot of creativity and flexibility, and it’s extremely fast and lightweight. It’s an application that solves a problem and solves it really well, without subscriptions, syncing, accounts, … To top it all off, buying a licence supports an indie dev!

This concludes it for me! There are a few others that are worth giving a try, but as you’ll understand, I’ve got to think about that ROI. I’ve invested multitudes of time to shave off a few seconds of each day. This might’ve not been a smart investment, but at least it was a fun one!

Spotlight, again

This feels a bit like one of those bonus scenes of a Marvel movie, right after the end credits have scrolled by and the music has faded, but have you seen what Apple announced earlier this week at WWDC? They’ve overhauled Spotlight and added the very thing that’s now missing: intent. Go check out the press release page, it contains a few demos!

This feature is probably the one I’m most excited about. An intent-driven Spotlight, combined with macOS’ Shortcuts, combined with app intents? Yes, please!

I’ll come back to this post once macOS Tahoe has been released, see how it fares with the official benchmark test of opening the downloads folder.