# Attachments and images

> Add images and files to a message — what the agent can actually read, and why the model you picked decides that.

You can attach images and files to a message. The agent reads them as part of the [run](/docs/work/runs/), the same way it reads your text.

## Attaching

<Steps>

1. **Add the file** from the composer, or **paste it** — a screenshot from the clipboard, or a block of copied text, both land as attachments.

2. **Check the preview.** Images show a thumbnail; text-like files show the first few lines. Anything else shows as a named chip, which is enough to catch the wrong file before you send.

3. **Write the message that goes with it.** *"What is wrong with this?"* attached to a screenshot is a complete request; the file alone is not.

</Steps>

Pasted text arrives as an attachment rather than being dumped into the composer, which keeps a long paste from burying the sentence you actually wrote.

## What the agent sees

An attachment is prepared for the model right before the request goes out, and what it becomes depends on the file:

- **Images** are passed to the model as images, if the model accepts them.
- **Text-like files** — plain text, Markdown, CSV, JSON, YAML, source code — are read as text.
- **Other files** are identified by name and type. A model that cannot open the format is told the file was left out, with the reason.

<Aside type="caution" title="The model decides what an attachment is worth">
  Not every model reads images. If you attach a screenshot while a text-only model
  is selected, the upload still succeeds and the agent still answers — but it
  answers without having seen the image, and says so. If an agent seems to ignore
  a picture, check the [model](/docs/build/models/) first.
</Aside>

## In the conversation

Attachments stay with the message that carried them, so scrolling back shows what was sent and when. They also appear in the resource list of the [context window](/docs/work/context-window/) panel, where selecting one jumps to its message.

## Limits

- Up to 50 MB per file.
- What the model can use depends on the model — see the caution above.
- SVG files are stored and passed along but not rendered as pictures in the conversation.
- An attachment belongs to the message it was sent with. There is no separate file manager for a conversation; the durable place for output is an [artifact](/docs/capabilities/artifacts/).
- The agent reads attachments you send it. It cannot reach files on your computer unless you run it on the [desktop app's local runtime](/docs/get-started/surfaces/).

## Related

<CardGrid>
  <LinkCard
    title="The context window"
    href="/docs/work/context-window/"
    description="What attachments cost, and where to see it."
  />
  <LinkCard
    title="Choosing a model"
    href="/docs/build/models/"
    description="Which models read images, and where that is shown."
  />
  <LinkCard
    title="Artifacts"
    href="/docs/capabilities/artifacts/"
    description="Where files the agent produces end up."
  />
</CardGrid>
