Zing 论坛

正文

Leeway:基于YAML决策树的AI Agent工作流框架,平衡确定性与灵活性

一款创新的AI Agent框架,通过YAML定义决策树工作流,由人类控制流程结构,AI在节点内灵活执行,实现了确定性状态机与LLM灵活性的完美结合。

AI Agent工作流框架YAML决策树MCP协议任务调度人机协作自动化工作流
发布时间 2026/04/10 07:12最近活动 2026/04/10 07:18预计阅读 5 分钟
Leeway:基于YAML决策树的AI Agent工作流框架,平衡确定性与灵活性
1

章节 01

导读 / 主楼:Leeway:基于YAML决策树的AI Agent工作流框架,平衡确定性与灵活性

一款创新的AI Agent框架,通过YAML定义决策树工作流,由人类控制流程结构,AI在节点内灵活执行,实现了确定性状态机与LLM灵活性的完美结合。

2

章节 02

核心理念:人类定义流程,AI执行节点

Leeway的设计哲学可以用一句话概括:人类用YAML定义工作流图结构,AI在每个节点内灵活推理执行,通过确定性信号触发状态转移。这种架构既保证了整体流程的可预测性,又保留了AI在局部任务中的智能适应能力。

与传统Agent工具对比,Leeway的优势显而易见:

维度 AI自主Agent 传统工作流工具 Leeway
流程控制者 AI自主决定 人类预设脚本 人类定义YAML决策树
执行方式 AI全程自主 刚性脚本执行 AI在节点内灵活执行
可预测性 低,可能偏离预期 高,但缺乏灵活性 高,确定性状态转移
灵活性 高,但不可控 低,锁定在设计中 高,AI在边界内推理

这种设计特别适合需要严格合规、审计追踪或人机协作的场景,如代码审查、安全审计、文档生成等。

3

章节 03

YAML决策树工作流引擎

Leeway的工作流采用YAML格式定义,支持五种核心模式:

线性流程:无条件顺序执行,适合简单任务链

scan:
  prompt: "扫描项目结构"
  tools: [glob, bash]
  edges:
    - target: assess
      when: { always: true }

分支决策:基于AI信号的条件分支,支持复杂业务逻辑

assess:
  prompt: "发出'well_documented'、'needs_investigation'或'trivial'信号"
  edges:
    - target: deep_dive
      when: { signal: needs_investigation }
    - target: summarize
      when: { signal: well_documented }

循环迭代:支持回边到自身或前置节点,实现迭代式处理

并行分支:条件触发的并发执行,所有分支完成后统一汇聚

review:
  parallel:
    branches:
      quality:
        when: { always: true }
        prompt: "审查代码质量"
      security:
        when: { signal: security_risk }
        prompt: "安全审计"
        requires_approval: true

终止节点:无出边的叶节点,标志工作流结束

4

章节 04

21+内置工具集

Leeway提供丰富的工具生态,覆盖常见开发场景:

文件操作:bash、read_file、write_file、edit_file、glob、grep等核心文件操作

网络访问:web_fetch网页抓取、web_search搜索引擎集成

交互能力:ask_user_question用户提问、skill按需加载知识技能

任务管理:task_create、task_list、task_get、task_stop后台任务生命周期管理

调度系统:cron_create、cron_list、cron_delete、cron_toggle定时任务管理

Agent协作:agent子Agent派生、remote_trigger远程触发器

持久记忆:memory_read、memory_write跨会话知识存储

MCP集成:动态注册MCP服务器工具,扩展外部能力

每个工具都具备Pydantic输入验证、自描述JSON Schema、权限集成和钩子支持。

5

章节 05

技能系统:渐进式知识披露

Leeway的技能系统采用文件夹化组织,每个技能包含主说明文件SKILL.md和可选的references/详细参考资料:

.leeway/skills/
  code-review/
    SKILL.md              # 主说明(优先加载)
    references/
      checklist.md        # 详细清单(按需加载)

这种渐进式披露机制确保Agent首先获取核心指令,仅在需要时才加载详细参考资料,有效管理上下文窗口。项目内置三个示例技能:编码标准检查、代码质量审查、安全漏洞审计。

6

章节 06

生命周期钩子

钩子系统支持在工具执行前后触发自定义逻辑,可在settings.json全局配置、工作流global_hooks级别或节点/分支级别定义:

global_hooks:
  - type: command
    match: { event: workflow_start }
    command: "echo '工作流启动' >> /tmp/hooks.log"

支持命令钩子(执行shell命令)和HTTP钩子(发送POST请求),适用于日志记录、通知、审计和外部系统集成。

7

章节 07

MCP协议支持

Leeway原生支持Model Context Protocol(MCP),可连接外部MCP服务器扩展工具能力:

{
  "mcp_servers": [
    {
      "name": "my-server",
      "transport": "stdio",
      "command": "npx",
      "args": ["-y", "@my/mcp-server"]
    }
  ]
}

MCP工具自动注册为mcp_<server>_<tool>格式,可在工作流节点工具列表中使用。

8

章节 08

权限与安全机制

Leeway提供多级安全控制:

执行模式:默认模式(写入/执行前询问)、全自动模式(沙箱环境)、计划模式(只读预览)

路径规则:细粒度的路径级权限控制

命令黑名单:禁止危险命令如rm -rf /

人机协作:并行分支支持requires_approval: true配置,关键操作需人工确认