feat: 更新工作流指南和核心脚本,完善任务管理系统
This commit is contained in:
Executable
+60
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
# Agent监控脚本 - 极简可靠版
|
||||
# 每个将军运行此脚本监控自己的任务
|
||||
|
||||
AGENT="$1"
|
||||
|
||||
if [ -z "$AGENT" ]; then
|
||||
echo "使用方法: ./agent_monitor.sh <agent_name>"
|
||||
echo "例如: ./agent_monitor.sh pangtong"
|
||||
echo "支持的agent: pangtong, zhangfei, guanyu, zhaoyun, jiangwei, simayi"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 日志文件
|
||||
LOG_FILE="${AGENT}.log"
|
||||
|
||||
echo "=========================================" >> "$LOG_FILE"
|
||||
echo "Agent监控启动 - $AGENT" >> "$LOG_FILE"
|
||||
echo "启动时间: $(date)" >> "$LOG_FILE"
|
||||
echo "检查间隔: 30秒" >> "$LOG_FILE"
|
||||
echo "监控目录: management/agents/${AGENT}/" >> "$LOG_FILE"
|
||||
echo "=========================================" >> "$LOG_FILE"
|
||||
|
||||
echo "🚀 $AGENT Agent监控器启动"
|
||||
echo "📊 检查间隔: 30秒"
|
||||
echo "📝 日志文件: $LOG_FILE"
|
||||
|
||||
while true; do
|
||||
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
|
||||
|
||||
# 检查是否有.task文件
|
||||
TASK_FILES=$(ls management/agents/${AGENT}/*.task 2>/dev/null)
|
||||
|
||||
if [ -n "$TASK_FILES" ]; then
|
||||
for TASK_FILE in $TASK_FILES; do
|
||||
TASK_ID=$(basename "$TASK_FILE" .task | sed 's/_.*//')
|
||||
|
||||
echo "[$TIMESTAMP] $AGENT 发现新任务: $TASK_ID" >> "$LOG_FILE"
|
||||
echo "[$TIMESTAMP] $AGENT 发现新任务: $TASK_ID"
|
||||
|
||||
# 读取任务内容
|
||||
TASK_CONTENT=$(head -20 "$TASK_FILE" 2>/dev/null)
|
||||
echo "[$TIMESTAMP] 任务内容:" >> "$LOG_FILE"
|
||||
echo "$TASK_CONTENT" >> "$LOG_FILE"
|
||||
|
||||
# 这里可以添加Agent自己的执行逻辑
|
||||
# 各将军可以在这里实现自己的任务处理
|
||||
|
||||
# 完成任务后删除.task文件
|
||||
rm "$TASK_FILE"
|
||||
echo "[$TIMESTAMP] $AGENT 完成任务: $TASK_ID" >> "$LOG_FILE"
|
||||
echo "[$TIMESTAMP] $AGENT 完成任务: $TASK_ID"
|
||||
done
|
||||
else
|
||||
echo "[$TIMESTAMP] $AGENT 无新任务" >> "$LOG_FILE"
|
||||
fi
|
||||
|
||||
# 等待30秒
|
||||
sleep 30
|
||||
done
|
||||
Reference in New Issue
Block a user