Tasks

Lightweight to-dos tied to workflows. AI agents read them automatically when loading a workflow.

Tasks are lightweight to-dos that live inside a workflow or at the workspace level. When an AI agent loads a workflow, it automatically receives the active task list and picks up exactly where you left off.

What are Tasks?

Each task has:

  • A title — short, actionable description
  • A statusTodo, In Progress, Done, or Dismissed
  • An optional assignee — any workspace member
  • An optional due date
  • A source — where it was created (web, desktop, mcp, cli)

Tasks come in two scopes:

ScopeDescription
Workflow taskTied to a specific workflow. Loaded automatically when that workflow is activated.
Workspace taskNot tied to any workflow. Useful for reminders and cross-workflow notes.

The Tasks page

The Tasks page (/dashboard/tasks) shows every task across all workflows and the workspace in one view.

Filter tabs

TabShows
AllEvery task regardless of status
ActiveTodo and In Progress tasks only
DoneCompleted tasks
DismissedTasks you've dismissed (toggle visibility in settings)

You can also filter by assignee (Anyone / Unassigned / specific member), search by task title or workflow name, and toggle With tasks only to hide empty workflow sections.

Status badge

Each active task shows a status pill in its meta row:

  • Todo (muted) — click to promote to In Progress
  • In Progress (blue) — click to demote back to Todo
  • Checkbox — click to toggle Done / Todo
  • Dismiss button (×) — appears on hover, marks as Dismissed

Workflow sections sorted by activity

Workflow sections are automatically ordered by active task count (highest first), so the busiest workflows always appear at the top.

Searching tasks

The search bar matches against both task titles and workflow names. Searching for a workflow name shows the workflow section; individual tasks within it are still filtered by title match.

Note: If the search bar is populated when you add a new task, the task is saved but won't appear in the filtered list until you clear the search.

"With tasks only" filter

Click With tasks only in the toolbar to hide any workflow section that currently has no tasks matching your filter. Useful when you have many workflows but only want to see the ones with active work.

Adding a task

  1. Find the workflow (or Workspace section) you want to add a task to.
  2. Click Add task at the bottom of the section.
  3. Type the task title and press Enter or click Add.

Tasks can only be added from the All or Active tab — the add input is hidden on Done/Dismissed tabs.

Editing a task title

Click the task title to enter edit mode. A Save and Cancel button appear below the textarea. Press Cmd/Ctrl + Enter to save with the keyboard, or Escape to cancel.

Assigning a task

Click the assignee button (person icon) in the task meta row to open the member picker. Select a member to assign, or choose Unassigned to clear.

Refreshing the list

The page automatically re-fetches when you switch back to the browser tab. Use the refresh button (↻) in the top-right corner to reload manually.


Task settings

Click the settings cog in the top-right of the Tasks page to access:

SettingDescription
Show Dismissed tabToggle the Dismissed filter tab on or off
Auto-delete dismissed tasksAutomatically hide dismissed tasks older than 7, 30, or 90 days

Deleting a workflow

Warning: Deleting a workflow permanently deletes all of its tasks. This cannot be undone.

The delete confirmation dialog in both the web app and desktop app will remind you of this before you confirm.


AI agent awareness

When an AI agent loads a workflow (via MCP load_workflow or the CLI workflow command), the response includes the active task list. The AI presents tasks as a clean numbered list — no status prefixes or IDs shown to the user. It then asks whether you'd like to add them to a project plan as phases, or tackle them manually.

Agents are expected to:

  1. Present tasks as a numbered list, then ask about the project plan.
  2. Resume any in progress task before starting new work.
  3. Pick the first to do task if nothing is in progress.
  4. Mark tasks in progress when starting and done when finishing.
  5. Add newly discovered tasks during the session.

This means your task list doubles as a session handoff — when you return to a workflow, AI picks up exactly where you left off.


CLI — tasks commands

# List tasks for a workflow (yours + unassigned only) contextium tasks list -w <workspace> --workflow "<name>" # List all tasks for a workflow (admin view) contextium tasks list -w <workspace> --workflow "<name>" --all # List workspace-level tasks contextium tasks list -w <workspace> # List tasks assigned to you across all workflows contextium tasks mine -w <workspace> # Add a task to a workflow contextium tasks add -w <workspace> --workflow "<name>" -t "Task title" # Add a task with description, due date, and assignee contextium tasks add -w <workspace> --workflow "<name>" -t "Title" \ -d "Description" --due 2026-06-01 --assign "Sarah" # Add a workspace-level task (no --workflow) contextium tasks add -w <workspace> -t "Task title" # Update task status contextium tasks status -w <workspace> --id <taskId> --set in_progress # Mark a task done (shorthand) contextium tasks done -w <workspace> --id <taskId> # Assign a task to a member contextium tasks assign -w <workspace> --id <taskId> --to "Sarah" # Unassign contextium tasks assign -w <workspace> --id <taskId> --to none

Tasks are also shown automatically when loading a workflow:

contextium workflow "My Workflow" -w <workspace> # → Shows active tasks (yours + unassigned) at the bottom of the output

MCP tools

ToolDescription
add_taskAdd a task to a workflow. Accepts workflowId (exact) or workflowName (fuzzy — disambiguates if multiple matches).
update_task_statusUpdate a task's status to not_started, in_progress, done, or dismissed.
list_tasksList all tasks for a workflow with status, assignee, and due date. Use sparingly — load_workflow already includes active tasks.

Tasks loaded via load_workflow are scoped to the current user (assigned to you + unassigned). Use list_tasks only when you need the full task list including other members' tasks.


Cross-workflow tasks

You can add a task to any workflow from your current session — you don't need to have that workflow loaded. Using the MCP add_task tool, pass the target workflow's name:

Add a task to the "Marketing Campaign" workflow: "Review copy before Friday"

If the name matches multiple workflows, Claude will show the candidates and ask you to pick before adding.