Daily Loop Runner
Advance one project by one meaningful step per loop. State read before execution, structured writeback after.
Input
Required:
- -
project_card — full project card with current state, goals, blockers - INLINECODE1 — most recent weekly review notes
- INLINECODE2 — list of recent daily loop logs (last 3-5)
- INLINECODE3 — unresolved questions from previous loops
Optional:
- -
forced_bottleneck — override automatic bottleneck selection
Output Schema
CODEBLOCK0
Hard Rules
- 1. One project per run. Do not split focus.
- One bottleneck per run. Pick the most critical blocker.
- One main action per run. One meaningful step, not a sprint.
- No execution without state read. Always read projectcard and recent logs first.
- No successful completion without nextaction. Every loop must feed into the next.
Loop Phases
Phase 1: State Read
- - Read projectcard fully
- Read recentdailylogs
- Note openquestions from previous runs
- Identify current project phase and milestone
Phase 2: Bottleneck Selection
- - Pick the single most critical bottleneck
- If forced_bottleneck provided, use it
- If nothing is blocking, advance the primary goal
Phase 3: Task Input Construction
- - Build a focused task_input for the selected agent
- Include: what to do, why it matters, what success looks like
- Exclude: everything else
Phase 4: Execution
- - Dispatch task to selected agent
- Wait for execution_summary and findings
Phase 5: Writeback
- - Update projectcard with projectcardupdates
- Write executionsummary + findings to daily log
- Populate nextaction for tomorrow's loop
- Set safeto_proceed = true
Failure Handling
If state is incomplete (missing project_card, no recent logs, unclear objective):
- - Stop the run immediately
- Set INLINECODE5
- Request cleanup or missing-state repair
- Do not attempt execution with partial state
State Machine
CODEBLOCK1
Respect the state machine. Never skip from IDLE to RUNNING.
每日循环推进器
每轮循环将一个项目推进一个有意义的步骤。执行前陈述状态,执行后进行结构化回写。
输入
必需:
- - projectcard — 包含当前状态、目标和阻碍的完整项目卡片
- latestweeklyreview — 最新的周回顾笔记
- recentdailylogs — 近期每日循环日志列表(最近3-5条)
- openquestions — 上一轮循环未解决的问题
可选:
- - forced_bottleneck — 覆盖自动瓶颈选择
输出模式
today_objective: string # 今日明确目标
selected_agent: string | null # 执行任务的代理或工具
task_input: object # 所选代理的结构化输入
expected_output: string # 成功标准
execution_summary: string # 实际执行情况
findings: string[] # 关键发现
decisions: string[] # 基于发现所做的决策
next_action: string | null # 明日待办事项
projectcardupdates: object # 项目卡片需更新的字段
writeback_payload: object # 项目记忆的结构化记录
safetoproceed: boolean # 状态不完整时为false
硬性规则
- 1. 每次运行只处理一个项目。 不分散注意力。
- 每次运行只处理一个瓶颈。 选择最关键阻碍。
- 每次运行只执行一个主要操作。 一个有意义的步骤,而非冲刺。
- 未读取状态不得执行。 始终先读取projectcard和近期日志。
- 未设定nextaction不得视为成功完成。 每轮循环必须为下一轮提供输入。
循环阶段
阶段1:状态读取
- - 完整读取projectcard
- 读取recentdailylogs
- 记录上一轮循环的openquestions
- 识别当前项目阶段和里程碑
阶段2:瓶颈选择
- - 选择唯一最关键瓶颈
- 若提供了forced_bottleneck则使用之
- 若无阻碍,则推进主要目标
阶段3:任务输入构建
- - 为所选代理构建聚焦的task_input
- 包含:做什么、为何重要、成功标准
- 排除:其他所有内容
阶段4:执行
- - 将任务分派给所选代理
- 等待execution_summary和findings
阶段5:回写
- - 使用projectcardupdates更新projectcard
- 将executionsummary + findings写入每日日志
- 为明日循环填充nextaction
- 设置safeto_proceed = true
失败处理
若状态不完整(缺少project_card、无近期日志、目标不明确):
- - 立即停止运行
- 设置safetoproceed = false
- 请求清理或修复缺失状态
- 不得以部分状态尝试执行
状态机
空闲 → 就绪 → 运行中 → 写入中 → 完成
↓
阻塞(若状态不完整)
尊重状态机。不得从空闲直接跳至运行中。