> ## Documentation Index
> Fetch the complete documentation index at: https://docs.beam.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Variable Fill

> Configure how each tool input receives a value while an agent flow runs.

Variables control how data moves through an agent flow. For every input variable on a node, choose the fill method that supplies its value at runtime.

<h2 id="fill-methods">
  Fill methods
</h2>

Beam provides seven fill methods:

<CardGroup cols={3}>
  <Card title="Auto fill" icon="sparkles">
    AI fills the value automatically.
  </Card>

  <Card title="Prompt fill" icon="message">
    AI fills the value from the description you provide.
  </Card>

  <Card title="Linked fill" icon="link">
    Uses an output from another tool in the flow.
  </Card>

  <Card title="Static fill" icon="lock">
    Uses a fixed value that you enter manually.
  </Card>

  <Card title="User fill" icon="user">
    Prompts the user to provide the value at runtime.
  </Card>

  <Card title="Memory fill" icon="database">
    Looks up the value from the agent's memory.
  </Card>

  <Card title="Attachment fill" icon="paperclip">
    Extracts the value from a task attachment.
  </Card>
</CardGroup>

<h2 id="configure-a-variable">
  Configure a variable
</h2>

1. Open the agent's **Flow**.
2. Select the node that needs the input.
3. In the node sidebar, open **Parameters**.
4. Under **Input variables**, select the variable's current fill method.
5. Choose the fill method that matches the source of the value.

<Frame>
  <img src="https://mintcdn.com/beamai/5sjMFBB-gamSkrEM/02-building-agents/agent-configuration/variables-state/variable-fill-menu.png?fit=max&auto=format&n=5sjMFBB-gamSkrEM&q=85&s=2877782e79cd1641ac9f9ca3d76635cb" alt="A Flow node's Parameters sidebar with the Input variables fill-method menu open." width="398" height="420" data-path="02-building-agents/agent-configuration/variables-state/variable-fill-menu.png" />
</Frame>

<h2 id="choose-the-right-fill-method">
  Choose the right fill method
</h2>

| If the value...                                   | Use             |
| ------------------------------------------------- | --------------- |
| Should be produced automatically by AI            | Auto fill       |
| Needs instructions that tell AI how to produce it | Prompt fill     |
| Comes from an earlier tool output                 | Linked fill     |
| Is fixed for every execution                      | Static fill     |
| Must be supplied by a user during execution       | User fill       |
| Should be looked up in the agent's memory         | Memory fill     |
| Comes from a task attachment                      | Attachment fill |

<h2 id="how-each-fill-method-works">
  How each fill method works
</h2>

<h3 id="auto-fill">
  Auto fill
</h3>

Use Auto fill when Beam can determine the value without an explicit instruction. The node fills the value automatically from the available execution context.

<h3 id="prompt-fill">
  Prompt fill
</h3>

Use Prompt fill when the node needs your instructions for how to produce the value. Write a clear description of the required value and format in the variable's value field.

<h3 id="linked-fill">
  Linked fill
</h3>

Use Linked fill to pass an earlier node's output to a later node. The source node must run before the node that consumes the linked value.

<h3 id="static-fill">
  Static fill
</h3>

Use Static fill for a value you enter once and want to keep the same for every execution, such as a fixed identifier or configuration value.

<h3 id="user-fill">
  User fill
</h3>

Use User fill when the person running the task must provide the value at runtime.

<h3 id="memory-fill">
  Memory fill
</h3>

Use Memory fill when a node needs knowledge from the agent's Memory module. Add documents in **Configuration → Memory**, then use Memory fill to look up a value from that knowledge base. See [Core Concepts](/01-getting-started/core-concepts/core-concepts#memory) for how agent memory works.

<h3 id="attachment-fill">
  Attachment fill
</h3>

Use Attachment fill when the node needs to extract a value from a file attached to the task.

<h2 id="next-steps">
  Next steps
</h2>

<CardGroup cols={2}>
  <Card title="Selecting Tools" icon="wrench" href="/02-building-agents/agent-fundamentals/tools-integrations/tools-integrations">
    Choose and configure tools for your agent.
  </Card>

  <Card title="Creating Flows" icon="diagram-project" href="/02-building-agents/agent-fundamentals/flow-configuration/flow-configuration">
    Build a flow with tools, conditions, and triggers.
  </Card>

  <Card title="Integrations" icon="plug" href="/02-building-agents/agent-configuration/integrations/integrations">
    Configure integration-specific variable patterns and connectors.
  </Card>

  <Card title="Custom Integrations" icon="code" href="/02-building-agents/advanced-patterns/custom-integrations/custom-integrations">
    Build custom API connections for advanced integration patterns.
  </Card>
</CardGroup>
