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

# Instalación

> Cómo instalar el CLI de Nexus en tu sistema operativo.

## Requisitos del sistema

| Requisito | Mínimo                             | Recomendado    |
| --------- | ---------------------------------- | -------------- |
| **OS**    | Windows 10, macOS 12, Ubuntu 20.04 | Última versión |
| **Disco** | 10 MB                              | 10 MB          |

<Info>
  Ya no necesitas instalar Go ni clonar el repositorio, proporcionamos binarios precompilados.
</Info>

## Instalación rápida

1. Descarga el archivo compilado correspondiente a tu sistema operativo desde la página de [Releases de GitHub](https://github.com/Epigibson/Nexus/releases).
2. Extrae el archivo (si viene comprimido) y renómbralo a `nexus` (o `nexus.exe` en Windows).
3. Mueve el archivo a una carpeta que esté en tu PATH, o colócalo en una ubicación y agrégalo al PATH.

<Tabs>
  <Tab title="macOS / Linux">
    Mueve el archivo descargado a `/usr/local/bin` o a la carpeta local de Nexus:

    ```bash theme={null}
    # Dale permisos de ejecución
    chmod +x nexus

    # Mover a /usr/local/bin (recomendado)
    sudo mv nexus /usr/local/bin/

    # O si prefieres mover a ~/.nexus/bin y agregar al PATH
    mkdir -p ~/.nexus/bin
    mv nexus ~/.nexus/bin/
    export PATH="$HOME/.nexus/bin:$PATH"
    ```
  </Tab>

  <Tab title="Windows">
    ```powershell theme={null}
    # 1. Instalar en ~/.nexus/bin
    $dir = "$env:USERPROFILE\.nexus\bin"
    New-Item -ItemType Directory -Force -Path $dir | Out-Null
    Move-Item nexus.exe "$dir\nexus.exe" -Force

    # 2. Agregar al PATH (solo la primera vez)
    $path = [System.Environment]::GetEnvironmentVariable("Path", "User")
    if ($path -notlike "*\.nexus\bin*") {
        [System.Environment]::SetEnvironmentVariable("Path", "$path;$dir", "User")
        Write-Host "✅ Agregado al PATH. Reinicia tu terminal."
    }
    ```
  </Tab>
</Tabs>

## Verificar instalación

```bash theme={null}
nexus version
```

```
Nexus v1.1.1
```

## Actualizar

Para actualizar a la última versión, simplemente descarga el nuevo archivo compilado y reemplaza el binario anterior en la misma ubicación:

<Tabs>
  <Tab title="macOS / Linux">
    ```bash theme={null}
    # Reemplazar en la ubicación donde lo instalaste (ej. /usr/local/bin)
    sudo mv nuevo_nexus_descargado /usr/local/bin/nexus
    chmod +x /usr/local/bin/nexus
    ```
  </Tab>

  <Tab title="Windows">
    ```powershell theme={null}
    Copy-Item nuevo_nexus_descargado.exe "$env:USERPROFILE\.nexus\bin\nexus.exe" -Force
    ```
  </Tab>
</Tabs>

## Desinstalar

<Tabs>
  <Tab title="Windows">
    ```powershell theme={null}
    # Eliminar binario y configuración
    Remove-Item -Recurse "$env:USERPROFILE\.nexus" -Force

    # Quitar del PATH
    $path = [System.Environment]::GetEnvironmentVariable("Path", "User")
    $newPath = ($path -split ";" | Where-Object { $_ -notlike "*\.nexus*" }) -join ";"
    [System.Environment]::SetEnvironmentVariable("Path", $newPath, "User")
    ```
  </Tab>

  <Tab title="macOS / Linux">
    ```bash theme={null}
    # Eliminar configuración y binario local
    rm -rf ~/.nexus

    # Si lo instalaste globalmente, eliminar el binario global
    sudo rm -f /usr/local/bin/nexus
    ```
  </Tab>
</Tabs>

## Estructura de archivos

Después de instalar y hacer login, Nexus crea esta estructura:

```
~/.nexus/
├── bin/
│   └── nexus(.exe)    # El binario del CLI
├── credentials              # API key encriptada (generada por 'nexus login')
└── last_switch.sh (.ps1)    # Script de env vars del último switch
```

<Warning>
  El archivo `credentials` contiene tu API key. No lo compartas ni lo subas a repositorios.
</Warning>
