Qoder CN 中文文档 下载 App

QoderWake 自主工作——定时、事件、API 三种触发方式

什么时候用自主工作

自主工作 = Waker 不需要你手动发起,自动执行。三种常见触发:

触发方式说明典型场景
定时(Schedule)按日历计划自动运行每日日报、每周巡检、每小时数据同步
事件(Event)外部事件触发PR 提交 → 自动审查;Webhook 通知 → 自动处理
API 调用通过 API 触发其他系统通过 API 让 Waker 干活

稳定化路径

创建自主工作之前,必须先走完稳定化流程——不要一开始就把还没验证的任务放进无人值守自动化:

对话验证 → 流程固化 → 自动触发
阶段做什么退出条件
对话验证在 QoderWake 里手动发起 Waker 任务输入/输出/失败处理都正确
流程固化稳定后创建自主工作或 WakerFlow定时/事件触发的任务能稳定跑通
自动触发配置 Schedule / Event / API连续运行 N 次无异常

定时触发

配置步骤

  1. 进入 Waker 详情页 → 「工作」标签 → 「自主工作」区域;
  2. 点击「新建自主工作」,选择 定时;
  3. 设置:

示例

「每周一上午 9:00」触发「Web 质量工程师」Waker,让它:

检查自家网站首页和 10 个核心页面的可访问性(HTTP 200);
跑 Lighthouse 性能测试,记录得分;
生成一份质量报告并保存到 /reports/weekly-web-quality-YYYY-MM-DD.md

事件触发

原理

外部系统通过 Webhook / Event 通知 QoderWake,QoderWake 根据事件类型路由到对应的 Waker。

示例:GitHub PR 自动审查

  1. 在 QoderWake 创建一个「PR 审查 Waker」;
  2. 在 GitHub 仓库设置 Webhook,PR 提交事件推送到 QoderWake 的事件入口;
  3. QoderWake 收到事件 → 路由到审查 Waker → 自动跑 lint、看改动、生成评论 → 推送到 PR。

常见事件源

事件源可用事件
GitHubpush、pull_request、issue、workflow_run
GitLabpush、merge_request
钉钉 / 飞书@ 消息、机器人 webhook
内部系统自定义 API webhook

API 触发

QoderWake 提供 API,外部系统可以主动发起 Waker 任务:

POST /api/waker/{id}/task
{
  "instruction": "查询过去 7 天的订单量,生成统计",
  "context": { ... }
}

适用场景:

自主工作的状态管理

在任务看板里可以看到每个自主工作的历史运行记录:

状态含义
待运行已配置但还没到触发时间
运行中正在执行
成功执行完成,产物已生成
失败执行出错,有错误日志可查
已暂停手动暂停,不再触发
已停止超过最大运行次数 / 截止日期

失败的自主工作可以 手动重跑 或 配置自动重试。

稳定性注意

注意事项原因
设置最大运行次数防止无限循环跑崩
设置超时时间防止卡住的 Waker 一直占资源
配置告警多次失败时通知你
不要把还在开发的 Waker 放进自主工作可能产生大量垃圾产物或错误数据
每次版本升级后重新回归测试环境变化可能破坏稳定

下一步