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

# vesslctl completion

> Enable shell tab completion for vesslctl commands and flags.

`vesslctl` ships with completion scripts for bash, zsh, fish, and PowerShell. The fastest way to enable completion is to let `vesslctl completion install` detect your shell and place the script in the standard location.

## completion install

Detect the current shell from `$SHELL` and write the completion script to the appropriate path. The command is idempotent — re-run it whenever you upgrade `vesslctl`.

```bash theme={null}
vesslctl completion install
```

Supported shells: bash, zsh, and fish. For PowerShell, use the manual setup below.

**Default install paths:**

| Shell | Path                                                  |
| ----- | ----------------------------------------------------- |
| bash  | `~/.local/share/bash-completion/completions/vesslctl` |
| zsh   | `~/.zsh/completions/_vesslctl`                        |
| fish  | `~/.config/fish/completions/vesslctl.fish`            |

After installing, open a new terminal, or reload your shell config in place (for example, `source ~/.zshrc` or `source ~/.bashrc`). For zsh, if your `~/.zshrc` does not yet include the completions directory, the installer prints the snippet you need to add:

```bash theme={null}
fpath=(~/.zsh/completions $fpath)
autoload -U compinit; compinit
```

## completion bash | zsh | fish | powershell

Print a completion script for the requested shell to stdout. Use this when you want to manage the script location yourself.

```bash theme={null}
vesslctl completion bash
vesslctl completion zsh
vesslctl completion fish
vesslctl completion powershell
```

**Manual setup examples:**

<CodeGroup>
  ```bash Bash (Linux) theme={null}
  vesslctl completion bash > /etc/bash_completion.d/vesslctl
  ```

  ```bash Bash (macOS, Homebrew) theme={null}
  vesslctl completion bash > $(brew --prefix)/etc/bash_completion.d/vesslctl
  ```

  ```bash Zsh theme={null}
  vesslctl completion zsh > "${fpath[1]}/_vesslctl"
  ```

  ```bash Fish theme={null}
  vesslctl completion fish > ~/.config/fish/completions/vesslctl.fish
  ```

  ```powershell PowerShell theme={null}
  vesslctl completion powershell > vesslctl.ps1
  # Then dot-source it from your PowerShell profile (for example, . .\vesslctl.ps1).
  ```
</CodeGroup>

<Tip>
  Argument and flag values benefit from completion too — once enabled, pressing **Tab** after `--cluster`, `--resource-spec`, `--org`, or a workspace/job slug prompts for the live values from your current org and team.
</Tip>
