Skip to main content
The ish CLI (@ishlabs/cli, binary ish) drives ish from a terminal or a coding agent. It ships as a single standalone binary (from the install script or Homebrew) or as a global npm package. Both expose the same commands. For a guided first run, see the quickstart. For the full per-command flag tables, see the command index. Global flags, the auth token resolution order, and exit codes live on the global flags page.

Install

Pick one method. The install script and Homebrew give you a self-contained binary; the install-script binary self-updates with ish upgrade, Homebrew updates with brew upgrade ish. npm gives you the same CLI as a global package managed by npm.
curl -fsSL https://ishlabs.io/install.sh | sh
Confirm the install:
ish --version

Method comparison

MethodCommandSelf-updatePlatforms
Install scriptcurl -fsSL https://ishlabs.io/install.sh | shish upgrademacOS, Linux
PowerShell scriptirm https://ishlabs.io/install.ps1 | iexish upgradeWindows
Homebrewbrew install ishlabs/tap/ishbrew upgrade ishmacOS, Linux
npmnpm install -g @ishlabs/clinpm install -g @ishlabs/cli@latestAny with Node 18+

Supported targets

The standalone binary is built per platform and architecture. The install scripts detect your platform and download the matching binary.
PlatformArchitectures
macOS (darwin)arm64, x64
Linuxarm64, x64
Windowsx64
The npm package requires Node 18 or newer (engines.node is >=18.0.0). Homebrew installs node and cloudflared as dependencies; cloudflared is used by ish connect.

Install location and PATH

The install script writes the binary to ~/.ish/bin/ish and appends a PATH line to your shell profile (.zshrc, .bashrc / .bash_profile, or config.fish). If ish is not found after install, open a new terminal or source your profile.
ISH_INSTALL_DIR
env var
Override the install directory. Defaults to ~/.ish/bin (%USERPROFILE%\.ish\bin on Windows).
ISH_NO_PATH
env var
Set to 1 to skip the shell-profile PATH edit (for ephemeral or sandbox installs). You then add the install directory to PATH yourself.
ISH_HOME
env var
Override where the CLI reads and writes session state (config.json, aliases.json). Defaults to ~/.ish.
cloudflared is not bundled. The install scripts print how to add it (brew install cloudflare/cloudflare/cloudflared, winget install Cloudflare.cloudflared). It is only needed for ish connect.

Upgrade

ish upgrade
ish upgrade downloads the latest standalone binary from https://ishlabs.io/api/releases/ and atomically replaces the running executable (typically ~/.ish/bin/ish). The download is TLS-verified. When you are already on the latest version it is a no-op. Pin a specific release with --release (note: --version is the global flag that prints the CLI version, not an upgrade target):
ish upgrade --release 0.28.2
ish upgrade only updates a standalone binary install (install script or Homebrew). On an npm install it refuses with a usage error (exit code 2) rather than overwriting the node binary. Update those installs with their package manager instead.
Install methodHow to update
Install scriptish upgrade
Homebrewbrew upgrade ish
npmnpm install -g @ishlabs/cli@latest
See ish upgrade for the full reference.

Command index

Every command takes the same global flags (--json, --token, --workspace, and more). The command index is the complete table with subcommands; the groups below orient you.

Session and connection

Auth and session

ish login, ish logout, ish status (alias whoami). Sign in, sign out, and show the active session.

Local tunnel

ish connect, ish disconnect. Expose a localhost service so a simulated person can reach it.

Studies and runs

Studies

ish study plus create, run, results, analyze, share, and more. Shape a study and read what people reported back.

Iterations

ish iteration. Manage the run-time configurations of a study (the URL, media, or chatbot endpoint each run uses).

Asks

ish ask. Quick variant comparisons: pose questions to people and read their answers.

Chat studies

ish chat. Author chatbot endpoints and run chat-modality studies.

People and inputs

People

ish person. Manage, generate, and inspect the simulated people in a workspace.

Sources

ish source. Upload and inspect attachments (transcripts, audio, images) used as generation inputs.

Workspaces

ish workspace. Create, list, and switch the workspace your commands act on.

Secrets and configs

ish config and ish secret. Manage simulation configs and workspace secrets.

Setup and agents

Agent skill and MCP

ish init installs the ish agent skill into a project; ish mcp wires the ish MCP server into Cursor, VS Code, Claude Code, Claude Desktop, and Windsurf.

Offline docs

ish docs. The mental model, concept pages, and search, available from the CLI for agents.

Local setup check

ish check and ish setup. Verify and install local-simulation dependencies (Chromium, the iOS runner, adb).

Upgrade and feedback

ish upgrade keeps the CLI current; ish feedback reports a bug or sends a note to the ish team.