{"_id":"@drx974/n8n-nodes-deepseek-fixed","_rev":"4-4da086c6c7f91f19fa5b34c45854da7a","name":"@drx974/n8n-nodes-deepseek-fixed","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@drx974/n8n-nodes-deepseek-fixed","version":"0.1.0","keywords":["n8n-community-node-package"],"license":"MIT","_id":"@drx974/n8n-nodes-deepseek-fixed@0.1.0","maintainers":[{"name":"drx974","email":"romy.david@lebattantdeslames.com"}],"n8n":{"nodes":["dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js"],"credentials":["dist/credentials/DeepSeekFixedApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"e79b9db915d6f728132391f62f483120f9c59ea5","tarball":"https://registry.npmjs.org/@drx974/n8n-nodes-deepseek-fixed/-/n8n-nodes-deepseek-fixed-0.1.0.tgz","fileCount":8,"integrity":"sha512-06sKah55rSXCPchdE4TJvUPxTAQYESTtN58jKSa4BDWtmDZ6PtxmcbLAO/f6DvSXyER4fyGWE7ZG79+PvfnHjw==","signatures":[{"sig":"MEQCIDmf4R/EMcUPjnUw2zqgIIVq53QfYNRFfM/5KoZcCAPkAiAzojWNMwETbUDrWML3cfgGnHRw1NQwfMCO4dyEc4tipA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18978},"main":"dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js","types":"./dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.d.ts","scripts":{"build":"tsc"},"_npmUser":{"name":"drx974","email":"romy.david@lebattantdeslames.com"},"_npmVersion":"11.16.0","description":"DeepSeek Chat Model for n8n AI Agent — fixes strict tool-schema rejection and reasoning_content passback","directories":{},"_nodeVersion":"26.3.1","dependencies":{"openai":"^6.46.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^24.0.0","n8n-workflow":"^2.16.0","@langchain/core":"^1.2.2"},"peerDependencies":{"@langchain/core":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-deepseek-fixed_0.1.0_1783709307150_0.9724452055291954","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@drx974/n8n-nodes-deepseek-fixed","version":"0.1.1","keywords":["n8n-community-node-package"],"license":"MIT","_id":"@drx974/n8n-nodes-deepseek-fixed@0.1.1","maintainers":[{"name":"drx974","email":"romy.david@lebattantdeslames.com"}],"n8n":{"nodes":["dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js"],"credentials":["dist/credentials/DeepSeekFixedApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"345be732904114d196fa2a6379165c292cdb1a51","tarball":"https://registry.npmjs.org/@drx974/n8n-nodes-deepseek-fixed/-/n8n-nodes-deepseek-fixed-0.1.1.tgz","fileCount":8,"integrity":"sha512-ToLd/zHE4GwlIjKW5yFfDFhz9QZdx3KsP+EXs+po4puOgBeabD5X893gysrUdBSXnB0j8HLHxMqlveukzktyaA==","signatures":[{"sig":"MEYCIQD4eag9eSlNJNp4E8dHCXWV1jBy6oSTSzcC3AsuhDWvOgIhANqDOj+uTdYgZFZcORbGjQj/foQbM+cKMW6a2L7XytFh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19352},"main":"dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js","types":"./dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.d.ts","scripts":{"build":"tsc"},"_npmUser":{"name":"drx974","email":"romy.david@lebattantdeslames.com"},"_npmVersion":"11.16.0","description":"DeepSeek Chat Model for n8n AI Agent — fixes strict tool-schema rejection and reasoning_content passback","directories":{},"_nodeVersion":"26.3.1","dependencies":{"openai":"^6.46.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^24.0.0","n8n-workflow":"^2.16.0","@langchain/core":"^1.2.2"},"peerDependencies":{"@langchain/core":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-deepseek-fixed_0.1.1_1783710820088_0.8718875180218395","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@drx974/n8n-nodes-deepseek-fixed","version":"0.1.2","keywords":["n8n-community-node-package"],"license":"MIT","_id":"@drx974/n8n-nodes-deepseek-fixed@0.1.2","maintainers":[{"name":"drx974","email":"romy.david@lebattantdeslames.com"}],"n8n":{"nodes":["dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js"],"credentials":["dist/credentials/DeepSeekFixedApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"149566ea0782157a48b329876c83eae0acbeac0d","tarball":"https://registry.npmjs.org/@drx974/n8n-nodes-deepseek-fixed/-/n8n-nodes-deepseek-fixed-0.1.2.tgz","fileCount":8,"integrity":"sha512-AZsdOiqvoIv7Kwjtxtr7k/QuOIrzItWmKDB3QeA3JLy//NGQv2QrjgKQt4ED+1LY1F6s7+aTrhjKFrJr4Kf9LQ==","signatures":[{"sig":"MEQCIHMUmo5P6fifnLTzSuU+16HIEtv4yDdPYNC9meZNaR94AiB996MuINQ1fxFPZ5qOiiy5nephZbBPMly/Ov7Y5eauug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19838},"main":"dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js","types":"./dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.d.ts","scripts":{"build":"tsc"},"_npmUser":{"name":"drx974","email":"romy.david@lebattantdeslames.com"},"_npmVersion":"11.16.0","description":"DeepSeek Chat Model for n8n AI Agent — fixes strict tool-schema rejection and reasoning_content passback","directories":{},"_nodeVersion":"26.3.1","dependencies":{"openai":"^6.46.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^24.0.0","n8n-workflow":"^2.16.0","@langchain/core":"^1.2.2"},"peerDependencies":{"@langchain/core":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-deepseek-fixed_0.1.2_1783712235923_0.4105762841274163","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@drx974/n8n-nodes-deepseek-fixed","version":"0.1.3","description":"DeepSeek Chat Model for n8n AI Agent — fixes strict tool-schema rejection and reasoning_content passback","keywords":["n8n-community-node-package"],"license":"MIT","publishConfig":{"access":"public"},"main":"dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js","n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/DeepSeekFixedApi.credentials.js"],"nodes":["dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.js"]},"scripts":{"build":"tsc && node scripts/copy-assets.js"},"peerDependencies":{"@langchain/core":"*"},"dependencies":{"openai":"^6.46.0"},"devDependencies":{"@langchain/core":"^1.2.2","@types/node":"^24.0.0","n8n-workflow":"^2.16.0","typescript":"^5.9.3"},"types":"./dist/nodes/LmChatDeepSeekFixed/LmChatDeepSeekFixed.node.d.ts","_id":"@drx974/n8n-nodes-deepseek-fixed@0.1.3","_nodeVersion":"26.3.1","_npmVersion":"12.0.1","dist":{"integrity":"sha512-25t7i1rf6iinHeJHyKaOa629nM+2kGZ8Qaw/L/dr3sWsz7TMmWNWei7kLQ5Bzx6EFlgjm0IsRbTOf6n6v3oKeg==","shasum":"c78bb6ddb23519b83719283ac11435f483293eb4","tarball":"https://registry.npmjs.org/@drx974/n8n-nodes-deepseek-fixed/-/n8n-nodes-deepseek-fixed-0.1.3.tgz","fileCount":10,"unpackedSize":31556,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDRQZU+tOVE3DikMjUIxDKTLi0aZwDApgeFwJHapk2uPgIhAO52PF1ZHOmzUAYp4zMUHjhfqYIN9bQwZcxnP3+EzoqU"}]},"_npmUser":{"name":"drx974","email":"romy.david@lebattantdeslames.com"},"directories":{},"maintainers":[{"name":"drx974","email":"romy.david@lebattantdeslames.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-deepseek-fixed_0.1.3_1783742230498_0.6242280586777422"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-10T18:48:26.979Z","modified":"2026-07-11T03:57:10.755Z","0.1.0":"2026-07-10T18:48:27.311Z","0.1.1":"2026-07-10T19:13:40.294Z","0.1.2":"2026-07-10T19:37:16.053Z","0.1.3":"2026-07-11T03:57:10.628Z"},"license":"MIT","keywords":["n8n-community-node-package"],"description":"DeepSeek Chat Model for n8n AI Agent — fixes strict tool-schema rejection and reasoning_content passback","maintainers":[{"name":"drx974","email":"romy.david@lebattantdeslames.com"}],"readme":"# @drx974/n8n-nodes-deepseek-fixed\n\nNœud DeepSeek Chat Model \"maison\" pour l'AI Agent n8n. Corrige les deux bugs\ndocumentés qui cassent le Tool Calling avec DeepSeek dans n8n :\n\n1. **Rejet du schéma `strict`** : DeepSeek renvoie une erreur 400\n   (\"Required properties must match...\") quand n8n envoie `strict: true`\n   dans la définition JSON Schema des tools. Ce nœud ne transmet jamais ce\n   flag, quel que soit ce que l'AI Agent essaie de passer.\n\n2. **`reasoning_content` non renvoyé** : en Thinking Mode, DeepSeek exige que\n   le `reasoning_content` du tour précédent soit renvoyé tel quel dès que ce\n   tour contenait des tool_calls, sinon 400 (\"The reasoning_content in the\n   thinking mode must be passed back to the API\"). Ce nœud stocke ce champ\n   sur chaque message assistant et le réinjecte automatiquement au tour\n   suivant — Thinking Mode reste utilisable même avec des tools.\n\nPar défaut, Thinking Mode est **désactivé** (le plus sûr avec Tool Calling) ;\nvous pouvez l'activer (`high` / `max`) si vous voulez le raisonnement\nchain-of-thought sur cet agent.\n\n## Build\n\n```bash\nnpm install\nnpm run build\n```\n\n## Déploiement recommandé (le plus sûr, évite l'incident déjà rencontré)\n\nNe PAS faire `npm install` à la main dans le container n8n (ça duplique les\ndépendances et peut casser le chargement des nodes, comme déjà vécu).\n\n**Méthode recommandée : publier sur npm puis installer via l'UI n8n**\n\n```bash\nnpm login                # une fois, avec un compte npm (peut être le vôtre)\nnpm publish --access public\n```\n\nPuis, dans n8n : **Settings → Community Nodes → Install**, coller le nom du\npackage `@drx974/n8n-nodes-deepseek-fixed`, cocher la case de risque, Install,\npuis **redémarrer le container n8n** (obligatoire pour que le node se charge,\nsurtout en mode queue).\n\nSi vous préférez ne pas publier publiquement, publiez sous un nom scope privé\n(`@votre-compte/n8n-nodes-deepseek-fixed`) avec un compte npm payant \"private\npackage\", ou utilisez un registre npm privé si vous en avez un (Verdaccio,\nGitHub Packages, etc.) — le flux d'installation via l'UI reste identique.\n\n## Utilisation dans l'AI Agent\n\n1. Ajouter le nœud **DeepSeek Chat Model (Fixed)**\n2. Credential : coller votre clé API DeepSeek (`DeepSeek Fixed API`)\n3. Le connecter à l'entrée \"Chat Model\" de l'AI Agent\n4. Laisser **Thinking Mode = Disabled** pour du Tool Calling simple, ou\n   passer à `high`/`max` si vous voulez le raisonnement — les deux\n   fonctionnent avec les tools.\n5. Connecter vos tools comme d'habitude.\n\n## Icône\n\nLogo DeepSeek (icons8 \"3D Fluency\"), redimensionné en 60×60 PNG conformément\naux recommandations n8n, appliqué au nœud et au type de credential. Licence\ngratuite icons8 = attribution requise (lien vers icons8.com) sauf si vous\ndisposez d'un plan payant sans attribution — à vérifier avant publication\npublique si ça vous importe.\n\n## Limites connues\n\n- Pas de support du streaming token-par-token (`_generate` uniquement,\n  pas de `_streamResponseChunks`) — suffisant pour l'usage AI Agent classique,\n  mais à garder en tête si vous branchez ça sur un chat en streaming.\n- Testé par compilation TypeScript stricte contre `@langchain/core@1.2.2` et\n  `n8n-workflow@2.16.0` (versions au 10/07/2026) — à revalider si n8n monte\n  une version majeure différente de LangChain en interne.\n","readmeFilename":"README.md"}