AMP(Sourcegraph)+ Server酱:长任务完成后微信通知你
效果:AMP 跑完编码、重构、批处理等长任务时,自动向你的微信推送完成通知。
前置条件
- Server酱 SendKey:登录 sct.ftqq.com,在「SendKey」页面复制(30 秒获取教程)。
- AMP 运行环境:主推方案通过 skills.sh 安装 Skill,AMP 在官方支持列表内;备选方案需 AMP 具备执行终端命令的能力。
- 环境变量:将 SendKey 写入系统环境变量
SERVERCHAN_SENDKEY(写入~/.zshrc或~/.bashrc),不要写进项目文件。
配置步骤
方式一:安装官方 Server酱 Skill(推荐)
在终端执行:
npx skills add easychen/serverchan-skill
装好后,直接对 AMP 说:
任务完成后微信通知我
Skill 内置约定:
- 自动识别
SCT与sctp端点 - 自检
SERVERCHAN_SENDKEY环境变量是否存在 - 绝不在对话中回显密钥
- 批量任务合并为一条推送,避免刷屏
仓库地址:https://github.com/easychen/serverchan-skill
方式二:对话中直接吩咐(不装 Skill)
在 AMP 对话中直接说"完成后执行 curl 通知我",让 AMP 执行以下命令:
curl -sS -X POST "https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send" \
-d "title=任务完成" \
--data-urlencode "desp=一句话结果"
首次执行终端命令一般需用户确认。
方式三:写入项目规则文件
把上述通知约定写入 AMP 的项目规则/上下文文件(各工具文件名不同,以官方文档为准),让 AMP 每次长任务结束自动调用。SendKey 仍只放系统环境变量,不写进项目文件。
常见问题
每天能发多少条?
免费额度每天 5 条,每分钟上限 50 条;订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。
消息没收到怎么办?
先确认环境变量已正确设置(如执行 test -n "$SERVERCHAN_SENDKEY" 检查返回状态),再检查 API 返回 JSON 的 code 是否为 0;更多排查见常见问题与排查。
频率有限制吗?
有,每分钟上限 50 条。Skill 已内置批量任务合并为一条推送的逻辑来规避短时间密集触发。
SendKey 要写进项目文件吗?
不要。SendKey 只放系统环境变量 SERVERCHAN_SENDKEY(~/.zshrc 或 ~/.bashrc),避免随项目仓库泄露。如需推送到企业微信/钉钉/飞书群等通道,参见通道说明。