# Clients

To interact with your target device from a development machine or through a
CI/CD pipeline, you must use a Jumpstarter client. The Python client can be used
either as a library or as a [CLI tool](../reference/man-pages/index.md).

## Types of Clients

Jumpstarter supports two types of client configurations: *local* and *remote*.

### Local Clients

When using Jumpstarter in {term}`local mode`, you can use the local client
functionality to directly access your hardware. The local client will
automatically use any drivers that are registered without the need for an
{term}`exporter` instance running in the background.

### Remote Clients

When using Jumpstarter in {term}`distributed mode`, the client must be configured to
connect to an instance of the {term}`service` that can authenticate and route requests
to the appropriate {term}`exporter` instance.

The following parameters are required to set up a remote client:

- The URL of a {term}`service` endpoint to connect to
- An authentication token generated by the {term}`service`

```{note}
The endpoint must be accessible from your client machine to communicate
with the {term}`service`.
```