{"_id":"@diward/n8n-nodes-ai-agent-langfuse-custom","_rev":"4-c80a3de6e22724891555731b897b9831","name":"@diward/n8n-nodes-ai-agent-langfuse-custom","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@diward/n8n-nodes-ai-agent-langfuse-custom","version":"0.1.0","keywords":["n8n-community-node-package","langfuse","langchain","openai"],"author":{"name":"diward","email":"edu.diward@gmail.com"},"license":"MIT","_id":"@diward/n8n-nodes-ai-agent-langfuse-custom@0.1.0","maintainers":[{"name":"diward","email":"edu.diward@gmail.com"}],"homepage":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom#readme","bugs":{"url":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom/issues"},"n8n":{"nodes":["dist/nodes/AgentWithLangfuse/AgentWithLangfuse.node.js"],"credentials":["dist/credentials/LangfuseCustomApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"672cb90fe1c0ef2c7880f591919ac5c355a38d81","tarball":"https://registry.npmjs.org/@diward/n8n-nodes-ai-agent-langfuse-custom/-/n8n-nodes-ai-agent-langfuse-custom-0.1.0.tgz","fileCount":54,"integrity":"sha512-FD/01XyyH3SvDb+tgJaoCiPdBk1nAh3CzvycFumdytd5AJdFcwMLVizG9fA1totBl13aFWU+T9x1R1Ihjoz5Gg==","signatures":[{"sig":"MEUCIA862qE9OSf7vBpl/4xCPviq7MOUBiU/XQv8ycBRUTtxAiEA+0Jb8ZrarCLtctmsgkHKcPSfbRDHBev8TkONkTKfMzo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":532425},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"8e962fee1c25986726b3645ce78ba7f3f7d84f4f","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"diward","email":"edu.diward@gmail.com"},"overrides":{"langfuse-langchain":{"langchain":"$langchain"}},"repository":{"url":"git+https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom.git","type":"git"},"_npmVersion":"9.2.0","description":"n8n community node: AI Agent + Langfuse","directories":{},"_nodeVersion":"20.18.1","dependencies":{"lodash":"^4.17.21","openai":"^5.19.1","undici":"^7.15.0","langchain":"^1.1.1","proxy-from-env":"^1.1.0","@langchain/core":"^1.0.0","@langchain/openai":"^1.0.0","@langchain/classic":"^1.0.5","langfuse-langchain":"^3.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.1","eslint":"^8.57.0","gulp-cli":"^3.1.0","prettier":"^3.5.3","typescript":"^5.8.3","n8n-workflow":"^1.120.3","@types/lodash":"^4.17.20","@types/json-schema":"^7.0.15","@types/proxy-from-env":"^1.0.4","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3","@typescript-eslint/eslint-plugin":"~8.32.0"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-ai-agent-langfuse-custom_0.1.0_1771329867090_0.4561221631817711","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@diward/n8n-nodes-ai-agent-langfuse-custom","version":"0.1.1","keywords":["n8n-community-node-package","langfuse","langchain","openai"],"author":{"name":"diward","email":"edu.diward@gmail.com"},"license":"MIT","_id":"@diward/n8n-nodes-ai-agent-langfuse-custom@0.1.1","maintainers":[{"name":"diward","email":"edu.diward@gmail.com"}],"homepage":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom#readme","bugs":{"url":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom/issues"},"n8n":{"nodes":["dist/nodes/AgentWithLangfuse/AgentWithLangfuseCustom.node.js"],"credentials":["dist/credentials/LangfuseCustomApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"a0d41df0fad01d28d99ad9ed451df30d76a43d39","tarball":"https://registry.npmjs.org/@diward/n8n-nodes-ai-agent-langfuse-custom/-/n8n-nodes-ai-agent-langfuse-custom-0.1.1.tgz","fileCount":54,"integrity":"sha512-u2ZJfrkHzDYjATCFmoHQ5IshGN8j3pnWvE3oS2f98ukDHSjKaUHkoJhJXyDDLaH3j2njFwYk9qxiSeqvDVx60w==","signatures":[{"sig":"MEYCIQDfhr+10ieWh/EKQSAp9GPvllH+cnSgIeRKbyhbb1N9AAIhAMYq4D/kYayXFQDn7aooCkZC4+NAsFGI3EFJOOKlmpMT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":532675},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"8e962fee1c25986726b3645ce78ba7f3f7d84f4f","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"diward","email":"edu.diward@gmail.com"},"overrides":{"langfuse-langchain":{"langchain":"$langchain"}},"repository":{"url":"git+https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom.git","type":"git"},"_npmVersion":"9.2.0","description":"n8n community node: AI Agent + Langfuse","directories":{},"_nodeVersion":"20.18.1","dependencies":{"lodash":"^4.17.21","openai":"^5.19.1","undici":"^7.15.0","langchain":"^1.1.1","proxy-from-env":"^1.1.0","@langchain/core":"^1.0.0","@langchain/openai":"^1.0.0","@langchain/classic":"^1.0.5","langfuse-langchain":"^3.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.1","eslint":"^8.57.0","gulp-cli":"^3.1.0","prettier":"^3.5.3","typescript":"^5.8.3","n8n-workflow":"^1.120.3","@types/lodash":"^4.17.20","@types/json-schema":"^7.0.15","@types/proxy-from-env":"^1.0.4","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3","@typescript-eslint/eslint-plugin":"~8.32.0"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-ai-agent-langfuse-custom_0.1.1_1771332731172_0.47635921249965785","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@diward/n8n-nodes-ai-agent-langfuse-custom","version":"0.1.2","keywords":["n8n-community-node-package","langfuse","langchain","openai"],"author":{"name":"diward","email":"edu.diward@gmail.com"},"license":"MIT","_id":"@diward/n8n-nodes-ai-agent-langfuse-custom@0.1.2","maintainers":[{"name":"diward","email":"edu.diward@gmail.com"}],"homepage":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom#readme","bugs":{"url":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom/issues"},"n8n":{"nodes":["dist/nodes/AgentWithLangfuseCustom/AgentWithLangfuseCustom.node.js"],"credentials":["dist/credentials/LangfuseCustomApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"46b6ec74d19b07b416e8959b8dc34367620471e4","tarball":"https://registry.npmjs.org/@diward/n8n-nodes-ai-agent-langfuse-custom/-/n8n-nodes-ai-agent-langfuse-custom-0.1.2.tgz","fileCount":54,"integrity":"sha512-3GQROI2FIk9SKuRe1Z3DVtiIkrn6/TSkJoz3V3+BVFC9V7Or90ONjwKXeNJqK3gaSLngl6mCizFcJAWNmA6hGQ==","signatures":[{"sig":"MEUCIQCU/vo/3ueRDvAZu7waFpxlxbFhVna7c9R9Jz86NCV73gIgcBSfgjpURxDc2RTBP3qAiWkYH8JBKDmbRaMtqn6Rri8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":532687},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"8e962fee1c25986726b3645ce78ba7f3f7d84f4f","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"diward","email":"edu.diward@gmail.com"},"overrides":{"langfuse-langchain":{"langchain":"$langchain"}},"repository":{"url":"git+https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom.git","type":"git"},"_npmVersion":"9.2.0","description":"n8n community node: AI Agent + Langfuse","directories":{},"_nodeVersion":"20.18.1","dependencies":{"lodash":"^4.17.21","openai":"^5.19.1","undici":"^7.15.0","langchain":"^1.1.1","proxy-from-env":"^1.1.0","@langchain/core":"^1.0.0","@langchain/openai":"^1.0.0","@langchain/classic":"^1.0.5","langfuse-langchain":"^3.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.1","eslint":"^8.57.0","gulp-cli":"^3.1.0","prettier":"^3.5.3","typescript":"^5.8.3","n8n-workflow":"^1.120.3","@types/lodash":"^4.17.20","@types/json-schema":"^7.0.15","@types/proxy-from-env":"^1.0.4","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3","@typescript-eslint/eslint-plugin":"~8.32.0"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-ai-agent-langfuse-custom_0.1.2_1771333113539_0.8651294139874737","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@diward/n8n-nodes-ai-agent-langfuse-custom","version":"0.1.3","description":"n8n community node: AI Agent + Langfuse","keywords":["n8n-community-node-package","langfuse","langchain","openai"],"license":"MIT","homepage":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom#readme","author":{"name":"diward","email":"edu.diward@gmail.com"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom.git"},"engines":{"node":">=20.15"},"main":"index.js","scripts":{"build":"npx rimraf dist && tsc && gulp build:icons","dev":"tsc --watch","format":"prettier nodes credentials --write","lint":"eslint nodes credentials package.json","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/LangfuseCustomApi.credentials.js"],"nodes":["dist/nodes/AgentWithLangfuseCustom/AgentWithLangfuseCustom.node.js"]},"dependencies":{"@langchain/classic":"^1.0.5","@langchain/core":"^1.0.0","@langchain/openai":"^1.0.0","langchain":"^1.1.1","langfuse-langchain":"^3.0.0","lodash":"^4.17.21","openai":"^5.19.1","proxy-from-env":"^1.1.0","undici":"^7.15.0"},"devDependencies":{"@types/json-schema":"^7.0.15","@types/lodash":"^4.17.20","@types/proxy-from-env":"^1.0.4","@typescript-eslint/eslint-plugin":"~8.32.0","@typescript-eslint/parser":"~8.32.0","eslint":"^8.57.0","eslint-plugin-n8n-nodes-base":"^1.16.3","gulp":"^5.0.1","gulp-cli":"^3.1.0","n8n-workflow":"^1.120.3","prettier":"^3.5.3","typescript":"^5.8.3"},"peerDependencies":{"n8n-workflow":"*"},"overrides":{"langfuse-langchain":{"langchain":"$langchain"}},"gitHead":"8e962fee1c25986726b3645ce78ba7f3f7d84f4f","bugs":{"url":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom/issues"},"_id":"@diward/n8n-nodes-ai-agent-langfuse-custom@0.1.3","_nodeVersion":"20.18.1","_npmVersion":"9.2.0","dist":{"integrity":"sha512-e25ZjGNpDHsWkBjiIPhC8BMF+nVXRf76gCbIo53ZJeBbv0pxwRjv6MtcHIcQYtEmCyksQNb4I5GMYkrpofj4ng==","shasum":"5583d3fa44459083f7b7a28737b070986b5e9576","tarball":"https://registry.npmjs.org/@diward/n8n-nodes-ai-agent-langfuse-custom/-/n8n-nodes-ai-agent-langfuse-custom-0.1.3.tgz","fileCount":54,"unpackedSize":532687,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICpPsNeY/cn3FrCAhchgARj1PinT3NgxrByhlEJyPzYgAiEA+1DaGLXtnC0kD9hGCDkMFVz7zPC18aR413arnX+Qx1w="}]},"_npmUser":{"name":"diward","email":"edu.diward@gmail.com"},"directories":{},"maintainers":[{"name":"diward","email":"edu.diward@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-ai-agent-langfuse-custom_0.1.3_1771333437489_0.04515336599702913"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-17T12:04:26.981Z","modified":"2026-02-17T13:03:57.804Z","0.1.0":"2026-02-17T12:04:27.284Z","0.1.1":"2026-02-17T12:52:11.314Z","0.1.2":"2026-02-17T12:58:33.790Z","0.1.3":"2026-02-17T13:03:57.701Z"},"bugs":{"url":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom/issues"},"author":{"name":"diward","email":"edu.diward@gmail.com"},"license":"MIT","homepage":"https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom#readme","keywords":["n8n-community-node-package","langfuse","langchain","openai"],"repository":{"type":"git","url":"git+https://github.com/Diward/n8n-nodes-ai-agent-langfuse-custom.git"},"description":"n8n community node: AI Agent + Langfuse","maintainers":[{"name":"diward","email":"edu.diward@gmail.com"}],"readme":"# n8n-nodes-ai-agent-langfuse\n\n> This project is proudly developed and maintained by **Wistron DXLab**.\n\n![node-example](https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse/blob/main/assets/node-example.png?raw=true)\n\nAn n8n community node that integrates [Langfuse](https://langfuse.com) observability into your AI Agent workflows.\nSupports tool-calling agents, memory, structured output, and full tracing of reasoning steps.\n\nnpm package: [https://www.npmjs.com/package/n8n-nodes-ai-agent-langfuse](https://www.npmjs.com/package/n8n-nodes-ai-agent-langfuse)\n\n## Features\n\n- AI Agent Integration: Works with LangChain’s AgentExecutor and ToolCallingAgent\n- Observability: Automatic Langfuse tracing for LLM reasoning, tool calls, and outputs\n- Custom Metadata: Inject sessionId, userId, and structured JSON metadata into each trace\n\n[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.\n\n[Installation](#installation)  \n[Credentials](#credentials)  <!-- delete if no auth needed -->  \n[Operations](#operations)  \n[Compatibility](#compatibility)  \n[Usage](#usage)  <!-- delete if not using this section -->  \n[Resources](#resources)  \n[Version history](#version-history)  <!-- delete if not using this section -->  \n\n## Installation\nFollow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the official n8n documentation for community nodes.\n\n### Community Nodes (Recommended)\nFor **n8n v0.187+**, install directly from the UI:\n1. Go to Settings → Community Nodes\n2. Click **Install**\n3. Enter `n8n-nodes-ai-agent-langfuse` in Enter npm package name\n4. Agree to the risks of using community nodes\n5. Select Install\n\n### Docker Installation (Recommended for Production)\nA preconfigured Docker setup is available in the `docker/` directory:\n\n1. Clone the repository and navigate to the docker/ directory\n    ```bash\n    git clone https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse.git\n    cd n8n-nodes-ai-agent-langfuse/docker\n    ```\n2. Build the Docker image\n    ```bash\n    docker build -t n8n:nodes-ai-agent-langfuse .\n    ```\n3. Run the container\n    ```bash\n    docker run -it -p 5678:5678 n8n:nodes-ai-agent-langfuse\n    ```\nYou can now access n8n at http://localhost:5678\n\n### Manual Installation\nFor a standard installation without Docker:\n```bash\n# Go to your n8n installation directory\ncd ~/.n8n \n# Install the node\nnpm install n8n-nodes-ai-agent-langfuse\n# Restart n8n to apply the node\nn8n start\n```\n## Credential \n\nThis credential is used to:\n- Enable Langfuse tracing, by sending structured request/response logs to your Langfuse instance\n\n### Langfuse Settings\n|Field Name|Description|Example|\n|-----|-----|-----|\nLangfuse Base URL|The base URL of your Langfuse instance|`https://cloud.langfuse.com` or self-hosted URL|\n|Public Key *|Langfuse public key used for tracing authentication|`pk-xxx`|\nSecret Key *|Langfuse secret key used for tracing authentication|`sk-xxx`|\n\n> 🔑 How to find your Langfuse keys: <br>\n> Log in to your Langfuse dashboard, then go to: <br>\n> Settings → Projects → [Your Project] to retrieve publicKey and secretKey.\n\n### Credential UI Preview\nOnce filled out, your credential should look like this:\n\n![credentials-example](https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse/blob/main/assets/langfuse-api-example.png?raw=true)\n\n✅ After saving the credential, you're ready to use the node and see traces in your Langfuse dashboard.\n\n## Operations\n\nThis node lets you run multi-tool AI agents with full observability.\n\nYou can trace every run with context such as `sessionId`, `userId`, and any custom metadata.\n\n---\n### Supported Fields\n\n| Field | Type | Description |\n|----------|----------|----------|\n| `sessionId` | `string` | Logical session ID to group related runs |\n| `userId` | `string` | ID representing the end user making the request |\n| `metadata` | `object` | Custom JSON object with additional context (e.g., workflowId, env) |\n\n![langfuse-metadata-example](https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse/blob/main/assets/langfuse-metadata-example.png?raw=true)\n---\n### 🧪 Example Setup\n| Input Field | Example Value |\n|----------|----------|\n| Session ID | `{{$json.sessionId}}`|\n| User ID | `test` |\t\nCustom Metadata (JSON)\n```json\n{\n  \"project\": \"test-project\",\n  \"env\": \"dev\",\n  \"workflow\": \"main-flow\"\n}\n```\n---\n### Visual Example\n1. **Node Configuration UI**: This shows a sample n8n workflow using the AI Agent with Langfuse Node.\n\n![node-example](https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse/blob/main/assets/node-example.png?raw=true)\n\n2. **Langfuse Trace Output**\nHere’s how a single request looks inside Langfuse:\n- LLM reasoning steps\n- Tool calls (with args & results)\n- Final JSON responseHere’s how traces appear inside the Langfuse dashboard.\n\n![langfuse-trace-example](https://github.com/rorubyy/n8n-nodes-ai-agent-langfuse/blob/main/assets/langfuse-trace-example.png?raw=true)\n\n\n## Compatibility\n- Requires n8n version 1.0.0 or later\n- Compatible with:\n  - OpenAI official API (https://api.openai.com)\n  - Any OpenAI-compatible LLM (e.g. via LiteLLM, LocalAI, Azure OpenAI)\n  - Langfuse Cloud and self-hosted instances\n\n## Resources\n\n- [n8n Community Node Docs](https://docs.n8n.io/integrations/community-nodes/)\n- [Langfuse Documentation](https://docs.langfuse.com/)\n- [n8n Community Forum](https://community.n8n.io/)\n- [Langfuse GitHub](https://github.com/langfuse/langfuse)\n- [n8n-nodes-langfuse-ai-agent](https://github.com/matanzvili/n8n-nodes-langfuse-ai-agent)\n\n## Version History\n\n- **v0.1** – Initial release with AI Agent + Langfuse integration\n\n## License\nMIT © 2025 Wistron DXLab  ","readmeFilename":"README.md"}