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
| 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.