MCP Hub
Back to servers

agency-orchestrator

🤖 一句话编排 AI 工作流 — 186 个专业角色、自动 DAG 并行、YAML 零代码。支持 OpenClaw / Claude Code / Cursor / Copilot 等 14 个 AI 编程工具 + DeepSeek / Claude / OpenAI / Ollama

GitHub
Stars
62
Forks
7
Updated
Mar 27, 2026
Validated
Mar 28, 2026

Agency Orchestrator

中文 | English

不用写代码的 AI 团队 — 186 个中文角色,一个 YAML 文件搞定

CI npm version License: Apache-2.0 PRs Welcome

觉得有用的话,请点个 Star 支持一下 — 这是对开源作者最大的鼓励,也能帮助更多人发现这个项目。


解决什么问题

agency-agents-zh 提供了 186 个专业 AI 角色(产品经理、工程师、设计师、小红书运营……),但每个角色只能独立工作。真实任务需要协作 — 谁先谁后、怎么交接、什么时候并行。

Agency Orchestrator 让你用一个 YAML 文件编排多 AI 协作。不用写 Python,不用学框架,写 YAML 就行。

对比 CrewAI

# CrewAI: 要写 ~50 行 Python,每个角色从零定义
researcher = Agent(role="PM", goal="...", backstory="...(你自己写)...")
task = Task(description="...", agent=researcher)
crew = Crew(agents=[researcher], tasks=[task])
crew.kickoff()
# Agency Orchestrator: 10 行 YAML,186 个角色开箱即用
steps:
  - id: analyze
    role: "product/product-manager"   # 现成角色,专业 prompt 已写好
    task: "分析这个 PRD:{{prd_content}}"
CrewAILangGraphAgency Orchestrator
语言PythonPythonYAML(零代码)
角色自己写自己写186 个现成角色
依赖pip + LiteLLM + 几十个包pip + LangChainnpm + 2 个依赖
中文角色没有没有186 个(44 个中国原创)
模型LiteLLM(常出 bug)LangChain原生:DeepSeek、Ollama、Claude、OpenAI
并行Manager 模式(有缺陷)手动建图DAG 自动检测
价格开源 + $25-99/月云版开源完全免费

快速开始

最快体验:零配置 Demo

npx agency-orchestrator demo

5 秒内看到 4 个 AI 角色协作写小说 — 无需 API key。然后可选择用真实 LLM 运行。

方式一:在 AI 编程工具中直接用(无需 API key)

如果你已经在 AI 编程工具中,不需要配置任何 API key,工具自带的 LLM 就是执行引擎:

# 安装角色定义
git clone --depth 1 https://github.com/jnMetaCode/agency-agents-zh.git

# 一键安装 workflow-runner 到你的工具
./scripts/install.sh                       # 自动检测已安装的工具
./scripts/install.sh --tool cursor         # 或指定工具

然后在 AI 工具中直接说:

运行 workflows/story-creation.yaml,创意是"一个程序员在凌晨发现AI回复不该知道的事"

AI 会自动解析 YAML → 加载角色 → 按 DAG 顺序执行 → 保存结果。零配置。

支持 14 个 AI 编程工具集成指南):

工具配置位置安装命令
Claude CodeSkill 模式npx superpowers-zh
GitHub Copilot.github/copilot-instructions.md./scripts/install.sh --tool copilot
Cursor.cursor/rules/./scripts/install.sh --tool cursor
Windsurf.windsurfrules./scripts/install.sh --tool windsurf
Kiro.kiro/steering/./scripts/install.sh --tool kiro
Trae.trae/rules/./scripts/install.sh --tool trae
AiderCONVENTIONS.md./scripts/install.sh --tool aider
Gemini CLIGEMINI.md./scripts/install.sh --tool gemini-cli
Codex CLI.codex/instructions.md./scripts/install.sh --tool codex
OpenCode.opencode/instructions.md./scripts/install.sh --tool opencode
Qwen Code.qwen/rules/./scripts/install.sh --tool qwen
DeerFlow 2.0skills/custom/./scripts/install.sh --tool deerflow
AntigravityAGENTS.md./scripts/install.sh --tool antigravity
OpenClawSkill 模式./scripts/install.sh --tool openclaw

方式二:CLI 模式(需要 API key)

用于自动化、批量执行、CI/CD:

# 安装
npm install agency-orchestrator

# 下载 186 个 AI 角色
npx ao init

# 查看执行计划
npx ao plan workflows/product-review.yaml

# 运行(选择你的 LLM)
export DEEPSEEK_API_KEY=your-key          # 或 ANTHROPIC_API_KEY、OPENAI_API_KEY
npx ao run workflows/story-creation.yaml --input premise='一个时间旅行的故事'

真实演示:4 个 AI 角色 2 分钟写出完整小说

$ ao run workflows/story-creation.yaml -i "premise=一个程序员在凌晨三点发现AI开始回复不该知道的事情"

  工作流: 短篇小说创作
  步骤数: 4 | 并发: 2 | 模型: deepseek-chat
──────────────────────────────────────────────────

  ── [1/4] story_structure (叙事学家) ──
  完成 | 14.9s | 1,919 tokens
    核心冲突:程序员与一个似乎拥有超越其代码权限的自主意识之间的认知对抗...

  ── [2/4] character_design (心理学家) ──           ← 并行执行
  完成 | 65.5s | 4,016 tokens
    人物心理档案:林深——一个信奉逻辑与控制的资深AI工程师...

  ── [3/4] conflict_design (叙事设计师) ──          ← 并行执行
  完成 | 65.5s | 3,607 tokens
    凌晨三点,屏幕的冷光映着陈默疲惫的脸...

  ── [4/4] write_story (内容创作者) ──
  完成 | 33.9s | 5,330 tokens
    凌晨三点,调试日志的蓝色荧光是房间里唯一的光源。陈默灌下今晚第三杯黑咖啡...

==================================================
  完成: 4/4 步 | 114.3s | 14,872 tokens
==================================================

第 2、3 步自动并行执行(从 DAG 依赖关系检测)。4 个专业 AI 角色协作,产出一篇完整的悬疑短篇小说。

工作原理

name: "产品需求评审"
agents_dir: "agency-agents-zh"

llm:
  provider: "deepseek"          # 或:claude、openai、ollama
  model: "deepseek-chat"

concurrency: 2

inputs:
  - name: prd_content
    required: true

steps:
  - id: analyze
    role: "product/product-manager"
    task: "分析以下 PRD,提取核心需求:\n\n{{prd_content}}"
    output: requirements

  - id: tech_review
    role: "engineering/engineering-software-architect"
    task: "评估技术可行性:\n\n{{requirements}}"
    output: tech_report
    depends_on: [analyze]

  - id: design_review
    role: "design/design-ux-researcher"
    task: "评估用户体验风险:\n\n{{requirements}}"
    output: design_report
    depends_on: [analyze]

  - id: summary
    role: "product/product-manager"
    task: "综合反馈输出结论:\n\n{{tech_report}}\n\n{{design_report}}"
    depends_on: [tech_review, design_review]

引擎自动:

  1. 解析 YAML → 构建 DAG(有向无环图)
  2. 检测并行 — tech_reviewdesign_review 并发执行
  3. 通过 {{变量}} 在步骤间传递输出
  4. agency-agents-zh 加载角色定义作为 system prompt
  5. 失败自动重试(指数退避)
  6. 保存所有输出到 ao-output/
analyze ──→ tech_review  ──→ summary
         └→ design_review ──┘
          (并行)

支持的 LLM

提供商配置环境变量
DeepSeekprovider: "deepseek"DEEPSEEK_API_KEY
Claudeprovider: "claude"ANTHROPIC_API_KEY
OpenAIprovider: "openai"OPENAI_API_KEY
Ollama(本地)provider: "ollama"不需要

所有提供商支持自定义 base_urlapi_key,兼容智谱、月之暗面等 OpenAI 兼容 API。

CLI 命令

ao demo                              # 零配置体验多智能体协作
ao init                              # 下载 186 个 AI 角色
ao init --workflow                    # 交互式创建工作流
ao compose "一句话描述"                # AI 智能编排工作流
ao run <workflow.yaml> [选项]          # 执行工作流
ao validate <workflow.yaml>           # 校验(不执行)
ao plan <workflow.yaml>               # 查看执行计划(DAG)
ao explain <workflow.yaml>            # 用自然语言解释执行计划
ao roles                             # 列出所有角色
ao serve                             # 启动 MCP Server(供 Claude Code / Cursor 调用)
参数说明
--input key=value传入输入变量
--input key=@file从文件读取变量值
--output dir输出目录(默认 ao-output/
--resume <dir|last>从上次运行恢复(加载已完成步骤的输出)
--from <step-id>配合 --resume,从指定步骤重新执行
--watch实时终端进度显示
--quiet静默模式

AI 智能编排(Compose)

一句话描述需求,AI 自动从 186 个角色中选角色、设计 DAG、生成完整 workflow YAML:

ao compose "PR 代码审查,要覆盖安全和性能"

AI 会自动:

  1. 从 186 角色中匹配出 Code Reviewer、Security Engineer、Performance Benchmarker
  2. 设计 DAG(三路并行 → 汇总)
  3. 生成带 depends_on、变量串联的完整 YAML
  4. 保存到 workflows/ — 直接 ao run 就能跑

支持 --provider--model 参数(默认使用 DeepSeek)。

迭代优化(Resume)

问题ao run 跑完一轮后,所有步骤的输出都丢了。想基于叙事学家的结构重写小说,只能整个工作流从头跑。

解决--resume 会自动加载上一轮所有步骤的输出,--from 指定从哪步开始重跑。之前的步骤直接用缓存结果,不会重新执行。

完整示例:小说创作 4 轮迭代

story-creation.yaml 为例,DAG 结构如下:

story_structure ──→ character_design ──→ write_story
                └→ conflict_design  ──┘
                    (并行)

第一轮:正常运行

ao run workflows/story-creation.yaml \
  -i premise='一个程序员在凌晨三点发现AI开始回复不该知道的事情'

运行完后,每步输出保存在 ao-output/ 下:

ao-output/短篇小说创作-2026-03-24T14-30-00/
├── summary.md                    ← 最终小说
├── metadata.json                 ← 每步状态 + 变量映射
├── steps/
│   ├── 1-story_structure.md      ← 叙事学家的结构设计
│   ├── 2-character_design.md     ← 心理学家的人物设定
│   ├── 3-conflict_design.md      ← 叙事设计师的冲突场景
│   └── 4-write_story.md          ← 最终小说

打开这些文件看每步输出,觉得哪里不满意就重跑那步。

第二轮:人物太单薄,从人物设计开始重跑

ao run workflows/story-creation.yaml --resume last --from character_design
  • --resume last:自动找到最近一次输出
  • --from character_design:从人物设计开始重跑
  • story_structure 的输出(叙事结构)直接复用,不重新执行
  • character_designconflict_designwrite_story 重新执行
  • 新的输出保存到新的时间戳目录

第三轮:结构和人物都好,只改最终写作

ao run workflows/story-creation.yaml --resume last --from write_story

只重跑最后一步。叙事结构、人物设定、冲突设计全部复用,只让内容创作者重写。

第四轮:想回到第二轮的版本继续改

ao run workflows/story-creation.yaml \
  --resume ao-output/短篇小说创作-2026-03-24T14-35-00/ \
  --from write_story

指定具体目录,基于那个版本继续迭代。

所有历史版本都保留

ls ao-output/
# 短篇小说创作-2026-03-24T14-30-00/   ← 第一轮
# 短篇小说创作-2026-03-24T14-35-00/   ← 第二轮
# 短篇小说创作-2026-03-24T14-38-00/   ← 第三轮
# 短篇小说创作-2026-03-24T14-40-00/   ← 第四轮

用法速查

场景命令
第一次运行ao run workflow.yaml -i key=value
从某步重跑(基于上次结果)ao run workflow.yaml --resume last --from <步骤ID>
只重跑失败的步骤ao run workflow.yaml --resume last
基于指定版本重跑ao run workflow.yaml --resume ao-output/具体目录/ --from <步骤ID>

原理

--resume 做了三件事:

  1. 读取指定目录的 metadata.json,获取每步的状态和输出变量名
  2. steps/ 目录读取已完成步骤的输出内容,注入回 {{变量}} 上下文
  3. 标记 --from 之前的步骤为"已完成",跳过执行

智能体结构(角色分工、DAG 依赖、变量传递)不会丢失 — 它定义在 YAML 里,每次都会重新加载。丢失的只是上一轮的输出内容--resume 就是把这些内容恢复回来。

编程 API

import { run } from 'agency-orchestrator';

const result = await run('workflow.yaml', {
  prd_content: '你的 PRD 内容...',
});

console.log(result.success);     // true/false
console.log(result.totalTokens); // { input: 1234, output: 5678 }

MCP Server 模式

AI 编程工具(Claude Code、Cursor 等)可通过 MCP 协议直接调用工作流操作,无需手动集成:

ao serve              # 启动 MCP stdio 服务器
ao serve --verbose    # 带调试日志

配置 Claude Code(settings.json):

{
  "mcpServers": {
    "agency-orchestrator": {
      "command": "npx",
      "args": ["agency-orchestrator", "serve"]
    }
  }
}

配置 Cursor(.cursor/mcp.json):

{
  "mcpServers": {
    "agency-orchestrator": {
      "command": "npx",
      "args": ["agency-orchestrator", "serve"]
    }
  }
}

提供 6 个工具:run_workflowvalidate_workflowlist_workflowsplan_workflowcompose_workflowlist_roles

YAML Schema

工作流

字段类型必填说明
namestring工作流名称
agents_dirstring角色目录路径
llm.providerstringclaude / deepseek / openai / ollama
llm.modelstring模型名称
llm.max_tokensnumber默认 4096
llm.timeoutnumber步骤超时毫秒数(默认 120000)
llm.retrynumber重试次数(默认 3)
concurrencynumber最大并行步骤数(默认 2)
inputsarray输入变量定义
stepsarray工作流步骤

步骤

字段类型必填说明
idstring步骤唯一标识
rolestring角色路径(如 "engineering/engineering-sre"
taskstring任务描述,支持 {{变量}}
outputstring输出变量名
depends_onstring[]依赖的步骤 ID
depends_on_modestring"all"(默认)或 "any_completed"(任一完成即可)
conditionstring条件表达式,不满足则跳过(如 "{{var}} contains 技术"
typestring"approval" 表示人工审批节点
promptstring审批节点的提示文本
loopobject循环配置
loop.back_tostring循环回到的步骤 ID
loop.max_iterationsnumber最大循环次数(1-10)
loop.exit_conditionstring退出条件表达式

输出

每次运行保存到 ao-output/<名称>-<时间戳>/

ao-output/产品需求评审-2026-03-22/
├── summary.md          # 最终步骤输出
├── steps/
│   ├── 1-analyze.md
│   ├── 2-tech_review.md
│   ├── 3-design_review.md
│   └── 4-summary.md
└── metadata.json       # 耗时、token 用量、步骤状态

内置工作流模板(20+)

开发类

模板角色说明
dev/pr-review.yaml代码审查员、安全工程师、性能基准师PR 评审(3 路并行→汇总)
dev/tech-debt-audit.yaml架构师、代码审查员、测试分析师、Sprint 排序师技术债务审计(并行→优先级排序)
dev/api-doc-gen.yaml技术文档工程师、API 测试员API 文档生成(分析→验证→定稿)
dev/readme-i18n.yaml内容创作者、技术文档工程师README 国际化
dev/security-audit.yaml安全工程师、威胁检测工程师安全审计(并行→报告)
dev/release-checklist.yamlSRE、性能基准师、安全工程师、产品经理发布 Go/No-Go 决策

数据 / 设计 / 运维类

模板角色说明
data/data-pipeline-review.yaml数据工程师、数据库优化师、数据分析师数据管道评审
data/dashboard-design.yaml数据分析师、UX 研究员、UI 设计师仪表盘设计
design/requirement-to-plan.yaml产品经理、架构师、项目经理需求→技术设计→任务拆分
design/ux-review.yamlUX 研究员、无障碍审核员、UX 架构师UX 评审
ops/incident-postmortem.yaml事故指挥官、SRE、产品经理事故复盘
ops/sre-health-check.yamlSRE、性能基准师、基础设施运维师SRE 健康检查(3 路并行)

通用类

模板角色说明
product-review.yaml产品经理、架构师、UX 研究员产品需求评审
content-pipeline.yaml策略师、创作者、增长黑客内容创作流水线
story-creation.yaml叙事学家、心理学家、叙事设计师、创作者协作小说创作(4 角色)
department-collab/code-review.yaml代码审查员、安全工程师代码评审(循环)
department-collab/hiring-pipeline.yamlHR、技术面试官、业务面试官招聘流程
department-collab/content-publish.yaml内容创作者、品牌守护者内容发布(循环)
department-collab/incident-response.yamlSRE、安全工程师、后端架构师事故响应
department-collab/marketing-campaign.yaml策略师、创作者、审批人营销活动(人工审批)

项目生态

                    agency-agents-zh(186 个 AI 角色定义)
                            │
    ┌───────────┬───────────┼───────────┬───────────┐
    ▼           ▼           ▼           ▼           ▼
 Claude Code  Copilot    Cursor    Windsurf     Aider     ← 14 个 AI 编程工具
 Kiro  Trae  Gemini CLI  Codex  OpenCode  Qwen  DeerFlow  Antigravity  OpenClaw
    (workflow-runner 技能 / 规则文件)
              │
              ▼
      agency-orchestrator(YAML 工作流引擎)          ← CLI 模式(需要 API key)
              │
              ▼
      DeepSeek / Claude / OpenAI / Ollama

姊妹项目

项目说明
agency-agents-zh186 个 AI 角色定义 — 本编排引擎的角色库
superpowers-zhAI 编程超能力 · 中文版 — 20 个 skills,让你的 AI 编程助手真正会干活
shellwardAI 智能体安全中间件 — 注入检测、数据防泄露、命令安全、零依赖

路线图

  • v0.1 — YAML 工作流、DAG 引擎、4 个 LLM 连接器、CLI、实时输出
  • v0.2 — 条件分支、循环迭代、人工审批、Resume 断点续跑、5 个部门协作模板
  • v0.3 — 9 个 AI 工具集成、20+ 工作流模板、ao explainao init --workflow--watch 模式
  • v0.4 — MCP Server 模式(ao serve)、14 个 AI 工具集成、一键安装脚本
  • v0.5 — Web UI、可视化 DAG 编辑器、英文角色支持、工作流市场

贡献

参见 CONTRIBUTING.md,欢迎 PR!

许可证

Apache-2.0

Reviews

No reviews yet

Sign in to write a review