1- # Juggle — 图形化 API 流程编排平台(AI 驱动)
1+ # APIWorkflowCanvasDesignNet — 图形化 API 流程编排平台(AI 驱动)
22
33<div align =" center " >
44
2323
2424## 📖 简介
2525
26- Juggle(积木 + 魔法)是一个** 可视化 API 流程编排平台** ,通过拖拽式画布将多个接口串联成完整业务流程,支持 AI 对话自动生成流程、智能体多轮对话与工具调用、生图/生视频、报表设计等。
26+ APIWorkflowCanvasDesignNetJuggle 原名 Juggle(积木 + 魔法)是一个** 可视化 API 流程编排平台** ,通过拖拽式画布将多个接口串联成完整业务流程,支持 AI 对话自动生成流程、智能体多轮对话与工具调用、生图/生视频、报表设计等。
2727
2828后端基于 ** .NET 8** + ** EF Core 8** ,前端 ** Vue 3** + ** Element Plus** + ** @vue-flow/core ** ,内置 SQLite(可切换 MySQL / PostgreSQL / SQLServer)。系统已稳定运行,提供 Docker 一键部署方案,默认账号 ` juggle / juggle ` ,监听 ` 9127 ` 端口。
2929
3030---
3131
3232## ✨ 功能特性
3333
34- | 能力 | 说明 |
35- | ---| ---|
36- | 🎨 ** 图形化流程编排** | 14 种节点:START / END / METHOD / CONDITION / MERGE / ASSIGN / CODE / MYSQL / SUB_FLOW / LOOP / DELAY / PARALLEL / NOTIFY / AI |
37- | 🤖 ** AI 智能编排** | 对话描述需求 → 大模型自动生成完整流程(含入参/出参定义 + 节点连线 + 条件分支),预览确认后入库 |
38- | 🧠 ** AI 智能体对话** | 多轮对话、工具调用(接口直调/流程递归),最多 4 轮;支持生图/生视频模型(通义万相 / OpenAI) |
39- | 🎛️ ** 模型助手** | 自定义助手(名称/提示词/输入输出参数),绑定技能/接口/流程/工具能力;支持温度/最大输出/随机种子/深度思考 |
40- | 🏪 ** 内置应用市场** | 发现 / 导入 / 收藏 / 下载 / 发布,支持 GitHub PR 分享条目 |
41- | 📊 ** 报表设计器** | 数据视图 + 报表设计(行列编辑 / 公式引擎 SUM / IF / 分页预览) |
42- | 📈 ** 监控模块** | API 拓扑图(健康检查 / 访问统计 / DB 调用连线)+ 告警规则 + 告警记录 |
43- | 🔐 ** 多租户 + JWT 认证** | 严格/宽松双隔离策略,RBAC 角色权限 |
44- | 🗄️ ** 多数据库** | 系统库:SQLite / MySQL / PostgreSQL / SQLServer;业务数据源再加 Oracle / 达梦 |
34+
35+ | 能力 | 说明 |
36+ | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
37+ | 🎨** 图形化流程编排** | 14 种节点:START / END / METHOD / CONDITION / MERGE / ASSIGN / CODE / MYSQL / SUB_FLOW / LOOP / DELAY / PARALLEL / NOTIFY / AI |
38+ | 🤖** AI 智能编排** | 对话描述需求 → 大模型自动生成完整流程(含入参/出参定义 + 节点连线 + 条件分支),预览确认后入库 |
39+ | 🧠** AI 智能体对话** | 多轮对话、工具调用(接口直调/流程递归),最多 4 轮;支持生图/生视频模型(通义万相 / OpenAI) |
40+ | 🎛️** 模型助手** | 自定义助手(名称/提示词/输入输出参数),绑定技能/接口/流程/工具能力;支持温度/最大输出/随机种子/深度思考 |
41+ | 🏪** 内置应用市场** | 发现 / 导入 / 收藏 / 下载 / 发布,支持 GitHub PR 分享条目 |
42+ | 📊** 报表设计器** | 数据视图 + 报表设计(行列编辑 / 公式引擎 SUM / IF / 分页预览) |
43+ | 📈** 监控模块** | API 拓扑图(健康检查 / 访问统计 / DB 调用连线)+ 告警规则 + 告警记录 |
44+ | 🔐** 多租户 + JWT 认证** | 严格/宽松双隔离策略,RBAC 角色权限 |
45+ | 🗄️** 多数据库** | 系统库:SQLite / MySQL / PostgreSQL / SQLServer;业务数据源再加 Oracle / 达梦 |
4546
4647---
4748
@@ -143,12 +144,14 @@ cd JuggleNet6.Frontend && npm run build # → Juggle.Api/wwwroot/
143144
144145## 📸 界面预览
145146
146- | 流程编排 | AI 智能编排 |
147- | ---| ---|
147+
148+ | 流程编排 | AI 智能编排 |
149+ | ------------------------------------ | --------------------------------------- |
148150| ![ 流程编排] ( ./images/flowdesign.png ) | 对话描述需求,AI 自动生成流程节点与连线 |
149151
150- | 监控仪表盘 | 报表设计器 |
151- | ---| ---|
152+
153+ | 监控仪表盘 | 报表设计器 |
154+ | --------------------- | ------------------- |
152155| API 拓扑图 + 告警规则 | 数据视图 + 公式引擎 |
153156
154157> 📌 更多截图见仓库 [ images/] ( ./images/ ) 目录。
@@ -157,29 +160,31 @@ cd JuggleNet6.Frontend && npm run build # → Juggle.Api/wwwroot/
157160
158161## 🛠️ 技术栈
159162
160- | 层级 | 技术 |
161- | ---| ---|
162- | 后端 | ASP.NET Core 8 · EF Core 8 · Juggle.Api / Application / Domain / Infrastructure 四层 |
163- | 前端 | Vue 3 · Vite · Element Plus · Pinia · @vue-flow/core · Monaco Editor |
164- | 数据库 | SQLite(默认)/ MySQL / PostgreSQL / SQLServer · 业务源支持 Oracle / 达梦 |
165- | 容器 | Docker multi-stage build · GitHub Actions CI/CD |
166- | 认证 | JWT Bearer · RBAC 角色权限 · 多租户 ` HasQueryFilter ` |
163+
164+ | 层级 | 技术 |
165+ | ------ | -------------------------------------------------------------------------------------- |
166+ | 后端 | ASP.NET Core 8 · EF Core 8 · Juggle.Api / Application / Domain / Infrastructure 四层 |
167+ | 前端 | Vue 3 · Vite · Element Plus · Pinia · @vue-flow/core · Monaco Editor |
168+ | 数据库 | SQLite(默认)/ MySQL / PostgreSQL / SQLServer · 业务源支持 Oracle / 达梦 |
169+ | 容器 | Docker multi-stage build · GitHub Actions CI/CD |
170+ | 认证 | JWT Bearer · RBAC 角色权限 · 多租户` HasQueryFilter ` |
167171
168172---
169173
170174## 🔍 竞品对比
171175
172- | 项目 | Juggle(本项目) | n8n | Dify | FastGPT / Coze |
173- | ---| ---| ---| ---| ---|
174- | ** 核心定位** | API 流程编排 + AI 辅助生成 | 工作流自动化 | LLM 应用开发 | RAG / Bot |
175- | ** 自研接口** | 套件/接口管理 + 批量导入 + cURL 复制 | 无 | 无 | 无 |
176- | ** SQL/DB节点** | ✅ 内置 MySQL/SQLite/PG/SS | ⚠️ 需要节点 | ❌ | ❌ |
177- | ** SOAP/WSDL** | ✅ 自动生成 + 调用 | ❌ | ❌ | ❌ |
178- | ** 多租户** | ✅ JWT Claims 驱动 | ❌ | ❌ | ❌ |
179- | ** 私有化部署** | ✅ Docker 一键 | ✅ | ✅ | ❌ |
180- | ** AI 生成流程** | ✅ 对话→完整编排+预览 | ⚠️ 仅部分 | ⚠️ 仅提示词 | ⚠️ 仅提示词 |
181- | ** 生图/生视频** | ✅ 对话模型自动切换 | ❌ | ❌ | ✅(平台内)|
182- | ** 应用市场** | ✅ 内置 + GitHub PR 分享 | ❌ | ❌ | ❌ |
176+
177+ | 项目 | Juggle(本项目) | n8n | Dify | FastGPT / Coze |
178+ | --------------- | ------------------------------------ | ------------- | ------------- | -------------- |
179+ | ** 核心定位** | API 流程编排 + AI 辅助生成 | 工作流自动化 | LLM 应用开发 | RAG / Bot |
180+ | ** 自研接口** | 套件/接口管理 + 批量导入 + cURL 复制 | 无 | 无 | 无 |
181+ | ** SQL/DB节点** | ✅ 内置 MySQL/SQLite/PG/SS | ⚠️ 需要节点 | ❌ | ❌ |
182+ | ** SOAP/WSDL** | ✅ 自动生成 + 调用 | ❌ | ❌ | ❌ |
183+ | ** 多租户** | ✅ JWT Claims 驱动 | ❌ | ❌ | ❌ |
184+ | ** 私有化部署** | ✅ Docker 一键 | ✅ | ✅ | ❌ |
185+ | ** AI 生成流程** | ✅ 对话→完整编排+预览 | ⚠️ 仅部分 | ⚠️ 仅提示词 | ⚠️ 仅提示词 |
186+ | ** 生图/生视频** | ✅ 对话模型自动切换 | ❌ | ❌ | ✅(平台内) |
187+ | ** 应用市场** | ✅ 内置 + GitHub PR 分享 | ❌ | ❌ | ❌ |
183188
184189> ** 一句话差异** :Juggle 是** 面向后端开发者的 API 编排 + AI 自动生成** 工具,补齐了 n8n/Dify 在接口管理、SOAP、SQL、多租户、私有化部署方面的空白。
185190
@@ -250,17 +255,18 @@ Built with **.NET 8** + **Vue 3** + **Element Plus**, ships with SQLite out of t
250255
251256## ✨ Features
252257
253- | Feature | Description |
254- | ---| ---|
255- | 🎨 ** Visual Flow Orchestration** | 14 node types: START / END / METHOD / CONDITION / MERGE / ASSIGN / CODE / MYSQL / SUB_FLOW / LOOP / DELAY / PARALLEL / NOTIFY / AI |
256- | 🤖 ** AI Flow Generation** | Describe requirements in chat → LLM auto-generates complete flow (inputs/outputs + node wiring + conditionals), preview and confirm to save |
257- | 🧠 ** AI Agent Chat** | Multi-turn dialogue with tool calling (direct API / recursive flow), up to 4 rounds; image/video generation model support (Tongyi Wanxiang / OpenAI) |
258- | 🎛️ ** Model Assistants** | Custom assistants with system prompt / I/O params; bind skills/APIs/flows/tools; model params: temperature, max tokens, seed, thinking mode |
259- | 🏪 ** Built-in Marketplace** | Discover / import / favorite / download / publish; share to official GitHub via PR |
260- | 📊 ** Report Designer** | Data views + report builder (row/col editing / formula engine SUM & IF / paginated preview) |
261- | 📈 ** Monitoring** | API topology map (health check / visit stats / DB call edges) + alert rules + alert records |
262- | 🔐 ** Multi-tenant + JWT** | Strict/loose isolation via ` HasQueryFilter ` , RBAC role permissions |
263- | 🗄️ ** Multi-DB** | System: SQLite / MySQL / PostgreSQL / SQLServer; business sources also support Oracle / Dameng |
258+
259+ | Feature | Description |
260+ | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
261+ | 🎨** Visual Flow Orchestration** | 14 node types: START / END / METHOD / CONDITION / MERGE / ASSIGN / CODE / MYSQL / SUB_FLOW / LOOP / DELAY / PARALLEL / NOTIFY / AI |
262+ | 🤖** AI Flow Generation** | Describe requirements in chat → LLM auto-generates complete flow (inputs/outputs + node wiring + conditionals), preview and confirm to save |
263+ | 🧠** AI Agent Chat** | Multi-turn dialogue with tool calling (direct API / recursive flow), up to 4 rounds; image/video generation model support (Tongyi Wanxiang / OpenAI) |
264+ | 🎛️** Model Assistants** | Custom assistants with system prompt / I/O params; bind skills/APIs/flows/tools; model params: temperature, max tokens, seed, thinking mode |
265+ | 🏪** Built-in Marketplace** | Discover / import / favorite / download / publish; share to official GitHub via PR |
266+ | 📊** Report Designer** | Data views + report builder (row/col editing / formula engine SUM & IF / paginated preview) |
267+ | 📈** Monitoring** | API topology map (health check / visit stats / DB call edges) + alert rules + alert records |
268+ | 🔐** Multi-tenant + JWT** | Strict/loose isolation via` HasQueryFilter ` , RBAC role permissions |
269+ | 🗄️** Multi-DB** | System: SQLite / MySQL / PostgreSQL / SQLServer; business sources also support Oracle / Dameng |
264270
265271---
266272
@@ -295,28 +301,30 @@ cd JuggleNet6.Frontend && npm install && npm run dev
295301
296302## 🛠️ Tech Stack
297303
298- | Layer | Tech |
299- | ---| ---|
300- | Backend | ASP.NET Core 8 · EF Core 8 · 4-layer DDD |
301- | Frontend | Vue 3 · Vite · Element Plus · Pinia · @vue-flow/core · Monaco Editor |
302- | Database | SQLite (default) / MySQL / PostgreSQL / SQLServer · Oracle / Dameng for business |
303- | Container | Docker multi-stage · GitHub Actions CI/CD |
304- | Auth | JWT Bearer · RBAC · Multi-tenant ` HasQueryFilter ` |
304+
305+ | Layer | Tech |
306+ | --------- | --------------------------------------------------------------------------------- |
307+ | Backend | ASP.NET Core 8 · EF Core 8 · 4-layer DDD |
308+ | Frontend | Vue 3 · Vite · Element Plus · Pinia · @vue-flow/core · Monaco Editor |
309+ | Database | SQLite (default) / MySQL / PostgreSQL / SQLServer · Oracle / Dameng for business |
310+ | Container | Docker multi-stage · GitHub Actions CI/CD |
311+ | Auth | JWT Bearer · RBAC · Multi-tenant` HasQueryFilter ` |
305312
306313---
307314
308315## 🔍 vs Competitors
309316
310- | | Juggle | n8n | Dify | FastGPT / Coze |
311- | ---| ---| ---| ---| ---|
312- | ** Focus** | API orchestration + AI generation | Workflow automation | LLM app dev | RAG / Bot |
313- | ** Self-hosted APIs** | ✅ Suite/API mgmt + bulk import | ❌ | ❌ | ❌ |
314- | ** SQL/DB nodes** | ✅ | ⚠️ | ❌ | ❌ |
315- | ** SOAP/WSDL** | ✅ Auto-gen | ❌ | ❌ | ❌ |
316- | ** Multi-tenant** | ✅ JWT Claims | ❌ | ❌ | ❌ |
317- | ** AI generate flows** | ✅ Full flow + preview | ⚠️ Partial | ⚠️ Prompt only | ⚠️ Prompt only |
318- | ** Image/Video gen** | ✅ Auto-switch by model | ❌ | ❌ | ✅ In-platform |
319- | ** Marketplace** | ✅ + GitHub PR sharing | ❌ | ❌ | ❌ |
317+
318+ | | Juggle | n8n | Dify | FastGPT / Coze |
319+ | --------------------- | --------------------------------- | ------------------- | ---------------- | ---------------- |
320+ | ** Focus** | API orchestration + AI generation | Workflow automation | LLM app dev | RAG / Bot |
321+ | ** Self-hosted APIs** | ✅ Suite/API mgmt + bulk import | ❌ | ❌ | ❌ |
322+ | ** SQL/DB nodes** | ✅ | ⚠️ | ❌ | ❌ |
323+ | ** SOAP/WSDL** | ✅ Auto-gen | ❌ | ❌ | ❌ |
324+ | ** Multi-tenant** | ✅ JWT Claims | ❌ | ❌ | ❌ |
325+ | ** AI generate flows** | ✅ Full flow + preview | ⚠️ Partial | ⚠️ Prompt only | ⚠️ Prompt only |
326+ | ** Image/Video gen** | ✅ Auto-switch by model | ❌ | ❌ | ✅ In-platform |
327+ | ** Marketplace** | ✅ + GitHub PR sharing | ❌ | ❌ | ❌ |
320328
321329> ** One-liner** : Juggle fills the gap for ** backend devs** who need API management, SOAP, SQL, multi-tenancy, and private deployment — things n8n/Dify don't cover.
322330
0 commit comments