Files
sanguo_quant_live/management/workflow/SIMPLE_WORKFLOW_GUIDE.md
T

4.1 KiB
Raw Blame History

🚀 极简任务分发工作流 - 端到端使用指南

📋 方案概述

基于 Gitee + 文件系统轮询 的极简任务分发方案,替代 session_send 直接通知,稳定可靠不丢任务。

核心优势

  • 极简单:纯 Bash 脚本,纯文件操作,无复杂依赖
  • 极可靠:任务存在 Git 上,永远不会丢
  • 易排查:所有操作都有日志,出问题一看就懂
  • 分布式:多节点协作,各拉各的任务

🏗️ 系统架构

目录结构

management/
├── tasks/
│   ├── pending/    # 待分配任务
│   ├── assigned/   # 已分配任务
│   └── completed/  # 已完成任务
├── agents/
│   └── pangtong/   # 每个Agent一个目录
│       ├── *.task  # 待执行任务
│       └── *.done  # 已完成标记
└── workflow/
    └── scripts/
        ├── create_simple.sh       # 创建任务
        ├── assign_simple.sh       # 分配任务
        ├── agent_monitor_fixed.sh # Agent监控脚本
        └── agent_check_and_start.sh # 检查并启动

🔄 完整工作流程

第一步:Agent 启动监控(只需一次)

cd /path/to/sanguo_quant_live

# 方法1:直接启动
nohup ./management/workflow/scripts/agent_monitor_fixed.sh pangtong > pangtong_monitor.log 2>&1 &

# 方法2:检查并启动(推荐,如果没运行才启动)
./management/workflow/scripts/agent_check_and_start.sh pangtong

监控做什么:

  • 每30秒检查一次 management/agents/pangtong/ 目录
  • 发现 .task 文件 → 读取任务内容 → 记录日志 → 删除 .task → 创建 .done 标记
  • 你根据任务内容执行,完成后提交 Git 即可

第二步:诸葛亮创建并分配任务

诸葛亮操作:

# 1. 创建任务
./management/workflow/scripts/create_simple.sh "测试任务:验证全天候轮动策略回测代码可运行性"

# 输出示例:
# 任务创建: TASK-20260323100500
# 文件: management/tasks/pending/TASK-20260323100500.md

# 2. 分配任务给你
./management/workflow/scripts/assign_simple.sh TASK-20260323100500 pangtong

# 3. 提交到Gitee
git add .
git commit -m "test: 创建测试任务给庞统"
git push origin main

第三步:你拉取并执行任务

你操作:

# 1. 拉取最新代码
git pull origin main

# 2. 监控会自动发现任务,记录到日志
tail -f pangtong_monitor.log  # 可以看到任务发现记录

# 3. 查看任务内容(任务ID看日志)
cat management/tasks/assigned/TASK-XXXX.md

# 4. 按任务需求执行
# ... 你的工作 ...

# 5. 完成后,标记完成并推送
echo "任务完成,结果:xxx" > management/agents/pangtong/TASK-XXXX.done
git add .
git commit -m "done: 完成测试任务 TASK-XXXX"
git push origin main

第四步:诸葛亮确认结果

诸葛亮拉取代码,看到 .done 文件,任务完成。


📝 常用命令

检查监控状态

# 检查你的监控是否运行
ps aux | grep "agent_monitor_fixed.sh pangtong"

# 查看日志
tail -20 pangtong_monitor.log

重启监控

# 杀掉旧进程
pkill -f "agent_monitor_fixed.sh pangtong"

# 重新启动
./management/workflow/scripts/agent_check_and_start.sh pangtong

一键启动所有Agent

# 项目根目录
./start_all_agents.sh

🔍 故障排除

Q: 监控没发现任务?

A:

  1. 检查是否 git pull
  2. 检查任务文件是否存在:ls management/agents/pangtong/*.task
  3. 检查监控是否在运行:ps aux | grep pangtong

Q: 任务执行出错了怎么办?

A:

  • 直接在 .done 文件里写明错误信息
  • 提交Git,诸葛亮会看到并重新分配

Q: 监控日志太大了?

A:

  • 日志是追加模式,定期清理就行
  • cat /dev/null > pangtong_monitor.log

本次验证要点

  1. 验证监控能否自动发现任务
  2. 验证任务文件流转是否正确
  3. 验证Git同步流程
  4. 验证完成回传流程

最后更新2026-03-23
更新人:诸葛亮
状态:待验证