QuickAdd CLI
QuickAdd now registers native Obsidian CLI handlers when your Obsidian version supports plugin CLI commands.
Requirements​
- Obsidian
1.12.2or newer (plugin CLI handler API introduced in1.12.2) - QuickAdd enabled in the target vault
Commands​
quickadd / quickadd:run​
Run a QuickAdd choice from the CLI.
obsidian vault=dev quickadd choice="Daily log"
obsidian vault=dev quickadd:run id="choice-id"
quickadd:list​
List all QuickAdd choices (including nested choices inside multis).
obsidian vault=dev quickadd:list
obsidian vault=dev quickadd:list type=Capture
obsidian vault=dev quickadd:list commands
quickadd:check​
Check which inputs are still missing before a non-interactive run.
obsidian vault=dev quickadd:check choice="Daily log"
quickadd:run-template​
Create a new note from a template file — no dedicated Template choice required. This is the scriptable form of the New note from template command.
obsidian vault=dev quickadd:run-template \
path="Templates/Meeting.md" \
value-value="2026-06-14 Standup"
path=is the template file (vault-relative). A leading slash is allowed and a missing.mdextension is added, matching how Template choices resolve paths. If no file resolves there, the command returns{"ok":false}up front.- The new note's name comes from
{{value}}— pass it asvalue-value=.... A non-interactive run with an empty or missing name returnsmissingFlagsinstead of creating an unnamed note. The note is created in Obsidian's "Default location for new notes". - The picker (interactive command) only lists templates inside your configured
template folder(s);
path=here is explicit, so any vault file resolves. - Like
quickadd:run, name collisions on the target note still prompt interactively (the file-exists choice is not a pre-collected input).
Passing variables​
QuickAdd CLI supports three variable patterns:
value-<name>=...(URI-compatible)- extra
key=valueargs vars=<json-object>for structured values
Examples:
obsidian vault=dev quickadd \
choice="Daily log" \
value-project="QuickAdd" \
mood="focused"
obsidian vault=dev quickadd \
choice="Daily log" \
vars='{"project":"QuickAdd","sprint":42}'
Non-interactive behavior​
By default, quickadd and quickadd:run are non-interactive. If QuickAdd
detects missing inputs, it returns a JSON payload with missing fields and
missingFlags suggestions instead of opening prompts.
Use ui to allow interactive prompts:
obsidian vault=dev quickadd choice="Daily log" ui