← Back to Dashboard

Task Pipeline

Visual flow of all agent tasks — delegation chains, real-time status, and multi-agent handoffs on an interactive canvas.

Table of Contents

Overview

Non-technical summary: The Task Pipeline is like a live whiteboard showing all the work your AI agents are doing right now. Each task is a card, and arrows show how work flows between agents — who started it, who's working on it, and who reviewed it.

The Task Pipeline page provides a full-screen, zoomable, pannable canvas that renders every task as a node in a left-to-right flow graph. Tasks are grouped into delegation chains — horizontal rows where each step represents a handoff between agents. Orphan tasks (not part of any chain) are displayed in a separate row.

Key capabilities include:

How It Works

When you open the Task Pipeline, the system:

  1. Fetches tasks — Loads up to 200 tasks from the /task-pipeline endpoint along with aggregate statistics.
  2. Groups by chain — Tasks with a shared chainId are grouped into horizontal rows, sorted by chainSeq. Single-task "chains" become orphans.
  3. Lays out nodes — Each chain is a horizontal row of 200×52px nodes spaced 32px apart. Chains stack vertically with 12px gaps.
  4. Draws edges — SVG cubic Bézier curves connect consecutive nodes. Active edges get animated dash overlays. Circular (revision) flows use arc paths.
  5. Streams updates — An SSE connection at /task-pipeline/stream pushes task updates in real-time. Stats refresh every 15 seconds.

Key Concepts

Delegation Chain

A chain is a sequence of tasks linked by a shared chainId. When a manager agent delegates work to a junior agent, both tasks share the same chain. Each task has a chainSeq (sequence number) determining its position in the flow.

Chain Flow Types

TypeColorDescription
DelegationIndigoStandard work handoff to another agent
ReviewAmberTask sent for quality review
RevisionOrangeTask returned for corrections
EscalationRedTask escalated to a senior agent
ReturnGreenTask returned to original requester

Circular Flows

When a task returns to an agent who already appeared earlier in the chain (e.g., Agent A → B → A for revision), the edge renders as an upward arc to visually distinguish the loop from forward flow.

Canvas Interactions

ActionEffect
Hover on a nodeHighlights the entire chain, dims all other nodes
Click a nodeExpands an inline chain flowchart below the node showing the person-centric flow
Double-click a nodeOpens the full Task Detail modal
Scroll wheelZoom in/out (range: 15%–300%)
Click + drag backgroundPan the canvas
Tip: Use the "Fit" button in the toolbar to auto-zoom so all tasks fit in view. The canvas also auto-pans to the first active (in-progress) task on load.

Task Statuses & Priority

Statuses

StatusColorMeaning
CreatedIndigoTask exists but hasn't been assigned yet
AssignedAmberTask assigned to an agent, not yet started
In ProgressCyanAgent is actively working on this task (animated pulse)
CompletedGreenTask finished successfully
FailedRedTask encountered an error
CancelledGrayTask was manually cancelled

Priority Levels

PriorityColor
UrgentRed
HighAmber
NormalIndigo
LowGray

Delegation Chains

The expanded chain view (shown when clicking a node) renders a person-centric flow:

  1. Creator — The person or system that originated the chain
  2. Agent steps — Each agent in the chain, with status, duration, and progress
  3. Terminal node — Final status (completed ✓, failed ✗, or cancelled ⊘)

Arrows between steps are labeled with the delegation type (delegation, review, revision, etc.) and colored accordingly.

Source Badges

Each task can have a source indicating where it originated:

SourceIconColor
Telegram✈️#0088cc
WhatsApp💬#25d366
Email✉️#ea4335
Google Chat🗨️#1a73e8
Internal⚙️#6b7394
API🔗#8b5cf6

Metrics Bar

Below the toolbar, a compact metrics bar shows real-time stats:

Task Detail Modal

Double-clicking a task node opens a detailed modal containing:

Toolbar & Filters

The toolbar provides:

Real-Time Updates (SSE)

The pipeline maintains a persistent Server-Sent Events connection to /api/engine/task-pipeline/stream. Events include:

On every task event, stats are also refreshed. A 15-second interval additionally polls stats as a fallback.

Note: If the SSE connection drops, the pipeline will not auto-reconnect. Use the Refresh button to reload data manually.

Configuration & Setup

The Task Pipeline works out of the box once agents are configured and tasks are being created. No additional configuration is required.

Organization Filtering

When an organization is selected via the org switcher, the pipeline filters tasks to only show those belonging to agents in that organization.

Agent Avatars

Agent avatars are resolved from config.identity.avatar, config.avatar, or config.persona.avatar. If none is set, a colored initial circle is displayed.

API Reference

EndpointMethodDescription
/task-pipeline?limit=200GETFetch tasks
/task-pipeline/statsGETAggregate statistics
/task-pipeline/streamSSEReal-time task updates
/task-pipeline/:id/cancelPOSTCancel a task

Best Practices

Troubleshooting

IssueSolution
Canvas is emptyCheck filter is set to "All" — the "Active" filter hides completed/failed tasks. Also verify agents exist in the selected organization.
No live indicatorSSE connection failed. Check network and ensure /api/engine/task-pipeline/stream is accessible. Click Refresh.
Tasks not showing chainsEnsure tasks have a chainId set. Single-task chains are treated as orphans.
Canvas zoom is too small/largeClick "Fit" to auto-zoom, or use scroll wheel to adjust manually.
Agent avatars missingSet config.identity.avatar on the agent configuration.
Destructive action: The "Cancel Task" button in the detail modal immediately cancels an active task. This cannot be undone — the agent will stop working on it.
AgenticMail Enterprise Documentation Report an issue