Send short status descriptions in chat for long-running tasks. Use when you need to provide periodic updates during multi-step operations, confirm task completion, or notify of failures. Includes automated periodic monitoring that sends updates every 5 seconds, status message templates, and a helper function for consistent status reporting.
Install
Documentation
Task Status Skill
Quick Start
Manual Status Updates
python scripts/send_status.py "Starting data fetch..." "progress" "step1"
python scripts/send_status.py "Processing complete" "success" "final"
python scripts/send_status.py "Error: Missing API key" "error" "auth"
Automatic Periodic Monitoring (Every 5 seconds)
Start monitoring a long-running task
python scripts/monitor_task.py start "My Long Task" "processing"
Monitor will send "Still working..." updates every 5 seconds
When task completes, report final status
python scripts/monitor_task.py stop "My Long Task" "success" "Completed successfully!"
Status Types
- -progress: Ongoing work (shows 🔄 or ->)
- -success: Task complete (shows ✅ or OK)
- -error: Failed task (shows ❌ or !)
- -warning: Issue but continuing (shows ⚠️ or ?)
Periodic Monitoring
The monitor_task.py script provides automatic updates:
Starting Monitor
python scripts/monitor_task.py start "<task_name>" "<status_type>" [--interval <seconds>]
- -Automatically sends "Still working..." updates every 5 seconds
- -Runs in background until stopped
- -Can be customized with different intervals
Stopping Monitor
python scripts/monitor_task.py stop "<task_name>" "<final_status>" "<final_message>"
Example: Long File Processing
Start monitoring
python scripts/monitor_task.py start "video_processing" "progress"
... long processing happens here ...
Stop with final status
python scripts/monitor_task.py stop "video_processing" "success" "Processing complete!"
Manual Updates (Quick Status)
For single status updates without monitoring:
python scripts/send_status.py "Still fetching data..." "progress" "fetch"
python scripts/send_status.py "Processing records: 250/1000" "progress" "process"
python scripts/send_status.py "Complete! 3 files ready" "success" "final"
python scripts/send_status.py "Error: Connection timeout" "error" "api"
When to Use Each Method
Use Manual Updates When:
- -Task is short (under 30 seconds)
- -You want control over when updates are sent
- -Task has discrete, meaningful milestones
Use Periodic Monitoring When:
- -Task is long-running (over 1 minute)
- -You want consistent "heartbeat" updates every 5 seconds
- -Task has long periods of quiet work
- -You want to reassure user that work is ongoing
Message Guidelines
Keep status messages under 140 characters. Examples:
- -Progress: "Still fetching data..." or "Processing records: 250/1000"
- -Success: "Complete! 3 files ready" or "Task finished successfully"
- -Error: "Error: Connection timeout" or "Failed: Missing API key"
- -Warning: "Continuing despite timeout" or "Partial success: 5/10 files"
Advanced Usage
With Additional Details
python scripts/send_status.py "Uploading..." "progress" "upload" --details "File: report.pdf (2.4MB)"
Different Intervals
python scripts/monitor_task.py start "data_sync" "progress" --interval 10
Importing for Python Scripts
from send_status import send_status
def long_task():
send_status("Starting...", "progress", "step1")
# ... work
send_status("Step complete", "success", "step1")
Automation with Clawdbot Cron
For scheduled tasks, use Clawdbot's cron feature:
In a script or session
from cron import add
Every 5 seconds, check status
job = {
"text": "Check status update",
"interval": "5s",
"enabled": True
}
add(job)
This allows status updates even when you're not actively watching.
Installation
To use this skill, copy the task-status folder into your Clawdbot skills directory:
C:\Users\Luffy\AppData\Roaming\npm\node_modules\clawdbot\skills\task-status
Or add it to your workspace and reference it from AGENTS.md or TOOLS.md.
Once installed, the skill will be available for any task where you need periodic status updates.
Launch an agent with Task Status on Termo.