auberge 0.12.0

CLI tool for managing self-hosted infrastructure with Ansible
# auberge headscale list-nodes

List connected Headscale nodes

## Synopsis

```bash
auberge headscale list-nodes [OPTIONS]
```

## Alias

`auberge hs ln`

## Description

Lists all nodes currently connected to the target Headscale instance, including their assigned IPs, online status, and the user they belong to.

## Options

| Option                | Description                     | Default            |
| --------------------- | ------------------------------- | ------------------ |
| `--host HOST`         | Target host running headscale   | Interactive prompt |
| `-o, --output FORMAT` | Output format (`human`, `json`) | `human`            |

## Examples

```bash
# List nodes on a host
auberge headscale list-nodes --host myserver

# Output as JSON
auberge headscale list-nodes --host myserver --output json
```

## Output Example

```
ID  NAME          USER     IPS                               ONLINE  LAST SEEN
1   laptop        default  100.64.0.1, fd7a:115c:a1e0::1     yes     2024-01-20 15:00:00 UTC
2   phone         mobile   100.64.0.2, fd7a:115c:a1e0::2     no      2024-01-19 08:00:00 UTC
3   home-server   default  100.64.0.3, fd7a:115c:a1e0::3     yes     2024-01-20 15:00:00 UTC
```

## JSON Output

```bash
auberge headscale list-nodes --host myserver --output json
```

```json
[
  {
    "id": 1,
    "name": "laptop",
    "user": "default",
    "ips": ["100.64.0.1", "fd7a:115c:a1e0::1"],
    "online": true,
    "last_seen": "2024-01-20T15:00:00Z"
  },
  {
    "id": 2,
    "name": "phone",
    "user": "mobile",
    "ips": ["100.64.0.2", "fd7a:115c:a1e0::2"],
    "online": false,
    "last_seen": "2024-01-19T08:00:00Z"
  },
  {
    "id": 3,
    "name": "home-server",
    "user": "default",
    "ips": ["100.64.0.3", "fd7a:115c:a1e0::3"],
    "online": true,
    "last_seen": "2024-01-20T15:00:00Z"
  }
]
```

JSON goes to stdout; human-format chrome (banners, info messages) goes to stderr.

**Schema**

| Field     | Type     | Description                              |
| --------- | -------- | ---------------------------------------- |
| id        | number   | Headscale node ID                        |
| name      | string   | Node hostname                            |
| user      | string   | Headscale user the node belongs to       |
| ips       | string[] | Assigned Tailscale IP addresses          |
| online    | boolean  | Whether the node is currently connected  |
| last_seen | string   | ISO 8601 timestamp of last contact (UTC) |

## Related Commands

- [auberge headscale add-user]add-user.md - Create a user and generate a pre-auth key
- [auberge headscale list-users]list-users.md - List registered users
- [auberge headscale remove-user]remove-user.md - Remove a user

## See Also

- [Headscale]../../applications/networking/headscale.md