"Flow engineering" is a term increasingly used to describe a specific approach to designing and optimizing [agentic workflows](/glossary/agentic-workflows) for LLMs. In flow engineering, the focus is on engineering the workflow itself to guide the agent's decision-making process and improve the quality of its outputs.

Similar to how [prompt engineering](/glossary/prompt-engineering) emphasizes the importance of crafting natural-language messages to elicit desired responses from LLMs, flow engineering recognizes the significance of the overall workflow structure in determining the agent's behavior and performance. By carefully designing the steps, decision points, and feedback loops within the workflow, developers can create agents that are more effective, efficient, and adaptable.

Flow engineering involves breaking down complex tasks into smaller, manageable components and defining the optimal sequence of actions for the agent to follow. This structured approach allows for better control over the agent's behavior and enables developers to incorporate domain-specific knowledge and best practices into the workflow.