An Agent Builder agent consists of a UI, which is the agent’s interface, and a blueprint, which is the agent’s logic. The UI and blueprint are connected through the agent’s state and UI triggers.

Agent components

An agent consists of the following components:

  • UI: the interface that users interact with.
    • UIs are designed using elements like input fields, buttons, and embeds, including support for guided workflows with pagination.
    • They give users a structured, intuitive way to engage with agents, from simple chat interfaces to rich, interactive tools.
    • The UI is optional. If you do not need to receive user input or display output, you can build an agent without a UI by only using the blueprint.
  • Blueprint: a visual map of the agent’s business logic and behavior.
    • Blueprints are created using a library of configurable blocks for tool calling, built-in RAG, text generation, classification, state management, and more.
    • They define how the agent processes input, makes decisions, and takes action—enabling it to reliably orchestrate work across people, data, systems, and even other agents built in Writer.

An agent can also include:

  • Custom Python code to extend its capabilities with more complex logic.
  • Secrets to store sensitive information like API keys, passwords, and other credentials and use them in your agent.

Check out the demo agent walkthrough to see how these components work together in practice.

Connecting components

Agents work by passing data between the UI and blueprint. The following variables are available to each block in the blueprint:

  • @{result}: Access the output from the previous block in your blueprint
  • @{payload}: Access data from UI interactions that triggered the blueprint, like button clicks or user messages
  • @{state_variable}: Access values stored in your agent’s state
  • @{vault.secret_name}: Access secrets stored in your agent’s secrets

These variables let you chain blocks together and create dynamic workflows. Learn more in Using Data from Previous Blocks.

Key capabilities

Agent Builder enables agentic workflows with automation and intelligence by providing the following capabilities:

  • Control Flow: Blueprints support control structures including:
    • Conditional branching based on input analysis or state conditions
    • Iterative loops for processing collections of data or retrying operations
    • Decision trees that route execution based on classification results or business rules
  • Memory: Agents can use state, environment variables, and Knowledge Graphs to store and retrieve information across blocks and across agent sessions.
  • Knowledge Graph Integration: Writer’s Knowledge Graph provides:
    • Contextual information that enhances agent responses and decision making
    • Semantic search and content discovery
    • Data storage and retrieval across agent sessions
  • Tool calling: Agents can dynamically analyze requests and intelligently orchestrate external tools, supporting advanced reasoning patterns like ReAct for step-by-step problem solving.
  • Multi-agent workflows: Built-in blocks enable integration with other Writer agents for complex multi-agent workflows.

Agent state

Agents use the agent’s state to communicate information across components. The state is a shared memory for each part of the agent: the UI, blueprint, and custom Python code can all read and write data to the state.

Learn more in Agent state.

Blueprint-only agents

If you don’t need to receive user input or display output, you can build an agent without a UI by only using the blueprint.

To run the blueprint without a UI Trigger, press the Run blueprint button in the top right of the blueprint.