# smart-flow
**Repository Path**: dragondjf/smart-flow
## Basic Information
- **Project Name**: smart-flow
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: GPL-3.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2026-08-25
- **Last Updated**: 2026-09-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Smart Flow
面向开发者的 AI 原生工作流编排平台
可视化编排 · 单步调试 · 一键发布 Agent · 零配置启动
中文 ·
English ·
日本語 ·
한국어
⭐ 如果这个项目对你有帮助,请给一个 Star 支持一下!
---
## ✨ 为什么选择 Smart Flow?
在 n8n、Dify、Flowise 等平台百花齐放的今天,我们依然选择重新造轮子,因为现有产品存在一个共同的痛点:**开发者体验不够好**。
Smart Flow 不是又一个通用自动化平台,而是**给开发者用的 AI 工作流 IDE**:
| 现有产品的不足 | Smart Flow 的回答 |
|---|---|
| AI 能力是后加的,调试像黑盒 | 从零设计 AI 工作流,**单步调试 + 断点 + 变量监控 + Mock 测试** |
| 可视化与代码割裂 | 画布即配置,`{{ }}` 模板插值让数据流清晰可追溯 |
| 需要 Postgres / Redis,启动重 | SQLite 零配置,`npm run dev` 一条命令跑全栈 |
| 工作流只能跑,不能直接变成 Agent | 工作流一键发布为 Agent,对话页直接调用 |
| 接入业务系统麻烦 | Webhook / Cron 双触发 + HMAC 签名 + 限流,开箱即用 |
---
## 🚀 核心特性
### 🎨 可视化工作流编排
基于 [FlowGram](https://flowgram.ai/)(与 Coze 同源)的自由布局画布:拖拽节点、连线成流,对齐吸附、缩略图导航、右键菜单与快捷键一应俱全。内置 17 种节点:LLM、意图分类、JSON 提取、代码、HTTP、条件分支、循环、子工作流……
### 🐞 像调试代码一样调试工作流
行业首创的调试体验:**断点、单步执行、变量实时监控、Mock 测试**,命中断点自动暂停,复杂流程也能精准定位问题,告别黑盒运行。
### 🤖 Agent 闭环
- 用自然语言描述需求,AI 自动生成工作流草稿
- 工作流一键发布为 Agent
- 对话页多轮调用,会话历史持久化
### ⚡ 触发器与自动化
Webhook 与 Cron 定时双触发体系,支持 HMAC 签名校验、限流保护与异步执行,`curl` 一条命令即可触发工作流。
### 🔌 多模型管理
集中管理 OpenAI / DeepSeek / 通义千问 / 智谱 / Kimi 等 OpenAI 兼容供应商,连通性一键测试,每个 LLM 节点独立选模。不配 Key 也能用内置 Mock 跑通全流程。
### 🛡️ 生产就绪
JWT 鉴权、用户数据隔离、执行历史与统计分析、SSE 实时事件流、工作流 JSON 导入导出。
---
## 📸 界面预览
---
## 🧩 产品矩阵
Smart Flow 是我们生产力产品家族的一员,每个产品都可独立使用,组合起来形成完整的 AI 协作闭环:
| 产品 | 定位 | 说明 |
|---|---|---|
| **Smart Flow** | AI 工作流编排平台 | 本项目:可视化编排、单步调试、一键发布 Agent |
| [**PxCharts**](https://pxcharts.turntip.cn) | 多维表格 | 灵活的多维数据管理与可视化协作 |
| [**JitWord**](https://jitword.com) | 协同 AI 文档 | 实时协同的 AI 文档创作与知识沉淀 |
| [**JitKnow**](https://know.jitword.com) | AI 知识库 | 面向团队的 AI 知识库,即问即答 |
| [**AI 学习手册**](https://aibook.mvtable.com) | AI 学习手册 | 体系化的 AI 学习与实践指南,从入门到精通 |
---
## 🏁 快速开始
### 环境要求
- Node.js >= 18
- npm >= 7(支持 workspaces)
### 安装与运行
```bash
# 克隆项目
git clone https://github.com/MrXujiang/smart-flow.git
cd smart-flow
# 安装依赖
npm install
# 一键启动前后端(前端 :5173 / 后端 :3001)
npm run dev
```
### 首次使用
1. 管理员账号来自 `server/.env` 的 `ADMIN_USERNAME` / `ADMIN_PASSWORD`(复制 `server/.env.example` 即可);未配置密码时自动生成并打印在后端日志
2. 登录后在「模型配置」中添加 LLM 供应商 API Key(留空则使用 Mock 模式)
3. 创建工作流 → 拖拽编排 → 运行调试 → 发布为 Agent
4. 应用内置「开发文档」页(路由 `/docs`)覆盖完整功能与配置说明
---
## 🧱 技术栈
| 层 | 技术 |
|---|---|
| 前端 | React 18 + TypeScript + Vite 5 + Tailwind CSS + Zustand + React Router + i18next |
| 画布 | @flowgram.ai/free-layout-editor |
| 后端 | NestJS 10 + TypeORM 0.3 + SQLite (better-sqlite3) |
| 认证 | JWT(@nestjs/jwt) |
| 引擎 | Kahn 拓扑调度 + 波次并行 + 执行队列,代码节点 vm 沙箱 |
| 实时 | SSE 事件流推送执行与调试状态 |
---
## 🗂️ 项目结构
```
smart-flow/
├── client/ # 前端(React + Vite)
│ └── src/
│ ├── editor/ # FlowGram 画布、节点注册、属性面板
│ ├── pages/ # 首页 / 控制台 / 编辑器 / Agent / 文档等页面
│ ├── store/ # Zustand 状态
│ ├── api/ # REST / SSE 客户端
│ └── i18n/ # 中英国际化
├── server/ # 后端(NestJS)
│ └── src/
│ ├── engine/ # 执行引擎与调试会话
│ ├── workflows/ # 工作流 CRUD / 导入导出 / 模板
│ ├── executions/ # 执行历史 / 统计 / SSE
│ ├── agents/ # Agent 管理与对话
│ ├── ai/ # 自然语言生成工作流
│ ├── triggers/ # Webhook / Cron / HMAC
│ ├── models/ # 模型配置
│ └── auth/ # JWT 鉴权与用户管理
└── package.json # npm workspaces 根配置
```
---
## 🗺️ 路线图
- [ ] v0.9:工作流版本管理与回滚
- [ ] v1.0:团队协作与工作空间
- [ ] v1.1:模板市场与社区分享
- [ ] v1.2:监控告警与失败通知
- [ ] v2.0:Python 代码节点支持
有想优先实现的功能?欢迎 [提交 Issue](https://github.com/MrXujiang/smart-flow/issues) 讨论!
---
## 🤝 参与贡献
- **Star 本项目**:让更多人看到它 ⭐
- **提交 Issue**:报告 Bug 或提出功能建议
- **提交 PR**:Fork → 特性分支 → Pull Request
新增一个节点只需实现一个 `NodeExecutor` 并注册,新增页面只需一个 React 组件 —— 模块化设计让贡献变得简单。
---
## 📄 许可证
本项目基于 [GPL-3.0](LICENSE) 开源。
---
## 💬 联系与交流
- **作者**:徐小夕([MrXujiang](https://github.com/MrXujiang))
- **公众号**:JitWord(扫码关注,获取最新动态)
- **微信**:Alex
---
## 🙏 致谢
- [FlowGram](https://flowgram.ai/) —— 企业级画布引擎
- [NestJS](https://nestjs.com/) · [React](https://react.dev/) · [Tailwind CSS](https://tailwindcss.com/)
Visual when you want it, code when you need it.