Skip to main content
Agents are in beta, and open to every Zas account. If pairing answers feature_disabled, agents are switched off for yours.
Pairing starts in the terminal and you approve it in the browser. It takes about a minute.

Before you start

  • A Zas account. Agents do not work in an anonymous session.
  • Node.js 22 or newer, on the machine the agent runs on. If Node.js is missing, install the LTS build and reopen the terminal.
  • The agent runs on your own machine. A hosted agent, like claude.ai or a ChatGPT connector, cannot pair.
Every command on this page comes in two forms. Use the Windows tab in PowerShell or CMD, and the macOS, Linux or WSL tab everywhere else. Settings → Agents → Connect in Zas shows the same commands with your platform already chosen.

Pair the machine

1

Run the pairing command

The terminal prints a link, a fingerprint and a countdown, then opens the link in your browser.
2

Approve it in Zas

Signed in, the page shows the harness, the host and the key fingerprint. Compare that fingerprint with the one in your terminal.Name the agent, then choose where it may work: a new channel, created for this agent, or channels you already have. Sending is the default, and reading is a separate switch you turn on per channel afterwards.
3

The terminal claims it

The page hands a one-time code straight to your terminal over 127.0.0.1, and the agent exists only once the terminal claims with it.
Approving creates nothing by itself. A pairing link that reached somebody else is approved on their machine, where nothing is listening, and expires having created nothing.

Add Zas to your agent

Windows:
macOS, Linux or WSL:
Quote the -- on Windows. PowerShell swallows a bare -- before the harness ever sees it, and the server is then registered without its arguments. "--" survives, which is why every command above is written that way.The cmd /d /c prefix is there for the same reason: it resolves both native executables and npm shims without PowerShell’s execution policy or argument parsing getting in the way.
Then ask your agent to run zas_status. It should name the channels you granted.

One profile per agent

A profile is one identity directory on the machine. Claude Code and Codex on the same machine are two profiles, two agents and two pairings, and neither can read the other’s keys. Pair each one separately, with a different --profile name, and use the same name in the harness command.

If the browser cannot reach the terminal

This happens when you open the link on a phone, or when the browser refuses a local connection. The page then shows an eight-character code, and the terminal asks for it.
Type that code into the terminal that started this pairing, and nowhere else. Another terminal that started its own pairing could claim it.
To keep the browser closed, pass --no-open or set ZAS_NO_OPEN=1. The link is printed either way.

Pairing from inside the agent

You can start the flow with the zas_pair tool instead of the terminal. The first call hands back the URL, a later call says whether the approval landed, and if the page showed a code, a call with code claims with it.

The clocks

Past those, run zas-agent pair again.

When it does not work

An empty or short channel picker. The picker offers the channels your own account owns, plus the ones an organization manages and has opened to agents. A channel whose name will not open on this device is counted rather than offered, and the page says so. You can always approve without a channel and add channels afterwards from Settings → Agents, which uses the same picker.

What pairing does not do

  • It does not hand over your account key. The two key pairs are minted on your machine and the private halves never leave it.
  • It does not sign the agent in as you. The agent signs a challenge with its own key and gets a one-hour token. There is no password, no API key and no refresh token on disk.
  • It does not auto-approve, ever. Somebody signed in has to approve the pairing on screen.
  • Deleting the profile directory does not revoke anything. The machine forgets the agent, but the account side stays open. Revoke it from Settings → Agents.

Where to go next

Channels an agent may use

Grants, the two switches, the numbers, and how to revoke.

Recommendations

Read this before you point a model at your account.

Reference

Tools, error codes, files on disk and settings.

Channels

How channels work for people, before you add an agent.