# App Types: Chatbot, Agent, Chatflow and Workflow — Dify Workflow Basics

Source: https://www.skillbyai.com/en/dify-workflows/i-types

> Choose by interaction style.

## Conversation or task

Dify offers several app types. Simple **chatbot** and **text generation** apps wrap one prompt. **Agent** apps let a model choose tools in a loop. **Chatflow** apps are multi-turn conversations built as a graph, with conversation memory and variables that persist across turns. **Workflow** apps run a graph once for a given input and return outputs, suited to automation and batch tasks (summarise a document, classify a ticket, enrich a record). Choose chatflow when users talk back and forth; workflow when a system sends input and expects a result. Dify's node names, menus and options change between versions; check the current Dify documentation.

## Choosing an app type

Start from how the app is used.

```text
need                                              app type
single prompt, simple chat                        chatbot / text generator
model picks tools to complete a task              agent
multi-turn assistant with custom logic + memory   chatflow
one input -> processing graph -> outputs          workflow
called from another system or on a schedule       workflow (via API)
```

## Workflows are easier to test

A workflow has fixed inputs and outputs, which makes automated testing simpler than for open-ended chat.

**Quiz:** Which app type suits "classify each incoming support ticket and return a category"?

- [x] Workflow
- [ ] Chatflow with long memory
- [ ] Text-to-speech app
- [ ] No app is needed

*Answer:* Workflow. One input, one structured output.
