Workflows(工作流)

April 4, 2026 · View on GitHub

这是什么?

工作流是 Agent 的行为模板。如果说工单是"做什么",工作流就是"怎么做"。它定义了 Agent 的角色、执行指令、触发条件和生命周期钩子。你可以把它理解为给 AI Agent 的一份"岗位职责说明书"。

基本概念

概念说明
Harness(指令文档)Markdown 格式的执行指令,告诉 Agent 该扮演什么角色、如何完成任务
角色类型(Role)工作流的角色定位,如"后端工程师"、"QA 测试"、"部署"
状态绑定配置哪些工单状态会触发 Agent 自动领取
技能绑定给工作流附加可复用的 Skills
钩子(Hooks)生命周期事件处理器(领取时、完成时、失败时)
版本工作流支持版本控制,每次修改产生新版本

常用操作

创建工作流

  1. 进入 Workflows 页面
  2. 点击"新建工作流"
  3. 填写名称和角色类型
  4. 编写 Harness 文档

编写 Harness

Harness 是工作流的核心。它使用 Markdown 格式编写,支持模板变量自动替换:

# 角色
你是一名后端工程师,负责处理 API 相关的开发任务。

# 任务
请根据工单描述完成以下工作:
- 工单标题:{{ ticket.title }}
- 工单描述:{{ ticket.description }}

# 要求
- 代码必须通过所有现有测试
- 新增功能需要编写对应的单元测试
- 提交 PR 前需要运行 lint 检查

Harness 编写建议

做法效果
明确角色定位Agent 更好地理解自己的职责边界
提供具体步骤减少 Agent 的自由发挥空间,提高一致性
设置验收标准Agent 知道什么时候算"完成"
使用模板变量自动注入工单上下文信息

配置状态绑定

  • 领取状态(Pickup Status):当工单进入这些状态时,Agent 会自动领取
  • 完成状态(Finish Status):Agent 完成后将工单移到这些状态

这是自动化的关键——状态绑定让 Agent 知道何时开始工作、工作完成后做什么。

绑定技能

从已有 Skills 中选择需要的技能附加到工作流。Agent 执行时可以调用这些技能中定义的脚本和操作规范。

高级配置

参数说明
MaxConcurrent最大并发数,限制 Agent 同时处理的工单数
MaxRetryAttempts最大重试次数,执行失败后的自动重试
TimeoutMinutes超时时间,防止 Agent 无限执行

管理工作流

  • 影响分析:退役前查看哪些工单和定时任务会受影响
  • 替换引用:批量将旧工作流切换为新工作流
  • 版本历史:查看工作流的修改记录

内置模板

平台提供了一些开箱即用的工作流模板:

模板用途
Coding代码编写和功能开发
Testing测试执行和报告
QA质量保证和代码审查
Deployment部署和发布

小贴士

  • Harness 写得越具体,Agent 表现越好。避免"请完成这个任务"这样模糊的指令
  • 合理设置 MaxConcurrent 避免 Agent 同时处理过多工单
  • 设置 TimeoutMinutes 防止 Agent 无限执行
  • 用版本控制追踪 Harness 的演进,方便回滚