# Configuration options

Each Trace is configured with the following options

| Option                                                              | Required                  |
| ------------------------------------------------------------------- | ------------------------- |
| [url](/trace-technology/configuration-options.md#url)               | yes                       |
| [xpath](/trace-technology/configuration-options.md#xpath)           | yes                       |
| [action](/trace-technology/configuration-options.md#action)         | no (default is "replace") |
| [noconflict](/trace-technology/configuration-options.md#noconflict) | no (default is "true")    |

## URL

This is the full URL on the original site that we will be using to Trace (i.e. `https://example.com/some-subpage/`)

## xpath

This is the targeting for which element within the page we will be using to Trace

### Common examples

Target a div with `id="block-main"`

```
//div[@id="block-main"]
```

Target a span with `class="body body-main"`

```
//span[@class="body body-main"]
```

Target the second div with a `class="wrapper"`

```
(//div[@class="wrapper"])[2]
```

*Note: xpath selectors are exact, so for cases where you are targeting an* `id` *or* `class`*, the selector needs to match what appears in the source code (i.e. ordering of the classes is important).*

For information on how complex xpaths can be formed, you can visit the xpath with lxml documentation here: <https://lxml.de/xpathxslt.html>

## action

This option configures how we will manipulate the HTML of the page

| Option            | Description                                                                              |
| ----------------- | ---------------------------------------------------------------------------------------- |
| replace (default) | This will replace the content of the matched element with our page content               |
| after             | This will append a new div after the matched element which will contain the page content |

## noconflict

There is two modes for how the content of the page is added

| Option         | Description                                                                                                                                                                                                                                                                                                                       |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| true (default) | When noconflict is enabled, we add the content to the page using an auto-sizing iframe element. This option is good for cases where you don't know if there will be style conflicts with your page content and their original site. This option is not recommended for SEO strategies as the content of the page is not indexable |
| false          | When noconflict is disabled, we add the rendered HTML and style tags directly into the page                                                                                                                                                                                                                                       |


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.devhub.com/trace-technology/configuration-options.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
