Zing 论坛

正文

AgentFlow DSL:用声明式语法构建多智能体工作流的新范式

AgentFlow DSL 是一种专为多智能体 AI 工作流设计的声明式语言,开发者只需编写简洁的 .aflow 文件即可定义复杂的多智能体协作流程,无需编写集成代码即可直接转换为 MCP 工具在 Claude Code 中使用。

AgentFlow多智能体工作流DSLMCPClaude CodeLangGraphCrewAI声明式编程AI 工作流
发布时间 2026/06/06 16:15最近活动 2026/06/06 16:18预计阅读 11 分钟
AgentFlow DSL:用声明式语法构建多智能体工作流的新范式
1

章节 01

导读 / 主楼:AgentFlow DSL:用声明式语法构建多智能体工作流的新范式

AgentFlow DSL 是一种专为多智能体 AI 工作流设计的声明式语言,开发者只需编写简洁的 .aflow 文件即可定义复杂的多智能体协作流程,无需编写集成代码即可直接转换为 MCP 工具在 Claude Code 中使用。

2

章节 02

原作者与来源

3

章节 03

补充观点 1

原作者与来源

  • 原作者/维护者:anhonestboy
  • 来源平台:github
  • 原始标题:agentflow
  • 原始链接:https://github.com/anhonestboy/agentflow
  • 来源发布时间/更新时间:2026-06-06T08:15:53Z 原作者与来源\n\n- 原作者/维护者:anhonestboy\n- 来源平台:GitHub\n- 原始标题:agentflow\n- 原始链接:https://github.com/anhonestboy/agentflow\n- 来源发布时间/更新时间:2026-06-06T08:15:53Z\n\n背景:多智能体工作流的痛点\n\n随着大型语言模型(LLM)能力的不断提升,多智能体协作系统正在成为 AI 应用开发的重要方向。然而,传统的多智能体框架如 LangGraph 和 CrewAI 通常要求开发者编写大量的 Python 代码来定义工作流,这不仅增加了开发门槛,还带来了配置分散、难以版本控制、代码审查困难等问题。\n\n具体来说,传统方案存在以下痛点:\n\n- 代码冗余:定义一个工作流通常需要约 40 行样板代码\n- 多模型切换复杂:需要手动处理不同提供商的模型切换逻辑\n- MCP 集成繁琐:需要编写额外的 MCP 服务器代码\n- 配置分散:代码和配置分散在多个文件中,不利于版本管理\n- 可读性差:非 Python 开发者难以理解工作流逻辑\n\nAgentFlow DSL 简介\n\nAgentFlow DSL 是一种声明式领域专用语言(DSL),专为多智能体 AI 工作流设计。它的核心设计理念是:让开发者用简洁的声明式语法描述工作流,而非编写命令式代码。\n\n核心特性\n\nAgentFlow 的最大亮点在于其简洁性和强大的功能组合:\n\n- 声明式语法:使用 .aflow 文件定义工作流,约 20 行代码即可完成传统方案需要 40 行代码的工作\n- 多模型支持:支持为每个智能体配置不同的模型别名,实现成本优化和性能平衡\n- 自动 MCP 集成:每个工作流自动转换为 MCP 工具,可直接在 Claude Code 中调用\n- Git 友好:单个 .aflow 文件即可完成版本管理\n- 高可读性:任何人都能理解工作流逻辑,无需编程背景\n\n语言设计与核心概念\n\nAgentFlow DSL 的设计围绕几个核心概念展开:\n\n智能体(Agents)\n\n智能体是工作流的基本执行单元。每个智能体可以配置不同的模型、工作模式和输出要求:\n\naflow\nagent writer\n model: \"local-fast\"\n mode: focused\n must_produce:\n - draft\n - word_count: int\n\n\n支持的智能体模式包括:\n- focused:专注模式,适合执行具体任务\n- adversarial:对抗模式,适合审查和批评\n- reliable:可靠模式,追求稳定输出\n- precise:精确模式,注重准确性\n- strict:严格模式,遵循规则执行\n- patient:耐心模式,适合研究性任务\n- objective:客观模式,追求中立评估\n\n阶段(Phases)\n\n阶段定义了工作流的执行步骤,每个阶段指定由哪个智能体执行、输入什么、输出什么:\n\naflow\nphase research\n agent: researcher\n input: [trigger.topic]\n output: [outline, key_points]\n\n\n循环(Loops)\n\n循环机制支持迭代优化,直到满足特定条件为止:\n\naflow\nloop revision_cycle\n phases: [write, edit]\n repeat_while: edit.verdict == \"needs_work\"\n max_iterations: 3\n on_each_iteration:\n send_to: writer\n payload: edit.suggestions\n\n\n典型应用场景\n\nAgentFlow DSL 适用于多种需要多智能体协作的场景:\n\n内容创作工作流\n\n以博客文章生成为例,工作流可以设计为:研究者 → 写作者 → 编辑者,并在编辑不通过时循环迭代:\n\naflow\nworkflow blog_post\n description: \"Generate and refine a blog post\"\n version: \"1.0.0\"\n\n agents:\n agent researcher\n mode: patient\n must_produce:\n - outline\n - key_points\n\n agent writer\n mode: focused\n must_produce:\n - draft\n - word_count: int\n\n agent editor\n mode: adversarial\n must_produce:\n - verdict\n - suggestions\n - confidence: float\n\n phases:\n phase research\n agent: researcher\n input: [trigger.topic]\n output: [outline, key_points]\n\n phase write\n agent: writer\n input: [research.outline, research.key_points]\n output: [draft, word_count]\n\n phase edit\n agent: editor\n input: [write.draft]\n output: [verdict, suggestions, confidence]\n\n loop revision_cycle\n phases: [write, edit]\n repeat_while: edit.verdict == \"needs_work\"\n max_iterations: 3\n on_each_iteration:\n send_to: writer\n payload: edit.suggestions\n\n done when: edit.confidence >= 0.8 and edit.verdict == \"approved\"\n\n\n代码质量审查\n\n代码审查工作流可以设计为:写作者 → 测试者 → 批评者,直到质量达标:\n\naflow\nworkflow code_quality\n description: \"Iterative code review with writer, tester, and critic\"\n version: \"1.0.0\"\n\n agents:\n agent writer → model: \"local-fast\"\n agent tester → model: \"openrouter-smart\"\n agent critic → model: \"claude-sonnet\"\n\n loop quality_gate\n phases: [write, test, review]\n repeat_while: review.verdict == \"needs_work\"\n max_iterations: 5\n\n done when: review.confidence >= 0.85\n\n\n支持的模型提供商\n\nAgentFlow 目前支持三大主流模型提供商:\n\n| 提供商 | 状态 | 说明 |\n|--------|------|------|\n| Claude (Anthropic) | ✅ | 原生 SDK 支持,支持多轮工具调用 |\n| OpenRouter | ✅ | 支持 315+ 模型,自动路由提供商 |\n| Ollama | ✅ | 本地执行,无需 API 密钥 |\n\n开发者可以配置模型别名来实现成本优化策略,例如使用便宜模型进行初稿生成,使用前沿模型进行最终审查:\n\njson\n{\n \"models\": {\n \"local-fast\": { \"provider\": \"ollama\", \"model\": \"qwen3:8b\" },\n \"openrouter-smart\": { \"provider\": \"openrouter\", \"model\": \"google/gemini-2.5-flash\" },\n \"claude-sonnet\": { \"provider\": \"claude\", \"model\": \"claude-sonnet-4-5\" }\n }\n}\n\n\n技术架构与实现\n\nAgentFlow 的技术架构清晰分层,从 .aflow 文件到最终执行经历了以下流程:\n\n\n.aflow file\n │\n ▼\n Tokenizer ──► Parser ──► Compiler (AST → IR)\n │\n ┌─────────▼──────────┐\n │ Validator (S1-S10) │\n └─────────┬──────────┘\n │\n ┌─────────▼──────────┐\n │ WorkflowRunner │\n │ ┌───────────────┐ │\n │ │ ExecutorResolver│ │\n │ │ ┌─────────────┐│ │\n │ │ │ Claude ││ │\n │ │ │ OpenRouter ││ │\n │ │ │ Ollama ││ │\n │ │ └─────────────┘│ │\n │ └───────────────┘ │\n └─────────┬──────────┘\n │\n ┌─────────▼──────────┐\n │ MCP Server │\n │ (stdio JSON-RPC) │\n └─────────┬──────────┘\n │\n Claude Code / Cursor\n\n\n这种架构设计使得 AgentFlow 具有良好的扩展性,未来可以方便地添加新的执行器和提供商支持。\n\n使用方式与工具链\n\nAgentFlow 提供了完整的 CLI 工具链:\n\nbash\nagentflow init 交互式配置向导\nagentflow check <file> 验证工作流并生成摘要\nagentflow run <file> --input '…' 使用真实 LLM 执行\nagentflow run <file> --mock 使用模拟智能体执行(无需 API 密钥)\nagentflow compile <file> 编译为中间表示 JSON\nagentflow validate <file> 仅验证工作流\nagentflow mcp-config 输出 Claude Code 的 MCP 配置\nagentflow models 列出已配置的模型及连接状态\nagentflow resume <file> --instance <uuid> 恢复中断的工作流\n\n\n未来展望\n\nAgentFlow 项目有着清晰的路线图:\n\n- v1.1:VS Code 扩展(语法高亮、LSP 支持)\n- v1.2:并行阶段执行\n- v1.3:工作流注册表与分享机制\n- v2.0:Web 可视化编辑器、CI/CD 集成\n\n总结与思考\n\nAgentFlow DSL 代表了多智能体工作流定义方式的一种新范式。它通过声明式语法降低了多智能体系统的开发门槛,使得更多开发者能够利用多智能体协作来构建复杂的 AI 应用。\n\n这种设计思路的价值在于:将工作流的"做什么"与"怎么做"分离,让开发者专注于业务逻辑本身,而非底层实现细节。同时,自动 MCP 集成特性使得工作流可以无缝嵌入到 Claude Code 等 AI 辅助编程环境中,进一步提升了开发体验。\n\n对于正在探索多智能体系统的开发者来说,AgentFlow 提供了一个轻量级但功能完整的选择,值得尝试和关注。