Skip to main content
Version: Enterprise (1.2.0)

WebXTerm Shell CLI

WebXTerm Shell CLI is a Go-based command-line tool that lets you list your machines and connect to them with a full interactive terminal — directly from your terminal, without opening a browser.

Overview

WebXTerm Shell CLI provides:

  • Interactive terminal sessions — full PTY terminal via WebSocket, just like the web terminal
  • Machine listing — see all your registered machines and their online/offline status
  • Lightweight — single static binary, no runtime dependencies
  • Cross-platform — Linux, macOS, and Windows

Installation

WebXTerm Shell CLI is distributed as a pre-compiled binary.

Download Binary (Linux / macOS)

# Download the latest release (replace with your platform)
curl -LO https://releases.vsayterminal.com/vsay-shell-cli/latest/vsay-shell-cli-linux-amd64.tar.gz
tar -xzf vsay-shell-cli-linux-amd64.tar.gz
sudo mv vsay-shell-cli /usr/local/bin/

Install via DEB Package (Debian/Ubuntu)

sudo dpkg -i vsay-shell-cli_amd64.deb

Install via RPM Package (RHEL/CentOS/Fedora)

sudo rpm -i vsay-shell-cli_amd64.rpm

Quick Start

1. Login

Authenticate with your WebXTerm backend URL:

vsay-shell-cli login https://your-webxterm-instance.com

You'll be prompted for your email and password. Credentials are saved to ~/.vsay-shell-cli/config.json.

2. List Machines

vsay-shell-cli list

or

vsay-shell-cli ls

3. Connect to a Machine

vsay-shell-cli connect <machine-name>

This opens a full interactive terminal session to the machine via WebSocket — the same connection used by the web terminal.

4. Delete a Machine

vsay-shell-cli delete <machine-name>

Commands Reference

CommandDescription
vsay-shell-cli login <URL>Authenticate with your WebXTerm backend
vsay-shell-cli logoutClear saved credentials
vsay-shell-cli list / lsList all registered machines
vsay-shell-cli connect <name>Open an interactive terminal session
vsay-shell-cli delete <name>Remove a machine from your account
vsay-shell-cli statusShow current login status
vsay-shell-cli versionPrint CLI version

Configuration

Credentials and API URL are stored in:

~/.vsay-shell-cli/config.json
{
"api_url": "https://your-webxterm-instance.com",
"token": "eyJhbGciOiJIUzI1NiIs..."
}

How the Terminal Connection Works

When you run vsay-shell-cli connect <name>, the CLI:

  1. Fetches your machine list from /api/machines to find the agent_id
  2. Generates a unique session ID: cli-{timestamp}
  3. Opens a WebSocket to:
    ws://your-webxterm-instance.com/api/terminal/{agent_id}/ws?session_id=...&token=JWT&source=cli
  4. Connects your local terminal (TTY) to the WebSocket stream
  5. Keystrokes are forwarded to the agent on the remote machine, output streams back in real time

Community vs Enterprise

FeatureCommunityEnterprise
Login and authentication
List machines
Interactive terminal sessions
Delete machines
OIDC/OAuth2 authentication
Multi-org support