Alfred workflow with dozens of features for controlling your Obsidian vault.
1,036
stars
1,408
commits
JavaScript
primary language
Aug 3, 2026
updated
Alfred workflow with dozens of features for controlling your Obsidian vault.
β Featured in the Alfred Gallery.
This workflow requires Alfred 5 with Powerpack.
.alfredworkflow file to install it.In the Obsidian plugin settings for the "Metadata Extractor"
Write JSON files automatically when Obsidian launches.Configure frequency for writing the three JSON files to how often you
want the Metadata to be updated. A value like 30 minutes is reasonable. Do
not change any of the other settings.The Alfred-based Quick Switcher is basically an enhanced version of Obsidian's Quick Switcher Core Plugin.
All the search features listed here do not directly search your vault, but rather use the metadata created by the Metadata Extractor Plugin on a regular basis. By default, this happens every 30 minutes, meaning recently created notes, recently renamed notes, or recent tag changes are not picked up at once. You can change the metadata refresh rate via the Metadata Extractor Plugin's settings.
o: Open files in your vault.
This keyword searches all your notes, aliases, folders, and headings combined.
This works similar to Obsidian's built-in Quick Switcher, but can be triggered without Obsidian running (in which case it opens Obsidian with the selected note).
β: Open the selected file in Obsidian.β + β: Open the file in a new tab. (Can be configured in the workflow
settings to open in a new window or split instead.)β₯ + β: Reveal the file in Finder.fn + β: Append content to the selected note. (Prompt for text or clipboard
content)β + β: Copy the
Obsidian-URI
to the selected file.β§ + β: Browse a list of all links of the selected note (outgoing links,
backlinks, external links.) See at the section "Browse Links"
below for further information.β§ or β y to preview the selected note via macOS' Quick Look feature.
Press it again to close the preview. This feature requires QLMarkdown or
Peek to be installed.o-search respects the Excluded files setting from Obsidian and
ignore files and folders added there. (Regex-filters do not work though.)[!TIP] There are various settings for appending and opening notes, which can be found in the workflow configuration.
filename or title to your search query, to display only files and no
aliases, folders, or headings. For example, o obsidian filename displays
only notes that have the obsidian in their filename.canvas to your search to only display canvases (Obsidian 1.1).starred
or recent to your query.#tag to your search query to search only for files with a
specific tag, for example, o foobar #moc only displays notes with the name
foobar that are also tagged with #moc.This command also looks for aliases, when they are defined in the YAML-Header.
alias to your search query, to only display aliases, for example, o obsidian alias only displays notes that have the alias obsidian.When selecting a folder, you can "browse" the selected folderβthis means that you are now searching only for files and folders inside that folder.
folder to your search query, to only display folders, for example, o foobar folder only displays folders that have foobar in their name... to go up to the
parent folder or new to create a new
note in that folder, respectively.Displayed alongside the other search results are all headings in your vault.
Selecting headings with β opens the file at the respective heading.
β + β: Copies either a Markdown link
that uses the Obsidian URI
or the wikilink to the selected file, depending on the setting. Also work with
headings.heading to your search query, to only display headings, for example, o foobar heading only displays headings that include foobar.h1, h2, β¦ to your search query, to only display headings of a certain
level, for example, o obsidian h2 only displays level 2 headings that
include obsidian.[!TIP] If the search results become too crowded, you can ignore certain heading levels in the workflow configuration.
Use β§ + β on any search result of the main o search to browse the links of
that note
β/β/β₯/fn/β§ + β) apply the same way as with the main
o search.β§ + β to basically traverse
your graph via Alfred. πβ opens the link in the default browser.β₯ + β on an external link to copy the URL to the clipboard
instead.ot: Search tags and subsequently files with that tag
β to display & search all notes with that tag.β/β/β₯/fn/β§ + β)
apply the same way as they do with the o search.β + β instead to open Obsidian's search pane and search for the
tag there.ob: Search bookmarked Files and Searches
β/β/β₯/fn/β§ + β) apply
the same way as with the main o search.or: Open recent Files
β/β/β₯/fn/β§ + β) apply the same way as with the main o
search.oa: attachments
β opens
the selected files in your default app. (Obsidian itself is not opened.)β/β/β₯ + β and the previewing (β§ or βy) work the same way
as with the main o search.β§ + β, however, works differently: it opens the file in Obsidian, if
Obsidian is able to open
them. (If not,
the file simply is opened in your default app.)oe: Search all external links in your entire vault
β: Opens the link in the browser.cmd + β: Reveal the link in Obsidian.alt + β: Copies the URL to the clipboard.The main search (o) can also be used as
Fallback Search for Alfred,
basically a search that shows up when any Alfred search has no result.
To avoid accidentally triggering the Quick Look feature, it is suggested you
turn off activating QuickLook via shift and use β + Y instead. You can do so
in the Alfred Settings under Features β Previews:
QLmarkdown and
Peek both
enable previewing of Markdown documents. Peek works with a wide range of other
filetypes than Markdown, but costs around β¬5. QLMarkdown is free, but only
works for Markdown and requires some minor setup.
on: Create a new note.
on (for example, on foobar) becomes the filename of the new note (for example, foobar.md).
(Note that the Filename Heading Sync
Plugin may
interfere with this.)
cmd + β, the new note is created in a new tab.{{title}} is supported as placeholder and is replaced
with the filename. Be aware that the template might be overridden by Folder
Templates from the Templater
plugin.oo or triggered via hotkey: Append to your Scratchpad Note
Quickly add text to the note set in the workflow configuration. (This command is
basically a quicker version of the fn + β mode of the Alfred-based Quick
Switcher.)
oo foobar, appends foobar to the note.oo, you can also directly open the Scratchpad.#foobar to path of the scratchpad file in the workflow
configuration (for example, Inbox/Scratchpad-Note#Thoughts), the text is
appended to the section with the heading "foobar."[!TIP] There are various settings for the scratchpad in the workflow configuration. You can, for instance, use Alfred's Dynamic Placeholders to prefix the current date and time, or use a dynamic path to a daily note.
Triggered via Hotkey: Take an OCR Screenshot.
β β§ + 4, you are able to select part
of your screen for a screenshot. However, instead of saving a screenshot, a
new note is created which contains the OCR-ed content of the selection.eng+deu for English and German. You can find out
the code for your languages in
this list.Requirement For the OCR-Screenshot Feature, you need to install Tesseract. If you use Homebrew, you can do so with the following command:
brew install tesseract tesseract-lang
[!TIP] The first time you use the OCR or image screenshot feature, you might have to give Alfred permission to record your screen. You can do so under the macOS system settings.
Triggered via Hotkey: Take an image screenshot.
β β§ + 4, you are able to select part
of your screen for a screenshot. The image is directly saved in your
vault with the filename Screenshot {date} {time}.png and the image is
embedded (![[image_file_name.png]]) in the note Images.md in your vault
root.{vault-path}/screenshots/ by default. You can
use the workflow configuration to specify a folder in your vault where to save
the images instead.Images.md already exists in your vault root, any subsequent
screenshots are instead appended to this note. This is intended for taking
screenshots in quick succession, for instance during a live lecture or
presentation.ow: Switch to a different workspace
ov: Open Vaults in Obsidian, Finder, or the Terminal
β to open it in Obsidian.β β opens the root of the selected vault in your default Terminal. You can
change the default terminal in the Alfred
Settings.β₯ β opens the root in Finder.β§ β Control this vault with Alfred.[!NOTE] The
Metadata Extractorand theAdvanced URIplugins need to be installed and enabled in every vault you want to control. TheMetadata Extractorneeds to be configured in every vault as well.
obackup: Create a backup of your vault.
max_number_of_bkps) to prevent taking up too much disk space.
When the number is reached, every new backup causes the oldest backup to be
deleted..obsidian and .trash are included in the backup, the
.git folder is excluded.tell application id "com.runningwithcrayons.Alfred"
run trigger "backup-obsidian" in workflow
"de.chris-grieser.shimmering-obsidian"
end tell
# pass 'no sound' as argument to turn off backup confirmation sound
[!WARNING] Please be aware that this is a simplistic backup solution. While I do not have any problems with it, this workflow comes without any warranties, as stated in the license. If you care about safety, please use a professional backup solution.
ocss: Access your css files.
o.obsidian: The hidden .obsidian folder located in your vault root is
opened in Finder.o.trash: Open the hidden .trash
folder located in
your vault root is opened in Finder. (Note that you have to select Move to Obsidian trash in the Obsidian settings under the Files & Links tab before
deleted files can be found here.)oapplicationsupport: Open Obsidian's Application Support folder.oplugins: The plugin folder in .obsidian is opened in Finder.othemes: The theme folder in .obsidian is opened in Finder.oupdate: Update plugins and metadata used by this workflow
op: combined Search of community plugins and community themes.
β to open the plugin's GitHub repository.
β + β to open the plugin in Obsidian's Community Plugin Browser
instead.β₯ + β to copy the plugin URI (obsidian://show-plugin?id=β¦) to
your clipboard.ββ₯ + β: Copy the plugin link together with a description.plugin to the search query to only display plugin, for example, use op focus plugin as search query to only display plugins with the term focus.op search also considers the name of the plugin's author, meaning the
query op JaneDoe returns all plugins (and themes) authored by the user
JaneDoe.op: Combined Search of community plugins and community themes.
β to open the theme's GitHub repository in the browser.
β + β to open the theme browser instead. (There are no separate
theme pages in Obsidian Theme Browser that can be opened.)β₯ + β to copy the theme URI (obsidian://show-theme?id=β¦) to your
clipboard.ββ₯ + β: Copy the plugin link together with a description.β§ or β + Y to open a Quick Look Preview of the theme's promo
screenshot. Press β§ or β + Y again to close the preview.theme to the search query to only display themes, for instance use op focus theme as search query to only display themes with the term focus.op search also considers the name of the theme's author, meaning the
query op JaneDoe returns all themes (and plugins) authored by the user
JaneDoe.
o,: Search and directly open specific setting tabs.
β to open the
respective setting directly.β₯ + β opens the local plugin folder in .obsidian/plugins/ in Finder.β§ + β enables/disables the plugin.β + β opens the local plugin folder in your default Terminal.
(You can change the default terminal in the Alfred
Settings.)β + β copies the plugin's ID. (Hold β to see the plugin's id.)fn + β runs git pull in the plugin's directory.[!TIP]
o,refers to theβ ,shortcut used to open the settings.
oh: Search the official Obsidian help
(documentation)
β to open in your default browser.β₯ + β to copy the link to your clipboard.odd: obsidian developer documentation Search
Search the official Obsidian developer docs.
o: All notesoe: All external linksot: Tagsob: Bookmarked files/searchesor: Recent filesoa: Attachmentsoo: Append/open to scratchpadon: New noteow: Workspace switcherov: Vault switcheroh: Documentation searchop: Search plugins/themeso,: Search settings and installed pluginsocss: Open CSS snippetsIn my day job, I am a sociologist studying the social mechanisms underlying the digital economy. For my PhD project, I investigate the governance of the app economy and how software ecosystems manage the tension between innovation and compatibility. If you are interested in this subject, feel free to get in touch.
[!IMPORTANT] Due to the large number of requests I receive, and due to the need for information the respective forms ask for, I am not able to give support via email. For questions, bug reports, or feature requests for this workflow, please open a GitHub issue.
If you find this project helpful, you can support me via π©· GitHub Sponsors.
JavaScript
91.5%
Shell
6.9%
Just
1.5%
Alfred workflow with dozens of features for controlling your Obsidian vault.
1,036
stars
1,408
commits
JavaScript
primary language
Aug 3, 2026
updated
Alfred workflow with dozens of features for controlling your Obsidian vault.
β Featured in the Alfred Gallery.
This workflow requires Alfred 5 with Powerpack.
.alfredworkflow file to install it.In the Obsidian plugin settings for the "Metadata Extractor"
Write JSON files automatically when Obsidian launches.Configure frequency for writing the three JSON files to how often you
want the Metadata to be updated. A value like 30 minutes is reasonable. Do
not change any of the other settings.The Alfred-based Quick Switcher is basically an enhanced version of Obsidian's Quick Switcher Core Plugin.
All the search features listed here do not directly search your vault, but rather use the metadata created by the Metadata Extractor Plugin on a regular basis. By default, this happens every 30 minutes, meaning recently created notes, recently renamed notes, or recent tag changes are not picked up at once. You can change the metadata refresh rate via the Metadata Extractor Plugin's settings.
o: Open files in your vault.
This keyword searches all your notes, aliases, folders, and headings combined.
This works similar to Obsidian's built-in Quick Switcher, but can be triggered without Obsidian running (in which case it opens Obsidian with the selected note).
β: Open the selected file in Obsidian.β + β: Open the file in a new tab. (Can be configured in the workflow
settings to open in a new window or split instead.)β₯ + β: Reveal the file in Finder.fn + β: Append content to the selected note. (Prompt for text or clipboard
content)β + β: Copy the
Obsidian-URI
to the selected file.β§ + β: Browse a list of all links of the selected note (outgoing links,
backlinks, external links.) See at the section "Browse Links"
below for further information.β§ or β y to preview the selected note via macOS' Quick Look feature.
Press it again to close the preview. This feature requires QLMarkdown or
Peek to be installed.o-search respects the Excluded files setting from Obsidian and
ignore files and folders added there. (Regex-filters do not work though.)[!TIP] There are various settings for appending and opening notes, which can be found in the workflow configuration.
filename or title to your search query, to display only files and no
aliases, folders, or headings. For example, o obsidian filename displays
only notes that have the obsidian in their filename.canvas to your search to only display canvases (Obsidian 1.1).starred
or recent to your query.#tag to your search query to search only for files with a
specific tag, for example, o foobar #moc only displays notes with the name
foobar that are also tagged with #moc.This command also looks for aliases, when they are defined in the YAML-Header.
alias to your search query, to only display aliases, for example, o obsidian alias only displays notes that have the alias obsidian.When selecting a folder, you can "browse" the selected folderβthis means that you are now searching only for files and folders inside that folder.
folder to your search query, to only display folders, for example, o foobar folder only displays folders that have foobar in their name... to go up to the
parent folder or new to create a new
note in that folder, respectively.Displayed alongside the other search results are all headings in your vault.
Selecting headings with β opens the file at the respective heading.
β + β: Copies either a Markdown link
that uses the Obsidian URI
or the wikilink to the selected file, depending on the setting. Also work with
headings.heading to your search query, to only display headings, for example, o foobar heading only displays headings that include foobar.h1, h2, β¦ to your search query, to only display headings of a certain
level, for example, o obsidian h2 only displays level 2 headings that
include obsidian.[!TIP] If the search results become too crowded, you can ignore certain heading levels in the workflow configuration.
Use β§ + β on any search result of the main o search to browse the links of
that note
β/β/β₯/fn/β§ + β) apply the same way as with the main
o search.β§ + β to basically traverse
your graph via Alfred. πβ opens the link in the default browser.β₯ + β on an external link to copy the URL to the clipboard
instead.ot: Search tags and subsequently files with that tag
β to display & search all notes with that tag.β/β/β₯/fn/β§ + β)
apply the same way as they do with the o search.β + β instead to open Obsidian's search pane and search for the
tag there.ob: Search bookmarked Files and Searches
β/β/β₯/fn/β§ + β) apply
the same way as with the main o search.or: Open recent Files
β/β/β₯/fn/β§ + β) apply the same way as with the main o
search.oa: attachments
β opens
the selected files in your default app. (Obsidian itself is not opened.)β/β/β₯ + β and the previewing (β§ or βy) work the same way
as with the main o search.β§ + β, however, works differently: it opens the file in Obsidian, if
Obsidian is able to open
them. (If not,
the file simply is opened in your default app.)oe: Search all external links in your entire vault
β: Opens the link in the browser.cmd + β: Reveal the link in Obsidian.alt + β: Copies the URL to the clipboard.The main search (o) can also be used as
Fallback Search for Alfred,
basically a search that shows up when any Alfred search has no result.
To avoid accidentally triggering the Quick Look feature, it is suggested you
turn off activating QuickLook via shift and use β + Y instead. You can do so
in the Alfred Settings under Features β Previews:
QLmarkdown and
Peek both
enable previewing of Markdown documents. Peek works with a wide range of other
filetypes than Markdown, but costs around β¬5. QLMarkdown is free, but only
works for Markdown and requires some minor setup.
on: Create a new note.
on (for example, on foobar) becomes the filename of the new note (for example, foobar.md).
(Note that the Filename Heading Sync
Plugin may
interfere with this.)
cmd + β, the new note is created in a new tab.{{title}} is supported as placeholder and is replaced
with the filename. Be aware that the template might be overridden by Folder
Templates from the Templater
plugin.oo or triggered via hotkey: Append to your Scratchpad Note
Quickly add text to the note set in the workflow configuration. (This command is
basically a quicker version of the fn + β mode of the Alfred-based Quick
Switcher.)
oo foobar, appends foobar to the note.oo, you can also directly open the Scratchpad.#foobar to path of the scratchpad file in the workflow
configuration (for example, Inbox/Scratchpad-Note#Thoughts), the text is
appended to the section with the heading "foobar."[!TIP] There are various settings for the scratchpad in the workflow configuration. You can, for instance, use Alfred's Dynamic Placeholders to prefix the current date and time, or use a dynamic path to a daily note.
Triggered via Hotkey: Take an OCR Screenshot.
β β§ + 4, you are able to select part
of your screen for a screenshot. However, instead of saving a screenshot, a
new note is created which contains the OCR-ed content of the selection.eng+deu for English and German. You can find out
the code for your languages in
this list.Requirement For the OCR-Screenshot Feature, you need to install Tesseract. If you use Homebrew, you can do so with the following command:
brew install tesseract tesseract-lang
[!TIP] The first time you use the OCR or image screenshot feature, you might have to give Alfred permission to record your screen. You can do so under the macOS system settings.
Triggered via Hotkey: Take an image screenshot.
β β§ + 4, you are able to select part
of your screen for a screenshot. The image is directly saved in your
vault with the filename Screenshot {date} {time}.png and the image is
embedded (![[image_file_name.png]]) in the note Images.md in your vault
root.{vault-path}/screenshots/ by default. You can
use the workflow configuration to specify a folder in your vault where to save
the images instead.Images.md already exists in your vault root, any subsequent
screenshots are instead appended to this note. This is intended for taking
screenshots in quick succession, for instance during a live lecture or
presentation.ow: Switch to a different workspace
ov: Open Vaults in Obsidian, Finder, or the Terminal
β to open it in Obsidian.β β opens the root of the selected vault in your default Terminal. You can
change the default terminal in the Alfred
Settings.β₯ β opens the root in Finder.β§ β Control this vault with Alfred.[!NOTE] The
Metadata Extractorand theAdvanced URIplugins need to be installed and enabled in every vault you want to control. TheMetadata Extractorneeds to be configured in every vault as well.
obackup: Create a backup of your vault.
max_number_of_bkps) to prevent taking up too much disk space.
When the number is reached, every new backup causes the oldest backup to be
deleted..obsidian and .trash are included in the backup, the
.git folder is excluded.tell application id "com.runningwithcrayons.Alfred"
run trigger "backup-obsidian" in workflow
"de.chris-grieser.shimmering-obsidian"
end tell
# pass 'no sound' as argument to turn off backup confirmation sound
[!WARNING] Please be aware that this is a simplistic backup solution. While I do not have any problems with it, this workflow comes without any warranties, as stated in the license. If you care about safety, please use a professional backup solution.
ocss: Access your css files.
o.obsidian: The hidden .obsidian folder located in your vault root is
opened in Finder.o.trash: Open the hidden .trash
folder located in
your vault root is opened in Finder. (Note that you have to select Move to Obsidian trash in the Obsidian settings under the Files & Links tab before
deleted files can be found here.)oapplicationsupport: Open Obsidian's Application Support folder.oplugins: The plugin folder in .obsidian is opened in Finder.othemes: The theme folder in .obsidian is opened in Finder.oupdate: Update plugins and metadata used by this workflow
op: combined Search of community plugins and community themes.
β to open the plugin's GitHub repository.
β + β to open the plugin in Obsidian's Community Plugin Browser
instead.β₯ + β to copy the plugin URI (obsidian://show-plugin?id=β¦) to
your clipboard.ββ₯ + β: Copy the plugin link together with a description.plugin to the search query to only display plugin, for example, use op focus plugin as search query to only display plugins with the term focus.op search also considers the name of the plugin's author, meaning the
query op JaneDoe returns all plugins (and themes) authored by the user
JaneDoe.op: Combined Search of community plugins and community themes.
β to open the theme's GitHub repository in the browser.
β + β to open the theme browser instead. (There are no separate
theme pages in Obsidian Theme Browser that can be opened.)β₯ + β to copy the theme URI (obsidian://show-theme?id=β¦) to your
clipboard.ββ₯ + β: Copy the plugin link together with a description.β§ or β + Y to open a Quick Look Preview of the theme's promo
screenshot. Press β§ or β + Y again to close the preview.theme to the search query to only display themes, for instance use op focus theme as search query to only display themes with the term focus.op search also considers the name of the theme's author, meaning the
query op JaneDoe returns all themes (and plugins) authored by the user
JaneDoe.
o,: Search and directly open specific setting tabs.
β to open the
respective setting directly.β₯ + β opens the local plugin folder in .obsidian/plugins/ in Finder.β§ + β enables/disables the plugin.β + β opens the local plugin folder in your default Terminal.
(You can change the default terminal in the Alfred
Settings.)β + β copies the plugin's ID. (Hold β to see the plugin's id.)fn + β runs git pull in the plugin's directory.[!TIP]
o,refers to theβ ,shortcut used to open the settings.
oh: Search the official Obsidian help
(documentation)
β to open in your default browser.β₯ + β to copy the link to your clipboard.odd: obsidian developer documentation Search
Search the official Obsidian developer docs.
o: All notesoe: All external linksot: Tagsob: Bookmarked files/searchesor: Recent filesoa: Attachmentsoo: Append/open to scratchpadon: New noteow: Workspace switcherov: Vault switcheroh: Documentation searchop: Search plugins/themeso,: Search settings and installed pluginsocss: Open CSS snippetsIn my day job, I am a sociologist studying the social mechanisms underlying the digital economy. For my PhD project, I investigate the governance of the app economy and how software ecosystems manage the tension between innovation and compatibility. If you are interested in this subject, feel free to get in touch.
[!IMPORTANT] Due to the large number of requests I receive, and due to the need for information the respective forms ask for, I am not able to give support via email. For questions, bug reports, or feature requests for this workflow, please open a GitHub issue.
If you find this project helpful, you can support me via π©· GitHub Sponsors.
JavaScript
91.5%
Shell
6.9%
Just
1.5%