腾讯 CodeBuddy + Server酱:Agent 长任务完成微信通知
效果:CodeBuddy Craft 或 CLI 任务执行完毕时,自动向微信推送结果通知。
前置条件
- 获取 Server酱 SendKey:登录 sct.ftqq.com,在「SendKey」页面复制(30 秒获取教程)
- 已安装腾讯 CodeBuddy(CLI 或 IDE/插件版)
配置步骤
推荐通过 CLI 的 hooks 机制实现自动通知,也可通过规则文件或对话指令接入。
方式一:CLI hooks(推荐,自动触发)
CLI 的 Stop 事件会在主 agent 完成响应时触发,配置 type 为 command 的 hook 即可执行 curl 推送。
-
将 SendKey 设置为系统环境变量
SERVERCHAN_SENDKEY,不要写进项目文件。 -
编辑配置文件
~/.codebuddy/settings.json(全局生效)或项目目录下的.codebuddy/settings.json,填入以下内容:
{
"hooks": {
"Stop": [
{
"type": "command",
"command": "curl -sS -X POST \"https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send\" -d \"title=CodeBuddy任务完成\" --data-urlencode \"desp=Agent已完成响应\""
}
]
}
}
配置完成后,每次 CLI 的 Agent 完成任务即自动推送微信通知。
方式二:规则/记忆文件约定
在规则或记忆文件中写入通知指令,让 Agent 在完成任务时主动调用 API。
在项目根目录的 CODEBUDDY.md(无此文件则兼容加载 AGENTS.md)、.codebuddy/rules 目录下的文件,或 CLI 全局记忆 ~/.codebuddy/CODEBUDDY.md 中添加:
完成任务后,执行以下命令发送通知:
curl -sS -X POST "https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send" -d "title=任务完成" --data-urlencode "desp=任务结果摘要"
方式三:对话中直接吩咐
在 IDE 的 Craft 模式或 CLI 对话中,直接发送指令:
完成后用 curl 调 Server酱 通知我
Agent 会自行组装并执行 curl 命令。
完整示例
全局开启 CLI hooks 并配置权限规则的完整 ~/.codebuddy/settings.json 示例:
{
"permissions": {
"allow": [
"curl"
]
},
"hooks": {
"Stop": [
{
"type": "command",
"command": "curl -sS -X POST \"https://sctapi.ftqq.com/${SERVERCHAN_SENDKEY}.send\" -d \"title=CodeBuddy任务完成\" --data-urlencode \"desp=Agent已完成响应\""
}
]
}
}
常见问题
消息没收到怎么办?
确认系统环境变量 SERVERCHAN_SENDKEY 已正确设置,且 CLI 具备网络访问权限。也可前往常见问题与排查逐步检查。
免费额度是多少?
免费用户每日可发送 5 条消息。订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。
触发频率超限怎么处理?
Server酱每分钟上限为 50 条。若短时间多次触发可能超限,建议在 hook 或规则指令中合并通知内容,减少请求次数。
IDE 中的 Craft 能用 hooks 吗?
hooks 为 CLI 机制。IDE 中的 Craft 建议通过方式二的规则文件或方式三的对话指令接入。