Install
openclaw skills install ci-package-deploy-notify仅当用户明确要求触发 Jenkins 打包/部署,并在成功后发送飞书部署提醒时使用。适用于用户明确点名要打包某些服务、选择环境或分支、等待构建完成后通知部署的场景。模型只负责决定参数,实际执行必须调用本 skill 自带脚本。
openclaw skills install ci-package-deploy-notify把“触发打包/部署 + 成功后发飞书通知”的流程交给固定脚本处理;不要让模型自己临时拼 Jenkins 或飞书请求。
只有当用户明确要求“现在触发打包 / 触发部署 / 发部署提醒”时才使用。
当用户表达这些意图时使用:
以下情况不要触发本 skill:
模型只做这些事:
changescicd,即 复用 CI job + AUTO_CD=trueopen_id(通常就是会话元数据里的 sender_id / open_id),拿不到时才回退 user_id 或配置里的默认发起人模型不要:
脚本路径:scripts/ci_package_deploy_notify.py
基础调用:
python3 <skill_dir>/scripts/ci_package_deploy_notify.py \
--repos cloud-mall cloud-device \
--branch test \
--changes "修复支付回调" \
--initiator-id "ou_xxx" \
--initiator-name "张三"
触发 CI/CD:
python3 <skill_dir>/scripts/ci_package_deploy_notify.py \
--repos cloud-mall \
--branch demo \
--job-type cd \
--changes "联调完成" \
--initiator-id "ou_xxx" \
--initiator-name "张三"
说明:
job-type=ci 时:只触发 CI,成功后发送 打包通知 卡片,语义是“已经打包完成,请按需部署”job-type=cd 时:默认复用 CI job,并通过 AUTO_CD=true 继续部署,成功后发送 部署通知 卡片AUTO_CD=true 继续部署PROJECTS 等参数选择服务指定 @ 成员:
python3 <skill_dir>/scripts/ci_package_deploy_notify.py \
--repos cloud-mall cloud-device \
--branch test \
--changes "发布完成" \
--at Felix,Zack \
--initiator-id "ou_xxx" \
--initiator-name "张三"
--repos:直接使用 config.json 里的仓库键名--branch:优先由用户明确指定;当前 skill 只支持 dev / test / demo / sit,不支持 prod / master--job-type:默认 ci
cicdAUTO_CD=true 这条链路;只有用户明确要求“单独部署”时,才切到独立 CD job。不要让模型自己拼 job 参数--changes:必须提供;若用户没说,先追问一次--at:可选,多个名字用逗号分隔;脚本会优先精确匹配,再做包含匹配和模糊匹配,尽量容忍拼写不准,但如果同时匹配到多个候选会直接报错要求明确--initiator-id:默认传当前消息发送者的 open_id;在 Feishu 会话里,优先取会话元数据中的 sender_id / open_id,只有拿不到时才退回 user_id--initiator-name:可选;如果会话里拿不到可读姓名,可以不传,不要为了补名字阻塞执行--initiator-id,脚本才会回退到配置中的默认发起人;因此正常调用时应始终透传当前真实发起人的 open_idrepos / branch / changes 中任一关键参数,先追问,不要半猜测执行脚本会按顺序执行:
成功时重点汇报:
失败时直接汇报失败服务和原因。
如果用户给了 prod / master,应直接报“当前 skill 不支持该环境”。
config.jsonSKILL.md 更新后,如需让其他有权限的 agent 也拿到同一版本,使用 clawhub/技能同步流程进行发布或同步,不要只改当前工作区副本后就默认其他 agent 已生效。