# Relayer

{% embed url="<https://github.com/Atbash-Labs/TNLS/tree/main/TNLS-Relayers>" %}

The relayer is primarily composed of two pieces: a set of interfaces to various chains, and an underlying thread-based worker that hooks those interfaces together. &#x20;

Users should not need to directly interact with the relayer at all except to add new networks, which can be done by creating a new Relayer Interface and hooking it up to the config (both described on the [next page](/snakepath/relayer/relayer-interface-architecture.md))

The Task interface seen in several places in these docs can be broadly modeled as a thin wrapper around a dict, with some special handling.  More details can be found in the [codebase](https://github.com/Atbash-Labs).


---

# 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://fortress-labs.gitbook.io/snakepath/relayer.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.
