Agents
Task List
The agent's running to-do list for one job: a count, a slim progress bar and one row per task with to do, running, done, failed and blocked states.
Group: Agents. Exports: TaskList. Halaska addition with no shadcn/ui equivalent.
Usage
import { TaskList } from "./halaska-kit";
TaskList props
titlestring(default "Clearing the support backlog"): Header text (default: "Clearing the support backlog")tasks{ id: string, label: string, status: "todo" | "running" | "done" | "failed" | "blocked", detail?: string }[](default TASKLIST_TASKS): The job's tasks in order; copied into state on mount (default: TASKLIST_TASKS)autoplayboolean(default true): Advance statuses on a timer: the running task finishes and the next to-do starts, until none are left (default: true)stepMsnumber(default 1400): Milliseconds between autoplay steps (default: 1400)collapsibleboolean(default false): The header toggles the list; the count and bar stay visible (default: false)defaultOpenboolean(default true): Initial list state when collapsible (default: true)retryLabelstring(default "Retry"): Label of the button on a failed task (default: "Retry")onChange(tasks: Task[]) => void: Fires with the whole list whenever a status changes, by autoplay or retryonRetry(task: Task) => void: Fires when a failed task's retry is pressed; the task is set to runningonToggle(open: boolean) => void: Fires when a collapsible list opens or closes
Accessibility
- The tasks render as a list labelled with the title. Each status glyph is an image with its status as the name, and the running task sets aria-current.
- The count is a polite live region, so a screen reader hears each task finishing without the rows re-announcing.
- The progress bar carries the progressbar role with its value. The retry on a failed task is a native button named with the task.
- When collapsible, the header is a native button with aria-expanded and aria-controls pointing at the list.
Halaska UI · Components · Patterns · Screens · Install