Project Workflow Scheduler
Turn a multi-step project into a supervised sequence of one-time cron jobs.
Use this pattern
- 1. Evaluate whether the work is cron-friendly.
- Break it into bounded blocks.
- Classify each block.
- Schedule only the safe blocks.
- Document what was scheduled and why.
- Reassess after results before scheduling the next risky phase unless the user already approved the full sequence.
Use the cron tool to propose or create one-time isolated agentTurn jobs. Bias toward fewer, better, well-scoped jobs.
Decide if a block is cron-friendly
Prefer blocks that are:
- - clearly scoped
- auditable
- low-risk or reversible
- likely completable in one run
- rich enough in context that a future isolated run can succeed without the parent session
Good candidates:
- - project documentation cleanup
- page or site audits
- asset curation
- follow-up checks
- support-ticket follow-up prep
- prep for the next project phase
- safe internal analysis work
- low-risk build prep tasks
- recap, QA, and checkpoint passes
Do not schedule:
- - live login flows
- interactive browser approval flows
- customer-facing sends without explicit approval
- destructive actions
- infra or config changes without explicit approval
- purchases or commitments
- vague "keep working until done" missions
- work that depends on unstable browser state or fresh credential prompts
- work that will likely require repeated subjective decisions from the user
Classify every block
Use exactly these buckets:
- - Safe to schedule
- Needs user approval first
- Blocked by missing access
- Should never be scheduled unattended
If a block is not clearly in the first bucket, do not schedule it.
Break work into blocks
Keep blocks small enough to finish in one run. Prefer fewer, better blocks over many tiny ones.
For each block define:
- - Block name
- Objective
- Inputs/context to include
- Preconditions
- Earliest safe run time
- Expected output
- Announce results or not
- Whether a follow-up block should be scheduled later
Split large work by:
- - phase
- dependency
- risk boundary
- handoff point
- natural checkpoint
Examples of clean splits:
- - audit -> recap -> implementation prep
- cleanup -> QA -> follow-up
- research -> asset prep -> doc update
- migration audit -> staged change block -> verification block
Avoid stuffing multiple fragile decisions into one run.
Handle dependencies
Mark each block as one of:
- - independent
- depends on earlier block output
- depends on user approval
- depends on missing access
If later work depends on likely outputs from earlier runs, write the later block so it explicitly references the expected artifacts or decisions to look for.
Do not pre-schedule risky downstream blocks unless the user already approved that sequence.
Write strong cron payloads
Assume isolated agentTurn runs.
Every scheduled block prompt should include:
- - the project name and current phase
- the exact scope of this block
- what already happened
- what inputs/files/systems to inspect
- what to produce by the end of the run
- what not to do
- how to report blockers
- whether to recommend the next block instead of executing it
Good payload traits:
- - bounded
- concrete
- context-rich
- explicit about success criteria
- explicit about forbidden actions
Good prompt shape:
CODEBLOCK0
Avoid autonomy theater
Do not present scheduled work as autonomous ownership.
The point is to create supervised, accountable work blocks that:
- - run later
- stay bounded
- leave an audit trail
- make reassessment easy
Prefer:
- - checkpoint jobs
- recap jobs
- verification jobs
- prep jobs
- follow-up jobs
Not:
- - giant open-ended production runs
- fuzzy missions with no stopping rule
- chains that assume too much hidden context
Scheduling guidance
Prefer one-time jobs over recurring jobs for project orchestration.
Common patterns:
- - same-night audit, prep, or cleanup block
- next-morning recap block
- next-day follow-up block after review
- staged overnight sequence where each later block is safe only if earlier output is likely predictable
Bias toward manual reassessment before scheduling the next risky phase.
Documentation guidance
When orchestration materially changes project state, recommend updating project docs so future sessions know:
- - what was scheduled
- why it was scheduled
- dependencies and assumptions
- what results to look for next
If useful, suggest a short handoff note or README update.
Output format
Produce:
- 1. Short orchestration plan
- Block-by-block schedule proposal
- Recommended cron payload text for each scheduled block
- Assumptions, dependencies, and risks
- Doc update suggestions if orchestration materially changes project state
If the user has not yet approved scheduling, stop at the proposal. If the user already approved scheduling, create only the safe blocks and clearly note what still requires reassessment or approval.
Example set
Read references/examples.md when you need concrete patterns for:
- - website migration overnight blocks
- CRM cleanup
- support follow-up chain
- audit + recap + next-step sequence
- multi-phase projects where only early phases are safe to pre-schedule
项目工作流调度器
将多步骤项目转化为受监督的一次性定时任务序列。
使用此模式
- 1. 评估工作是否适合定时任务。
- 将其分解为有边界的模块。
- 对每个模块进行分类。
- 仅调度安全的模块。
- 记录已调度内容及其原因。
- 在调度下一个风险阶段前,根据结果重新评估,除非用户已批准完整序列。
使用定时任务工具提议或创建一次性独立的agentTurn任务。倾向于更少、更优、范围更清晰的任务。
判断模块是否适合定时任务
优先选择以下模块:
- - 范围清晰
- 可审计
- 低风险或可逆
- 可能在一次运行中完成
- 上下文足够丰富,未来独立运行无需父会话即可成功
良好候选:
- - 项目文档清理
- 页面或站点审计
- 资源整理
- 后续检查
- 支持工单后续准备
- 下一项目阶段准备
- 安全的内部分析工作
- 低风险的构建准备任务
- 总结、质量检查和检查点通过
不要调度:
- - 实时登录流程
- 交互式浏览器审批流程
- 未经明确批准的面向客户发送
- 破坏性操作
- 未经明确批准的基础设施或配置变更
- 购买或承诺
- 模糊的持续工作直到完成任务
- 依赖不稳定浏览器状态或新凭据提示的工作
- 可能需要用户反复做出主观决策的工作
对每个模块进行分类
精确使用以下分类:
- - 安全可调度
- 需用户先批准
- 因缺少访问权限受阻
- 绝不应无人值守调度
如果模块不明确属于第一类,则不要调度。
将工作分解为模块
保持模块足够小,可在一次运行中完成。优先选择更少、更优的模块,而非大量小模块。
为每个模块定义:
- - 模块名称
- 目标
- 需包含的输入/上下文
- 前置条件
- 最早安全运行时间
- 预期输出
- 是否公布结果
- 是否应稍后调度后续模块
按以下方式拆分大型工作:
清晰拆分的示例:
- - 审计 -> 总结 -> 实施准备
- 清理 -> 质量检查 -> 后续跟进
- 研究 -> 资源准备 -> 文档更新
- 迁移审计 -> 分阶段变更模块 -> 验证模块
避免在一次运行中塞入多个脆弱决策。
处理依赖关系
将每个模块标记为以下之一:
- - 独立
- 依赖早期模块输出
- 依赖用户批准
- 依赖缺失的访问权限
如果后续工作依赖早期运行的预期输出,编写后续模块时明确引用应查找的预期工件或决策。
除非用户已批准该序列,否则不要预先调度有风险的下游模块。
编写强健的定时任务负载
假设为独立的agentTurn运行。
每个调度的模块提示应包含:
- - 项目名称和当前阶段
- 此模块的确切范围
- 已发生的情况
- 需检查的输入/文件/系统
- 运行结束时应产出的内容
- 不应执行的操作
- 如何报告阻碍因素
- 是否推荐下一个模块而非执行它
良好负载特征:
良好提示格式:
text
项目:<名称>
模块:<名称>
目标:<一个清晰的结果>
上下文:
- - <重要的先前状态>
- <已知的文件、文件夹、系统、链接>
- <安全的假设>
执行:
不执行:
- - <不安全或超出范围的操作>
- <面向客户或破坏性工作>
预期输出:
- - <可交付成果>
- <简短总结>
- <如适用,推荐下一个模块>
如果受阻:
避免自主性假象
不要将调度的工作呈现为自主所有权。
目的是创建受监督、可问责的工作模块,这些模块:
优先选择:
不要:
- - 大型开放式生产运行
- 无停止规则的模糊任务
- 假设过多隐藏上下文的链条
调度指导
项目编排中优先选择一次性任务而非重复任务。
常见模式:
- - 当晚审计、准备或清理模块
- 次日早晨总结模块
- 审查后次日后续模块
- 分阶段夜间序列,其中每个后续模块仅在早期输出可预测时才安全
在调度下一个风险阶段前,倾向于手动重新评估。
文档指导
当编排实质性改变项目状态时,建议更新项目文档,以便未来会话了解:
- - 已调度内容
- 调度原因
- 依赖关系和假设
- 下一步应查找的结果
如有用,建议添加简短的交接说明或README更新。
输出格式
产出:
- 1. 简短编排计划
- 逐模块调度方案
- 每个调度模块的推荐定时任务负载文本
- 假设、依赖关系和风险
- 如编排实质性改变项目状态,提供文档更新建议
如果用户尚未批准调度,停留在方案阶段。如果用户已批准调度,仅创建安全模块,并明确注明仍需重新评估或批准的内容。
示例集
当需要以下具体模式时,阅读references/examples.md:
- - 网站迁移夜间模块
- CRM清理
- 支持后续链
- 审计+总结+下一步序列
- 多阶段项目,仅早期阶段可安全预调度