Skip to content

Web UI

The Web UI is built into the daemon. Open http://<host>:<port> (by default http://localhost:9477). It updates live as runs happen.

You can run, stop, and restart tasks and services from it. Everything else is read-only: to change what RunWisp runs, edit runwisp.toml and reload.

From the TUI, select Open Web UI on the Home page and press Enter. Your browser opens already logged in.

TUI Home page: Open Web UI row focused at the top, Web UI URL and masked password below, recent-activity table filling the rest of the pane.

From any other browser, you get a login form. There is no username, only the password.

Login modal centred on the dashboard: single password field, Login button, no username.Login modal centred on the dashboard: single password field, Login button, no username.

Where the password comes from, session length, and the lockout after too many wrong attempts are covered in Authentication.

Overview page: daemon hero with sparklines, stats cards, task overview tabs (All · Attention · Running · Scheduled · Manual), and the recent activity feed.Overview page: daemon hero with sparklines, stats cards, task overview tabs (All · Attention · Running · Scheduled · Manual), and the recent activity feed.
  • Header: RunWisp version, host, CPU count, uptime, and the instance fingerprint.
  • Stats: healthy tasks, tasks that need attention, running now, and recent success rate. A separate panel shows CPU and memory.
  • Task overview: tabs for All, Attention, Running, Scheduled, and Manual, with a sort selector. Attention lists everything that isn’t healthy. A task with a held badge comes from a crontab that cron still runs; see Held jobs. A task whose schedule you paused shows as Paused.
  • Recent activity: the latest runs across all tasks, next to the Needs attention, Running now, and Up next panels.

Recent runs across every task, newest first.

All Runs page: flat newest-first table of recent runs across every task with status icons, durations, and timestamps.All Runs page: flat newest-first table of recent runs across every task with status icons, durations, and timestamps.

Click Filter in the run list header. Active filters show as chips under the header; click one to remove it.

  • Status: Running, Succeeded, Failed, Skipped, or Stopped. Failed includes every kind of failure. Open Advanced to pick exact statuses, such as only timeout.
  • Date range: From and To, each optional. A date alone covers the whole day, so a To of 10 July includes runs on 10 July.
  • Task: only on /runs.
  • Triggered by: schedule, REST API, Web UI or TUI, runwisp run, service start, or daemon start.
  • Exit code: an exact code (137), a comparison (>100, <=2), or a range (>100 <150).
  • Retries: only runs that retried an earlier attempt.

Select runs to re-run, cancel, or delete them together. “Select all” selects every run that matches the filter, not only the visible rows. The same filters are query parameters on GET /api/runs.

Click a task in the sidebar to open it. The header shows the task’s description and one action: Run, Stop while a run is active, or Restart / Stop Service for a service.

Next to a cron task’s name in the top bar is its schedule. Click it to see the next run and to pause or resume the schedule (see Pausing a schedule).

Below are the task’s run history and the log of the selected run.

Task detail for a finished run: header with Run button, run history list on the side, log viewer occupying most of the pane.Task detail for a finished run: header with Run button, run history list on the side, log viewer occupying most of the pane.

If the task has parameters, Run opens a form with one field per parameter.

Run Task modal for a parameterised task: text fields, dropdowns, a number input, and a toggle, one control per declared parameter, each with help text underneath.Run Task modal for a parameterised task: text fields, dropdowns, a number input, and a toggle, one control per declared parameter, each with help text underneath.

A finished run opens at the end of its log; scroll up to load earlier lines. A running run streams new lines live. Line numbers match the log file on disk. Download log in the run header downloads the whole file.

A failed run has a coloured status (failed, timeout, crashed, stopped, skipped, or log_overflow), its exit code, and its duration. Click it to read its output.

Task detail for a failed run: red FAILED status pill in the header, exit code next to duration, captured stderr filling the log pane.Task detail for a failed run: red FAILED status pill in the header, exit code next to duration, captured stderr filling the log pane.

The bell in the top bar shows the unread count. Click it for recent notifications, Mark all read, and View all. Click a notification to open its run.

Bell clicked: popover open with recent notifications, severity dots, relative times, and a coalesced row showing the repeat count.Bell clicked: popover open with recent notifications, severity dots, relative times, and a coalesced row showing the repeat count.

Repeats of the same event are grouped into one row, such as “12× in the last hour”. See Notifications.

/notifications lists all notifications, with Load more at the bottom.

The full /notifications page: history across all tasks with the unread count at the top.The full /notifications page: history across all tasks with the unread count at the top.