附录:源码索引与术语表
A.1 源码索引
| 主题 | 本地路径 | 上游链接 |
|---|---|---|
| 根脚本与版本 | package.json | package.json |
| workspace | pnpm-workspace.yaml | pnpm-workspace.yaml |
| 工作流类型 | packages/workflow/src/Interfaces.ts | Interfaces.ts |
| 图模型 | packages/workflow/src/workflow.ts | workflow.ts |
| 执行器 | packages/core/src/execution-engine/workflow-execute.ts | workflow-execute.ts |
| 部分执行 | packages/core/src/execution-engine/partial-execution-utils | partial-execution-utils |
| 节点上下文 | packages/core/src/execution-engine/node-execution-context | node-execution-context |
| 节点加载 | packages/core/src/nodes-loader | nodes-loader |
| 官方节点 | packages/nodes-base/nodes | nodes |
| CLI 启动 | packages/cli/src/commands/start.ts | start.ts |
| 执行编排 | packages/cli/src/workflow-runner.ts | workflow-runner.ts |
| Webhook | packages/cli/src/webhooks | webhooks |
| Scaling | packages/cli/src/scaling | scaling |
| Credentials | packages/cli/src/credentials + credentials-helper.ts | credentials |
| DB entities | packages/@n8n/db/src/entities | entities |
| 前端画布 | packages/frontend/editor-ui/src/features/workflows/canvas | canvas |
| 前端 workflow state | packages/frontend/editor-ui/src/app/stores/workflowDocument | workflowDocument |
| LangChain | packages/@n8n/n8n-nodes-langchain | n8n-nodes-langchain |
| Task runner | packages/@n8n/task-runner* + packages/cli/src/task-runners | task-runner |
| CI / release | .github/workflows | workflows |
A.2 术语表
| 术语 | 含义 |
|---|---|
| workflow | 节点、连接、设置和版本组成的可执行图 |
| node | 图中的执行单元,既可以是 action,也可以是 trigger、AI capability |
| execution | 某个 workflow 在某次输入下的一次运行及其状态/结果 |
| run data | 按节点保存的 task 输入、输出、错误和时间信息 |
| item | 节点之间传递的 { json, binary?, pairedItem? } 数据单元 |
| paired item | 当前 item 与上游 item 的来源对应关系 |
| main connection | 普通数据/控制流连接 |
| AI connection | 模型、工具、memory、parser 等辅助连接 |
| active workflow | 已将 trigger/webhook/schedule 注册到运行时的 workflow |
| main | 负责 API、激活、编排和管理的 n8n 服务进程 |
| worker | 从队列领取 execution 并调用 core 执行的进程 |
| task runner | 执行 Code 节点用户代码的隔离运行时 |
| project scope | 把资源访问限制到用户可访问项目的权限范围 |
A.3 推荐的验证命令
在 n8n 源码仓库中,遵循项目约定使用 pnpm:
pnpm build
pnpm typecheck
pnpm lint
pnpm test:affected
在本拆解站点中:
pnpm install
pnpm build
pnpm serve
GitHub Pages 由 .github/workflows/deploy.yml 在 main 分支 push 后自动构建,并通过 Pages artifact 发布。