> ## 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.

# nexus switch

> Cambiar toda tu identidad de desarrollo a un proyecto y entorno específico.

```bash theme={null}
nexus switch [project-name] --env <environment> [--refresh]
```

## Parámetros

| Parámetro | Tipo | Requerido | Descripción |
| - | - | - | - |
| `project-name` | string | No | Slug o nombre del proyecto a activar. Requerido en modo nube. Opcional en modo local si existe un archivo `nexus.yaml` en el directorio de trabajo actual. |
| `--env`, `-e` | string | No | Entorno objetivo (opciones: `development`, `staging`, `production`; default: `development`) |
| `--refresh`, `-r` | flag | No | Forzar descarga fresca desde la nube (bypass cache local) |

## Cómo funciona

El switch ejecuta todas las operaciones **en paralelo** para máxima velocidad:

<Steps>
  <Step title="1. Cargar configuración">
    Busca el proyecto en el **cache local** (`~/.nexus/cache/`). Si no existe, lo descarga del API y lo cachea para futuros switches.

    <Tip>
      Usa `--refresh` si hiciste cambios en el dashboard y necesitas la configuración más reciente.
    </Tip>
  </Step>

  <Step title="2. Skills (paralelo)">
    Ejecuta todos los skills habilitados simultáneamente:

    * **Context Injection** — Variables de entorno
    * **Git State** — Checkout a la rama correcta
    * **Auto Documentation** — Genera `NEXUS_CONTEXT.md`
    * **Sandbox Environments** — Provisiona sandbox efímero
  </Step>

  <Step title="3. CLI Profiles (paralelo)">
    Cambia todos los CLI tools simultáneamente:

    * `gh auth switch` → GitHub CLI
    * `aws sts` → AWS CLI
    * `supabase link` → Supabase CLI
    * `vercel whoami` → Vercel CLI
    * `eas whoami` → Expo/EAS CLI
    * Y más (MongoDB, Stripe, Railway, Fly.io)
  </Step>

  <Step title="4. Audit Log">
    Registra el resultado localmente (`~/.nexus/audit.jsonl`) y sincroniza al cloud en background sin bloquear.
  </Step>
</Steps>

## Ejemplos

### Switch básico

```bash theme={null}
nexus switch michicondrias --env production
```

```
    _   __
   / | / /__  _  ____  _______
  /  |/ / _ \| |/_/ / / / ___/
 / /|  /  __/>  </ /_/ (__  )
/_/ |_/\___/_/|_|\__,_/____/
  📦 Using cached config for 'michicondrias'
  🧩 Skills: 12/12 enabled
  ─────────────────────────────────────────
  ✨ Auto Documentation — Generated NEXUS_CONTEXT.md (0ms)
  ✨ Branch Switcher — Already on branch 'main' (1ms)
  ✨ Sandbox Environments — Provisioned (TTL: 60 mins) (300ms)
  ✨ cli:aws — Switched aws: 'none' → 'github-actions-deployer' (2108ms)
  ✨ cli:expo — Switched expo: 'none' → 'Michicondrias' (1564ms)
  ✨ cli:gh — Switched gh → 'epigibson-michicondrias' (617ms)
  ✨ cli:supabase — Switched supabase → 'zaegmfufrzjmjiemrvvp' (4002ms)
  ✨ cli:vercel — Switched vercel → 'epigibson-michicondrias' (1402ms)
  ✨ ⚡ Parallel Switch — Executed 11 skills in parallel (0ms)
  ─────────────────────────────────────────

  ✨ Context switch complete! (5467ms)
```

### Con refresh forzado

```bash theme={null}
nexus switch michicondrias --env production --refresh
```

Ignora el cache local y descarga la configuración más reciente del API. Útil después de hacer cambios en el dashboard.

## Performance

| Versión | Tiempo de switch |
| - | - |
| v1.0.0 (serial) | \~73 segundos |
| v1.1.0 (paralelo + cache) | **\~5 segundos** |

Las optimizaciones de v1.1.0 incluyen:

* **Cache local** — elimina el fetch del API en cada switch
* **CLI profiles en paralelo** — todos los tools se cambian simultáneamente
* **Audit logging asíncrono** — los logs remotos no bloquean la ejecución

## CLI Tools soportados

| Tool | Binario | Autenticación |
| - | - | - |
| GitHub | `gh` | `gh auth switch` o `GH_TOKEN` |
| AWS | `aws` | Named profiles o Access Keys |
| Supabase | `supabase` | `SUPABASE_ACCESS_TOKEN` |
| Vercel | `vercel` | `VERCEL_TOKEN` |
| Expo/EAS | `eas` / `expo` | `EXPO_TOKEN` |
| MongoDB | `mongosh` / `atlas` | Connection URI |
| Stripe | `stripe` | API Keys |
| Railway | `railway` | `RAILWAY_TOKEN` |
| Fly.io | `fly` / `flyctl` | `FLY_API_TOKEN` |

## Ver también

* [nexus sync](/cli/sync) — Actualizar el cache local
* [nexus current](/cli/current) — Ver el contexto activo
* [nexus profiles](/cli/profiles) — Ver estado de los CLI profiles


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.