jumpgate
  1. Docs
  2. Durable jobs
  3. Commands

Commands

List, show, decide and adopt jobs from the CLI.

How you got here: Desktop app What a box needs 1. Create the controller key 2. Pair a box How a job behaves Who drives

Show previous steps 6
Install 1
  1. Desktop app

    Download the desktop app for your OS and open it.

    The macOS zip holds Jumpgate.app and Jumpgate Terminal.app; Windows has jumpgate-tray.exe and jumpgate.exe; Linux has install.sh. Every download carries both Linux agents.

    Show image
    The app panel's Home tab: the gateway running two networks.
    Illustration from the jumpgate.app demo, with made-up boxes; not a screenshot of the app.
Getting started 3
  1. What a box needs

    A Debian or Ubuntu box with systemd, reachable as root over SSH.

    Setup needs root (or passwordless sudo with --sudo) and checks Linux, systemd and disk first. The node itself runs as an unprivileged account.

  2. 1. Create the controller key

    Create the key that signs every command to your boxes.

    jumpgate keys init stores it in the Keychain, Credential Manager, Secret Service, 1Password or an owner-only file. It never leaves your computer.

    Show image
    The Signers screen: this controller's address and key store, and the boxes it signs for.
    The TUI, from its test snapshot; empty rows removed.
  3. 2. Pair a box

    Install the agent on a box and confirm its host key.

    You confirmed the box's fingerprint, and jumpgate installed jumpgate-agent.service and a restricted tunnel user. The box now takes only signed commands.

    Show image
    Adding a box: the TUI shows the host key's fingerprint and asks you to type yes.
    The TUI, from its test snapshot; empty rows removed.
Durable jobs 2
  1. How a job behaves

    A job runs fixed steps on the box and asks when it must.

    Each step runs as a transient systemd unit, so a running step outlives the TUI; the agent keeps a signed log, and the box refuses service actions until the job ends.

    Show image
    The jobs inbox: a job on box-a waits for an answer at step 2 of 3.
    The TUI, from its test snapshot; empty rows removed.
  2. Who drives

    One controller holds a job's lease; the others watch.

    A lease silent for 90 seconds is stale, and adopting it is your decision.

jumpgate jobs [HOST]                            # state, step, lease, open question
jumpgate jobs show HOST JOB                     # the steps and the signed log, verified
jumpgate jobs decide HOST JOB DECISION OPTION   # answer the job's question
jumpgate jobs adopt HOST JOB                    # drive a job whose lease is stale or free
jumpgate jobs output JOB                        # follow the job's output

In the TUI, 5 opens the jobs inbox.