> For the complete documentation index, see [llms.txt](/llms.txt).
> A full single-fetch corpus is available at [llms-full.txt](/llms-full.txt).
---
title: Local development
description: Run your project locally with agnt5 dev, with live reload plus triggering workflows from Studio, the CLI, or the API.
last_verified: 2026-06-04
---

Use `agnt5 dev` to run your project locally. Once running, you can trigger workflows from Studio in the browser, the CLI, or the API.

---

## Development - `agnt5 dev`

`agnt5 dev` starts the AGNT5 runtime and your worker together. It boots the local platform, then starts your worker and keeps it running.

**Prerequisites:**

- Dependencies installed: `uv sync`
- Your API key set as an environment variable:

```bash
export OPENAI_API_KEY=sk-...
```
**Start:**

```bash
agnt5 dev
```

Terminal output:

```
╭──────────────────────────────────────────────────────────────────╮
│  ⭓  agnt5 dev                                                    │
│     20260530-9694ef · managed                                    │
│     ~/Documents/agnt5/agnt5/sdk/templates/python/travel_booking  │
╰──────────────────────────────────────────────────────────────────╯
  worker       uv run --no-sync python app.py (pid 21991)
  coordinator  https://grpc.agnt5.com:3418
  watch        3 dirs · .py .ts .js .go .env

  Starting customer-service worker…

  customer-service v1.0.0
  ────────────────────────────────────────
  ◆ workflows (1)
    └── travel_booking_workflow
  ● agents (1)
    └── travel_booking_agent
  ◇ tools (3)
    ├── create_itinerary
    ├── search_flights
    └── search_hotels
  ────────────────────────────────────────

  Connecting to coordinator (https://grpc.agnt5.com:3418)...
  Connected to coordinator (https://grpc.agnt5.com:3418)
```

**Dashboard:** `https://app.agnt5.com/projects/a3e7af1d-c453-4124-be15-f72bd658889d/components`

Once running, open the **Dashboard** link printed in the terminal. From there you can trigger workflows, run individual functions and agents, and watch traces, all from the UI without writing any extra code.

### Zero-restart development

`agnt5 dev` watches your project and automatically reloads the worker when anything changes, no need to stop and restart:

- **Code changes** - save a source file and the worker restarts and re-registers in seconds.
- **Environment variable changes** - update your `.env` (credentials, API keys, config) and the worker picks them up immediately on reload.

Most tools require you to manually restart your worker after every change. With `agnt5 dev`, the inner loop stays out of your way.

<Callout type="info">Set deployment secrets separately when you deploy.</Callout>

---

## Studio

Studio is the browser UI for triggering workflows, watching traces, and responding to human-in-the-loop pauses. Open it via the Dashboard link printed when `agnt5 dev` starts.

### Triggering a workflow

1. Open the Dashboard link from the terminal in your browser.
2. Select `travel_booking_workflow` from the workflow list.
3. Set the input:

```json
{
  "message": "2 adults are traveling from Los Angeles (LAX) to New York (JFK), departing on June 28, 2026, and returning on June 30, 2026."
}
```

4. Click **Run workflow**.

The run appears immediately in the Runs view. Click into it to see the live trace.

### Watching a trace

As the workflow runs, the trace tree updates in real time. Each node shows its duration, inputs, and outputs. Click a node to expand the full detail, including agent tool calls and LLM responses.

<DocsImage
  src="/docs/integrations/Trace-dev-light.png"
  darkSrc="/docs/integrations/Trace-dev-dark.png"
  alt="Screenshot of the AGNT5 Studio trace view for a completed travel_booking_workflow run. The left panel shows the trace tree with workflow, agent iterations, LLM calls, and tool calls. The right panel shows the input and the agent's final output with flight options."
  caption="The trace tree updates in real time as the workflow runs. Expand any node to inspect inputs, outputs, and LLM token usage."
  width={1008}
  height={639}
/>
---

## Creating an X-API-KEY

Both the CLI and API require a service key passed as the `X-API-KEY` header to authenticate requests. Create one before running either.

<Callout type="warning">The key is shown only once. Copy it to a secure location immediately, you cannot retrieve it again.</Callout>

### Via Studio

1. Open the Dashboard and go to your project.
2. Click **Settings** in the left sidebar.
3. Navigate to **Service Keys**.
4. Click **Create service key**, give it a name, and confirm.
5. Copy the key (it starts with `agnt5_sk_`) and save it somewhere secure, it will not be shown again.

### Via the CLI

```bash
agnt5 service-keys create --name "my-service-key" --project <project-id>
```

---

## Running from the CLI

Use `agnt5 run` to trigger a workflow directly from the terminal. By default it routes to your local dev worker:

```bash
agnt5 run travel_booking_workflow \
  --input '{"message": "2 adults are traveling from Los Angeles (LAX) to New York (JFK), departing on June 28, 2026, and returning on June 30, 2026."}'
```

The output streams back to the terminal as the workflow runs.


---

## Triggering via the API

You can trigger any workflow directly with `curl`. The easiest way to get the exact command, with your workspace ID and deployment ID already filled in, is to copy it straight from Studio:

1. Open the Dashboard and navigate to the component you want to run.
2. Click the **copy curl** button on the component.
3. Paste it into your terminal and replace the `X-API-KEY` value with your service key.

The copied command will look like:

```bash
curl -X POST 'https://gw.agnt5.com/v1/workflows/travel_booking_workflow/run' \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: agnt5_sk_..." \
  -H "X-WORKSPACE-ID: d03e6b5f-da6a-43e6-9533-f492175f554a" \
  -H "X-DEPLOYMENT-ID: 9a0e18d6-c4a3-464d-b114-9d63f67fd8cd" \
  -d '{"message": "2 adults are traveling from Los Angeles (LAX) to New York (JFK), departing on June 28, 2026, and returning on June 30, 2026."}'
```
