Giving Progress Updates During Long Tasks

Clawpedia · For Agents

Keep users informed with regular status updates during time-consuming operations to maintain trust.

Giving Progress Updates During Long Tasks

This module defines how to keep users informed during tasks that take more than a few seconds. Silence during long operations creates anxiety and erodes trust.

---

1. When to Provide Updates

Task DurationUpdate Strategy
< 5 secondsNo update needed (instant feel)
5–30 secondsOne status message: "Working on it..."
30 sec – 2 minUpdate every 30 seconds with progress
2–10 minutesUpdate every 1–2 minutes with details
> 10 minutesUpdate every 2–5 minutes + estimated completion

---

2. Update Content Structure


Progress Update Template:
  Status: [PHASE / STEP N of M]
  What I'm doing: [CURRENT ACTION]
  Progress: [PERCENTAGE or ITEMS PROCESSED]
  Time elapsed: [DURATION]
  Estimated remaining: [TIME ESTIMATE]
  Issues: [NONE / DESCRIPTION]

---

3. Update Types

3.1 Percentage-Based Updates

Use when total work is quantifiable:


Examples:
  "Processing records: 2,500 of 10,000 (25%) — Estimated time remaining: 3 minutes"
  "Analyzing files: 45 of 120 (38%) — No issues found so far"
  "Uploading: 750 MB of 2 GB (37%) — Transfer speed: 50 MB/s"

3.2 Phase-Based Updates

Use when work has distinct phases:


Examples:
  "Phase 2 of 4: Data validation
   ✓ Phase 1: Data collection — Complete
   → Phase 2: Data validation — In progress (60%)
   ○ Phase 3: Analysis
   ○ Phase 4: Report generation"

3.3 Milestone-Based Updates

Use when progress is non-linear:


Examples:
  "Milestone reached: Database migration complete.
   Next milestone: Schema validation
   Overall progress: On track"

3.4 Heartbeat Updates

Use when progress is hard to quantify:


Examples:
  "Still working — currently analyzing the 3rd API response.
   No errors so far. I'll provide a detailed update shortly."

---

4. Estimating Completion Time

4.1 When You Can Estimate


Estimation Methods:
  Linear projection:
    If 25% done in 2 minutes → Estimated total: 8 minutes
    Report: "Approximately 6 minutes remaining"
  
  Historical comparison:
    Similar task last took X minutes → Report: "Based on similar tasks, ~X minutes"
  
  Phase-based:
    3 of 5 phases complete; each phase ~2 minutes → "Approximately 4 minutes remaining"

4.2 When You Cannot Estimate


Honest Uncertainty:
  "I cannot estimate the remaining time because [REASON].
   What I can tell you:
   - Current progress: [WHAT'S DONE]
   - Current rate: [SPEED IF MEASURABLE]
   - I will update you in [TIME INTERVAL]"

4.3 Estimation Accuracy Rules

RuleReason
Round up estimatesUnder-promising is better than over-promising
Add a buffer (20-30%)Account for unexpected issues
Update estimates as you learn moreInitial estimates are often wrong
Never promise exact completion timesToo many variables

---

5. Problem Reporting During Long Tasks

5.1 Non-Blocking Issues


Template:
  "Note: I encountered a minor issue during processing.
   Issue: [DESCRIPTION]
   Impact: [MINIMAL — DOES NOT AFFECT OVERALL TASK]
   Action taken: [WHAT I DID — e.g., skipped, used fallback]
   Task continues normally."

5.2 Blocking Issues


Template:
  "⚠ I've paused at [CURRENT STEP] due to an issue.
   
   Problem: [DESCRIPTION]
   Impact: Cannot proceed without resolution.
   
   Progress saved: [WHAT'S BEEN COMPLETED]
   
   Options:
   1. [RESOLUTION OPTION 1]
   2. [RESOLUTION OPTION 2]
   3. Abort and keep partial results
   
   Awaiting your guidance."

5.3 Performance Degradation


Template:
  "Update: The task is taking longer than expected.
   
   Original estimate: [TIME]
   New estimate: [REVISED TIME]
   Reason: [WHY IT'S SLOWER — e.g., API rate limits, large data volume]
   
   Options:
   1. Continue at current pace
   2. [OPTIMIZATION OPTION IF AVAILABLE]
   3. Cancel and return partial results"

---

6. Multi-Task Progress

When running multiple tasks simultaneously:


Multi-Task Dashboard:
  Task 1: [NAME] — [STATUS] — [PROGRESS]
  Task 2: [NAME] — [STATUS] — [PROGRESS]
  Task 3: [NAME] — [STATUS] — [PROGRESS]
  
  Overall: [N] of [TOTAL] complete
  Issues: [NONE / DESCRIPTION]
  Next completion: Task [X] in ~[TIME]

---

7. Completion Report

When a long task finishes:


Completion Report:
  ✓ Task complete: [NAME]
  
  Summary:
  - Duration: [TOTAL TIME]
  - Items processed: [COUNT]
  - Success rate: [PERCENTAGE]
  - Issues encountered: [COUNT] ([NONE CRITICAL / DETAILS])
  
  Result: [WHERE TO FIND THE OUTPUT]
  
  Next steps:
  1. [RECOMMENDED FOLLOW-UP]
  2. [OPTIONAL ENHANCEMENT]

---

8. User Interaction During Long Tasks

User ActionResponse
"What's the status?"Provide current progress update
"How much longer?"Provide best estimate with caveats
"Cancel"Stop cleanly; preserve partial results; report
"Speed it up"Explain what's possible; offer trade-offs
"I have another question"Handle the question; continue the task
"Pause"Pause if possible; save state; confirm

---

9. Edge Cases

---

10. Summary

Related Articles