← All Addons

Agenda Task

widget

Agenda Task

A right-pane widget for the start/due dates, duration and recurrence of a note, or of a whole tree multi-selection at once, plus an Actions section with Complete Task and a row of reschedule buttons. Split out from the original agenda addon (whose Overview widget is now agenda-overview@beatlink) so Task can be installed, updated, and configured independently — the two addons share no code or settings.

Dates and Duration and Actions are collapsible disclosures, open by default. Recurrence is a single button reading the current rule back in plain English ("Every 2 weeks on Monday", or "Does not repeat"); clicking it opens the recurrence picker in a popover. The pane scrolls vertically when its sections outgrow the window.

How it works

The widget appears in the right pane on any note whose type is marked actionable (#agendaTaskWidget inheritable label, set by the item's template). It edits four kinds of note labels — start/due datetime, duration, recurrence — via configurable label names, plus fires agenda:tasksChanged after any change so agenda-overview@beatlink's widget (if installed) re-files the note.

Working on several tasks at once

Select notes in the tree (alt-click, or shift-click for a range) and the widget retargets at that whole selection, the way area-picker@beatlink and template-picker@beatlink do: the header counts what it will write to ("Task (3 notes)"), every field writes to all of them, and Complete Task and the reschedule buttons run over each in turn. Notes in the selection that aren't tasks are dropped, so the widget only ever writes task labels to notes marked actionable. With nothing selected it stays on the active note.

A field whose targets disagree reads — Mixed — and stays that way until a value is chosen, which then applies to all of them.

Completing a task with a recurrence rolls its start date forward instead of leaving it done; the reschedule buttons offer a configurable set of quick date jumps (fixed days-from-now or a recurrence rule evaluated from now). The stock set is Today, Tomorrow, Next Weekend (FREQ=WEEKLY;BYDAY=SA) and End of Month (FREQ=MONTHLY;BYMONTHDAY=-1).

Configuration

Task owns its own settings note (taskSchema.json/taskDefaults.json/taskConfig.json) tagged #agendaTaskConfig — the label names it reads/writes (start/due date/time, duration, recurrence) and the reschedule buttons' option registry. Its own Task Settings page (TAM's "Addon Settings" button) is the only place that edits it.

Independence from the other agenda addons

Task used to live inside the original agenda addon (task/ folder), sharing its settings note. The two are now fully decoupled in both directions: neither ships the other's code, neither reads the other's settings note, and neither declares the other as a TAM dependency. Either one runs on its own.

What they still share is a vocabulary, not a wire:

Convention Who writes it Who reads it
start/due datetime + recurrence label names this addon agenda-overview@beatlink and agenda-myday@beatlink, each from their own copy of the setting
durationDisplay / recurrenceDisplay this addon agenda-overview@beatlink's overview columns, if installed
agenda:tasksChanged (api.triggerEvent) this addon, after any change agenda-overview@beatlink, if installed
#agendaTaskWidget (inheritable, from the item's template) template-picker@beatlink's templates this addon, to decide whether the pane shows

The cost of that independence: renaming a label name here means renaming it in each other installed addon that reads it. Nothing detects the drift for you.

Upgrading from 2.x

Version 3.0.0 removes the one-time migration that copied label names and Reschedule Options out of the old shared agenda config note. Any install that ran a 2.x version at least once has already migrated and is unaffected. Installing 3.0.0 fresh onto a pre-4.0.0 agenda gets the default label names instead of the old shared ones — re-enter them on the Task Settings page if you had customized them.

Changelog

Agenda Task Changelog

3.5.1 - 2026-09-18

Fixed

  • restate #recurrenceDisplay when the recurrence changes

3.5.0 - 2026-09-18

Added

  • edit a whole tree selection of tasks at once

3.4.5 - 2026-09-01

Changed

  • Breaking: absorb agenda@beatlink so it stands on its own

3.4.4 - 2026-08-26

Fixed

  • make the Task pane's nowrap rule outrank the shared block

3.4.3 - 2026-08-26

Fixed

  • scroll the Task pane instead of wrapping it into columns

3.4.2 - 2026-08-26

Fixed

  • ship the Task widget's own CSS instead of borrowing Overview's

3.4.1 - 2026-08-24

Fixed

  • scroll the Task pane when it outgrows the window

3.4.0 - 2026-08-24

Added

  • edit recurrence in a popover behind a plain-English button

Changed

  • use Trilium's built-in Preact controls instead of hand-rolled ones
  • nest sources by kind and split out the Overview widget

3.2.1 - 2026-08-21

Changed

  • render color fields with Trilium's built-in ColorPicker

3.2.0 - 2026-08-17

Added

  • split the Task widget out of agenda