> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deepblocker.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Add an agent and prove it is yours

> Add a web or Telegram agent in the console, then put the proof code where only its owner can, so tests can start.

> [!NOTE]
>
> Before you start: self-service must be on for your workspace, your plan must have an agent place free, and you need the agent's public address or bot name. Any workspace member can add an agent.

## Before you start

* The agent's public https address, or its Telegram bot user name. See [Channels](https://docs.deepblocker.ai/agent-assurance/channels.md).
* A decision on how we test it. See [Test modes](https://docs.deepblocker.ai/agent-assurance/test-modes.md).
* For a web agent, someone who can put a file on the agent's site. For a bot, someone who can edit it in @BotFather.

## Steps: add the agent

**1. Open Agents and press Add an agent**

In the console open **Agent Assurance**, then the **Agents** tab. Press **Add an agent**. If the button is greyed out, the text next to it says why.

**2. Name it and pick the channel**

Fill in **Name** and, if you like, **What it does (optional)**. Under **Where we talk to it** pick **Web chat or API** or **Telegram**. Channels in your plan that are not ready yet are listed below the choice and cannot be picked.

**3. Type the address**

For a web agent, fill in **The public address your agent answers on**, for example `https://chat.example.com/api/agent`. For a bot, fill in **Your bot's user name**, for example `@AcmeHelpBot`.

**4. Choose how we test it**

Under **How should we test it?** pick **Connect our test tools (recommended)** or **Test it as it is**. With our tools, tick **I removed my agent's own real tools from the test copy** only once that is true.

**5. Press Add agent**

The agent is saved and you land on its **Connection** tab. The agent is **Not proven yet**. We send it nothing until you prove it.

## Steps: prove a web agent

**1. Copy the code**

On the **Connection** tab the code starts with `dbv_`. Press **Copy**. The code is not a secret. It only says this address belongs to this agent of your workspace.

**2. Put the file on the site**

Make a plain text file that holds only the code. Put it on the same site as your agent at `/.well-known/deepblocker-verify.txt`. The page shows the full address, for example `https://chat.example.com/.well-known/deepblocker-verify.txt`.

**3. Press Check now**

We fetch the file once, without following redirects, and look for a line that equals the code. On success the pill turns to **Proven yours** with the date and who checked. Keep the file while you test.

## Steps: prove a Telegram bot

**1. Copy the code**

Press **Copy** next to the code on the **Connection** tab.

**2. Put it in the About text**

In Telegram open @BotFather and send `/setabouttext`. Pick your bot and paste the code as its About text. You can add other words around it.

**3. Press Check now**

We read the bot's public page at `https://t.me/<bot name>` and look for the code. Once the agent is **Proven yours** you can remove the code.

## Every field

| Name | What it means | Default or limit |
| - | - | - |
| **Name** | What the agent is called in the console and in reports | Required, 120 characters |
| **What it does (optional)** | A line for your team | 500 characters |
| **Where we talk to it** | The channel | The first channel your plan offers |
| **The public address your agent answers on** | https, port 443, public host, no credentials | Required for a web agent, 500 characters |
| **Your bot's user name** | 5 to 32 characters ending in "bot" | Required for a bot |
| **How should we test it?** | Our test tools, or as it is | **Connect our test tools (recommended)** |
| **I removed my agent's own real tools from the test copy** | Lets attacks ask for actions, not only words | Off |

## What happens next

Set the rules on the **Rules** tab, then sign the agreement on the **Tests** tab. See [Rules](https://docs.deepblocker.ai/agent-assurance/rules.md) and [The testing agreement](https://docs.deepblocker.ai/agent-assurance/agreement.md). The **Tests** tab shows a three-line checklist of what is left.

## Changing or removing an agent

On the **Connection** tab, under **Change this agent**, you can edit the **Name**, **What it does** and **Address**, and change the test mode. Press **Save changes**. A new address clears the proof and must be proven again before the next test. To remove the agent, type its name under "Type the agent name to confirm" and press **Remove agent**. Its finished tests and reports stay.

Neither change works while a test of the agent is scheduled, running or paused. An agent DeepBlocker added keeps its address; you can only rename it.

## Problems

> [accordion] It says the address must be a public https address
>
> The address must start with `https://`, use no port other than 443, and carry no user name or password. A name without a dot, `localhost`, a `.local` or `.internal` name, or an address on a private network is refused.

> [accordion] It says an agent with this address is already in your workspace
>
> Each address can be added once per workspace. Open the existing agent from the **Agents** tab instead.

> [accordion] It says another agent is being added right now
>
> Two people pressed **Add agent** at the same time. Wait a moment and try again.

> [accordion] Check now says it did not find the code
>
> For a web agent, open the file address in a browser and check it returns the code on its own line, with status 200 and no redirect. For a bot, open `https://t.me/<bot name>` and check the About text shows the code.

> [accordion] Check now says the address points to a private network
>
> The name resolves to a private or internal address. Point it at a public address, or use a different host for the test copy.

> [accordion] Check now says the address changed while we checked it
>
> Someone edited the address during the check. Press **Check now** again.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.