> For the complete documentation index, see [llms.txt](https://docs.snarkify.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.snarkify.io/serverless-gpu-proving/snakrify-cli/gpu-shell-management.md).

# GPU Shell Management

A GPU Shell is a managed GPU container on our platform with ssh capability, providing developers isolated development environments with various GPU configurations. Developers could use shells to develop and test their code while integrating with our SDK before deploying as a service in production.

## Create a Shell

You can create a shell with selected GPUs to accelerate your project development:

```
snarkify shell create {shell_name}
```

You'll be prompted to select the type of GPU during shell creation.&#x20;

Note the the `shell_name` is optional. If it is not provided, a default name will be assigned based on the shell ID.

{% hint style="info" %}
It may take a few minutes for a new Shell to become READY
{% endhint %}

## Query a Shell

You can use the `info` command to check the status of your shell and retrieve the necessary access information.&#x20;

```
snarkify shell info {shell_id}
```

## Access a Shell

Once you get the `shell_id` you would like to connect to, you can run the following command to ssh into it

```
snarkify shell connect {shell_id}
```

It will then prompt for the password, the default password is randomly generated and retrievable using the same `snarkfy sell info` command above.

## List Shells

You can use the `list` command to list all shells under your team.

```
snarkify shell list
```

## Delete a Shell

You can permanently delete a shell using the following command:

```
snarkify shell delete {shell_id}
```
