deepseek-thinking

Make DeepSeek think as hard as your workflow deserves. An n8n community node that unlocks DeepSeek's Thinking Level (reasoning_effort: none to max) that the built-in node never exposed.

Package Information

Released: 1 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 0.3.5
Author: Dr. Enes Karaaslan

Documentation

DeepSeek

n8n-nodes-deepseek-thinking

DeepSeek chat model for n8n with reasoning effort control.
The one setting the built-in node never exposed.

npm MIT n8n community node


The problem

n8n's DeepSeek chat node has no parameter to control thinking effort. Every call
runs at the server default, whether the task is a one word classification or a
multi step analysis.

This node fixes that.

The fix

Same node, plus a Thinking Level dropdown sent as
reasoning_effort.

Setting Sent as Behaviour
API Default (omitted) Server decides
None none Thinking off, fastest and cheapest
Low / Medium low / medium Normalised to high
High high Default thinking effort
Extra High xhigh Normalised to max
Max max Maximum effort

Any value except none enables thinking mode.

Models

Graded effort is honoured by DeepSeek V4 Pro (deepseek-v4-pro) and
V4 Flash (deepseek-v4-flash), which map low/medium to high and
xhigh to max. The model list is loaded live from your account's /models
endpoint, so new releases appear without a package update. DeepSeek also swaps
improved builds in behind the same model id, as it did with V4 Flash 0731, so
those arrive on their own too.

Retired names: deepseek-chat and deepseek-reasoner stopped resolving
on 2026-07-24. If a saved workflow still selects one, change it to
deepseek-v4-flash or deepseek-v4-pro.

Install

Community Nodes UI: Settings → Community nodes → Install:

n8n-nodes-deepseek-thinking

Self hosted, from source:

git clone https://github.com/pirazor/n8n-nodes-deepseek-thinking.git
cd n8n-nodes-deepseek-thinking && npm install && npm run build
cp -r . ~/.n8n/custom/n8n-nodes-deepseek-thinking   # then restart n8n

Usage

Add DeepSeek Chat Model (Thinking), select your existing DeepSeek
credential, pick a model and Thinking Level, then connect it to an AI Agent's
Model input.

Reuses n8n's built-in deepSeekApi credential, so there is nothing new to
configure. Temperature, topP, maxTokens, penalties, timeout, retries and JSON
response format all work as before.

Tip: thinking costs latency and tokens. Setting None on classification
and extraction steps is often the biggest speedup in an agent pipeline.

Notes

  • Works inside an AI Agent with tools. In thinking mode DeepSeek returns a
    reasoning_content field and requires it back on every later request that
    carries tools. LangChain drops it, so the second leg of a tool calling loop
    fails with 400 The reasoning_content in the thinking mode must be passed back to the API. This node carries it across turns, matching on tool call id, on
    both the plain and the streamed transport (n8n streams the model whenever
    the workflow is triggered with a streaming response, e.g. the Chat Trigger
    in streaming mode), and keeps every turn of a long tool loop. The reasoning
    is also attached to the returned message as
    additional_kwargs.reasoning_content and read back from incoming messages,
    which is what n8n's AI Agent v3 relies on: it runs tools through the
    workflow engine and re-runs the agent with a fresh model instance for each
    round, rebuilding the assistant messages from stored metadata. A shared
    in-process store covers agents that replay LangChain's own message objects
    (Agent v2, fallback models).

  • If the 400 still appears, the error message now ends with a bracketed
    note from this node listing which assistant messages had no
    reasoning_content to restore and whether they belong to the current
    round. Include it when reporting an issue. If the note is absent, n8n is
    still running an older version of the package: check the version under
    Settings → Community nodes and restart n8n after updating.

  • Runs are reported to n8n, so the sub node shows its input, output and
    token usage in the execution panel like the built in models do.

  • JSON response format and thinking are incompatible on some models. Use
    None if a model rejects the pair.

  • If the node does not appear in an Agent's Model dropdown, set
    N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true and restart n8n.

License

MIT © 2026 Dr. Enes Karaaslan, Connected Wise LLC

Not affiliated with or endorsed by DeepSeek or n8n GmbH.

Discussion