44 comments

[ 0.21 ms ] story [ 54.0 ms ] thread
I’m interested to understand how this is different than Jelly; they seem to be similar. Same for Scriptable. I’ve been looking at this to hand over to Claude to build Shortcuts, something which has a terrible development experience.
You’ll have challenges with this too but you can get something by working with the three top labs’ models. Tried on Arena.ai and sent any errors back (in a personal effort to further iOS accessibility, but I digress).

Wonderful project, thank you Cherri!

You can definitely have Claude work with cherri files.

Jelly was a confusing experience for me, with JellyCuts becoming closed source and focusing on advertising, then Open-Jellycore branching out but not actually keeping up with the latest shortcut actions.

Cherri has almost every action you can find in the Shortcuts app, easy to use, and easy to create Shortcuts that can accept input and output so that they can be automated or scripted further.

Main difference is language style.

Cherri feels like your writing Go.

Jelly feels like your writing JavaScript / Swift.

Could you explain more about how the signing setup works?

(That's what held me back most for spending more effort on shortcuts.)

(comment deleted)
Looks quite cool and I'd like to give a try. What is the main use case for compiling code to shortcuts? I ask because I'm working on a tool[0] that in a way does the opposite.

[0] https://breadboards.io

I've just used this extensively to build 200 Shortcuts for my event-based automation app on macOS [0], because some actions you simply can't do without Shortcuts: changing Focus Mode, toggling Accessibility functions like Color Filters, accessing the Private Cloud Compute model etc.

I also wrote about how Claude was able to basically learn the language from scratch and write those fully compilable Shortcuts for me [1] because it was mind boggling to me that an LLM can do that. Curiously, this is becoming more and more normal in my mind.

[0] https://lowtechguys.com/crank

[1] https://alinpanaitiu.com/blog/how-good-is-claude-really/#che...

Well, that’s a domain that has caught my attention so I’ll give this more weight (ltg). I recall novel Mac apps that weren’t quite right for me but seemed thoughtful.
When you say Claude learned it. That's in the current context window it is able to do that, right? Or is there a more permanent way to make it learn something?
You ask it to read the docs or site and create a 'skill' out of it.
(comment deleted)
are you certain that it wasn't included in the training data?

I saw someone do this awhile ago with a low resource language (I think it might've been Abkhaz?) with seemingly-incredible results, and eventually everyone came to understood that, even though it wasn't officially supported, Abkhaz materials had been in the training data

Very cool! IMHO Apple Shortcuts will finally get the love they're due in the age of AI.
Cool! As a professional programmer few things consistently succeed in making me feel inept like trying to build an Apple Shortcut
It feels actively hostile to programmers sometimes
AppleScript was just a little weird but I could get my head around it. Shortcuts just doesn’t make sense. Even the simplest things are hard to do and the scripts are totally unmaintainable. I don’t know why Apple is doing this.
I got my first MacOS device, a Macbook Air, recently and was annoyed to find the toggle for 'natural scrolling' is unified between the trackpad and the mouse. I use the macbook docked 90% of the time. So, I asked ChatGPT if there was a way to script toggling the natural scrolling setting. ChatGPT immediately produced a working script and the instructions to create the Shortcut and assign it to a keyboard shortcut. Now I can press Ctrl-Shift-S and toggle natural scrolling.

Even as a programmer, I would have never spent the time necessary to learn the relevant scripting language for this task. I've got other things to do. But ChatGPT knew exactly what to do and now to implement the task, even on the newest version of MacOS.

As an alternative to a script, I can suggest Mos[1], which i've been using for 6 years I think. This is the first app I install on a fresh MacOS because I'm also using my MacBook while it's docked.

[1]: https://github.com/Caldis/Mos

What can you do on a Mac with Shortcuts vs AppleScript vs Hammerspoon?
I built a small app to follow my infant son's feedings and diaper changes. Simply used the shortcuts get content of url to call the API rest endpoints. This is much better !
Is this vibe coded? The README at least looks very LLM-ish.
whither AppleScript?
Oh boy!

Creating/maintaining Shortcuts is such a pain!

Having to do it on a small iPhone screen with a touchscreen keyboard, through a no-code interface...

I want an actual text editor, I want to version things with git...

It feels like with Cherri I'll finally be able to actually do things!

Thanks!

This makes me want to spend some time with Codex just to figure out something fun to do with Shortcuts!
I'm guessing that if Apple can get it right with the next LLM based Siri, generating or editing Shortcuts may get easier anyway.
I wish Apple hadn’t gone with shortcuts. Instead I wish they’d given us a proper sdk for iOS and macOS as a Python module.

Python is so easy to pick up they could have given it a low code drag and drop front end but for us who can code why not a proper language ?

typo in title: "Shortuct" instead of "Shortcut" - is this how we're gonna distinguish from llm? /s
I take it this only supports Apple’s built-in actions, and doesn’t plug into the broader AppIntents system? AppIntents includes a packaging concept, would be cool to see if this could use third-party AppIntents in a similar way to how scientific Python uses C modules for performance critical sections.
Love this approach of compiling a readable language to a platform-specific format. Same pattern works well for i18n. Write in one language, compile/translate to the target formats automatically. The developer experience of writing real code instead of clicking through a GUI (Shortcuts app in this case) is always the right bet for power users
> Cherri (pronounced cherry)

Why would you spell it like that if you don't want me to pronounce it chéri/sherry?

Of course what we need is a native IDE that runs on an iPhone and produces executable scripts…