# Project Root Scripts

This directory contains utility scripts for managing the Proxmox workspace project.

## Setup Scripts

### `setup.sh`
Initial setup script that creates `.env` file and Claude Desktop configuration.

**Usage:**
```bash
./scripts/setup.sh
```

### `complete-setup.sh`
Complete setup script that performs all setup steps including dependency installation.

**Usage:**
```bash
./scripts/complete-setup.sh
```

### `verify-setup.sh`
Verifies that the workspace is properly configured and all prerequisites are met.

**Usage:**
```bash
./scripts/verify-setup.sh
```

## Environment Configuration

### `configure-env.sh`
Quick configuration script to update `.env` with Proxmox credentials.

**Usage:**
```bash
./scripts/configure-env.sh
```

### `load-env.sh`
Standardized `.env` loader function. Can be sourced by other scripts.

**Usage:**
```bash
source scripts/load-env.sh
load_env_file
```

Or run directly:
```bash
./scripts/load-env.sh
```

## Token Management

### `create-proxmox-token.sh`
Creates a Proxmox API token programmatically.

**Usage:**
```bash
./scripts/create-proxmox-token.sh <host> <user> <password> [token-name]
```

**Example:**
```bash
./scripts/create-proxmox-token.sh 192.168.11.10 root@pam mypassword mcp-server
```

### `update-token.sh`
Interactively updates the `PROXMOX_TOKEN_VALUE` in `~/.env`.

**Usage:**
```bash
./scripts/update-token.sh
```

## Testing & Validation

### `test-connection.sh`
Tests the connection to the Proxmox API using credentials from `~/.env`.

**Usage:**
```bash
./scripts/test-connection.sh
```

### `validate-ml110-deployment.sh`
Comprehensive validation script for deployment to ml110-01.

**Usage:**
```bash
./scripts/validate-ml110-deployment.sh
```

This script validates:
- Prerequisites
- Proxmox connection
- Storage availability
- Template availability
- Configuration files
- Deployment scripts
- Resource requirements

## Script Dependencies

All scripts use the standardized `~/.env` file for configuration. See [docs/ENV_STANDARDIZATION.md](/docs/04-configuration/ENV_STANDARDIZATION.md) for details.

## Environment Variables

All scripts expect these variables in `~/.env`:

- `PROXMOX_HOST` - Proxmox host IP or hostname
- `PROXMOX_PORT` - Proxmox API port (default: 8006)
- `PROXMOX_USER` - Proxmox API user (e.g., root@pam)
- `PROXMOX_TOKEN_NAME` - API token name
- `PROXMOX_TOKEN_VALUE` - API token secret value

