Once build insights
Once streams runs to Tuist while they execute, so you can follow progress without waiting for the final CI log. Open the dashboard link printed at the start of a run to inspect its graph, action status, and cache decisions.
- Complete Get started with Once and authenticate the machine running Once.
Report your builds#
Keep using your Once commands:
once build MyApplication
Live reporting is best-effort. An unavailable reporting endpoint or expired session does not fail the build. Sign in again with once auth login --provider tuist if the session expires.
What the dashboard shows#
Use Builds and Build Runs to compare runs across time, branches, and local or CI environments. Each run can include:
- The requested command, status, start time, and duration.
- The Once version and reported host information.
- Actions and their dependencies, status, duration, and cache results.
- Reported action errors.
- Git branch, commit, and CI context when reported by the client.
Search and filter the actions to find failed or slow work. Reported action names and source files help connect work back to the code; older clients may provide less detail. Cached or skipped actions are not executed work, and missing timing is not a zero-duration execution.
Tuist does not currently ingest Once's raw action log stream. Keep CI logs for full process output; run summaries and structured errors are not a replacement for those logs.
The Cache view separates action decisions from content-object transfers. See Once cache for interpreting cache activity.
Tests#
Test commands also produce Once runs. Their reported suites and cases appear under Tests; hosted shards additionally publish a combined test run. See Once test insights.
Coding agents and Grafana#
The Model Context Protocol tools let an agent list Once runs and read a run's action and cache totals. The same reads are available through the HTTP API.
Use the Grafana integration for finalized Once build-health metrics. Once does not currently report elapsed cache time savings, so that measurement remains unavailable rather than zero.