1. GOATS Command Line Interface

The GOATS Command Line Interface (CLI) provides an efficient way to install and manage your GOATS project/interface. You can get detailed help on each command using the --help option. Below you can find the breakdown of the primary commands and options.

1.1. goats

Usage: goats [OPTIONS] COMMAND [ARGS]...

Gemini Observation and Analysis of Targets System (GOATS).

You can run each subcommand with its own options and arguments. For details
on a specific command, type `goats COMMAND --help`.

Options:
  --version   Show the version and exit.
  --help      Show this message and exit.

Commands:
  apply-update   Update the local project after upgrading GOATS.
  install        Installs GOATS and configures Redis server.
  run            Starts the webserver, Redis server, and workers for GOATS.

1.2. goats apply-update

Usage: goats apply-update [OPTIONS]

Update the local project after upgrading GOATS.

Options:
  -p, --project-name TEXT   Specify a custom project name. Default is 'GOATS'.
  -d, --directory PATH      Specify the parent directory where GOATS is installed.
                            Default is the current directory.
  --help                    Show this message and exit.

1.3. goats install

Usage: goats install [OPTIONS]

Installs GOATS and configures Redis server.

Options:
  -p, --project-name TEXT   Specify a custom project name. Default is 'GOATS'.
  -d, --directory PATH      Specify the parent directory where GOATS will be
                            installed. Default is the current directory.
  --overwrite               Overwrite the existing project, if it exists.
                            Default is False.
  -m, --media-dir PATH      Path for saving downloaded media.
  --redis-addrport TEXT     Specify the Redis server IP address and port number.
                            Examples: 6379, localhost:6379, 192.168.1.5:6379.
                            Providing only a port number (e.g., 6379) binds to
                            localhost.
  --ci                      Run install in non-interactive CI mode (no prompts).
  --help                    Show this message and exit.

1.4. goats run

Usage: goats run [OPTIONS]

Starts the webserver, Redis server, and workers for GOATS.

Options:
  -p, --project-name TEXT   Specify a custom project name. Default is 'GOATS'.
  -d, --directory PATH      Specify the parent directory where GOATS is installed.
                            Default is the current directory.
  -w, --workers INTEGER     Number of workers to spawn for background tasks.
  --addrport TEXT           Specify the IP address and port number to serve GOATS.
                            Examples: 8000, 0.0.0.0:8000, 192.168.1.5:8000.
                            Providing only a port number (e.g., 8000) binds to
                            127.0.0.1.
  --redis-addrport TEXT     Specify the Redis server IP address and port number.
                            Examples: 6379, localhost:6379, 192.168.1.5:6379.
                            Providing only a port number (e.g., 6379) binds to
                            localhost.
  -b, --browser [google-chrome|firefox|mozilla|chromium|chrome|chromium-browser|default]
                            Specify the browser to open GOATS in.
  --help                    Show this message and exit.