Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/chrisgrieser/shimmering-obsidian/llms.txt

Use this file to discover all available pages before exploring further.

All settings for Shimmering Obsidian are configured directly inside Alfred — no separate configuration file or external app is needed. The workflow ships with sensible defaults so that most users only need to set a handful of values before everything works. As your usage deepens, the additional variables documented here let you tailor every aspect of the workflow to your personal setup.

Accessing the configuration panel

Open Alfred Preferences, select Workflows in the sidebar, find Shimmering Obsidian in the workflow list, then click the [x] Configure Workflow button in the top-right corner of the workflow canvas. A panel slides open with all available variables grouped by feature.
Changes take effect immediately — there is no save button and no need to restart Alfred or Obsidian.

Core (required)

These two variables must be set before the workflow can function. Everything else is optional.
VariableDescription
vault_pathAbsolute path to the Obsidian vault you want to control. Example: /Users/jane/Documents/My Vault. Use the file picker in the configuration panel to browse to the correct folder.
config_folderName of the Obsidian configuration folder inside the vault. Default: .obsidian. Only change this if you have configured a custom config folder — the vast majority of users should leave it at the default.
vault_path is a required field. If it is empty or points to a folder that does not contain the config folder specified by config_folder, every search command will return an error instead of results.

Main search (o)

These variables control the behaviour of the primary o vault search.
VariableDescription
main_search_keywordThe Alfred keyword that triggers the main search. Default: o. Change this if it conflicts with another workflow.
main_search_subtitleWhat to display in the result subtitle. Choose parent to show the parent folder path, or tags to show the note’s tags. Default: parent.
remove_emojisWhen enabled, strips the workflow’s built-in status emojis (bookmarked 🔖, recent 🕑) from result titles. Does not affect emojis you have added to your own note names. Default: off.
open_note_in_newControls what ⌘ + ⏎ does: open in a new tab (default), a new window, or a split pane.
link_type_to_copyThe format of the link copied when you press ⌃ + ⏎ on a result. Options: Markdown Link (Obsidian URI in a Markdown link, default), Wikilink, or Obsidian URI.
paste_instead_of_copyWhen enabled, ⌃ + ⏎ pastes the link directly instead of copying it to the clipboard. Default: off.
h_lvl_ignoreSpace-separated list of heading levels to hide from search results. Example: h4 h5 h6 shows only H1–H3. Default: h1 h5 h6.

Appending

These variables control the fn + ⏎ append action available on most search results, and also apply to the scratchpad (oo).
VariableDescription
input_appendWhether appending prompts you to type text (manual, default) or uses the current clipboard contents (clipboard).
open_after_appendingWhen enabled, Obsidian opens the note immediately after text is appended. Default: on. Also applies to the scratchpad.
append_prefixA prefix string inserted before every appended entry. Supports Alfred Dynamic Placeholders — for example, {date:short} prepends today’s date. Default: empty.

New notes (on)

These variables control where new notes are created and what content they start with.
VariableDescription
new_note_locationVault-relative path to the folder where on creates new notes. Example: Inbox. Leave empty to create notes in the vault root.
template_note_pathVault-relative path to a Markdown template note. Any {{title}} placeholder in the template is replaced with the new note’s filename. Example: Templates/Default.md. Leave empty to create blank notes.
create_in_new_tabWhen set to true, new notes created by on always open in a new tab. When omitted or false, notes open in the current pane unless you use ⌘ + ⏎.
The template_note_path template is applied before any Templater or Folder Templates logic runs, so Templater can still process its own placeholders afterwards. However, if you use Templater’s Folder Templates feature, those take precedence and the template_note_path setting is ignored for affected folders.

Scratchpad (oo)

The scratchpad is a single designated note you can append to instantly from anywhere.
VariableDescription
scratchpad_note_pathVault-relative path to your scratchpad note. Append #Heading to target a specific section — for example, Inbox/Scratchpad#Thoughts appends text under the “Thoughts” heading. Supports Alfred Dynamic Placeholders so you can point to a daily note with a date-based path.
scratchpad_append_prefixA prefix inserted before each entry appended to the scratchpad. Default: - [ ] (a Markdown task checkbox). Supports Alfred Dynamic Placeholders for timestamps.

OCR & Screenshots

Shimmering Obsidian can capture a screen region, run OCR on it via Tesseract, and save the result as a Markdown note — or save the image directly into your vault.
VariableDescription
ocr_languagesLanguage codes for Tesseract, separated by +. Example: eng+deu for English and German. Default: eng. Find codes for your language at the Tesseract data files page.
ocr_prefixA prefix string inserted before the OCR text in the output note. Supports Alfred Dynamic Placeholders. Default: empty.
ocr_screenshot_fileAbsolute path to the Markdown file where OCR results are saved. When empty, results are appended to {vault_path}/OCR-Screenshots.md. Can point to a file outside your vault.
screenshot_pathAbsolute path to the folder where image screenshots are saved. When empty, images are saved to {vault_path}/screenshots/.
open_after_screenshotWhen enabled, Obsidian opens the note after a screenshot or OCR capture. Disable this to take screenshots in quick succession without switching to Obsidian. Default: on.
OCR requires Tesseract to be installed. If you use Homebrew, run:
brew install tesseract tesseract-lang
The first time you use any screenshot feature, macOS may prompt you to grant Alfred screen recording permission. Do so under System Settings → Privacy & Security → Screen Recording.

Tag search (ot)

VariableDescription
merge_nested_tagsWhen enabled, nested tags are merged into their parent. For example, #inbox/to-read and #inbox/later both appear under #inbox. Default: off.

Backup (obackup)

VariableDescription
backup_destinationAbsolute path to the folder where vault backup zip files are saved. Recommended: a folder outside the vault. Default: ~/Documents.
max_number_of_bkpsMaximum number of backups to keep. When the limit is reached, each new backup deletes the oldest. Range: 5–100. Default: 20.
You can trigger obackup programmatically — useful for scheduled backups via launchd, cron, or Keyboard Maestro — using the following AppleScript:
tell application id "com.runningwithcrayons.Alfred"
    run trigger "backup-obsidian" in workflow "de.chris-grieser.shimmering-obsidian"
end tell
Pass no sound as an argument to suppress the confirmation sound.

Dynamic Placeholders in path variables

Several path variables — including scratchpad_note_path, append_prefix, scratchpad_append_prefix, and ocr_prefix — support Alfred’s Dynamic Placeholders. This lets you embed the current date, time, day of the week, or other dynamic values directly into paths and prefixes without any scripting. For example, setting scratchpad_note_path to Journal/{date:YYYY-MM-DD} will route each day’s appended text to a date-named daily note automatically.

Build docs developers (and LLMs) love