> ## Documentation Index
> Fetch the complete documentation index at: https://docs.raziel.fun/llms.txt
> Use this file to discover all available pages before exploring further.

# Open a live shell into your Raziel team with razi shell

> Use razi shell to open a live PTY into your team VM. List your teams, connect by slug, and get a full terminal session with automatic resize support.

`razi shell` opens a live interactive PTY shell into your team's VM. It works like SSH: keystrokes go in, output comes back, and terminal resizing is forwarded automatically.

## Prerequisites

* The `razi` CLI installed and configured. Run `razi setup` if you haven't authenticated yet.
* An active team. The team must finish provisioning before it can accept a shell connection.

## List your teams

Run `razi shell` with no arguments to see all teams on your account along with their current status:

```sh theme={null}
razi shell
```

Example output:

```
  ▲ razi  your teams:

    ● active  blue-fox-1234  My first team
    ● provisioning  green-wolf-5678  Staging

  Open one with: razi shell <slug>
```

`●` in green means the team is active and shellable. Other statuses appear in dim text to indicate the team is not yet ready.

<Note>
  Only active teams can accept a shell connection. If your team is still provisioning, wait for it to finish and then try again.
</Note>

## Connect to a team

Pass the team slug as the first argument:

```sh theme={null}
razi shell blue-fox-1234
```

The CLI authenticates using your stored account key, retrieves a per-team shell key, and opens a WebSocket to the VM. Once connected, you see:

```
  ▲ razi  connected to blue-fox-1234  (exit or Ctrl-D to leave)
```

Your terminal is now in raw mode and you have a full PTY inside the VM.

## Partial slug matching

If the slug is unambiguous, you can use a prefix or substring:

```sh theme={null}
razi shell blue
```

This matches `blue-fox-1234` if no other team slug contains `blue`. The match order is: exact slug, then exact display name, then case-insensitive slug. If the short form is ambiguous, the CLI reports an error and lists your teams.

<Tip>
  You can also pass the team's display name directly: `razi shell "My first team"`.
</Tip>

## Exit the shell

Type `exit` or press **Ctrl-D** to close the session. The WebSocket closes cleanly and your terminal is restored to normal mode.

## Status reference

| Status         | Shellable | Meaning                         |
| -------------- | --------- | ------------------------------- |
| `active`       | Yes       | Team is running and ready       |
| `provisioning` | No        | VM is still being set up        |
| `paused`       | No        | Balance ran out; data preserved |
| `failed`       | No        | Provisioning failed             |
| `deleted`      | No        | Team has been cancelled         |
