OpenAI Codex CLI + Server酱:长任务跑完微信收到完成通知
效果:Codex CLI 执行重构、批量修改、测试等耗时任务完成后,自动向你的微信推送一条完成通知。
前置条件
- 一个 Server酱 SendKey(30 秒获取教程)。
- 已安装 OpenAI Codex CLI 并能正常执行对话与 shell 命令(执行确认策略以当前版本设置为准)。
- 如需推送到企业微信、钉钉或飞书群,参见通道说明。
配置步骤
方法一:安装 Server酱 Skill(推荐)
Codex CLI 支持 skills.sh 生态,一条命令安装:
npx skills add easychen/serverchan-skill
将 SendKey 写入环境变量(不要写进项目文件):
echo 'export SERVERCHAN_SENDKEY=你的SENDKEY' >> ~/.zshrc
source ~/.zshrc
使用 bash 则将
~/.zshrc替换为~/.bashrc。
安装完成后,在 Codex CLI 对话中直接说:
任务完成后微信通知我
Skill 会自动识别 SCT/sctp 端点、检查 SERVERCHAN_SENDKEY 是否设置,批量任务合并为一条推送,且不在对话中回显密钥。Skill 仓库:https://github.com/easychen/serverchan-skill
方法二:在 AGENTS.md 中写入通知约定
Codex CLI 使用 AGENTS.md 作为项目规则/上下文文件(具体行为以当前版本为准)。在项目根目录创建或编辑 AGENTS.md,加入以下内容:
## 任务完成通知
任务完成后,执行以下命令通知开发者:
curl -sS -X POST "https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send" -d "title=任务完成" --data-urlencode "desp=结果摘要"
同样需要将 SendKey 写入环境变量:
echo 'export SERVERCHAN_SENDKEY=你的SENDKEY' >> ~/.zshrc
source ~/.zshrc
方法三:对话中直接吩咐
不修改任何文件,在对话中直接对 Codex CLI 说:
完成后用 curl 调 Server酱 通知我
Agent 会执行 shell 命令完成推送。此方式每次对话需重复吩咐。
完整示例
以下段落可直接放入 AGENTS.md:
## 完成通知
当任务(重构、批量修改、测试等)完成后,执行以下命令推送通知:
curl -sS -X POST "https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send" \
-d "title=任务完成" \
--data-urlencode "desp=已完成:简要说明做了什么、修改了哪些文件、是否有报错"
如果 SERVERCHAN_SENDKEY 未设置,跳过通知并在最后提示用户配置。
常见问题
每天能发多少条?
免费额度每天 5 条,每分钟上限 50 条。订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。
消息没收到怎么办?
先检查 SERVERCHAN_SENDKEY 环境变量是否正确设置(test -n "$SERVERCHAN_SENDKEY"),再确认 curl 执行成功。更多排查见常见问题与排查。
频率限制是什么?
每分钟最多 50 条。Skill 已内置批量任务合并逻辑,多个任务完成会合并为一条推送,正常使用不会触发限制。
sctp 开头的 SendKey 怎么用?
Skill 会自动识别 sctp 前缀并切换到对应端点。手动使用请查阅 Server酱 官方文档。