schedules/ 调度目录
schedules/ 为 AgentDir 声明周期性 turn。每个 Markdown 文件是一条 schedule:frontmatter 描述 cron 元数据,正文是每次触发时发送给 Agent 的 prompt。
Schedule 文件
5 字段 cron 会被归一化为 6 字段,前面补 0 秒。时间按 UTC 评估。
独立 Session
每条 schedule 使用稳定 session id:schedule:<name>。同一条 schedule 的多次触发会累积上下文;不同 schedule 彼此隔离。每个 session 都会注入 AgentDir 的 instructions.md、agent.acl、skills/ 和 tools/。
这意味着日报和周报可以共享同一个 AgentDir,但不共享会话历史。需要共享状态时,应使用外部存储、A3S Memory 或显式工具。
Serve 守护进程
serve_agent_dir 会运行所有 enabled schedules,直到 cancellation token 触发。优雅取消会让进行中的 turn 完成当前迭代后停止。
恢复与限制
传入 SessionStore 后,守护进程重启会恢复已有 schedule:<name> session 的历史上下文。当前目录里的 instructions.md、skills/ 和 tools/ 会在每次启动时重新应用。
需要注意:
- 恢复只恢复对话历史,不追补停机期间错过的触发。
- store 目录是信任边界,它决定恢复后的历史和 workspace。
- 无效 cron 会在构建调度器时失败,并指出出问题的 schedule。
- 没有 enabled schedules 的 AgentDir 会立即返回。