# Prompts

## Prompt

Constructs a prompt string from a template. Supports variable interpolation using `{variable}` syntax. The output is a formatted prompt message passed to an Agent or other downstream step.

**Use in a flow**

1. Add a **Prompt** node to the canvas.
2. Write a **Template** with static text and `{variable}` placeholders.
3. When you add variables to the template, matching input fields appear on the component automatically.
4. Connect the **Prompt Message** output to an Agent or LLM.

```
Prompt (Prompt Message) ──► Agent
Other components ──► Prompt (variable inputs)
```

**Template example**

```
You are a helpful assistant for {company}.

User question: {input}
```

Variables in curly braces become inputs you can wire from other components or fill in manually.

**Parameters**

| Parameter | Hidden | Description |
| --- | --- | --- |
| Template | No | The prompt template. Use `{variable_name}` for dynamic values. |
| Tool Placeholder | Yes | Placeholder input used in tool mode. Open **Controls** to access. |

Additional fields are created automatically for each `{variable}` in your template.

**Outputs**

| Output | Description |
| --- | --- |
| Prompt Message | The rendered prompt as a message, with all variables filled in. |

**Limitations**

- **Variable syntax** — Variables must use `{name}` format in the template.
- **Template updates** — Changing the template may add or remove variable input fields on the component.
