Skip to main content

Task Format

Basalt tasks live directly inside your Markdown files as standard checklist items enhanced with structured signifiers. Everything is parsed by a high-performance zero-AST Rust scanner during indexingβ€”meaning zero overhead and full compatibility with existing Obsidian Tasks / Dataview vaults.

Basic Syntax​

A task begins as a standard Markdown list item with a checklist bracket:

- [ ] Write documentation
- [ ] Review PR #42

When you add signifiers (dates, priority, recurrence, tags), Basalt parses them inline into structured metadata while leaving your note human-readable:

- [ ] Ship v1.0 release πŸ”Ί πŸ“… 2026-10-15 πŸ›« 2026-10-01 πŸ” every month βž• 2026-09-01 #release

Structure of a Task Line​

A task line consists of five components:

  1. List Marker: - , * , or a numbered prefix like 1.
  2. Checkbox Bracket: [ ], [/], [?], [x], or [-]
  3. Description: The human-readable text of the task before or around signifiers.
  4. Signifiers: Inline emoji tokens indicating priority, dates, recurrence, dependencies, and identifiers.
  5. Tags: Standard #tag tokens embedded anywhere in the task description.

:::tip Order Doesn't Matter Signifiers can appear in any order on the line. Basalt parses them greedily and preserves your formatting. If multiple identical signifiers appear, the first one takes precedence. :::

Checkbox Statuses​

Basalt recognizes five distinct task statuses based on the character inside the bracket:

MarkdownStatusCategoryDescription
- [ ]todoOpenDefault open task awaiting action
- [/]in_progressOpenCurrently active or underway
- [?]on_holdOpenPaused or waiting on external input
- [x] or - [X]doneCompletedFinished task; automatically appends βœ… YYYY-MM-DD if enabled
- [-]cancelledCompletedDropped or obsolete task; automatically appends ❌ YYYY-MM-DD if enabled

Any unfamiliar character inside brackets (for example - [z]) is safely treated as an open todo task.

Priorities​

Priority levels are indicated by an inline emoji:

SignifierPriority LevelScore BoostUI Badge
πŸ”ΊHighest+25Red badge
⏫High+15Orange badge
πŸ”ΌMedium+5Yellow badge
(none)None (Normal)0Default text
πŸ”½Low-5Blue badge
⏬Lowest-15Muted badge

Example:

- [ ] Fix critical security bug πŸ”Ί
- [ ] Reorganize archive folder ⏬

Dates​

Dates use standard ISO format (YYYY-MM-DD) preceded by their signifier emoji:

SignifierMeaningDescription
πŸ“… YYYY-MM-DDDue DateWhen the task must be completed
πŸ›« YYYY-MM-DDStart DateEarliest date work should begin
⏳ YYYY-MM-DDScheduled DateThe date allocated to work on the task
βž• YYYY-MM-DDCreated DateWhen the task was initially created
βœ… YYYY-MM-DDDone DateWhen the task was marked completed
❌ YYYY-MM-DDCancelled DateWhen the task was cancelled

Example:

- [ ] Prepare quarterly budget πŸ“… 2026-11-01 πŸ›« 2026-10-20 ⏳ 2026-10-25

Recurrence Rules​

Repeating tasks use the πŸ” signifier followed by natural English recurrence rules starting with every:

- [ ] Weekly sprint planning πŸ” every week on Monday πŸ“… 2026-10-05
- [ ] Daily standup πŸ” every weekday ⏳ 2026-10-06
- [ ] Monthly account audit πŸ” every month on the 1st πŸ“… 2026-11-01

Recurrence from Completion​

By default, recurrence advances from the previous target date. You can add when done to calculate the next date from when you actually finished the task:

- [ ] Deep clean coffee machine πŸ” every 3 weeks when done πŸ“… 2026-10-01

Task IDs & Dependencies​

To track relationships between tasks:

  • πŸ†” <id> assigns a unique identifier to a task.
  • β›” <id> declares that this task depends on another task being completed first.
- [ ] Order motherboard πŸ†” mb-101
- [ ] Assemble workstation β›” mb-101 πŸ“… 2026-10-12

Next Steps​