Progress Tracking

While Thallus processes your query, you see real-time progress updates in the chat interface. This page explains what those indicators mean and how the streaming system works.

What you see during execution

When you send a message, a compact progress view appears showing:

  • A status icon indicating the current state
  • A description of what's happening (e.g., "2 agents running", "Replanning: refining search")
  • Elapsed time since execution started
  • Agent and plan counts for multi-step queries

This view updates in real time as agents start, complete, and as the plan progresses.

Status indicators

2 agents running
12s
Replanning: refining search
24s
Complete
31s
Error: agent timeout
45s
Icon Status Meaning
↻ (spinner) Running Agents are actively working
✓ (checkmark) Complete Execution finished successfully
⚠ (warning) Error Something went wrong (agent timeout, tool failure)
⎇ (branch) Replanning The evaluator triggered a replan to fill gaps
🌐 (globe) External call An agent is calling an external service
🔌 (wifi-off) Disconnected SSE connection lost, attempting to reconnect

Key progress events

The progress stream emits these event types during execution:

Event When it fires
plan_created A new execution plan has been generated
agent_started An agent began working on a step
agent_completed An agent finished its step
tool_started An agent called a specific tool
tool_completed A tool call returned results
text_delta A chunk of the streaming response is ready
replan_triggered The evaluator decided to replan
hypotheses_updated Investigation hypotheses were updated (Investigate mode)
complete The entire task is finished

In Research mode, you'll typically see plan_created followed by several agent_started/agent_completed pairs, possibly a replan_triggered, and finally complete. In Investigate mode, you'll see waves of agent events with hypotheses_updated events between them.

How streaming works

Progress events are delivered via Server-Sent Events (SSE) — a one-way streaming connection from the server to your browser. The connection is authenticated with your session token.

As agents complete work and the orchestrator progresses through its pipeline, events are published and forwarded to your browser in real time.

The response itself also streams via text_delta events, so you see the answer appearing word-by-word as it's generated during the synthesis phase.

Reconnection and reliability

If the SSE connection drops (network hiccup, browser tab backgrounded), the client automatically reconnects:

  • Automatic reconnection with increasing backoff
  • Event deduplication to prevent duplicate updates after reconnecting
  • Server heartbeats to detect drops early

Recovering active tasks

If you refresh the page or close and reopen your browser while a task is running, Thallus can recover. The chat page checks for active tasks on load, and if one is found, it reconnects to the progress stream and picks up where it left off.

This means you won't lose progress on long-running Research or Investigate queries even if you navigate away.

Interpreting the timeline

Here's what the progress indicators tell you about your query:

  • Agent count — How many agents ran in total. More agents usually means a more thorough analysis (Research or Investigate mode).
  • Plan count — If you see "Plan 2" or "Plan 3", the evaluator triggered replanning because the initial results were incomplete. This is normal and means Thallus is working harder to get a complete answer.
  • Elapsed time — Total wall-clock time. Ask mode typically completes in under 10 seconds. Research mode ranges from 15–45 seconds. Investigate mode can take 1–3 minutes for deep explorations.
  • Replanning indicators — A replan with a reason like "refining search" or "broadening date range" tells you what the system is adjusting. Multiple replans are attempted before synthesizing the best available answer.