Code(代码执行)
节点概述
节点英文名: Code
节点中文名称: 代码执行
支持场景: Chatflow Agent(支持), Workflow Agent(支持)
迭代版本: 版本 1
功能说明
Code 节点用于运行一段自定义代码(如 Python 和 JavaScript),实现特定业务逻辑或计算,输出结果供后续节点使用。它提供了强大的编程能力,允许用户在工作流中执行自定义的代码逻辑。
节点展示内容

1. 基本信息展示
- 图标: 节点专用图标
- 名称: 节点名称
- 注释: 用户添加的说明文字
2. 操作按钮
- 更多按钮: 点击后展示右键菜单内容
- 运行按钮: 点击进入试运行界面
节点编辑区域

1. 输入变量配置
- 添加变量: 点击后新增一行输入变量
- 变量列表: 支持多行变量的展示,支持删除
- 变量输入: 支持多个变量的输入
- 变量名: 支持填写变量名称
- 变量值: 支持通过【选择变量】组件选择变量值
2. 代码输入框
- 语言选择: 支持 Python3 和 JavaScript 两种类型的选择
- 代码编辑: 提供代码编辑器,支持语法高亮、复制与放大
- 固定入口: 代码需实现
main函数,返回值为字典,键与输出变量一一对应(如def main(arg1: str, arg2: str) -> dict: return {"result": arg1 + arg2})
3. 输出变量配置
- 变量名称: 支持填写变量名称
- 变量类型: 支持选择变量类型
- 添加删除: 支持添加和删除变量
- 变量类型范围:
- String / Array[String]
- Number / Array[Number]
- Object / Array[Object]
4. 失败时重试
- 开关: 开启后,代码执行失败时自动重试
5. 下一步配置
- 支持添加下一个节点
运行逻辑
Code 节点的运行逻辑由后端实现,确保代码的正确执行和安全控制。
右键操作
右键菜单包含以下选项:
- 更改节点: 修改节点类型
- 拷贝: 复制节点
- 复制: 复制节点内容
- 删除: 删除节点
- 帮助链接: 跳转到帮助文档
- 运行节点: 测试运行当前节点
测试运行
- 支持状态: 支持测试运行
- 更改节点: 支持更改节点类型
- 复制功能: 支持复制、剪贴、删除操作
编程语言支持
1. Python3
- 版本: Python 3.x
- 标准库: 支持 Python 标准库(第三方库以沙箱实际支持为准)
- 语法: 完整的 Python 语法支持
2. JavaScript

- 版本: Node.js 环境
- 标准库: 支持 Node.js 标准库
- 语法: 完整的 JavaScript 语法支持
- 函数签名: 与 Python 模式不同,JS 的
main函数以解构对象接收输入变量——function main({arg1, arg2}),返回对象的字段对应输出变量 (如return { result: ... })
使用场景
1. 数据处理
- 数据清洗: 清理和格式化数据
- 数据转换: 转换数据格式和类型
- 数据计算: 执行复杂的数学计算
- 数据验证: 验证数据格式和内容
2. 业务逻辑
- 条件判断: 实现复杂的业务规则
- 算法实现: 实现特定的算法逻辑
- 流程控制: 控制工作流的执行流程
- 状态管理: 管理应用状态
3. 数据解析与加工
- 数据解析: 解析 JSON 等格式的数据(外部接口调用请使用 Http Request / Tool 节点)
- 批量处理: 批量加工数据
- 报告生成: 生成结构化的报告内容
最佳实践
1. 代码编写
- 清晰命名: 使用清晰的变量和函数命名
- 注释说明: 添加必要的注释说明
- 错误处理: 添加适当的错误处理
- 性能优化: 考虑代码的执行性能
2. 变量管理
- 类型安全: 确保变量类型正确
- 命名规范: 使用一致的命名规范
- 作用域: 合理管理变量作用域
- 内存管理: 注意内存使用
3. 错误处理
- 异常捕获: 使用 try-catch 处理异常
- 错误日志: 记录错误信息
- 优雅降级: 提供降级处理方案
- 用户提示: 提供友好的错误提示
4. 安全考虑
- 输入验证: 验证输入数据
- 代码注入: 防止代码注入攻击
- 权限控制: 控制代码执行权限
- 资源限制: 限制资源使用
配置步骤
1. 基础配置
- 选择编程语言(Python3 或 JavaScript)
- 配置输入变量
- 编写代码逻辑
2. 代码编写
- 定义处理逻辑
- 处理输入变量
- 生成输出结果
- 添加错误处理
3. 输出配置
- 定义输出变量
- 设置变量类型
- 配置变量名称
4. 测试验证
- 使用试运行功能测试
- 检查代码执行结果
- 验证输出变量
注意事项
- 语言选择: 根据任务特点选择合适的编程语言
- 代码质量: 编写高质量、可维护的代码
- 性能考虑: 考虑代码执行的性能和资源使用
- 安全风险: 注意代码执行的安全风险
- 错误处理: 添加适当的错误处理机制
常见问题
Q: 支持哪些编程语言?
A: 目前支持 Python3 和 JavaScript 两种编程语言。
Q: 如何添加输入变量?
A: 点击"+"按钮可以添加新的输入变量行。
Q: 输出变量类型有哪些?
A: 支持 String、Number、Object 及其对应的 Array 类型。
Q: 代码执行有安全限制吗?
A: 是的,代码执行有安全限制,不能执行危险操作。
Q: 如何调试代码?
A: 可以使用试运行功能来调试代码,查看执行结果。
帮助资源
- 帮助文档: 支持跳转到 Infra 帮助文档
- 测试运行: 支持节点级别的测试运行