名称: task-status
描述: 为长时间运行的任务在聊天中发送简短状态描述。适用于需要在多步骤操作期间提供定期更新、确认任务完成或通知失败的情况。包含每5秒自动发送更新的周期性监控、状态消息模板以及用于一致状态报告的辅助函数。
python scripts/send_status.py "开始获取数据..." "progress" "step1"
python scripts/send_status.py "处理完成" "success" "final"
python scripts/send_status.py "错误:缺少API密钥" "error" "auth"
# 开始监控长时间运行的任务
python scripts/monitor_task.py start "我的长任务" "processing"
# 监控器将每5秒发送"仍在处理中..."的更新
# 任务完成后,报告最终状态
python scripts/monitor_task.py stop "我的长任务" "success" "成功完成!"
monitor_task.py脚本提供自动更新功能:
python scripts/monitor_task.py start "<任务名称>" "<状态类型>" [--interval <秒数>]
python scripts/monitor_task.py stop "<任务名称>" "<最终状态>" "<最终消息>"
# 启动监控
python scripts/monitor_task.py start "视频处理" "progress"
# ... 此处进行长时间处理 ...
# 停止并报告最终状态
python scripts/monitor_task.py stop "视频处理" "success" "处理完成!"
对于无需监控的单个状态更新:
python scripts/send_status.py "仍在获取数据..." "progress" "fetch"
python scripts/send_status.py "处理记录:250/1000" "progress" "process"
python scripts/send_status.py "完成!3个文件已就绪" "success" "final"
python scripts/send_status.py "错误:连接超时" "error" "api"
保持状态消息在140个字符以内。示例:
python scripts/send_status.py "上传中..." "progress" "upload" --details "文件:report.pdf (2.4MB)"
python scripts/monitor_task.py start "数据同步" "progress" --interval 10
from send_status import send_status
def long_task():
send_status("开始...", "progress", "step1")
# ... 工作
send_status("步骤完成", "success", "step1")
对于计划任务,使用Clawdbot的cron功能:
# 在脚本或会话中
from cron import add
# 每5秒检查状态
job = {
"text": "检查状态更新",
"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中引用。
安装完成后,此技能将在任何需要定期状态更新的任务中可用。