Agenda(日程)
侧栏 → Agenda Profiles(位于 Tasks 分组),再在 Agent 编辑页 → Agenda 中按 Agent 开启。
Agenda 是 sbot 的有状态提醒 / 日程系统。每个日程条目(待办、提醒、日程、周期任务或未来自动化)携带一个或多个触发器;触发器到点时,sbot 把消息投递到该条目绑定的会话或渠道。
与 Heartbeat(固定间隔的提示词循环)不同,Agenda 是 内容驱动 的:条目可以由 Agent 在对话中创建,并在配置 sync 模型后,每轮对话结束自动保持同步。
条目与触发器
一个日程条目包含内容、分类、优先级、可选的截止时间和完成模式。每个触发器按计划触发:
| 触发器类型 | expr 含义 | 示例 |
|---|---|---|
absolute | 单个 ISO 时间,触发一次 | 2026-07-01T09:00 |
interval | 两次触发间隔的毫秒数 | 86400000(每 24 小时) |
cron | 6 字段 cron(秒 分 时 日 月 周) | 0 0 9 * * 1-5(工作日 9 点) |
触发时把 message(缺省回退到条目内容)按其 action 模式投递到绑定的会话 / 渠道。周期触发器可追踪每次的发生记录(occurrence)(pending → done / missed);一次性 absolute 触发器投递失败会短暂重试,超期则放弃。
配置项
Agenda Profile 是存储 + 可选自动同步。侧栏 → Agenda Profiles → 新建:
| 字段 | 说明 |
|---|---|
| 名称 | 该 Profile 的显示名称 |
| Sync 模型 | 可选。每轮对话后从对话自动同步日程的模型(留空则关闭同步) |
| Sync 提示词 | 可选。控制同步行为的提示词文件(缺省为 agenda/sync/default.txt) |
随后在 Agent → Agenda 区块开启 Agenda 并选择 Profile。开启后会注册日程工具;配置 sync 模型后,每轮对话都会从对话内容自动校正日程条目。
在 Agenda Profiles 页面 → 查看 可浏览已存条目、按待办 / 已完成筛选、手动 完成 / 取消,或手动触发某个触发器用于测试。
Agent 工具
开启后,Agent 获得以下工具:
| 工具 | 用途 |
|---|---|
agenda_create | 创建带一个或多个触发器的条目 |
agenda_list | 列出当前条目 |
agenda_update | 修改条目或其触发器 |
agenda_complete | 标记条目完成 |
agenda_cancel | 取消条目 |
agenda_trigger | 触发 / 管理触发器 |
agenda_wiki | 边界场景的工具内参考(occurrence、多触发器、action 选择等) |
Agenda vs Heartbeat vs 调度器
| 需求 | 使用 |
|---|---|
| 有状态的待办 / 提醒 / 日程,从对话自动同步 | Agenda |
| 每隔 N 秒 / 分钟对某 Agent 运行固定提示词 | Heartbeat |
| Agent 自己调用的一次性低层 cron 原语 | 调度器工具 |