文档

自动化任务

无需每次人工触发即可启动的工作,可按照预设时间或事件触发,并可在对应位置查看相关记录。

每次无需人工触发,自动化流程便会自动启动。它可按预设时间表运行,也可在特定事件发生时启动:比如pull request被打开、工单被提交、检查或部署失败。

所有自动化流程都列在Factory的Automations栏目下,注明其触发条件和执行操作。可在新任务中创建自动化流程:选择Automation选项,然后自行设定运行时间、执行动作等内容。

  • 定时执行时间
  • 事件自动化某事件发生时

普通任务

规格说明、计划、构建、验证、评审。它会占用一个代理槽位;请为其设定较低的优先级。

P2P3

一份 pull request

它无法自行合并或提交到您的基础分支。

由您审批

自动化仅在于触发方式不同。它开启的仍是常规路径上的普通任务,因此会占用实际产能,最终生成您可审批的pull request。

两种触发器类型

触发器运行记录示例
按时间表触发每隔几小时,或每天、每周、每月触发一次每小时向Sentry查询新错误,并为每条错误创建对应工单。
特定事件触发当GitHub或Coroid发送对应事件时触发。当某个任务失败时,查明原因并创建修复该问题的工单。

如果触发器确实与时间相关,或者监控对象位于无法发送Coroid事件的外部系统(如Sentry或Jira),则应使用时间表触发方式。此时需通过您在设置中配置的连接来调用该系统。MCP服务器并针对查询结果创建相应工作项。详见日程安排。

如果Coroid能在事件发生时即时通知,则应使用事件触发方式。这种方式比持续轮询的时间表触发更不会做无用功。

在新任务中可选择的事件类型

来自GitHub,需要安装GitHub应用:

  • pull request被打开、更新或合并时
  • 工单被创建时
  • 评论中提及Coroid时;仅当评论作者对该代码库有写入权限时才会计入触发条件。

来自Coroid:

  • 任务、计划、质量检查、部署或部署健康检查失败时
  • 部署成功时
  • 版本回滚时

您自有系统触发的事件需要绑定服务账号,Slack、Telegram和Jira事件则需设置过滤规则:可在自动化流程编辑器中修改其触发条件。详见钩子。

执行操作

智能体将遵循您的指令。它能读取项目代码并创建工单,但不会直接修改任何内容。它创建的工单会与其他任务一样,经历规格制定、规划、构建、验证和审核流程,最终由您批准并入pull request。

按时间表触发的自动化流程也可用于针对测试环境运行浏览器测试。

Coroid为您生成的常驻自动化流程属于Quality Control中的开关,并非在新任务中创建:

  • 审核拉取请求。Quality Control的 拉取请求群组会在每个pull request上运行项目的检查(即Coroid Quality Control),并添加Coroid审核评论。
  • 将消息和工单转化为请求。Slack和Telegram消息、提及Coroid的GitHub评论以及新的Jira工单,只要在Quality Control的“开工前”选项中开启对应源,就会转化为请求。详见 工单跟踪系统适用于Jira。
  • 跟进故障情况。失败的任务、部署失败以及版本回滚情况,在下方均有对应开关 出现故障时。
  • 清理现有技术债务。项目的 每周技术债务清理是其Anti-slop行上的开关。

由开关管理的自动化流程,其相关信息会显示在Factory页面上,并附带指向该开关的链接。您可在该处暂停或关闭它;修改其指令后,经您确认即可变为您自定义的自动化流程。

此前创建的用于提交请求的自动化流程仍会继续运行,并列在Automations栏目下。而负责审核拉取请求的自动化流程,在Quality Control接管Coroid审核功能后便会被暂停。

新任务的模板

新任务曾提供模板功能。如今模板的相关功能已转移至上述开关,其中两个用于向Slack发送消息的模板可由您自定义频道名称。它们通过您在设置-连接中配置的MCP服务器来发送消息:时间表触发的自动化流程可使用该服务器,事件触发的自动化流程在Factory的编辑器中允许使用MCP工具后也可调用它。基于模板创建的自动化流程仍会按原样运行。旧的模板链接会跳转至替代它的开关页面,或直接进入新任务页面。

查看自动化流程运行情况

在Factory中打开某自动化流程,即可查看其每次运行的时间、消耗资源、创建的工单以及运行中断的原因。拥有者和管理员可从该处暂停、测试、编辑或删除它。组织内的所有人员均可查看自动化流程及其运行记录。

保持自动化流程的高效性

自动化流程创建的工单会与其他任务共享智能体资源。频繁触发的自动化流程可能会悄悄占满您的可用资源。

  1. 应将其优先级设为低于人工提交的任务是 P2或P3。
  2. 细化触发器条件。当代码库处于高活跃状态时,“某项检查失败”的提示会频繁触发;而“该检查在基准分支上失败”的提示则意味着确实出现了问题。
  3. 看看它生成的结果。如果自动化流程创建了二十个任务,而你只合并了其中两个,那它产生的只是无用干扰和额外开销,而非实际价值。

衡量自动化流程成效的可靠标准是它创建的任务中被合并的比例,而非其触发频率。

Sentinel

早期版本的文档中提到了Sentinel,它是一种用于监测特定条件的工具。它并非独立的功能模块;条件可以是自动化流程可响应的事件,也可以是定时任务会检测的内容。