> For the complete documentation index, see [llms.txt](https://argos-ci.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://argos-ci.com/docs/learn/how-to-guides/visual-coverage/adding-aria-snapshots-manually.md).

# Adding ARIA snapshots manually

Include ARIA accessibility snapshots alongside screenshots when uploading files to Argos manually with the CLI.

If you upload files to Argos manually, you can include ARIA snapshots alongside screenshots.

This setup is mainly useful if you are using Playwright for Python or another tool that can generate ARIA snapshots but does not have direct Argos support for them.

If you use Playwright with Node.js, use the official [Argos Playwright SDK](/docs/reference/playwright.md), which supports ARIA snapshots directly.

{% hint style="info" %}
Each ARIA snapshot counts as an additional screenshot for billing.
{% endhint %}

### Configure uploaded files

When you upload a folder with the Argos CLI, pass the `--files` flag so Argos picks up both screenshot files and ARIA snapshot files. For example, if your snapshots are stored in `./screenshots`, upload that directory with:

{% tabs %}
{% tab title="npm" %}

```
npm exec -- argos upload --files "**/*.png" "**/*.aria.yml" ./screenshots
```

{% endtab %}

{% tab title="yarn" %}

```
yarn run argos upload --files "**/*.png" "**/*.aria.yml" ./screenshots
```

{% endtab %}

{% tab title="pnpm" %}

```
pnpm exec -- argos upload --files "**/*.png" "**/*.aria.yml" ./screenshots
```

{% endtab %}

{% tab title="bun" %}

```
bun x argos upload --files "**/*.png" "**/*.aria.yml" ./screenshots
```

{% endtab %}
{% endtabs %}

Argos will then detect every `.png` screenshot and every `.aria.yml` ARIA snapshot found in that folder tree.

### Add an ARIA snapshot

Create an ARIA snapshot file with the `.aria.yml` extension:

```
my-snapshot-name.aria.yml
```

You can also add metadata in a companion file using the `.argos.json` suffix:

```
my-snapshot-name.aria.yml.argos.json
```

For general metadata conventions, see [Screenshot metadata](/docs/reference/screenshot-metadata.md). ARIA snapshot companion metadata follows the same conventions and can additionally define ARIA-specific transient fields, such as `transient.parentName`.

### Attach an ARIA snapshot to a screenshot

To associate an ARIA snapshot with a screenshot, set `transient.parentName` to the exact screenshot identifier used by Argos. This value must match the uploaded screenshot path and filename exactly, including subfolders and the file extension.

Example file structure:

```
folder/
  my-snapshot.png
  my-snapshot.png.argos.json
  my-aria-snapshot.aria.yml
  my-aria-snapshot.aria.yml.argos.json
```

{% code title="my-aria-snapshot.aria.yml.argos.json" %}

```json
{
  "transient": {
    "parentName": "folder/my-snapshot.png"
  }
}
```

{% endcode %}

When `parentName` exactly matches the screenshot identifier, Argos displays the ARIA snapshot as attached to that screenshot.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://argos-ci.com/docs/learn/how-to-guides/visual-coverage/adding-aria-snapshots-manually.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
