I know, I know, the AI hype train has long left the station, and it’d be rather embarrassing to explain for the millionth time what AI (or, to be precise, generative AI), how they work, and what prompts yield the best results for whatever you’re using it for.
But there’s one feature that, at least according to my observations, is rarely touched: plugins. Let me give you just one example of how it can automate a whole chain of commands with just one prompt.
Requirements
I should note that I’m doing this with a very specific set of tools. I’m using:
- macOS Sequoia 15.2,
- the AI app BoltAI (sorry, macOS-only), which is available via Setapp (which is the case for me) or as a single purchase,
- a free Groq API key,
- and the “Shell” plugin for BoltAI.
The latter is the important part here. No, actually, all of them are important. BoltAI is—and I say this after having tested almost all AI clients out there—the clear champion. Without boring you with too many details: It’s an app for macOS that allows you to connect to several AI providers via their API key. So, having an AI key is mandatory for this.
Exampels
I’m planning to write at least three examples, but since it’s almost 04:30 here in Thailand, one must be enough for today. I’ll catch up, I promise!
Sorting Movie Files
Recently, I’ve been watching a lot of the German never-ending series Tatort which aires every Sunday since the 1970’s and has long surpassed the 1000-episode mark.
Downloading them is easy with Downie, another tool you can get for free with Setapp‘s subscription service. Once an episode has been downloaded, you’ll find two files in there:
Tatort - Murot und das Murmeltier.mp4
Tatort - Murot und das Murmeltier.srt
The latter is, of course, the subtitles file. Unlike me, my wife isn’t a native German speaker, so I run the .srt
files through a subtitle translator that accepts multiple files at once like this one, and translate them into English and download them as a .zip
file within a few seconds.
This will add a third file:
Tatort - Murot und das Murmeltier.en.srt
Conveniently, it adds the language code before the file extension; in this case .en.srt
. This will help us generate a prompt.
So, a folder in this case would look like this:
➜ Tatort tree -L 1
.
├── Tatort - Murot und das Murmeltier.en.srt
├── Tatort - Murot und das Murmeltier.mp4
└── Tatort - Murot und das Murmeltier.srt
1 directory, 3 files
BashThat already looks pretty neat. But when I download more episodes, it might get a little confusing with all these files flying around. So I’d like to have the following: First off, strip the unnecessary Tatort -
from the filenames, then delete the non-English subtitles, and finally, create a folder that is named after the episode.
There are Bash commands that can do this, but I like the fact that I can tell LLMs to do this in a natural language.
Starting BoltAI, I create a connection to Groq and enable the plugin “Shell Access.” Be careful, though, Bash is merciless and can destroy your entire system with one wrong command (I’m looking at you, rm -rf /
).
I use Groq’s LLaMA 3.2 11B Vision (Preview)
model. 11B might seem very small, which it is, and not even the latest, awesome LLaMa 3.3 70B, but for renaming and moving files, even the little and slightly outdated LLaMAs work well. So, this is prompt:
Use Shell to do the following:
In the directory /Users/Kolja/Downloads/Tatorte, you'll find 3 files with the same name. These are episodes of a series (.mp4) and subtitles (.srt) with a translated version of the subtitles (.en.srt). I want you to remove the word "Tatort - " from each file and delete the unstranslated subtitle files. Create a new directory called "Tatort" and move the remaining 2 files there.
PlaintextWhen sending the prompt, you should see a few times the response Executing plugin "run_bash_command"
:

Before
This is how my folder looked before using the prompt:

After
And here’s the exact thing that I wanted: keep only the English subtitles and the actual movie file while deleting the rest:

Or, as displayed via the CLI command tree
:
➜ Tatort tree -L 1
.
├── Murot und das Murmeltier.en.srt
└── Murot und das Murmeltier.mp4
1 directory, 2 files
BashAll this might seem quite trivial, but if you use this as an example and think outside of the box, it becomes rather useful.
Just out of curiousity, I tested using the Shell plugin to
- Create a directory in
~/Sites/wp
, cd
into it runwp core download
to download WordPress,- and open
https://wp.test
(I’m using valet)
It worked like a charm. But more about this in the next post.