Evose
BuildConcepts

Agent · Workflow · Chatflow

Three primitives, when to use each, and what not to do

Evose offers three building primitives. Their capabilities overlap, but choosing the wrong one will make your build over-complex or hard to maintain.

One-line Distinction

PrimitiveFormMental model
AgentConversation"I talk to a role and it responds."
WorkflowProcess"I provide input, the system runs predefined steps to produce output."
ChatflowConversation + orchestration"I talk to a conversation flow that has node-based orchestration."

Chatflow is the "advanced form" of Agent — when a conversation needs multi-node decisions, upgrade a prompt-only Agent to a Chatflow Agent.

Decision Tree

Does your scenario need multi-turn conversation?
├─ Yes → Does it need complex branching / tool calls / data orchestration?
│       ├─ No  → Prompt-based Agent
│       └─ Yes → Chatflow Agent
└─ No → Is it a fixed-flow batch / scheduled / automation task?
        ├─ Yes → Workflow
        └─ No  → Reconsider your needs — you may not need Evose

Detailed Comparison

DimensionPrompt AgentChatflow AgentWorkflow
FormSingle prompt + toolsVisual node canvas + chatVisual node canvas + I/O
TriggerUser chatUser chatManual / scheduled / API / webhook / conditional
StateSingle- or multi-turn contextMulti-turn + node stateSingle execution or scheduled
NodesNone (only LLM + tools)9 groups, 19 nodes (incl. interaction)8 groups, 17 nodes (no interaction)
Typical scenariosCustomer service / assistant / translationMulti-turn form intake / complex CS / guided dialogArticle generation / data ETL / report automation
Learning curve5 minutes30 minutes30 minutes

Chatflow's 9 Node Groups

GroupTypical nodesPurpose
AILLM · Knowledge retrievalCall models, do RAG
LogicCondition · Batch · Loop · IntentBranching and looping
DataCode · Template · Variable · Document extraction · Parameter extractionProcess structured data
NetworkHTTPCall external APIs
AppAgent · WorkflowCall other apps
ToolMCP · Plugin · Marketplace toolPlug in external capabilities
Interaction (Chatflow only)Direct reply · Form inputInteract with the user
EndEndTerminate

Workflow has the same node structure but no Interaction group (it doesn't talk to a user in real time).

"Apps Calling Apps" Is Allowed

  • A Workflow can call an Agent for a single reasoning step
  • A Chatflow can trigger a Workflow as a background task
  • A Workflow can orchestrate multiple Agents in series

This lets you layer abstractions: each base primitive owns one responsibility, while the upper-layer flow does orchestration.

When to Upgrade or Split

SymptomSignalSuggestion
Prompt grows too long (> 500 chars)Complexity overflowUpgrade to Chatflow, split decisions into nodes
One Workflow has > 20 nodesHard to maintainSplit into sub-Workflows, orchestrate from a parent
The same prompt is reused in many placesDuplicationExtract into a Skill
The same external API is called in many placesDuplicationExtract into an organization-level Tool

Don't Do This

  • Agent doing heavy data processing — stuffing "process a giant CSV" into an Agent. That's a Workflow scenario.
  • Workflow doing dialog — back-and-forth user interaction shouldn't be forced into a fixed flow.
  • Chatflow for trivial prompts — don't draw a 10-node diagram for something a single prompt solves.
  • Cross-app loops nested deeply — Workflow → Agent → Workflow → Agent will make Traces unreadable and costs hard to attribute.

Next Steps

On this page