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

# vers signup

> Create a Vers account. Git-based by default — email + SSH key, no password.

`vers signup` creates a Vers account. By default it uses your git email and an SSH public key, sends a verification email, and writes credentials locally once you click the link. For scripts and agents, non-interactive flags cover every path.

<Info>
  Already have an account? Running `vers signup` with matching credentials logs you in. If you know you already have an account, use [`vers login`](/cli-reference/login) instead.
</Info>

## Synopsis

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup                            # Git email + SSH key (default)
vers signup --email you@example.com    # Override git config email
vers signup --org myorg                # Pick org non-interactively
vers signup --git=false                # API-key mode (prompt instead of git auth)
```

## Options

| Option    | Description                                                                                             |
| --------- | ------------------------------------------------------------------------------------------------------- |
| `--email` | Email address. Overrides `git config user.email`.                                                       |
| `--org`   | Organization name. Skips the interactive picker — required for non-interactive flows (scripts, agents). |
| `--git`   | Use git email + SSH key (default `true`). Set `--git=false` to be prompted for an API key instead.      |

## Examples

### Default signup

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup
```

Uses `git config user.email` and `~/.ssh/id_*.pub`, prompts for org selection if you belong to more than one, and sends a verification email.

### Non-interactive (scripts and agents)

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup --email agent-7@example.com --org labs
```

### Fall back to API keys

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup --git=false
```

You'll be prompted for an API key issued from the Vers dashboard.

## How it works

<Steps>
  <Step title="Credential gathering">
    Reads `git config user.email` (or `--email`), finds an SSH public key, and picks an org.
  </Step>

  <Step title="Account creation">
    Registers the account against the Vers API and requests a verification email.
  </Step>

  <Step title="Email verification">
    Click the link in the email to activate the account. The CLI waits for verification, then persists your API key locally.
  </Step>

  <Step title="Ready">
    `vers` is authenticated. Run `vers init` or `vers run` next.
  </Step>
</Steps>

## Common Patterns

### Non-interactive for CI or agents

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup --email agent@example.com --org labs
```

### Switch from git auth to API-key auth

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers signup --git=false
# paste API key when prompted
```

### Verify the resulting credential

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
vers status    # fails if auth is broken
cat ~/.versrc  # inspect the stored key
```

## See also

* [vers login](/cli-reference/login) — authenticate an existing account on a new machine
* [vers logout](/cli-reference/logout) — clear local credentials
* [Shell Auth API](/shell-auth/overview) — the underlying auth flow
