Agent 活动检测
Agent Activity Detection
通过 JSONL 日志解析和终端输出分析检测 Agent 当前状态
子问题
1.JSONL 尾部高效读取
2.终端输出模式匹配
3.进程存活检测
4.idle 超时判定
5.多 Agent 插件统一活动检测接口设计
6.JSONL 类型到活动状态的语义映射规则
7.状态转换驱动的自动反应与升级机制
各项目的解法1 solutions
Signals
横向对比
| 维度 | AgentOrchestrator |
|---|---|
| 检测架构 | JSONL 尾读 + 终端模式匹配 + 进程存活三层检测 |
| 状态粒度 | 6 态:active/ready/idle/waiting_input/blocked/exited |
| 时间衰减 | mtime 超 5min 阈值自动降级为 idle,阈值可配置 |
| 插件化 | Agent 接口统一 detectActivity + getActivityState,4 种 Agent 插件 |
| 轮询机制 | 30s 间隔 + 重入保护 + Promise.allSettled 并发 |
| 反应链 | 状态转换 → 事件 → reaction(send-to-agent/notify/auto-merge)→ 升级 |
最佳实践
1.优先使用 JSONL 原生机制而非终端解析
2.只读文件尾部避免加载大日志
3.终端检测返回 active 时仍需二次确认进程存活
4.探测失败时保留当前 stuck/needs_input 状态而非回退到 working
5.用 mtime 时间衰减区分 ready 和 idle 避免误判完成状态