Board

Board is the desktop console. One window over the same apps the toryo command line drives: the job queue, sequence runs, schedules, the knowledge plane, your projects and your settings, watched live instead of polled from a terminal.

It is a view onto your install rather than a second copy of it. Every screen drives the same toryo commands you would run yourself, against the same database and the same background services, so a job you queue from a terminal shows up on the Dispatch screen, and a setting you change here is the same setting the CLI reads.

What you downloaded#

One file carries both halves of the product. The dmg on the downloads page holds the console and the whole toryo CLI, bundled inside the app. There is one build per Mac architecture, so pick Apple Silicon or Intel to match yours. Open the dmg, drag Toryo to Applications, and launch it. The build is signed and notarized, so it opens without a Gatekeeper warning.

That one download is all of toryo's own software. Getting started walks the full install, including the host prerequisites toryo expects to find already there and does not install for you.

First launch#

Board opens two gates before it shows you a screen, in this order.

The install. A freshly dragged app has the CLI in its own resources and nothing on disk yet, so board asks two questions and offers one button: how the database should run (embedded pglite, or Docker), and which host tools to install alongside it. Board asks these rather than letting setup ask, because it spawns setup with piped stdio and so setup has no terminal to prompt at; the answers go down as --runtime and --install. pglite is the default because it needs nothing else on the machine.

Pressing the button runs toryo setup out of those resources and streams the log as it goes: the CLI into ~/.toryo/bin, the database up, every migration applied, the background services installed and started. A first run takes a few minutes, mostly spent pulling the Postgres image if you chose Docker.

Activation. Once the install is provisioned, board reads the license. If this install was never activated, its trial has ended, or its license is blocked, board raises the activation dialog as an overlay that cannot be dismissed until it has a working license. The background services are held down by the same check, so there is nothing running behind the overlay anyway.

Activating from board#

The dialog takes the same two credentials the CLI does. An email address on its own starts a 14-day trial. An email address plus a license key activates a seat. Either one activates the whole install, not board alone.

Everything else, what a trial covers, what a seat covers, and how activation survives a lost connection, is on Licensing & activation.

Where the license lives afterwards#

The license entry is pinned to the foot of the sidebar, labelled with the email address you are signed in as. On a trial it carries the countdown as a second line, read from your own install rather than fetched, so it stays accurate offline. Clicking it opens the same dialog the boot gate raises, which is where you enter a key once a trial runs out.

The screens#

Board's sidebar holds fourteen screens in three sections:

  • Orchestration: Foreman, Scheduler, Dispatch, Sequence.
  • Knowledge: Brain, Memory, Library, Code Index, Ideas.
  • System: Sequence Design, Projects, Messaging, Usage, Settings.

Each has its own concept page here, and those pages carry the detail: what a screen is for is explained once, on the page named after it.

Two are worth naming because they are newer than the rest. Sequence Design is where you create, clone, edit and import sequences, including by describing what you want to an agent rather than writing YAML. Usage is the rate-limit picture for every harness you have enabled.

Updating#

Open the license dialog from the sidebar and press Check for updates, or click the release notice when it appears in the bell. Board downloads the new version, installs it and relaunches; the command-line tools follow on that next launch, from the payload the new app carries.

On an Apple Silicon Mac, that is. The in-app updater ships one payload, for that architecture, so an Intel install finds nothing to download and keeps reporting that it is up to date. Update it by downloading the dmg again from the downloads page and replacing the app in Applications.

Nothing is ever applied without you. No update on quit, no timer, no silent download. Updating restarts the background services, which ends every agent session and dispatch job in flight, so the Update button stays disabled while anything is running and tells you what: "2 dispatch jobs running, 1 sequence run active". Re-check asks again once you have let them finish.

toryo update is the same decision from a terminal. It swaps the CLI binaries in ~/.toryo/bin and refuses a busy machine the same way, naming what it would interrupt. --force overrides it, and toryo update --quiescence asks the question without applying anything.

You can still download Toryo.dmg again and replace the app by hand. Nothing about the in-app path stops that.

Where things go wrong#

  • "Open in tmux" does nothing. In a packaged app that button shells out through a path baked in at build time, which does not exist on your machine. Attach to the session yourself with tmux attach -t <session> until it is fixed. See Known limitations.
  • Screens are empty or red. Usually the background services are down rather than board being broken. The Foreman screen names which one, and toryo foreman check reports the same thing from a terminal.
  • The activation overlay is back. The license state changed under you: a trial ended, a seat was revoked, or the cached proof no longer verifies. Licensing & activation covers each case.

Full command surface: CLI & contract reference.