Codeg Automations:把配置好的任务保存为定时自动化,让AI Agent按cron无人值守运行
【免费下载链接】codegCollaborative multi-agent AI coding workspace: aggregate sessions from Claude Code, Codex, OpenCode, Pi, Grok Build, etc. Desktop app, self-hosted server, or Docker.项目地址: https://gitcode.com/gh_mirrors/co/codeg
Codeg是一个协作式多智能体 AI 编程工作区,可以聚合 Claude Code、Codex、OpenCode、Pi、Grok Build 等多种编码智能体会话。其中的Automations(自动化)功能,允许你把一个配置好的任务保存为定时自动化——选好 AI Agent、写好提示词、设定 cron 表达式后,它就会按计划无人值守地自动启动会话,完成代码审查、依赖升级、测试补全等重复工作。
什么是 Codeg Automations?
用一句话说:把你在对话框里调好的「Agent + 提示词 + 模型配置」整个打包存起来,交给调度器按 cron 定时或手动触发执行。
它和手动开一个新会话的区别在于:
- 无人值守:到点自动执行,不依赖你在场,桌面端或自托管服务端都可以驱动;
- 可重复:提示词、Agent、模式与配置选项全部快照保存,每次触发行为一致;
- 可追溯:每次运行都会生成一条记录,可查看状态、时长,甚至直接跳转到本次运行产生的会话;
- 可隔离:默认每次运行为你新建一个独立的 git worktree,不会污染你正在开发的主工作区。
入口位于工作台侧栏的「自动化」页面,核心实现见 automations-page.tsx,表单编辑器见 automation-editor.tsx。
三步创建你的第一个 cron 定时自动化
点击「新建自动化」后,只需填完以下四个区块并保存。
第 1 步:命名、选 Agent、写任务提示词
- 名称:建议用能一眼看懂用途的名字,官方示例就是「每晚 PR 审查」;
- Agent:从 Agent 选择器里挑选要执行任务的智能体(Claude Code、Codex 等),并可在内联配置栏中固定模式(mode)与选项;
- 提示词:使用和日常对话完全相同的富文本输入框,支持
@引用文件,你甚至可以 @ 具体文件、提交或会话来补充上下文。
第 2 步:选择运行位置与 worktree 隔离
指定任务在哪个项目文件夹中执行,然后决定隔离方式:
| 隔离方式 | 行为 | 适合场景 |
|---|---|---|
| 每次运行新建 worktree(默认,推荐) | 每次运行自动创建独立分支automation/{id}/run-{n}与独立目录 | 自动化会改代码,不想干扰你的工作区 |
| 共享根工作区 | 直接在主工作区运行,可固定指定分支 | 需要读取你当前分支的上下文 |
若选择共享工作区并指定分支,Codeg 会检查主工作区是否干净;有未提交改动时会明确报错提醒你,而不是带着脏状态切换分支——这个防护逻辑可以在 engine.rs 的resolve_cwd中看到。
第 3 步:设置 cron 计划,带下次运行预览
触发方式二选一:按计划(cron)或仅手动。
选择「按计划」后,你会看到:
- 三个常用预设:
每小时、每天 9 点、工作日 9 点; - 可手输 cron 表达式,旁边有实时换算的**「下次运行」时间预览**和自动检测的时区(时区取自本机,只读展示);
- 一个可视化计划生成器:不想记 cron 语法时,点一下魔法棒图标,用「每 N 分钟 / 每小时 / 每天 / 工作日 / 每周 / 每月」这类下拉选项拼装计划,见 cron-builder-dialog.tsx。
预览时间由后端调度器使用的同一套求值器计算,所以你看到的「下次运行」与实际触发时刻不会漂移。cron 到人类语言的换算逻辑在 cron-humanize.ts。
保存后,调度器每 30 秒轮询一次到期任务,分钟级精度,到点即触发。
7 个内置自动化模板:一键起步
第一次进入自动化页面时,Codeg 会展示一个模板画廊,内置 7 个开箱即用的定时任务配方,点一下即可预填提示词和计划,再微调后保存:
| 模板 | 默认触发 | 它替你做什么 |
|---|---|---|
| 📋 代码审查 | 工作日 9 点 | 审查未提交改动或最近提交,按严重级别输出报告 |
| 📦 依赖更新 | 每周一 9 点 | 审计依赖漏洞,安全升级并跑测试验证 |
| 🧪 测试覆盖 | 每周一 9 点 | 找出缺测试的核心路径,补写有意义的用例 |
| ✅ TODO 清理 | 手动 | 汇总 TODO/FIXME/HACK,评估优先级并给建议 |
| 🔧 CI 排查 | 手动 | 复现最近的构建失败,定位根因并提出修复 |
| 🏷️ 发布说明 | 手动 | 把上一个 tag 以来的变更整理成 Markdown 发布说明 |
| 🛡️ 安全审计 | 每周一 9 点 | 排查注入、鉴权、密钥处理等安全漏洞并出报告 |
模板定义全部集中在 automation-templates.ts,提示词均为可编辑的初始值,你可以按自己的项目自由改写。
任务入队:更温和的无人值守方式
除了「启动会话」直接让 Agent 跑起来,Automations 还支持**任务入队(enqueue task)**动作:到点后不直接执行,而是把配置好的任务作为一张待办卡片投递到项目任务看板,等你有空时再审查和放行。
它适合那些你希望「自动收集、人工把关」的场景,比如每天自动收集一次代码问题清单。任务看板的运行效果如下图所示:
运行记录与可靠性:定时任务不会"跑飞"
调度引擎(src-tauri/src/automation/engine.rs)为无人值守场景做了几层保险:
- 重叠保护:同一个自动化上一次还没跑完时,新触发会记为「跳过」,绝不并发跑两份;
- 状态可查:每次运行落库为一条记录,状态包括运行中 / 成功 / 失败 / 已取消 / 跳过,失败次数还会在侧栏显示角标;
- 兜底对账:事件丢失或进程重启时,后台对账循环会根据会话终态或 180 分钟上限把卡住的运行结算为失败,不会留下永远「运行中」的僵尸记录;
- 记录自动清理:运行历史保留 30 天,定期自动剪枝。
如何开始使用 Codeg 定时自动化
- 打开工作台侧栏的「自动化」页面;
- 从 7 个内置模板中选一个,或新建空白自动化;
- 填好名称、Agent、提示词,确认运行文件夹与隔离方式;
- 在计划区选择预设或打开计划生成器,确认「下次运行」时间无误;
- 保存,等待下一次自动触发——然后去忙别的。
更多细节可查看界面源码 src/components/automations/ 与调度引擎 src-tauri/src/automation/。让 AI Agent 在夜里替你值班,早晨醒来时收获一份现成的代码审查报告——这就是 Codeg Automations 想带给你的开发体验。
【免费下载链接】codegCollaborative multi-agent AI coding workspace: aggregate sessions from Claude Code, Codex, OpenCode, Pi, Grok Build, etc. Desktop app, self-hosted server, or Docker.项目地址: https://gitcode.com/gh_mirrors/co/codeg
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考