目录

一、Agent Lifecycle:固定主流程

二、 为什么还需要 Hooks

三、 Hooks 在生命周期中的位置

四、 Stop Hook:让多轮任务自动衔接

五、workflow-state.json 的核心价值

六、 安全机制:自动化不能无脑跑

七、 Human-in-the-loop:敏感动作人工确认

八、总结


Lifecycle 是 Agent 执行任务的固定骨架,Hooks 是插在关键节点上的自定义扩展入口。
Lifecycle 保证流程可预测、可复用、可治理;Hooks 负责适配不同业务里的审批、风控、状态续跑、日志记录、质量校验等变化需求。

一、Agent Lifecycle:固定主流程

一个 Agent 的生命周期可以抽象为 6 步:

Lifecycle 解决的是“每次任务怎么稳定跑完”。它像一条标准流水线,让 Agent 不再是随意聊天,而是按“准备、规划、执行、校验、收尾”的方式工作。

二、 为什么还需要 Hooks

只有生命周期还不够,因为不同业务有不同规则:

  • 有些动作需要人工审批,比如删除、发版、权限变更、提交代码。
  • 有些任务需要失败重试,比如日志分析、CI 修复、长流程报告生成。
  • 有些场景需要中途插入质量门禁,比如代码审查、性能检查、安全检查。
  • 有些流程需要断点续跑,比如多轮任务、长链路 workflow。

所以 Hooks 的作用是:

Lifecycle 管“流程一定能走”,Hooks 管“在关键节点做业务定制”。

三、 Hooks 在生命周期中的位置

典型用法:

  • onInit:加载 workflow 状态、上下文、环境信息。
  • onPlan:检查计划是否符合规范,是否缺少必要步骤。
  • onPreAction:敏感操作前拦截,要求人工审批。
  • onAction:执行中监控、记录、增强工具调用。
  • onPostAction:执行后校验结果、写日志、生成报告。
  • Stop Hook:本轮结束后判断是否自动进入下一轮任务。

四、 Stop Hook:让多轮任务自动衔接

Stop Hook,它解决的问题是:
Agent 每轮执行结束后,本身没有长期状态;如果没有外部状态记录,下一轮不知道接着做什么。

所以需要一个持久化状态文件,例如:

{
  "error_count": 0,
  "last_task_id": "phase-4-report",
  "retry_count": 0,
  "conversation_id": "7984612f-..."
}

我的理解是:
Stop Hook 相当于 Agent 的“自动接力棒”。
Agent 做完一轮后,Hook 读取蓝图和状态,决定下一轮该做什么,然后把任务重新喂给 Agent。

五、workflow-state.json 的核心价值

它解决三件事:

  • 防失忆:知道上一轮做到哪里。
  • 防死循环:错误次数超过阈值后暂停。
  • 防乱跑:同一个任务重试次数达到上限后停止自动推进。

六、 安全机制:自动化不能无脑跑

“两道安全闸”:类似

这点很关键。
好的 Hooks 不是让 Agent 无限自动化,而是让它可控地自动化:能续跑,也能在异常时平稳停下来。

七、 Human-in-the-loop:敏感动作人工确认

敏感操作不应该全自动,比如:

  • 删除文件或清理日志
  • 提交代码
  • 修改权限
  • 发版
  • 改 HAL 热路径
  • 影响性能、功耗、稳定性的代码修改
  • 存款
  • 支付

适合放在 Pre-Action Hook

我的理解是:
Human-in-the-loop 不是让人全程盯着,而是让人只在关键风险点介入。

八、总结

  • Lifecycle 提供稳定主干:Init → Plan → Pre-Action → Action → Post-Action → Finish。
  • Hooks 提供业务弹性:审批、风控、重试、状态续跑、质量门禁、知识沉淀。
  • Stop Hook + workflow-state.json 则让 Agent 从“一轮一轮地回答”升级为“可以持续推进复杂任务的自动化执行系统”。
Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐