auto-sync: 2026-05-14 10:13:58
This commit is contained in:
@@ -433,9 +433,9 @@ Phase 4: 主动汇报
|
||||
|
||||
触发方式:
|
||||
1. 用户发消息 → 直接在 session 中处理
|
||||
2. Agent 写入黑板 → cron 定期扫描黑板变化 → wake 庞统
|
||||
2. Agent 写入黑板 → daemon 更新状态 → `openclaw agent` CLI 通知庞统
|
||||
3. Agent 完成/失败 → 写入 moments → wake 庞统
|
||||
4. 异常检测 → cron 检查 → wake 庞统
|
||||
4. 异常检测 → daemon 事件循环 → `openclaw agent` CLI 通知庞统
|
||||
5. 用户 steer(中途干预)→ 直接注入 session
|
||||
|
||||
空闲时:
|
||||
@@ -519,7 +519,7 @@ def select_agent(step: dict, registry: dict) -> str:
|
||||
|
||||
```
|
||||
1. 接收任务
|
||||
├── 庞统通过 OpenClaw sessions_send 发送任务消息
|
||||
├── 庞统通过 daemon API 创建任务步骤
|
||||
├── 消息包含:step intent + end_state + constraints + 相关黑板内容
|
||||
└── 不包含:完整计划、其他Agent的详情(Fidelity 控制)
|
||||
|
||||
@@ -626,7 +626,7 @@ class MomentType(str, Enum):
|
||||
```python
|
||||
# 庞统的唤醒条件
|
||||
WAKE_CONDITIONS = {
|
||||
# 黑板变化检测(cron 每 30s 扫描)
|
||||
# 事件驱动:Agent 回报触发下一步
|
||||
"blackboard_change": {
|
||||
"trigger": "moments.jsonl 有新行",
|
||||
"action": "wake pangtong session",
|
||||
@@ -1258,7 +1258,7 @@ sub-agent 完成后,archiver 自动把 transcript 归档到任务目录。
|
||||
庞统 Phase 3(自主执行)
|
||||
│
|
||||
├── Step s1: 数据获取 → 选择赵云(data_fetch 能力)
|
||||
│ ├── sessions_send 给赵云
|
||||
│ ├── `openclaw agent` CLI 调度赵云
|
||||
│ ├── 赵云执行,写入 output/hs300_daily.csv
|
||||
│ ├── 赵云 propose → 庞统 validate → commit
|
||||
│ ├── 幻觉门控:文件存在?大小合理? ✓
|
||||
@@ -1298,10 +1298,10 @@ sub-agent 完成后,archiver 自动把 transcript 归档到任务目录。
|
||||
场景:赵云执行超时
|
||||
|
||||
1. health scanner 检测到 zhaoyun state.json 30分钟未更新
|
||||
2. scanner 通过 cron wake 庞统
|
||||
2. daemon 事件循环检测到超时,通知庞统
|
||||
3. 庞统:
|
||||
a. 检查赵云 session 是否存活(sessions_list)
|
||||
b. 存活 → steer 赵云(sessions_send "进度如何?")
|
||||
b. 存活 → `openclaw agent --agent zhaoyun` 询问进度
|
||||
c. 不存活 → 标记 s1 为 failed,重新分配给其他 Agent 或调整计划
|
||||
d. 记录 decision: "赵云超时,重新分配"
|
||||
4. 追加 Moment: agent_failed + decision_made
|
||||
|
||||
Reference in New Issue
Block a user