Quickstart: ops dashboard

Launch the local operations dashboard in your terminal with one command:

python -m attune.ops

The server starts on 127.0.0.1:8765 by default and blocks until you stop it.

Prerequisites

Step 1: Build a config

Use build_config() to point the dashboard at your project:

from attune.ops import build_config

config = build_config()
print(config.host, config.port)  # 127.0.0.1 8765

Expected output:

127.0.0.1 8765

Step 2: Create the app

Pass the config to create_app() to get the FastAPI application without pulling the framework into your import path until you need it:

from attune.ops import create_app

app = create_app()

No output means success — the factory returned without error.

Step 3: Start the server

Run the dashboard as a module. The process blocks and streams logs to your terminal:

python -m attune.ops

Expected output:

INFO:     Uvicorn running on http://127.0.0.1:8765 (Press CTRL+C to quit)

Open http://127.0.0.1:8765 in your browser to see the workflow runner, scope picker, and run history.

What you just did

Next:

Read the Config dataclass fields — particularly specs_roots, allow_run, and runs_retention_days — to customize how the dashboard discovers specs and retains run history.