Layout
Nexus uses a two-panel design:- Left sidebar — Shows the Pylon logo with an animated spinner, the current version (with upgrade indicator when a new release is available), daemon status (ON/OFF), and a list of all configured pylons. Each pylon has a status indicator: a filled diamond means active, an empty diamond means disabled.
- Right panel — Switches between the home view (detail for the selected pylon) and wizard views (setup, construct).
Home view
The home view is the default screen. The left sidebar lists all your pylons. Navigate the list withj/k (or arrow keys), and press l or enter to shift focus into the detail panel for the selected pylon. Press h or esc to return focus to the list.
When no pylons exist, Nexus shows a prompt to press c to construct one or g to run global setup.
Each pylon row in the sidebar shows:
- The pylon name (truncated if too long)
- A status diamond: filled green when a job is active, filled dim when idle, outlined when disabled
Detail view
When you select a pylon, the right panel shows its full configuration and job history.Configuration section
The detail view displays:- Trigger — The trigger type and its path (for webhooks) or cron expression with a human-readable description (for cron triggers)
- Timezone — For cron pylons, the resolved timezone
- Next run — For cron pylons, the next scheduled fire time with a countdown (e.g. “Mon Apr 13 09:00 (in 2h 30m)”)
- Webhook URL — For webhook pylons, the full public URL with a
[y] copyhint - Workspace — The workspace type, repository, ref, and path
- Agent — The agent type and authentication method
- Channel — The notification channel type
- Topic — The topic template (if configured), truncated to 36 characters
- Message — The message template (if configured), truncated to 36 characters
- Auto-run — Whether the pylon runs automatically or requires approval
- Prompt — The agent prompt, shown as a truncated single line by default. Press
pto expand the full prompt text.
Job history table
Below the config section, a job history table shows the 20 most recent jobs. Toggle visibility witht. The table columns are:
Navigate jobs with
j/k when the detail panel is focused. Selecting a failed job shows its error message inline below the row.
Keybindings
Navigation
Pylon management
Daemon control
Detail view actions
These keys are available when the detail panel is focused (after pressingl or enter):
Job actions
These keys are available when a job is selected in the job history table:Global
Message template builder
The message template builder is an interactive tool for composing notification message templates from webhook payload fields. Open it by pressinga from the detail view.
The builder reads the most recent job’s trigger payload and presents its fields organized into collapsible groups. You can browse the payload structure, see sample values from the real data, and check off the fields you want included in your message template.
Selected fields are rendered as labeled Go template expressions (e.g.
Title: {{ .body.event.title }}). A live preview of the generated template appears at the bottom of the screen as you select fields. The template is saved to the pylon’s channel.message config field.
Setup wizard
Pressg from the home view to launch the global setup wizard inside Nexus. This is the same wizard as pylon setup, but embedded in the TUI rather than running as a separate process. It walks through Docker verification, channel configuration, agent selection, and public URL setup.
Press esc to cancel the wizard (with confirmation) and return to the home view.
Nexus requires a terminal with at least 60 columns. If the terminal is too narrow, it displays a resize prompt instead of the dashboard.