SuperAPI AI 工具集

n8n-code-tool

智能体与模型

查看项目

更新于 10-15 20:30

技能介绍

用途:本技能指导在 n8n 的 Custom Code Tool(节点类型 @n8n/n8n-nodes-langchain.toolCode)中编写代码。该节点由 AI Agent(LangChain)调用,而非工作流中的普通 Code 节点(n8n-nodes-base.code),两者包、调用方、输入输出契约均不同。

主要能力与契约:输入变量固定为 query(JavaScript)或 _query(Python),不可重命名;返回值必须是字符串,数字会自动转换,返回对象或数组会报错,结构化结果建议用 JSON.stringify()。工具名需为字母、数字、下划线(v1.1+),应使用动词式描述性名称;描述字段是给 LLM 的调用契约,需说明何时使用及发送什么。

两种输入模式:默认非结构化(specifyInputSchema: false),AI 传入单个字符串,可在描述中要求其传 JSON 字符串再自行解析;结构化模式(specifyInputSchema: true)下工具变为 LangChain DynamicStructuredTool,LLM 按类型化 schema 传对象,可通过 schemaType: "fromJson" + jsonSchemaExample(n8n v≥1.3)或 schemaType: "manual" + inputSchema 定义。

限制:沙箱中不可用 $fromAI()、$input、$json、$node、this.helpers.httpRequest()、$jmespath()、getContext、$getWorkflowStaticData 等;需要 HTTP 调用、凭据、跨调用状态或多参数类型化输入时,应改用 HTTP Request Tool 或 toolWorkflow。错误会返回给 LLM 供其重试,错误信息应说明问题与正确调用方式。

适用场景:纯确定性计算、解析、格式化、校验等本地计算型工具,通过 ai_tool 连接接入 AI Agent。完整 schema 与错误目录见 INPUT_SCHEMA.md、ERROR_PATTERNS.md。