外观
第 23 章 Detailed Outline:Skills、Hooks 与自动化工作流
章节论证主线
自动化不是单一能力。先按“重复任务、生命周期点、状态编排、事件检查”分配责任,才有可能看清触发、失败、权限、验证与交接分别缺少什么。
小节蓝图
| 小节 | 读者问题 | 要形成的结论 | 来源或边界 |
|---|---|---|---|
| 本章目标 | 本章可验证地学会什么? | 能选择主要工件并标注未覆盖范围。 | 本书目标。 |
| 为什么要学 | 为什么一句“自动检查”不够? | 自动化至少包含复用、触发、失败与责任四个问题。 | 本书场景;不使用行业统计。 |
| 场景引入 | 书稿检查该怎样拆分? | 把任务能力、事件约束、状态与检查分开。 | 当前仓库配置仅作本地事实。 |
| 四类工件 | Skill、Hook、Workflow、Automation 分别答什么? | 可组合但不互相代替。 | 本书工程模型;链接第 8、10 章。 |
| Skill | 什么适合被沉淀为可复用能力? | 将稳定任务方法与一次性请求分开。 | REF-077 仅支持 Codex 产品事实。 |
| Hook | 为什么 Hook 不是状态机? | 生命周期事件、匹配、信任与并发需显式审查。 | REF-078 仅支持 Codex 产品事实。 |
| Workflow | 为什么多步过程不能塞进回调? | 状态、检查点、恢复和交接仍属于第 10 章模型。 | 本书模型与章节交叉引用。 |
| Automation | 什么让检查失败可见? | 触发、范围、报告、失败策略、退场与所有者不可省略。 | 本地 .github/workflows 配置。 |
| Plugin | Plugin 为什么不是执行语义? | 它服务分发;其中的组件仍须分别审查。 | REF-079。 |
| 图示 | 如何看出四类工件的汇合边界? | 所有路径都要经过独立权限/批准和观察。 | 本书 Mermaid 模型。 |
| 最小示例 | 如何在不运行任何外部系统时练习选择? | 注入提案,返回保守准入状态。 | 纯内存 Node 示例。 |
| 工程案例 | 当前仓库可采用什么分层? | CI 只是一层检查,不替代审查或授权。 | 仓库配置与本书建议。 |
| 常见错误与边界 | 哪些断言应被拒绝? | 发现、触发、权限、执行、验证相互独立。 | 本书模型。 |
计划图示说明
- 问题: 一个请求到来时,如何先选择正确责任而非直接“自动化”?
- 关键节点: Request、Classify、Skill、Hook、Workflow、Automation、EffectGate、Stop、Observation、Review。
- 关键箭头: 四类工件只能产生各自记录或报告;授权/批准和观察/验收仍是独立步骤。
- 禁止表达: 真实 Codex Hook 注册、CI 运行、权限授予、文件写入或结果正确性。
计划示例与断言
| 输入场景 | 预期状态 | 证明的教学边界 |
|---|---|---|
| 有任务匹配与输出的只读 Skill | ready。 | 任务能力可以有明确入口。 |
| 没有生命周期事件的 Hook | blocked。 | Hook 不能缺触发边界。 |
| 用 Hook 承担状态性长流程 | not_applicable。 | 应进入 Workflow。 |
| 未批准写入效果的 Hook | requires_approval。 | 触发不授予权限。 |
| 没有状态记录或检查点的 Workflow | blocked。 | 长程编排要保留恢复接口。 |
| 没有失败策略的 Automation | blocked。 | 自动化要让失败可路由。 |
章节依赖与后续去向
- 前置: 第 8 章提供 Skill Contract;第 10 章提供 Workflow 状态模型;第 12、14 章提供权限和批准边界。
- 后续: 第 24 章检查外部工具集成;第 27 章讨论 Git/Worktree/审查;第 34 章扩展团队级 Skill Library;第 44、45 章复用这些模式建设 Book Factory 与交接。
- 避免重复: 不解释 MCP 协议细节,不实现 Hook,不设计 CI/CD 发布管道,不复制第 8 章的完整 Skill 发现流程。
交付物清单
- 原创正文与 CH23 候选引用。
- 研究、来源、事实核验与示例计划。
- 一份 Mermaid 图源和导出的 SVG/PNG。
- 纯内存 Node 示例、红绿测试记录。
- 技术、示例、图示、语言与终审记录。
