← All nodes
Agents ai_agent

AI Agent

Conversational agent with session memory, retrieved-context injection and sub-flow tool-calling.

What does it do?

It's the conversational brain of your flow. An AI assistant that chats with your customer, understands their intent and replies naturally.

How does it work?

Uses advanced language models (LLMs) configured with your prompt (instructions). It reads past conversation memory (session memory) and can use tools (like querying your inventory or searching your Knowledge Base) before replying.

Why use it?

Essential for any support, sales or FAQ bot. Without this node you'd have to program rigid buttons and menus for every possible question.

Inputs

nametype
text string

Outputs

nametype
content string
model string
turn_index number
streamed boolean
tool_calls array

Branches

Fixed branches

  • success — Success
  • error — Error

Configuration

model string optional
vision_model string optional
role "copilot" | "chatbot" optional
system_prompt string optional
input_field string required default: "text"
memory_key string required default: "messages"
history_turns integer required default: 20
temperature number required default: 0.7
max_tokens integer optional
reasoning "off" | "low" | "medium" | "high" optional
injectors array<object> optional
stream boolean required default: true
context_memory_keys array<string> required default: []
reply_memory_key string optional
tools array required default: []
max_tool_iterations integer required default: 5
recent_turns integer optional
memory_facts_schema object optional
memory_summary_config object optional
auto_retrieve object optional

Default configuration

{
  "model": "deepseek/deepseek-v4-flash",
  "system_prompt": "You are a helpful assistant. Reply in the user language.",
  "input_field": "text",
  "memory_key": "messages",
  "history_turns": 20,
  "temperature": 0.7,
  "max_tokens": 1024,
  "stream": true,
  "context_memory_keys": [],
  "tools": [],
  "max_tool_iterations": 5
}

Emitted events

  • node.token

    Streamed reply tokens (one event per chunk).

  • agent.reply

    Final reply text with model, length and streamed flag.

  • agent.tool_call_started

    Fires when the LLM requests a tool, before execution.

  • agent.tool_call_completed

    Fires after a tool call resolves (success or error).

  • tool_call.<name>

    Per inline-tool emission. The <name> is the tool's declared name.

  • agent.tool_iteration_limit

    The model hit max_tool_iterations with unresolved calls still pending.