> ## Documentation Index
> Fetch the complete documentation index at: https://agentcontrol-docs-add-source-code-notes-to-examples.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# UI Quickstart

> Launch the Agent Control dashboard to manage controls and monitoring from your browser.

The Agent Control dashboard lets you manage [controls](/concepts/controls) and monitor agent activity — no code changes required.

## Prerequisites

Before starting the UI, make sure the **Agent Control server** is already running. If you haven't set it up yet, follow the [Quickstart](/quickstart) first.

You also need:

* **Node.js 20+** (CI uses 20; 18+ may work)
* **pnpm 9+** — install from [pnpm.io](https://pnpm.io/) or run `corepack enable && corepack prepare pnpm@latest --activate`

## Start the UI Server

<Steps>
  <Step title="Install and start the dashboard">
    From the root of the `agent-control` repository, run the following commands in a **separate terminal**:

    ```bash theme={null}
    cd ui
    pnpm install
    pnpm dev
    ```

    The dashboard is now running at [http://localhost:4000](http://localhost:4000).

    <Tip>
      Keep the Agent Control server (`make server-run`) and the UI (`pnpm dev`) running in separate terminal windows. The dashboard communicates with the server at `http://localhost:8000` by default.
    </Tip>
  </Step>

  <Step title="Verify the dashboard is running">
    Open [http://localhost:4000](http://localhost:4000). You should see an empty state — this is expected before any controls are registered.

    <img src="https://mintcdn.com/agentcontrol-docs-add-source-code-notes-to-examples/q-wO230mBVvS6IE3/images/no-controls-at-startup.png?fit=max&auto=format&n=q-wO230mBVvS6IE3&q=85&s=da7532ad2c9e5d30c8ed81b6ede7dbe2" alt="Dashboard with no controls at startup" width="2580" height="930" data-path="images/no-controls-at-startup.png" />

    The dashboard reflects the server's current configuration. Controls appear here automatically once you create them.
  </Step>
</Steps>

## Create Controls from the UI

You can create controls directly in the dashboard — no scripts or SDK code required.

<Steps>
  <Step title="Add a new control">
    Click the **Add Control** button from the controls page to start creating a new control.

    <img src="https://mintcdn.com/agentcontrol-docs-add-source-code-notes-to-examples/q-wO230mBVvS6IE3/images/add-control.png?fit=max&auto=format&n=q-wO230mBVvS6IE3&q=85&s=3fdc1aa6b45ce4f87e5e6ae1ae9b3a10" alt="Add a new control" width="2148" height="1076" data-path="images/add-control.png" />
  </Step>

  <Step title="Select the control type">
    Choose an [evaluator](/concepts/evaluators/overview) type for your control. Options include [Regex](/concepts/evaluators/built-in-evaluators), List, [JSON](/concepts/evaluators/json), [SQL](/concepts/evaluators/sql), and [AI-powered](/concepts/evaluators/custom-evaluators) evaluators.

    <img src="https://mintcdn.com/agentcontrol-docs-add-source-code-notes-to-examples/q-wO230mBVvS6IE3/images/select-control-type-to-create.png?fit=max&auto=format&n=q-wO230mBVvS6IE3&q=85&s=17f500cc185286fc5de3b692b6a35f88" alt="Select the control type to create" width="1274" height="936" data-path="images/select-control-type-to-create.png" />
  </Step>

  <Step title="Configure the control">
    Fill in the control details. See [Controls](/concepts/controls) for a full explanation of each field.

    <img src="https://mintcdn.com/agentcontrol-docs-add-source-code-notes-to-examples/q-wO230mBVvS6IE3/images/configure-selected-control-type.png?fit=max&auto=format&n=q-wO230mBVvS6IE3&q=85&s=c676c2e7eab6f4c18e84732aa5736543" alt="Configure the selected control type" width="1230" height="1208" data-path="images/configure-selected-control-type.png" />

    | Field                       | Description                                                             |
    | --------------------------- | ----------------------------------------------------------------------- |
    | **Control name**            | A unique identifier for the control                                     |
    | **Enabled**                 | Toggle the control on or off                                            |
    | **Stages**                  | When to evaluate — `Pre` (before execution) or `Post` (after execution) |
    | **Selector path**           | The data path to evaluate (for example, `*` for all fields)             |
    | **Action**                  | What happens on a match — `Deny` blocks the request                     |
    | **Execution environment**   | Where evaluation runs — `Server` or `Client`                            |
    | **Evaluator configuration** | Type-specific settings (values, logic, match mode, case sensitivity)    |

    Click **Save** to register the control. It takes effect immediately — no redeployment needed.
  </Step>
</Steps>

## Regenerate API Types (Optional)

If you update the server API and need fresh UI types, regenerate them from the running server:

```bash theme={null}
pnpm fetch-api-types  # fetches from http://localhost:8000/openapi.json
```

## Monitoring

The monitoring dashboard shows real-time control activity across all agents:

<img src="https://mintcdn.com/agentcontrol-docs-add-source-code-notes-to-examples/q-wO230mBVvS6IE3/images/monitor-controls.png?fit=max&auto=format&n=q-wO230mBVvS6IE3&q=85&s=72b0dce491317ef48f77427d709de99f" alt="Control monitoring dashboard" width="2570" height="1294" data-path="images/monitor-controls.png" />

* **Total evaluations** — Requests processed per control
* **Block count** — Requests denied per control
* **Pass/block ratio** — Visual breakdown of allowed vs. blocked operations
* **Activity timeline** — Recent evaluations with timestamps

Use this view to verify controls are working, spot patterns that need tuning, and audit which controls triggered on which agent.

<Note>
  Monitoring data populates as agents process requests. Run the [Agent Control Demo](/examples/agent-control-demo) to generate sample data:

  ```bash theme={null}
  uv run python examples/agent_control_demo/demo_agent.py
  ```
</Note>

## Next Steps

<CardGroup cols={2}>
  <Card title="Agent Control Demo" icon="play" href="/examples/agent-control-demo">
    Full end-to-end walkthrough with runnable scripts.
  </Card>

  <Card title="Controls" icon="shield" href="/concepts/controls">
    Learn how to define controls using the SDK or API.
  </Card>

  <Card title="Evaluators" icon="magnifying-glass" href="/concepts/evaluators/overview">
    Explore built-in and custom evaluator types.
  </Card>

  <Card title="Configuration" icon="gear" href="/configuration">
    Server configuration, authentication, and deployment options.
  </Card>
</CardGroup>
