成为赞助商——支持中文 Agent 生态

了解赞助
库Agent场景库
← 返回用例列表

Nick Tune:用 Claude Code hooks 做可测工作流引擎

对照个人实践:把规划→开发→评审→提交写成带状态机的 hooks 工作流,用 PreToolUse 禁非法操作、按态注入说明,并配合 agent teams 迭代重生;不代你声称已可靠、不外推吞吐。

场景说明

面向要在不可控仓也强制同一套流程的开发者:把「再写一篇 CLAUDE.md 希望它听话」写成可对账的引擎+持久化+钩子门禁,区别于 Kanban 派任务与自研 harness 契约。

案例叙事

01他们做了什么

Nick Tune 在《Hook-driven dev workflows with Claude Code》(页内日期 February 28, 2026 → 2026-02-28)写明:自己控仓时可把 lint、git hooks、评审步骤烘焙进流程并稳定受益;到遗留仓或无权改那些旋钮时,提示与 Markdown 流程常跑偏。解法落到 Claude Code hooks:用可编程、可测的工作流引擎做强护栏,并可选配合 agent teams 观察各角色。

架构两块:工作流引擎 + 会话持久化,由 slash 命令启动。引擎拒绝非法迁移(例如不能从 planning 直跳 reviewing,须经 developing);按态禁操作(例:developing 禁止 git commit,只在 reviewing 后的 committing 允许)。示例流程含 spawn 建 GitHub issue、developing/reviewing/committing、CodeRabbit、建 draft PR;迭代开始 RESPAWN 关掉旧 developer/reviewer 再开干净上下文。

实现:把 SessionStart/PreToolUse/SubagentStart/TeammateIdle/SubagentStop 等钩到同一入口;SubagentStart 按当前态从 `/states/*.md` 注入程序说明,避免把整台状态机塞进系统提示;Agent 只能用 `/…workflow transition <STATE>` 改态。状态示例落盘为按 SESSION_ID 的 JSON(state/iteration/issue/branch/eventLog 等)。作者称追「无聊事自动办」约六个月,本方案在真实项目实验约一周——「还不能说可靠、也不能 100% 推荐」,但每次跑偏可加引擎逻辑约束。本场景据此输出「hooks 工作流」提纲。禁止建议用未测状态文件当生产门禁。

02实际效果

  • 源披露约六个月探索、本 hooks 方案在真实项目约一周实验,以及「尚不可称可靠」的作者自述;属个人窗口经验,不可外推为你的合入吞吐或失败率。
  • 能把「再写长一点的流程说明」与「可测状态机 + 钩子禁令 + 按态注入」拆开。
  • 为非法迁移、developing 禁 commit、RESPAWN 清上下文提供提问清单。

03值得知道

  • 作者明确:尚未证明长期可靠,钩子接线仍偏底层与脆弱。
  • 示例规则(CodeRabbit、禁 commit 时机)须按仓改造,不可照搬。
  • 上面写的是个人博客实验,不是 Anthropic 官方工作流产品说明。

04可复制提示词

Hooks 工作流引擎简报

你是 Claude Code 工作流设计助手。只根据用户约束写状态机提问清单,不要编造已上线。

目标阶段:{{stages}}
是否控制 CI/lint:{{owns_ci}}
是否用 agent teams:{{use_teams}}
必须禁止的工具/命令:{{banned_ops}}

输出 Markdown:
1. 状态名与合法迁移表
2. 各态应注入的最短程序说明
3. PreToolUse 禁令列表
4. 人工验收「Agent 不能直改状态文件」的检查
禁止声称工作流已可靠;禁止伪造覆盖率等于任务成功率。

Agent 跳阶段排查提纲

Agent 从 planning 直接想开 PR,请写排查提纲。

当前持久化状态摘录:{{state_json}}
最近钩子事件:{{hook_events}}

输出:
1. 是缺迁移校验、缺 PreToolUse,还是说明未注入
2. 最小补丁(引擎侧)
3. 应加的无模型单测
4. 人工确认清单
不要伪造「以后不会再跳阶段」。

怎么做

  1. 粘贴目标流程阶段、是否控制 lint/CI、以及是否允许 agent teams 分角色
  2. Agent 按实践帖输出:状态与合法迁移表→各态注入说明→PreToolUse 禁令→会话状态持久化提问清单
  3. 人工保留合并与「是否值得合入」;Agent 不代你宣称工作流已稳定、不声称覆盖率等于任务成功率

实用提示

  • 源帖关键:状态切换与禁操作走工作流公开 API,不要让 Agent 直接改状态文件
  • 与 platypus-kanban-cron-agent-pipeline / mohit-agentforge-harness-contracts / flexcompute-agent-loop-mutate-gate 不同:本条是 Claude Code hooks + 可测状态机 + 按态注入 + teams 重生,不是看板派任务、自研 ToolResult harness,或库内 mutate/gate
#Claude Code hooks#工作流引擎#状态机#agent teams#个人实践