功能特性
定时任务
使用 Cron Jobs 创建持久化定时任务。
定时任务 / Cron Jobs
OpenCowork 支持持久化的 Cron 定时任务,基于 node-cron 实现,任务存储在 SQLite 中。
创建定时任务 / Create Cron Job
通过 Agent 对话创建:
每天早上 9 点帮我检查 GitHub 上的新 Issue 并发送摘要Agent 会调用 CronCreate 工具:
{
"name": "GitHub Issue 摘要",
"schedule": "0 9 * * *",
"prompt": "检查 GitHub 上的新 Issue 并生成摘要",
"enabled": true
}Cron 表达式 / Cron Expression
┌─────────── 分钟 (0-59)
│ ┌───────── 小时 (0-23)
│ │ ┌─────── 日 (1-31)
│ │ │ ┌───── 月 (1-12)
│ │ │ │ ┌─── 星期 (0-7, 0和7都是周日)
│ │ │ │ │
* * * * *常用示例:
| 表达式 | 含义 |
|---|---|
0 9 * * * | 每天 9:00 |
0 9 * * 1 | 每周一 9:00 |
*/30 * * * * | 每 30 分钟 |
0 0 1 * * | 每月 1 日 0:00 |
持久化 / Persistence
任务存储在 SQLite 的 cron_jobs 表中:
CREATE TABLE cron_jobs (
id TEXT PRIMARY KEY,
name TEXT NOT NULL,
schedule TEXT NOT NULL,
prompt TEXT NOT NULL,
enabled INTEGER DEFAULT 1,
created_at INTEGER,
last_run INTEGER,
next_run INTEGER
);应用启动时通过 loadPersistedJobs() 自动恢复所有启用的任务。
执行记录 / Run History
每次执行结果记录在 cron_runs 表中,可在 UI 的 Cron 标签页查看历史记录。
管理任务 / Manage Jobs
通过 UI 的 Cron 标签页可以:
- 查看所有定时任务
- 启用/禁用任务
- 手动触发执行
- 查看执行历史
- 删除任务