Portaldocs
Getting started

Install the CLI

Install portal on macOS, Linux or Windows (through WSL) with one command, and what the installer does.

Warnings and limits

  • The CLI runs on macOS and Linux (x86_64 and arm64). It does not run natively on Windows yet: use WSL 2, as in Windows (WSL). In a Windows shell the installer stops with "portal does not run on Windows itself: run this command in WSL."
  • The installer refuses to run as root. --system (Linux, as root) is only for enrolling a machine with a code. See Your own machines.
  • Installing grants no access: you still sign in in the browser. Portal is open to anyone with an active Clusy account and a verified email address.
  • The installer's downloads are limited to 30 requests a minute per client address.
  • There is no portal uninstall command for the CLI. See Remove the CLI.

Install

curl -fsSL https://gateway.clusy.io/install.sh | sh

Or give your coding agent set up https://portal.clusy.io/SKILL.md: it runs this installer with --prefer-portal for you and goes on to connect your clouds. See Set up your coding tool.

The script is served by Portal itself and installs Portal's own build of the CLI. It:

  1. Checks for curl and a SHA-256 tool, and refuses Windows and root.
  2. Uses your uv when it is version 0.13.4 or later. Otherwise it installs a pinned uv release, checked against its SHA-256 before it runs.
  3. Downloads the CLI's wheel, checks its SHA-256, and installs it as a uv tool named clusy-portal on Python 3.12.
  4. Adds the tool's directory (usually ~/.local/bin) to your shell's PATH when it is missing.
  5. Runs portal setup, which registers Portal with Claude Code and Codex when they are installed and opens the browser to sign in.

Everything in the script runs only after it has downloaded completely, so a download cut short runs nothing.

Windows (WSL)

Portal's CLI does not run natively on Windows yet. Run it inside WSL 2, the Windows Subsystem for Linux, where the Linux build installs and works as on any Linux machine.

  1. Install WSL. In PowerShell, run as administrator:

    wsl --install

    Restart Windows when it asks, then open Ubuntu from the Start menu and create your Linux user. If WSL is already installed, run wsl --update instead. wsl -l -v shows each distribution's WSL version; wsl --set-version Ubuntu 2 moves one from WSL 1 to WSL 2.

  2. In the Ubuntu terminal, as your Linux user (not root), run the install command:

    curl -fsSL https://gateway.clusy.io/install.sh | sh

    It needs curl and sha256sum, which Ubuntu has, and installs uv and Python 3.12 itself. If curl is missing, run sudo apt update && sudo apt install -y curl first.

  3. Sign in. The installer ends with portal setup, which tries to open a browser. When nothing opens in Windows, press Ctrl-C and run:

    portal login --device

    It prints an approval page and a code. Open the page in your Windows browser, check that it shows the same code, and approve. To let the CLI open your Windows browser itself next time, install wslu (sudo apt install -y wslu) and add export BROWSER=wslview to ~/.bashrc.

  4. Run your coding tools inside WSL, where the CLI is: they start Portal's MCP server with portal mcp, which a tool running on Windows itself cannot start.

    • Claude Code and Codex: install and start them in the Ubuntu terminal. portal setup registers Portal with them there.

    • VS Code: open the project in a WSL window with the WSL extension (code . in the Ubuntu terminal opens one). Add Portal to the project's .vscode/mcp.json, which VS Code runs inside WSL in that window, with the path command -v portal prints:

      {
        "servers": {
          "portal": {
            "type": "stdio",
            "command": "/home/YOUR_USER/.local/bin/portal",
            "args": ["mcp", "--root", "${workspaceFolder}"]
          }
        }
      }
    • Other coding tools: run them inside WSL in the same way, so the MCP server they start runs where the CLI is installed. See Set up your coding tool.

  5. Keep your projects in the WSL file system, under ~/ (for example ~/projects/my-job), not under /mnt/c. portal run uploads the project directory, and WSL reads files under /mnt/c much more slowly.

Prefer Portal in your coding tools

To also add Portal's compute guidance to your coding tools' user instructions and install its skill:

curl -fsSL https://gateway.clusy.io/install.sh | sh -s -- --prefer-portal

portal setup --prefer-portal does the same later, and portal setup --no-prefer-portal removes only what it added. See Set up your coding tool.

Check the installation

portal --version
portal help

portal help and portal help COMMAND work without signing in. The CLI reference holds the same text.

Update

portal update

It runs the install command of the Portal you are signed in to, which installs the CLI build Portal serves at that moment over the one you have, then checks the new build. Your sign-in and your coding tool setup stay. If you chose --prefer-portal, Portal's skill is refreshed for those coding tools; a skill you edited is left as it is. Restart Claude Code or Codex afterwards so their Portal tools use the new CLI.

portal update --check only says whether a newer build is available. portal --version names your build, such as Portal 0.2.0+native.d9e791d55aa8.

Other commands check at most once a day and print one line after their output when an update is available. The check never runs with --json, in CI or outside a terminal, and PORTAL_NO_UPDATE_CHECK=1 turns it off.

A CLI without portal update updates the same way by running the install command again.

On a computer you enrolled as one of your machines, Portal's agent keeps the previous build until it restarts.

Remove the CLI

The CLI is a uv tool named clusy-portal:

uv tool uninstall clusy-portal

Run portal setup --no-prefer-portal first if you added Portal's preference to your coding tools. Sign-ins you made from the CLI stay listed in the console under Settings, Agents, where you can revoke them.

On this page