关于 task-status
task-status 是用于任务进度反馈的技能,可发送手动状态消息,也可定时发送运行状态。它面向需要让长时间运行任务保持可见的工作流。
主要功能
- 01发送进度、成功、错误和警告
- 02定时发送运行状态
- 03自定义监控间隔
- 04支持 Python 调用
- 05适配 Clawdbot 定时任务
适用场景
- 01汇报数据抓取阶段进度
- 02为长时间文件处理发送心跳
- 03记录任务完成或失败状态
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aaaaqwq/ agi-super-team --skill task-status安装后在 Claude Code 中输入/task-status确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
_meta.jsonREADME.md.clawhub/origin.jsonreferences/usage.mdscripts/monitor_task.pysend_status_websocket.pysend_status_with_logging.pysend_status.pytest_send_status.py详细介绍
任务状态技能
快速开始
手动更新状态
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"
自动定期监控(每 5 秒)
# 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!"
状态类型
- progress:进行中的工作(显示 🔄 或 ->)
- success:任务完成(显示 ✅ 或 OK)
- error:任务失败(显示 ❌ 或 !)
- warning:遇到问题但仍在继续(显示 ⚠️ 或 ?)
定期监控
monitor_task.py 脚本可自动发送更新:
启动监控
python scripts/monitor_task.py start "<task_name>" "<status_type>" [--interval <seconds>]
- 每 5 秒自动发送“仍在处理中……”更新
- 在后台运行,直到停止
- 可通过不同的时间间隔进行自定义
停止监控
python scripts/monitor_task.py stop "<task_name>" "<final_status>" "<final_message>"
示例:处理大型文件
# 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!"
手动更新(快速状态)
如需单次更新状态而不进行监控:
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"
何时使用各方法
适合使用手动更新的情况:
- 任务较短(少于 30 秒)
- 希望控制发送更新的时间
- 任务包含明确且有意义的阶段性进展
适合使用定期监控的情况:
- 任务运行时间较长(超过 1 分钟)
- 希望每 5 秒定期发送“心跳”更新
- 任务会长时间静默处理
- 希望让用户放心,表明工作仍在进行
消息指南
状态消息请控制在 140 个字符以内。示例:
- Progress:“仍在获取数据……”或“正在处理记录:250/1000”
- Success:“完成!已准备好 3 个文件”或“任务已成功完成”
- Error:“错误:连接超时”或“失败:缺少 API 密钥”
- Warning:“超时后仍继续处理”或“部分成功:5/10 个文件”
高级用法
添加更多详细信息
python scripts/send_status.py "Uploading..." "progress" "upload" --details "File: report.pdf (2.4MB)"
设置不同的时间间隔
python scripts/monitor_task.py start "data_sync" "progress" --interval 10
在 Python 脚本中导入
from send_status import send_status
def long_task():
send_status("Starting...", "progress", "step1")
# ... work
send_status("Step complete", "success", "step1")
使用 Clawdbot Cron 实现自动化
对于计划任务,请使用 Clawdbot 的 cron 功能:
# 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)
即使你没有主动查看,也能发送状态更新。
安装
若要使用此技能,请将 task-status 文件夹复制到 Clawdbot 技能目录:
C:\Users\Luffy\AppData\Roaming\npm\node_modules\clawdbot\skills\task-status
或者将其添加到工作区,并在 AGENTS.md 或 TOOLS.md 中引用。
安装后,在任何需要定期更新状态的任务中都可以使用此技能。
评论
支持 Markdown