Skip to Content
SeyloDocs

CLI reference

Every seylo command and flag, generated from the binary's own help output.

One binary, seylo, is the node agent (seylo agent, started by systemd), the node's command line and the command line for your laptop. Release builds exist for Linux, macOS and Windows; see Command line for installing it on a laptop.

Global flags

Every command takes these:

      --log-format string   log format: text or json (default "text")
      --log-level string    log level: debug, info, warn or error (default "info")
      --profile string      saved panel login to use (laptop commands)

seylo <command> --help prints the same help as below.

Node commands

Run these as root on a node. They talk to the local agent through its socket in /var/lib/seylo/run/ and to systemd. Off Linux they answer that they run on a Linux server.

seylo agent

Run the node agent (started by systemd)

Usage:
  seylo agent [flags]

Flags:
      --can-build            allow builds on this node
      --force                join again although this node already joined a panel
  -h, --help                 help for agent
      --insecure             accept a plain http:// panel URL on another host (the agent protocol is then unencrypted)
      --join string          join this panel before starting (with --token)
      --name string          node name shown in the panel (default: the hostname)
      --pin string           panel certificate pin (sha256:<hex>) for a panel without a public certificate
      --token string         single-use join token from the panel's Add node dialog
      --trust-on-first-use   pin whatever certificate the panel presents on the first connection

seylo health

Run the node health checks here

Usage:
  seylo health [flags]

Flags:
  -h, --help   help for health

seylo join

Join this node to a panel and start the agent

Usage:
  seylo join <panel-url> --token <token> [flags]

Flags:
      --can-build            allow builds on this node
      --force                join again although this node already joined a panel
  -h, --help                 help for join
      --insecure             accept a plain http:// panel URL on another host (the agent protocol is then unencrypted)
      --name string          node name shown in the panel (default: the hostname)
      --no-start             only write the config
      --pin string           panel certificate pin (sha256:<hex>) for a panel without a public certificate
      --token string         single-use join token from the panel's Add node dialog
      --trust-on-first-use   pin whatever certificate the panel presents on the first connection

seylo logs

Without arguments, shows the agent's own journal on this node. With a service, shows that service's logs through the panel (works from any machine after seylo login).

Usage:
  seylo logs [project/service] [flags]

Flags:
  -f, --follow     keep printing new lines
  -h, --help       help for logs
  -n, --tail int   lines of history to show (default 200)

seylo panel

Manage the panel running on this node

Usage:
  seylo panel [command]

Available Commands:
  logs        Show the panel service's logs
  setup-link  Print a new one-time link to create the owner account
  start       Start the panel service
  status      Show the panel service's state, version and URL

Flags:
  -h, --help   help for panel

seylo panel logs

Show the panel service's logs

Usage:
  seylo panel logs [flags]

Flags:
  -f, --follow     keep printing new lines
  -h, --help       help for logs
  -n, --tail int   lines of history to show (default 200)

Writes a new setup token for the panel on this node and restarts the panel so it takes it (the panel imports the token on start while no owner exists). The link works for an hour. After the owner exists, sign in normally instead.

Usage:
  seylo panel setup-link [flags]

Flags:
  -h, --help   help for setup-link

seylo panel start

Start the panel service

Usage:
  seylo panel start [flags]

Flags:
  -h, --help   help for start

seylo panel status

Show the panel service's state, version and URL

Usage:
  seylo panel status [flags]

Flags:
  -h, --help   help for status

seylo restart

Restart the agent service (apps keep running)

Usage:
  seylo restart [flags]

Flags:
  -h, --help   help for restart

seylo start

Start the agent service

Usage:
  seylo start [flags]

Flags:
  -h, --help   help for start

seylo status

Show the agent, its panel connection and the services on this node

Usage:
  seylo status [flags]

Flags:
  -h, --help   help for status

seylo troubleshoot

Collects versions, health checks, the agent's state and logs, Docker and the Seylo containers into a Markdown report with secrets, tokens and email addresses removed, uploads it and prints a link to share. --dry-run prints the report instead.

Usage:
  seylo troubleshoot [flags]

Flags:
      --dry-run                print the redacted report instead of uploading it
  -h, --help                   help for troubleshoot
      --include-service-logs   add the last lines of every service's logs
      --keep-emails            keep email addresses (removed by default)
      --print                  same as --dry-run
      --redact-ips             also replace public IP addresses

Panel commands

Run these on a laptop, in CI or on a node, after seylo login or with SEYLO_PANEL_URL and SEYLO_TOKEN set. They use the panel's HTTP API with an API key. Services are named <project>/<service>, a bare name when it is unique, or an id. See Command line.

seylo deploy

Deploy a service from its configured source

Usage:
  seylo deploy <project/service> [flags]

Flags:
  -h, --help   help for deploy
      --wait   follow the deploy until it finishes (default true)

seylo env

Read and change a service's environment

Usage:
  seylo env [command]

Available Commands:
  list        Print the environment as a .env file
  set         Set variables
  unset       Remove variables

Flags:
  -h, --help        help for env
      --no-deploy   change the variables without redeploying

seylo env list

Print the environment as a .env file

Usage:
  seylo env list <project/service> [flags]

Flags:
  -h, --help   help for list

seylo env set

Set variables

Usage:
  seylo env set <project/service> KEY=VALUE... [flags]

Flags:
  -h, --help   help for set

seylo env unset

Remove variables

Usage:
  seylo env unset <project/service> KEY... [flags]

Flags:
  -h, --help   help for unset

seylo login

Signs in to a panel and saves an API key in ~/.config/seylo/config.json. By default it opens the panel's approval page in your browser: check the code, pick what the key may do and approve. With --token or --token-stdin it saves an API key you created under Settings > API keys instead.

Usage:
  seylo login <panel-url> [flags]

Flags:
  -h, --help             help for login
      --no-browser       print the approval link instead of opening a browser
      --profile string   name for these saved credentials (default "default")
      --token string     API key (default: approve the sign-in in the browser)
      --token-stdin      read the API key from standard input

seylo logout

Forget the saved API key

Usage:
  seylo logout [flags]

Flags:
  -h, --help   help for logout

seylo tunnel

Open temporary access to a service

Usage:
  seylo tunnel [command]

Available Commands:
  cloudflare  Turn a service's Cloudflare tunnel on or off
  expose      Open a service port to your IP for a limited time

Flags:
  -h, --help   help for tunnel

seylo tunnel cloudflare

Turn a service's Cloudflare tunnel on or off

Usage:
  seylo tunnel cloudflare <project/service> on|off [flags]

Flags:
  -h, --help   help for cloudflare

seylo tunnel expose

Open a service port to your IP for a limited time

Usage:
  seylo tunnel expose <project/service> [flags]

Flags:
      --for duration   how long the port stays open (5m to 24h) (default 1h0m0s)
      --from string    source address allowed in (default: your public IP)
  -h, --help           help for expose
      --port uint32    container port to expose

Other commands

seylo version

Print the version (and the running agent's, on a node)

Usage:
  seylo version [flags]

Flags:
  -h, --help   help for version

On this page