Skip to content

27 · 自动化与 CI/CD:让 Codex 在你不在的时候自己干活

自动化听起来很高级。 其实就是把重复检查、定时任务、PR 审查交给固定流程。

但自动化越强,越要小心权限和密钥。

自动化两条路

先从只读自动化开始

刚开始不要急着让 Codex 自动改东西。 先让它做这些低风险任务:

  1. 每天检查项目有没有报错。
  2. 每周总结一次更新内容。
  3. 发现异常时提醒你,而不是直接修。

等你确认它判断稳定,再把“自动修复”放进去。

第一次练习:只做提醒,不做修改

自动化的第一步不是“自动修”。 而是“自动发现并提醒”:

text
请帮我设计一个只读自动化任务。
目标是每天检查项目是否能构建。
要求:
1. 只检查,不修改文件
2. 如果失败,只提醒我
3. 不提交代码,不推送,不部署
4. 告诉我需要哪些权限

如果只读提醒都不稳定,就不要升级成自动修复。

01 先分清:自动化有两条路,别一上来就混

两条路:

  1. GitHub Actions / CI:项目代码变化后自动跑。
  2. Codex Automations:在 Codex 里挂后台或定时任务。

前者偏工程流水线。 后者偏个人工作提醒和后台任务。

02 GitHub Action 是什么:把 codex exec 装进流水线的“即装即用包”

GitHub Action 可以在 PR 或提交时自动跑任务。

比如:

  • 自动审查 PR。
  • 自动检查构建。
  • 自动生成报告。

小白先不要上来写复杂 YAML。 先读懂最小 workflow。

03 最小 workflow:拆开官方那份“审 PR”的 YAML

一个 workflow 通常包含:

  1. 什么时候触发。
  2. 跑在哪个环境。
  3. 需要哪些权限。
  4. 执行哪些步骤。
  5. 用哪些 secrets。

提示词:

text
请用小白能懂的话解释这个 GitHub Actions workflow。
逐段说明触发条件、权限、步骤和风险。
不要修改文件。

04 调它怎么跑:那几个最该懂的 action 输入

不要机械复制配置。

你要知道这些输入控制什么:

  • 任务目标。
  • 模型或运行方式。
  • 权限范围。
  • 是否写评论或改文件。

看不懂就问:

text
请列出这个 action 里最关键的输入项。
告诉我每一项改了会影响什么。

05 密钥与权限:CI 自动化里最不能马虎的一节

第一条:key 存进 GitHub Secrets,绝不硬编码

密钥不要写进 YAML。 要放到 GitHub Secrets。

第二条:别把 key 设成 job 级环境变量

范围越大,泄露风险越高。 能只给某一步,就不要给整个 job。

第三条:管住 Codex 在 runner 上的权限

CI 上的权限要最小化。 不要让它随便写仓库、发包、部署。

06 另一条路:桌面 App 的 Automations,挂个定时后台任务

它能干嘛:三类真实场景

  1. 每天检查网站是否能构建。
  2. 定时整理待办。
  3. 定期生成项目简报。

两种类型:独立任务 vs 线程自动化

独立任务适合固定提醒。 线程自动化适合跟当前项目持续相关的任务。

跑在本机还是 worktree

涉及项目文件时,优先考虑隔离环境。

怎么创建、权限怎么算

创建前先问权限:

text
这个 automation 会什么时候运行?
会读写哪些文件?
会不会联网或修改仓库?

07 动手:把一份“每日简报”自动化亲手挂起来

练习建议从低风险任务开始:

text
请帮我设计一个每日项目简报 automation。
要求:
1. 只读取项目状态
2. 不修改文件
3. 不联网发送消息
4. 输出今日待处理事项

08 小结

自动化适合重复、低风险、规则清楚的事。

小白先记住:

  • 密钥放 Secrets。
  • 权限越小越好。
  • 自动化先只读,再考虑写入。

真实项目:从一次任务到每日简报智能体

想看一套包含公开来源、筛选规则、失败记录和人工审核的完整流程,可以继续阅读:

每天自动收集信息,生成一份可以核对的行业简报