obsidian-tasks

What it is

The Obsidian Tasks plugin stores tasks as plain markdown, but query results only exist inside Obsidian. A tasks query block on disk is just a filter definition — not the matching tasks. That makes dashboards invisible to scripts, grep, CI, and AI agents.

obsidian-tasks is an npm package and CLI that parses the Tasks emoji format, runs the query language (urgency, blocked tasks, today, grouping, limits), and prints materialized markdown to stdout — without rewriting your vault.

Install it from npm:

npm install -g @watkins-dev/obsidian-tasks

Typical uses:

How it works

TypeScript library + CLI. Scan the vault for task lines, parse emoji metadata (📅, , , priorities, tags), execute query blocks, and output plain markdown. Tasks stay in their home files; automation reads the same query definitions you use in Obsidian.

You can check out the source on GitHub or install from npm.