---
title: "Package managers"
description: "Install eqty-guardian-agent from EQTY Lab's Cloudsmith repository with uv or pip, beside your model provider's client."
source: "Guardian Agent SDK"
---
The SDK is published as `eqty-guardian-agent` to EQTY Lab's private Cloudsmith repository, beside Viper, and imported as `guardian_agent`. It isn't published to PyPI.

## Before you start

You need a **Cloudsmith entitlement token** for EQTY Lab's repository; ask your EQTY Lab contact for one. It's the same token you install Viper with, and these commands read it from the same variable, `VIPER_CLOUDSMITH_TOKEN`:

```sh
export VIPER_CLOUDSMITH_TOKEN=<your entitlement token>
```

Install the SDK from that repository only, never alongside public PyPI. A package of the same name published anywhere else then can't be picked up in its place. Your model provider's client, such as `openai` or `anthropic`, comes from PyPI as usual; the SDK doesn't include one.

## uv

Pin the package to the repository in your `pyproject.toml`, with `explicit = true` so uv takes only this package from it, and everything else from PyPI:

```toml
[[tool.uv.index]]
name = "eqty"
url = "https://dl.cloudsmith.io/basic/eqtylab/prod/python/simple/"
explicit = true

[tool.uv.sources]
eqty-guardian-agent = { index = "eqty" }
```

Give uv the token as the index's credentials, so it never goes in a file you commit:

```sh
export UV_INDEX_EQTY_USERNAME=token
export UV_INDEX_EQTY_PASSWORD="$VIPER_CLOUDSMITH_TOKEN"
```

Then add it, with any extras you need, and your provider's client:

```sh
uv add eqty-guardian-agent    # or "eqty-guardian-agent[langchain]"
uv add "openai>=1.55.3"    # and "anthropic>=0.40.0" for Anthropic
```

## pip

Install the SDK with the repository as the only index, set in the environment for that one command, so the token stays out of the command line and your shell history. Use `PIP_INDEX_URL` rather than `PIP_EXTRA_INDEX_URL`, which would let a package of the same name on public PyPI win:

```sh
PIP_INDEX_URL="https://dl.cloudsmith.io/$VIPER_CLOUDSMITH_TOKEN/eqtylab/prod/python/simple/" \
  pip install eqty-guardian-agent    # or "eqty-guardian-agent[langchain]"
pip install "openai>=1.55.3"    # and "anthropic>=0.40.0" for Anthropic
```

## Check the install

In a uv project, run it in the project's environment:

```sh
uv run python -c "import guardian_agent as ga; print(ga.__version__)"
```

With pip, run it with the environment you installed into active:

```sh
python -c "import guardian_agent as ga; print(ga.__version__)"
```

The extras are `langchain`, `deepagents` and `mcp`; [Requirements](./requirements.mdx) says what each adds. Next, enroll an agent and run it: [Quick start](../quick-start.mdx).