Install the helper

The helper is one program, togo, that runs on the machine where your agents run. It starts and lists sessions, serves the app over SSH, sends "needs you" alerts and takes answers from your phone. It is optional. Without it, any SSH host still works as a plain terminal.

Install with the script#

$ curl -fsSL https://togoapp.dev/install.sh | sh

Install with Homebrew#

$ brew install gettogo/tap/togo
$ togo service install

The script downloads the release for your system and verifies it before it writes anything to the install folder. It checks the minisign signature on SHA256SUMS, using minisign or OpenSSL 3, and the archive's checksum. On a Mac with neither tool, it checks the program's Developer ID signature instead. It installs togo in ~/.togo/bin and links it from /usr/local/bin when it can write there.

To read the script before you run it:

$ curl -fsSL https://togoapp.dev/install.sh -o togo-install.sh
$ less togo-install.sh
$ sh togo-install.sh

Install with Go#

You need Go 1.26 or later. Install into ~/.togo/bin, the first place the app looks for the helper:

$ GOBIN="$HOME/.togo/bin" go install github.com/gettogo/togo/helper/cmd/togo@latest

The app looks for togo in ~/.togo/bin, /opt/homebrew/bin and /usr/local/bin, then on the SSH session's PATH. A plain go install puts it in ~/go/bin, where the app may not find it. To run togo in your own terminal, add ~/.togo/bin to your PATH.

Build from a clone#

To build from a checkout, you need Go and git.

$ git clone https://github.com/gettogo/togo.git
$ cd togo
$ make build

This writes the program to helper/bin/togo. Copy it to ~/.togo/bin.

Linux notes#

  • Install tmux 3.2 or newer from your package manager. sudo apt install tmux on Debian and Ubuntu may give an older version; check with tmux -V.
  • For Mosh, install mosh the same way, and allow UDP 60000 to 61000 in your firewall.
  • The source is at https://github.com/gettogo/togo.

Check the install#

$ togo version
$ togo doctor

togo doctor reads the machine and changes nothing. It prints one line per check, in this order:

  • ssh: whether SSH answers on port 22. On a Mac, that means Remote Login is on.
  • tmux: installed, and version 3.2 or newer.
  • mosh-server: installed, and whether it is outside the login PATH.
  • etserver: optional, for Eternal Terminal.
  • One line per agent, named after its command: found, or not found.
  • firewall: on macOS, whether the application firewall is on.
  • tailscale: installed and connected. A tailscale ssh line follows when Tailscale SSH is on.
  • routes: the network addresses the app tries for this machine.
  • awake: whether the machine stays awake while sessions work.
  • linger: on Linux, whether your sessions keep running after you log out.

Each line has a status of ok, missing, warn or note, a message, and a fix when there is one. Under integrations, the report then gives each installed agent's setup state, such as ready or needs setup. See Troubleshooting for each message.

Turn on the agent features#

Add the hook entries that let agents report approval requests, and run the helper at login:

$ togo hooks install
$ togo service install

togo hooks status shows what is installed. Agents that don't take hooks report through their own server or files, or through the screen watcher. See Approvals.

Next#

Pair your phone with the machine.