HomeArcade CLI

The Arcade CLI

The Arcade CLI is a command-line tool that allows you to manage your Arcade deployments, generate, test, and manage your toolkits, and more.

This same package contains the SDK that you will use to build your own toolkits.

Installation

Like all python packages, the Arcade CLI needs to be installed within the python virtual environment you are using for your Arcade development environment.

python -m venv .venv
source .venv/bin/activate

Now that your python virtual environment is activated, you can install the Arcade CLI with the following command:

pip install arcade-ai

Usage

 Usage: arcade [OPTIONS] COMMAND [ARGS]...
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --version  -v        Print version and exit.
 --help               Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ User ──────────────────────────────────────────────────────────────────────────────╮
 login      Log in to Arcade Cloud
 logout     Log out of Arcade Cloud
 dashboard  Open the Arcade Dashboard in a web browser
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ Tool Development ──────────────────────────────────────────────────────────────────╮
 new    Create a new toolkit package directory
 show   Show the installed toolkits or details of a specific tool
 chat   Start a chat with a model in the terminal to test tools
 evals  Run tool calling evaluations
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ Launch ────────────────────────────────────────────────────────────────────────────╮
 serve  Start tool server worker with locally installed tools
 dev    Launch Arcade - requires 'arcade-engine'
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ Deployment ────────────────────────────────────────────────────────────────────────╮
 deploy  Deploy toolkits to Arcade Cloud
 worker  Manage deployments of tool servers (logs, list, etc)                        │
╰─────────────────────────────────────────────────────────────────────────────────────╯

You can learn more about any of the commands by running arcade <command> --help, e.g. arcade new --help.

arcade login

 Usage: arcade login [OPTIONS]
 
 Log in to Arcade Cloud
 
╭─ Options ─────────────────────────────────────────────────────────────────────────╮
 --host  -h      TEXT     The Arcade Cloud host to log in to.
                          [default: cloud.arcade.dev]
 --port  -p      INTEGER  The port of the Arcade Cloud host (if running locally).  │
                          [default: None]
 --help                   Show this message and exit.
╰───────────────────────────────────────────────────────────────────────────────────╯

arcade logout

 Usage: arcade logout [OPTIONS]
 
 Log out of Arcade Cloud
 
╭─ Options ─────────────────────────────────────────────────────────────────────────╮
 --help          Show this message and exit.
╰───────────────────────────────────────────────────────────────────────────────────╯

arcade dashboard

 Usage: arcade dashboard [OPTIONS]
 
 Open the Arcade Dashboard in a web browser
 
╭─ Options ─────────────────────────────────────────────────────────────────────────╮
 --host    -h      TEXT     The Arcade Engine host that serves the dashboard.
                            [default: api.arcade.dev]
 --port    -p      INTEGER  The port of the Arcade Engine.
                            [default: None]
 --local   -l               Open the local dashboard instead of the default remote
                            dashboard.
 --tls                      Whether to force TLS for the connection to the Arcade
                            Engine.
 --no-tls                   Whether to disable TLS for the connection to the
                            Arcade Engine.
 --help                     Show this message and exit.
╰───────────────────────────────────────────────────────────────────────────────────╯

arcade new

 Usage: arcade new [OPTIONS]
 
 Create a new toolkit package directory
 
╭─ Options ─────────────────────────────────────────────────────────────────────────╮
 --dir         TEXT  tools directory path
                     [default: current directory]
 --help              Show this message and exit.
╰───────────────────────────────────────────────────────────────────────────────────╯

arcade show

 Usage: arcade show [OPTIONS]
 
 Show the installed toolkits or details of a specific tool
 
╭─ Options ─────────────────────────────────────────────────────────────────────────╮
 --toolkit  -T      TEXT     The toolkit to show the tools of
                             [default: None]
 --tool     -t      TEXT     The specific tool to show details for
                             [default: None]
 --host     -h      TEXT     The Arcade Engine address to show the tools/toolkits
                             of.
                             [default: api.arcade.dev]
 --local    -l               Show the local environment's catalog instead of an    │
│                             Arcade Engine's catalog.
 --port     -p      INTEGER  The port of the Arcade Engine.
                             [default: None]
 --tls                       Whether to force TLS for the connection to the Arcade
                             Engine. If not specified, the connection will use TLS
                             if the engine URL uses a 'https' scheme.
 --no-tls                    Whether to disable TLS for the connection to the
                             Arcade Engine.
 --debug    -d               Show debug information
 --help                      Show this message and exit.
╰───────────────────────────────────────────────────────────────────────────────────╯

arcade chat

 Usage: arcade chat [OPTIONS]
 
 Start a chat with a model in the terminal to test tools
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --model   -m      TEXT     The model to use for prediction.
                            [default: gpt-4o]
 --stream  -s               Stream the tool output.
 --prompt          TEXT     The system prompt to use for the chat.
                            [default: None]
 --debug   -d               Show debug information
 --host    -h      TEXT     The Arcade Engine address to send chat requests to.
                            [default: api.arcade.dev]
 --port    -p      INTEGER  The port of the Arcade Engine.
                            [default: None]
 --tls                      Whether to force TLS for the connection to the Arcade
                            Engine. If not specified, the connection will use TLS if
                            the engine URL uses a 'https' scheme.
 --no-tls                   Whether to disable TLS for the connection to the Arcade
                            Engine.
 --help                     Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯

arcade evals

 Run tool calling evaluations
 
╭─ Arguments ─────────────────────────────────────────────────────────────────────────╮
   directory      [DIRECTORY]  Directory containing evaluation files                 │
                               [default: .]
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --details         -d               Show detailed results
 --max-concurrent  -c      INTEGER  Maximum number of concurrent evaluations
                                    (default: 1)                                     │
                                    [default: 1]
 --models          -m      TEXT     The models to use for evaluation (default:       
                                    gpt-4o). Use commas to separate multiple models. │
                                    [default: gpt-4o]
 --host            -h      TEXT     The Arcade Engine address to send chat requests
                                    to.
                                    [default: localhost]
 --cloud                            Whether to run evaluations against the Arcade
                                    Cloud Engine. Overrides the 'host' option.
 --port            -p      INTEGER  The port of the Arcade Engine.
                                    [default: None]
 --tls                              Whether to force TLS for the connection to the
                                    Arcade Engine. If not specified, the connection
                                    will use TLS if the engine URL uses a 'https'
                                    scheme.
 --no-tls                           Whether to disable TLS for the connection to the
                                    Arcade Engine.
 --help                             Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯

arcade serve

 Usage: arcade serve [OPTIONS]
 
 Start tool server worker with locally installed tools
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --host                 TEXT     Host for the app, from settings by default.
                                 [default: 127.0.0.1]
 --port         -p      INTEGER  Port for the app, defaults to
                                 [default: 8002]
 --no-auth                       Disable authentication for the worker. Not
                                 recommended for production.
 --otel-enable                   Send logs to OpenTelemetry
 --mcp                           Run as a local MCP server over stdio
 --debug        -d               Show debug information
 --help                          Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯

arcade dev

 Usage: arcade dev [OPTIONS]
 
 Launch Arcade - requires 'arcade-engine'
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --host              TEXT     Host for the toolkit server.
                              [default: 127.0.0.1]
 --port      -p      INTEGER  Port for the toolkit server.
                              [default: 8002]
 --config    -c      TEXT     Path to the engine configuration file.
                              [default: None]
 --env-file  -e      TEXT     Path to the environment variables file.
                              [default: None]
 --debug     -d               Show debug information
 --help                       Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯

arcade deploy

 Usage: arcade deploy [OPTIONS]
 
 Deploy toolkits to Arcade Cloud
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --deployment-file  -d      TEXT     The deployment file to deploy.
                                     [default: worker.toml]
 --host             -h      TEXT     The Arcade Engine host to register the worker
                                     to.
                                     [default: api.arcade.dev]
 --port             -p      INTEGER  The port of the Arcade Engine host.
                                     [default: None]
 --tls                               Whether to force TLS for the connection to the
                                     Arcade Engine. If not specified, the connection
                                     will use TLS if the engine URL uses a 'https'
                                     scheme.
 --no-tls                            Whether to disable TLS for the connection to
                                     the Arcade Engine.
 --help                              Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯

arcade worker

 Usage: arcade worker [OPTIONS] COMMAND [ARGS]...
 
 Manage deployments of tool servers (logs, list, etc)
 
╭─ Options ───────────────────────────────────────────────────────────────────────────╮
 --host    -h      TEXT     The Arcade Engine host.
                            [default: api.arcade.dev]
 --port    -p      INTEGER  The port of the Arcade Engine host.
                            [default: None]
 --tls                      Whether to force TLS for the connection to the Arcade
                            Engine.
 --no-tls                   Whether to disable TLS for the connection to the Arcade
                            Engine.
 --help                     Show this message and exit.
╰─────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ──────────────────────────────────────────────────────────────────────────╮
 list     List all workers
 enable   Enable a worker
 disable  Disable a worker
 rm       Remove a worker
 logs     Get logs for a worker
╰─────────────────────────────────────────────────────────────────────────────────────╯