Comparison: Ops Dashboard vs alternatives

Context

The ops dashboard (attune ops / python -m attune.ops) is a local FastAPI server that combines a workflow runner, per-feature scope picker, persisted run history, clickable workflow chaining, and live SSE log streaming into a single interface. It is the primary way to operate the attune workflow OS interactively.

Feature comparison

Capability Ops dashboard Direct API / scripts
Workflow execution Browser UI with scope picker (Feature.path, Feature.tags) and clickable chaining between workflow stages Must wire WorkflowEntry stage map and PathArgSpec arguments by hand
Cost visibility Live Anthropic spend via fetch_summary() — today, 7-day, MTD, 30-day, and per-model breakdowns from CostSummary Call fetch_summary() yourself and format CostSummary fields manually
Run history Runs persisted under Config.runs_dir; retained for Config.runs_retention_days days (default 30) No persistence; output is ephemeral unless you add it
Session tracking /sessions page surfaces Session records (id, duration, message count, starter prompt) Not available outside the dashboard server
Spec completion candidates Detector runs automatically when Config.specs_candidates_enabled = True; surfaces Candidate slugs with evidence Call detect_candidates(config) manually and parse results yourself
Telemetry TelemetrySummary aggregated by workflow and by day; written to Config.telemetry_path Read the raw telemetry file and aggregate yourself
Bulletin / multi-actor log Streamed from Config.bulletin_dir; visible in the UI without extra tooling Tail the files in bulletin_dir manually
Configuration surface Single Config dataclass controls host, port, retention, trusted hosts, and spec roots Must construct Config explicitly and pass it through every call
Startup cmd_ops(args) — blocking; returns 0 on clean exit create_app() returns the FastAPI app for embedding in your own server

Tradeoffs

Ops dashboard strengths

Direct API / script strengths

Use ops dashboard when…

Use the API directly when…

Bottom line: the ops dashboard is the right default for interactive, day-to-day operation of the workflow OS. The direct API surface is the right choice when you need a single capability in a script or test, or when you are embedding attune into a larger application.

Source files

Tags: ops, dashboard, runner, workflows, scope-picker, persistence, sse