---
id: "run-dev-jobs"
type: "guide"
title: "Run the local jobs stack"
summary: "Start jobs-api with an inline worker and jobs-ui from the monorepo root."
why: "This is the supported local path for operator UI + queue development."
audiences: ["developers", "builders"]
related: ["one-graph-per-call", "jobs-durability"]
invariants: ["MONGO_URI must point at a reachable MongoDB", "UI talks only to the API over HTTP"]
confirmationRequired: false
---
# Run the local jobs stack

# Run the local jobs stack

## Use this when

You need the operator dashboard and queue worker on your machine.

## Do not use this when

You only want a single in-process `executeGraph` test — use graph-engine tests instead.

## Steps

1. Ensure Node 20+ and MongoDB are available.
2. Set `MONGO_URI` (or rely on `graph-packages/graph-engine/.env`).
3. From the monorepo root run:

```bash
npm run dev:jobs
```

4. Open the UI on port **5190**; API listens on **3099**.
5. To stop listeners: `npm run dev:kill`.

## Verification

- API health responds on `:3099`
- UI loads and can list empty queues without CORS errors

## Recovery

If ports are busy, run `npm run dev:kill` then retry. If Mongo fails, run `npm run mongo-doctor`.