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

# Configuration

## View and set

```bash theme={"theme":"css-variables"}
machine0 config get
machine0 config set DEFAULT_VM_SIZE=large DEFAULT_VM_REGION=us
```

## Settings

| Setting             | Default                   | Description                     |
| ------------------- | ------------------------- | ------------------------------- |
| `SSH_KEY_PATH`      | `~/.ssh`                  | SSH key storage directory       |
| `DEFAULT_VM_SIZE`   | `small`                   | Default size for `machine0 new` |
| `DEFAULT_VM_REGION` | `eu`                      | Default region                  |
| `DEFAULT_VM_IMAGE`  | `ubuntu-24-04-loaded`     | Default image                   |
| `SERVER_URL`        | `https://app.machine0.io` | API endpoint                    |
| `SESSION_FILE_PATH` | `~/.machine0/auth-token`  | Session token path              |

## Loading order

Highest priority wins:

1. Environment variables
2. Project config (`./machine0.env`)
3. Home config (`~/.machine0/machine0.env`)
4. Built-in defaults

## Project config

Drop a `machine0.env` in your project directory to override defaults per-project. `config set` always writes to the home config.

## API token

For automation, set `MACHINE0_API_TOKEN` instead of using `machine0 login`:

```bash theme={"theme":"css-variables"}
export MACHINE0_API_TOKEN=m0_tok_...
```
