本页面提供了 n8n monorepo 结构概述,并解释了每个核心软件包的用途和功能。n8n 被组织成一个 monorepo,包含多个协同工作的软件包,以提供工作流自动化能力。
有关工作流执行引擎的信息,请参阅 工作流执行引擎。
n8n 使用 pnpm workspaces 组织成一个 monorepo。该 monorepo 包含几个核心软件包,为 n8n 工作流自动化平台提供了基础。
来源
下表概述了 n8n monorepo 中的主要软件包
| 包 | 描述 | 角色 |
|---|---|---|
n8n (CLI) | 主 CLI 包 | n8n 的入口点,负责服务器启动、CLI 命令 |
n8n-core | 核心功能 | 提供核心服务、工作流执行、文件处理 |
n8n-workflow | 工作流基础代码 | 定义工作流结构、节点执行、数据处理 |
n8n-nodes-base | 基础节点 | 包含所有标准节点和凭据 |
n8n-editor-ui | 前端 UI | 基于 Vue 的工作流编辑用户界面 |
@n8n/n8n-nodes-langchain | LangChain 集成 | AI 相关节点和功能 |
@n8n/config | 配置 | 配置管理系统 |
@n8n/db | 数据库 | 数据库访问和模型 |
@n8n/backend-common | 通用后端实用工具 | 共享后端功能 |
n8n-node-dev | 节点开发 | 用于节点和凭据开发的 CLI |
来源
CLI 软件包是 n8n 的主要入口点。它提供命令行界面和服务器功能。
主要功能
依赖项
来源
core 软件包提供 n8n 的基本功能,包括工作流执行、文件处理和凭据管理。
主要功能
依赖项
来源
workflow 软件包定义了核心工作流结构、节点执行和数据处理。它是工作流定义和执行的基础。
主要功能
依赖项
来源
nodes-base 软件包包含 n8n 附带的所有标准节点和凭据。它是代码量最大的软件包。
主要功能
该软件包包含以下节点
来源
editor-ui 软件包提供 n8n 的前端用户界面。它是一个基于 Vue 的应用程序,允许用户创建、编辑和管理工作流。
主要功能
依赖项
来源
n8n-nodes-langchain 软件包通过与 LangChain 集成,提供 AI 相关节点和功能。
主要功能
依赖项
来源
config 软件包提供 n8n 的配置管理系统。它允许从各种来源加载配置并根据模式进行验证。
主要功能
依赖项
来源
下图显示了核心软件包之间的依赖关系
来源
n8n 使用现代构建系统,包含以下工具
构建过程通常包括
软件包之间的通用脚本
build:构建软件包dev/watch:监视更改并重新构建lint:运行代码检查test:运行测试来源
n8n monorepo 被组织成几个核心软件包,这些软件包协同工作以提供完整的自动化平台。每个软件包都有特定的角色和职责,从作为入口点的 CLI 到提供实际集成节点的 nodes-base 软件包。
了解这些软件包之间的结构和关系对于希望为 n8n 做贡献或构建自定义节点和扩展的开发者至关重要。