How to enable human approval for specific AI Agent tool calls while maintaining normal chat conversation?

Hi everyone,

I’m building an AI Agent workflow that needs to:

  1. Have normal back-and-forth conversation with users (the agent responds automatically to questions)

  2. Pause for human approval before executing a specific tool (in my case, creating a Zendesk draft article)

My Current Setup:

  • Chat Trigger node

  • AI Agent with multiple tools

  • A “Chat” node (configured as a tool) for human approval before the “Create Zendesk Draft” action

  • Other tools that should execute without approval

The Problem:

I’m running into a conflict with the Chat Trigger’s Response Mode setting:

  • When set to “lastNode” or “immediately”: The agent responds normally in chat, BUT the Chat approval node throws an error: "Chat Trigger node must have the 'Response Mode' option set to 'Using Response Nodes'"

  • When set to “Using Response Nodes”: The Chat approval node works, BUT the agent stops responding to normal conversation messages (no responses appear in the chat)

What I’ve Tried:

  • Various combinations of response mode settings

My Question:

Is it currently possible to have an AI Agent that:

  • Responds automatically during normal conversation, AND

  • Uses a Chat node for human-in-the-loop approval on specific tool calls?

If so, what’s the correct node configuration? If not, are there any workarounds or is this a feature limitation I should be aware of?

Any guidance would be greatly appreciated!

Hi @btm1 Welcome!
First, upgrade to the latest stable version! Now the easiest solution for this and also i use this with important tasks and AI approvals is to use HITL for AI tool calls which is very diverse and offers gmail,slack,telegram…

But if you specifically want HITL like feature in chat node then you have to set that chat trigger mode to “Using Response Nodes" . Although not recommended and it is hard to debug, but feel free to try!

Yeah the Chat node can’t really do both at once, that’s a known limitation with how the response modes work. What you want instead is the HITL (human-in-the-loop) sub-node directly on the AI Agent — it lets you route approval requests through Slack or Gmail or Telegram instead of trying to use the chat itself, so the chat stays in normal mode and approvals happen on a separate channel.

yeah The chat trigger response mode conflict is a wall.. you can’t have it both ways in the same node. route approvals to yourself is the cleanest workaround

to expand on @achamm’s point — the concrete pattern that works is wrapping your approval-required action in a sub-workflow tool that uses Send and Wait :slight_smile:

  1. create a separate workflow with a Webhook trigger (not Chat Trigger)
    1. inside it: the Zendesk draft creation logic + a Send and Wait node that fires an email/Slack message to you with approve/reject buttons
      1. back in your main workflow, expose this sub-workflow as a Call n8n Workflow Tool attached to the AI Agent
    2. this way the main Chat Trigger stays in normal lastNode mode for conversation, and the approval gate lives entirely in the sub-workflow. the agent calls the tool, the sub-workflow pauses on Send and Wait, you approve via email/Slack, and the result flows back to the agent.
  2. the key insight: Chat Trigger response mode is only a constraint for the chat interface itself — sub-workflows called as tools run independently and can use Send and Wait without touching the chat trigger’s mode at all.