Web UI Overview
The dagctl web interface provides a comprehensive platform for running SQLMesh in production — managing projects, monitoring executions, and collaborating with your team. dbt-core projects are also supported.
Accessing the UI
Log in at: https://dagctl.io
Use your organization credentials to access the platform.
Navigation Structure
The dagctl UI is organized into sections in the left sidebar. Pinned appears at the top once you have pinned items, and Resources at the bottom links to documentation and the support Discord.
Get Insights
Dashboard
- Overview of recent job runs and execution status
- Success/failure rate charts
- Active projects summary
- Favorited model performance tracking
- Quick access to recent activity
Monitoring
- Real-time job execution monitoring
- Performance metrics and trends
- Model health status (SQLMesh)
- Historical execution data visualization
Catalog
- Browse all models and sources across projects
- Search and filter by project, type, and name
- View column metadata and execution history
- Favorite models for dashboard tracking
See Model Catalog for details.
Lineage
- Cross-project dependency graph visualization
- Trace upstream and downstream model dependencies
- Filter by project and model type
See Lineage for details.
Data Operations
Projects
- View all projects (SQLMesh and dbt) in your organization
- Create new projects using the guided wizard
- Configure Git repository connections
- Manage project settings and environment variables
- Access project-specific views:
- Overview — Project details, Git status, and quick actions (Run Now, Create Plan, View Plans, View History)
- Plans — Plan management and approval workflow
- Run History — Job execution history with logs
Jobs
- View all scheduled jobs across every project, filterable by project
- Create and configure new jobs
- Enable/disable job schedules
- Trigger manual job runs
- Monitor job execution status
- Configure job settings (cron schedule, concurrency, environment variables)
Settings
Settings is a group of separate pages rather than one page with tabs:
- General — Organization details: name, ID, namespace, and creation date
- Team — Invite and manage team members with role-based access. Visible only to users who can manage the team.
- Authentication — Two tabs: API Tokens for CLI and API access, and SSH Keys for Git repository access
- Secrets — Two tabs: Environment Variables for organization-wide config and file-mounted credentials, and Protection for restricting CLI access to environments
- Integrations — Connect Slack for job alerts, and GitHub for repository access
Dates and Times
Every date and time in the dagctl UI is displayed in UTC, labeled UTC where it
isn't obvious. This matches how your project actually runs: cron schedules, interval
boundaries, and execution timestamps are all UTC server-side, so what you read in the
UI is what the scheduler used. Hover any timestamp to see the same moment in your
browser's local timezone.
Relative times such as 5m ago, in 2 hours, or 1d 4h carry no timezone and are unaffected.
Data intervals are shown as the range they cover, not as SQLMesh's internal boundaries.
SQLMesh records a day of data as the half-open range [2026-09-15 00:00, 2026-09-16 00:00);
dagctl displays that as Sep 15. A multi-day range reads Sep 10 → Sep 15, and a
sub-daily range carries date and time on both ends: Sep 15 14:00 → Sep 15 14:59.
Data through on a model is the end of the latest interval dagctl has processed, which
is how current that model's data is. It is not when the model last ran. A model on a daily
schedule that ran five minutes ago will normally show Data through yesterday.