← All tools

Tasks

Things with a due date. Muninn surfaces them as they ripen rather than waiting to be asked.

6Tools
31Parameters
2026-09-03Generated

muninn_task_add

Writes 10 parameters

Create a task memory — a memory carrying task fields (entityType 'task'). Use for to-dos and calendar-shaped events, not for ordinary notes. taskType 'todo' uses dueDate; taskType 'event' uses startTime/endTime. recurrence is a raw RRULE string (RFC 5545, e.g. 'FREQ=WEEKLY;INTERVAL=2'), stored verbatim and passed through untouched. remindTauDays sets how early this task starts nagging (the urgency ramp) — bigger tasks can warn earlier than the global 3-day default; leave unset to use the default. Returns a compact {success, memoryId, length}, same shape as muninn_memory_add.

ParameterTypeRequiredDescription
text string Required Task title, optionally followed by a blank line and notes (first line = title).
taskType stringtodo · event Required 'todo' uses dueDate; 'event' uses startTime/endTime.
dueDate string ISO 8601 datetime — required for taskType 'todo'.
startTime string ISO 8601 datetime — required for taskType 'event'.
endTime string ISO 8601 datetime — optional for taskType 'event'.
recurrence string Raw RRULE string (e.g. 'FREQ=WEEKLY;INTERVAL=2'), stored verbatim. Omit for a one-off task.
reminders object[] Reminder specs (VALARM). Omit for no reminders.
remindTauDays number Per-task override of the urgency ramp, in days. Omit to use the global default (3 days). A bigger tau means the task starts surfacing earlier relative to its due date.
project string Project slug to scope this task. Omit for user-global.
tags string[] default [] Tags for categorization, same as muninn_memory_add.

muninn_task_complete

Writes 1 parameter

Mark a task complete. For a recurring task (recurrence set), this does NOT close it — it rolls dueDate forward to the next RRULE occurrence and keeps taskStatus at 'needs-action', so the task reappears for its next occurrence. Only simple FREQ=DAILY/WEEKLY/MONTHLY/YEARLY[;INTERVAL=n] rules can be rolled forward; a more complex RRULE (BYDAY, COUNT, UNTIL, etc.) falls back to closing the task as completed — the response's `rolled` field tells you which happened.

ParameterTypeRequiredDescription
taskId string Required The task's memory ID (full UUID or unique 8-char prefix).

muninn_task_delete

Writes Destructive 1 parameter

Permanently delete a task memory by ID from all storage layers. Same as muninn_memory_delete but named for the task workflow.

ParameterTypeRequiredDescription
taskId string Required The task's memory ID (full UUID or unique 8-char prefix).

muninn_task_list

Read only 5 parameters

List task memories, filtered by project/status/due window. Backed by the D1 idx_due index (user_id, due_date, task_status), never a KV scan — cheap even at scale. Returns compact rows {memoryId, taskStatus, dueDate, project}; use muninn_memory_get for the full task body.

ParameterTypeRequiredDescription
project string Restrict to this project slug.
status stringneeds-action · in-process · waiting · completed · cancelled Restrict to this task status.
dueBefore string ISO 8601 — only tasks due before this instant.
dueAfter string ISO 8601 — only tasks due after this instant.
limit integer default 50 Maximum rows to return.

muninn_task_snooze

Writes 3 parameters

Snooze a task: hide it from reminders (session boot and per-call) until a given time. This is a statement about ONE task, not the whole reminder list. Pass EITHER until (an exact ISO 8601 instant) OR durationMinutes (snooze from now for N minutes) — not both. Hard rule: a snoozed task still reappears immediately once it reaches or passes its due date (urgency >= 1), even if snoozed_until hasn't arrived yet. Snoozing something that's already overdue has no visible effect for that reason. Pass until as '' (empty string) to clear an existing snooze.

ParameterTypeRequiredDescription
taskId string Required The task's memory ID (full UUID or unique 8-char prefix).
until string ISO 8601 datetime to snooze until. Pass '' to clear an existing snooze. Mutually exclusive with durationMinutes.
durationMinutes number Snooze starting now, for this many minutes. Mutually exclusive with until.

muninn_task_update

Writes 11 parameters

Update a task's fields. Reuses the memory update path (text/tags/project all work as in muninn_memory_update), plus task-specific fields (taskStatus, dueDate, startTime, endTime, recurrence, reminders, remindTauDays). Only pass the fields you want changed. taskId may be a short-form 8-char prefix.

ParameterTypeRequiredDescription
taskId string Required The task's memory ID (full UUID or unique 8-char prefix).
text string New title/notes text — replaces the whole body.
tags string[] New tags (replaces existing tags).
project string New project slug. Pass '' to clear back to global.
taskStatus stringneeds-action · in-process · waiting · completed · cancelled New task status.
dueDate string New due date (ISO 8601) — for taskType 'todo'.
startTime string New start time (ISO 8601) — for taskType 'event'.
endTime string New end time (ISO 8601) — for taskType 'event'.
recurrence string New raw RRULE string, stored verbatim. Pass '' to clear.
reminders object[] New reminder list — replaces the existing one.
remindTauDays number New per-task urgency ramp override, in days. Only changed when passed. There is currently no way to clear an override back to the global default through this tool once set (not covered by the addendum BRD) — flagged as a known gap, not silently decided.

← Back to all 70 tools