CLI Reference
This section documents all available CLI commands in the Juice CLI tool.
Core Commands
check
Command: check [options]
Description: Checks the installation for common issues
Parameters:
--json
: Format output as JSON
Details:
- Checks installation in the default install directory
- Verifies NVIDIA driver versions and compatibility
- Reports any failures that would prevent GPU sharing
login
Command: login [controller]
Description: Log in to a controller
Parameters:
--insecure-skip-tls-verify, -k
: Skip verification of TLS certificates--token, -t
: Token to use for authentication (must be empty or start with "m2m")controller
(optional): The controller to connect to. Can be:- A predefined environment name
- An HTTP/HTTPS URL
- If omitted, uses the first environment from vendor configuration
logout
Command: logout
Description: Log the current user out of the controller
Note: Cannot logout while having an active session - must release the session first using session release
Agent Management
agent list
Command: agent list
(alias: agent ls
)
Description: List all the agents accessible to the user
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: state, hostname, pool.name, id, numgpus)--sort
: Sort output (default sort column: 1)
agent info
Command: agent info <id>
Description: Gets the information of a specific agent
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: state, hostname, pool.name, id, numgpus)--sort
: Sort output (default sort column: 1)id
(required): The ID of the agent to get information about
agent run
Command: agent run [pool_id]
Description: Run the GPU Sharing agent in the foreground, sharing your GPU to a specified pool (not available in WSL)
Parameters:
pool_id
(required): ID of the pool to share GPUs with--exit-on-stdin
: Exit when stdin is closed--disable-gpu-metrics
: Disable GPU metrics collection--gpu-metrics-interval-ms
: GPU metrics collection interval in milliseconds--listen-ip
: IP address to listen on--cache-size
: Size of the cache--gpu-ids
: Comma-separated list of GPU UUIDs to share--labels
: Comma-separated list of key=value labels--taints
: Comma-separated list of key=value taints--stun-server
: Comma-separated list of STUN servers--relay-server
: Relay server address--force-relay
: Force using relay server--gateway-port
: Gateway port number (1-65535)--gateway-ips
: Comma-separated list of gateway IP addresses
agent service
Command: agent service
Description: Manage the agent service (not available in WSL). These commands manage the agent service on Windows or Linux (via systemd).
agent service install
Command: agent service install [pool-id]
Description: Install the GPU Sharing agent as a service (not available in WSL)
Parameters:
pool-id
(required): ID of the pool to share GPUs with- All parameters from
agent run
command are supported --cache-size
: Size of the cache
GPU Management
gpu list
Command: gpu list
(alias: gpu ls
)
Description: List all the GPUs accessible to the user
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: hostname, name, uuid, agentVersion, vram-h)--sort
: Sort output (default sort columns: 3,2,1)
Token Management
m2m list
Command: m2m list [id]
(alias: m2m ls
)
Description: Lists all M2M tokens
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: description, token, id, expiresAt)--sort
: Sort output (default sort column: 1)id
(optional): ID of a specific token to list
m2m create
Command: m2m create
Description: Creates a Machine-2-Machine authentication token for use on servers. Once you have created a M2M token pass it as a flag to the login command to authenticate with your token instead of going through a web based authentication flow.
Parameters:
--description, -d
(required): Description for this token--expire-days, -e
: The number of days the token will be valid for (default: 30)
m2m remove
Command: m2m remove <id>
Description: Removes a M2M token
Parameters:
id
(required): ID of the token to remove
Pool Management
pool list
Command: pool list
(alias: pool ls
)
Description: List all the pools accessible to the user
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: organization.name, name, id, sessions, gpuCount)--sort
: Sort output (default sort columns: 3,2,5,4,1)
Release Management
release list
Command: release list
(alias: release ls
)
Description: List releases
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: version, notes)--sort
: Sort output
release download
Command: release download <version>
(alias: release dl
)
Description: Download a specific release
Parameters:
version
(required): Version of the release to download. If only a partial version is provided (without build info), it will match the first release that starts with that version.
Application Management
run
Command: run [flags] <application> [<application args>]
Description: Starts an application using the GPU(s) available to the user
Parameters:
application
(required): The application to run--ephemeral
: Always requests a new session for the application--on-queue-timeout
: When a queue timeout happens, [fail, continue] (default: fail)--on-connection-error
: When a connection error happens, [fail, continue] (default: fail)--disable-compression
: Disables compression--disable-cache
: Disables caching--relaxed-api
: Enables a relaxed API conformance mode which allows for greater performance at expense of compatibility--listen-ip
: IPv4 address to bind to when listening for connections--disable-uvm-kernel-synchronization
: Disable synchronizing UVM memory before/after kernel launches
Note: The following options are mutually exclusive: session, query, gpu-ids, pool-ids, match-labels, tolerates, num-gpus, ephemeral
Session Management
session list
Command: session list
(alias: session ls
)
Description: List all the user's sessions
Parameters:
--all
: List all sessions (by default only shows active session)--json
: Output in JSON format--fields
: Specify fields to display (default fields: state, id, expiresAt, latencyMs, uploadMbps, downloadMbps)--sort
: Sort output (default sort column: 1)
session release
Command: session release
Description: Releases the active session
session request
Command: session request
Description: Requests a new session
Parameters:
--gpu-ids
: Comma separated list of GPU IDs to allocate--pool-ids
: Comma separated list of pool IDs from which to allocate the session resources--match-labels
: Comma separated list of key=value pairs--tolerates
: Comma separated list of key=value pairs--wait-for
: Maximum number of seconds to wait for a GPU (default: 0)--no-version-check
: Disables version checking when allocating the session requirements--num-gpus
: Number of GPUs required (default: 1)--session-timeout
: Time for the session to be automatically returned to the pool if not in use (default: -1)--watch-pid
: Watch the specified process and stop the session when it exits (default: -1)--dump-config
: Dumps the client configuration to the console in JSON format
Note: The following options are mutually exclusive: gpu-ids, query
User Management
user info
Command: user info [id]
Description: Retrieves user information
Parameters:
--json
: Output in JSON format--fields
: Specify fields to display (default fields: name, email, id)--sort
: Sort output (default sort column: 1)id
(optional): ID of the user to get information about. If not provided, gets current user's information.
Help Improve This Page
Found a mistake? Want to contribute? Edit this page on GitHub or explore more editing options.