netbird-tui

command module
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 30, 2026 License: MIT Imports: 5 Imported by: 0

README

netbird-tui

A terminal UI for the local NetBird daemon. It uses the daemon gRPC socket directly and keeps common monitoring and management tasks in one keyboard-driven interface.

Features

  • Two-level navigation with 4 groups and 11 screens.
  • Monitor screens for status, peers, system events, and network map.
  • Network screens for routes, DNS, and forwarding rules.
  • Manage screens for profiles and setup-key login settings.
  • Tools screens for diagnostics, packet tracing, daemon states, and service status.
  • Context-aware footer actions, confirmation prompts for destructive operations, and quick switch/help overlays.
  • Auto-refresh for daemon data with explicit refresh available from the UI.

Screens

Group Screens
Monitor Status, Peers, Events, Map
Network Routes, DNS, Forwarding
Manage Profiles, Settings
Tools Diagnostics, Services

Requirements

  • Go 1.25 or newer for building from source.
  • A running NetBird daemon.
  • Permission to access the daemon socket, usually unix:///var/run/netbird.sock.

On most Linux systems the socket is owned by root. Run with sudo, adjust group permissions, or pass a socket path that your user can read.

Installation

Install with Go:

go install github.com/n0pashkov/netbird-tui@latest

Build from source:

git clone https://github.com/n0pashkov/netbird-tui
cd netbird-tui
go build -o netbird-tui .

Usage

Use the default socket:

sudo netbird-tui

Use a custom socket:

netbird-tui unix:///custom/path/netbird.sock

Default socket path: unix:///var/run/netbird.sock.

Keybindings

Key Action
Tab / Shift+Tab Switch Monitor, Network, Manage, Tools groups
1 - 4 Jump to a group
Left / Right Switch screens inside the active group
g Open quick switch overlay for all screens
m Open Map from quick switch
? Open contextual help
/ Search inside the current searchable screen
r Refresh current daemon data
c Connect or disconnect depending on current state
u / d NetBird up / down with confirmation
L Logout with confirmation
q / ctrl+c Quit

Screen-specific keys are shown in the footer. The footer only advertises actions available on the current screen.

Search And Filters

  • Peers: / searches by FQDN, IP, or connection status; f cycles all, online, offline, and relayed peers; x clears search.
  • Events: / searches event text; f cycles severity filters; Enter opens event detail.

Troubleshooting

  • Failed to connect to NetBird daemon: verify the daemon is running and the socket path is correct.
  • permission denied: run with sudo or grant your user access to /var/run/netbird.sock.
  • Empty screens: refresh with r; some screens depend on daemon or management-server support.
  • Settings config flags are read-only in this release. Use netbird config set for config changes.
  • Services shows forwarding rules and local service status. Creating exposed services is not enabled in this release.

Development

GOCACHE=/tmp/netbird-tui-gocache go test ./...
go vet ./...
go build -o /tmp/netbird-tui .

Demo

A screenshot or terminal recording can be added to this section when publishing release assets.

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
ui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL