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

# Configuración clásica

> Configura el entorno de Devin mediante el asistente interactivo clásico.

<Info>¿Buscas una configuración declarativa? Consulta [Configuración declarativa (blueprints)](/es/onboard-devin/environment/blueprints) para conocer el enfoque recomendado para las configuraciones nuevas.</Info>

Devin funciona cargando una instantánea de una máquina virtual al inicio de cada sesión. Para que Devin sea lo más efectivo posible, esta instantánea debe incluir todos los repositorios con los que quieras que Devin trabaje, así como todas las herramientas o dependencias que pueda necesitar para trabajar en tu base de código. De esta manera, Devin puede concentrarse en escribir código en lugar de tener que configurar su entorno cada vez.

En esta guía, veremos cómo integrar a Devin en uno de tus repositorios y configurar el entorno de Devin (la instantánea de la máquina virtual). Puedes pensar en esto como configurar el portátil de Devin para su primer día de trabajo.

<Tip>
  Configurar correctamente el entorno de Devin mejorará significativamente el
  rendimiento de Devin en tu base de código. Imagina que cada vez que comienzas una tarea,
  tu portátil y parte de tu memoria se borraran: ¡eso es lo que le ocurre a Devin con una
  configuración incorrecta o incompleta!
</Tip>

<div id="add-a-repository">
  ## Agregar un repositorio
</div>

Primero, asegúrate de que Devin tenga acceso a tus repositorios. Puedes agregar repositorios en cualquier momento configurando el acceso de Devin en:

* **Teams**: [Settings > Connections](https://app.devin.ai/settings/connections)
* **Enterprise**: [Enterprise Settings > Integrations](https://app.devin.ai/settings/connected-accounts)

Ahora, dentro de una Organización, ve a [Devin's Machine](https://app.devin.ai/machine) y haz clic en **Add repository**. Selecciona los repositorios que quieres agregar al entorno de Devin y luego haz clic en **Start** para empezar a configurarlos.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Start-Repo-Setup.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=6337c4725e562caa5c847e46b5d3353c" alt="Devin" width="1764" height="548" data-path="images/onboard-devin/Start-Repo-Setup.png" />
</Frame>

<Tip>
  La máquina de Devin está ejecutando Ubuntu 22.04 (x86\_64). Prueba pulsar Ctrl+K en la terminal para generar automáticamente un comando de instalación.
</Tip>

<div id="set-up-the-repository-and-development-environment">
  ## Configurar el repositorio y el entorno de desarrollo
</div>

Una vez en Repo Setup, verás tres paneles:

1. **Pasos de configuración del repositorio**: Muestra los 8 pasos de configuración en orden, junto con los comandos resultantes que se guardarán en tu configuración.
2. **Agente de configuración Devin AI**: Devin puede sugerir qué hacer en cada paso en función de tu repositorio específico e iterar sobre la configuración hasta que esté lista para guardarse.
3. **Terminal de VSCode**: Te permite ejecutar cualquier comando o explorar el sistema de archivos directamente en el entorno integrado de VSCode.

<div id="ai-generated-suggestions">
  ### Sugerencias generadas por IA
</div>

Cuando añades un repositorio, Devin genera automáticamente sugerencias de configuración para cada paso a partir del análisis de tu base de código. Puedes aceptar o rechazar cada sugerencia de forma individual, o refinarlas con Devin AI Setup Agent.

<div id="repository-setup-steps">
  ### Pasos de configuración del repositorio
</div>

<Steps>
  <Step title="Git Pull">
    El comando que Devin ejecuta al inicio de cada sesión para extraer los cambios más recientes del repositorio. En la mayoría de los casos, deberías mantener el comando predeterminado. Asegúrate de que Devin tenga acceso a cualquier submódulo del repositorio.
  </Step>

  <Step title="Configurar secretos">
    Configura los secretos o variables de entorno que Devin necesita para trabajar con tu repositorio. Consulta [Configuración de secretos](#configuring-secrets) para más detalles.
  </Step>

  <Step title="Instalar dependencias">
    Comandos para instalar las dependencias iniciales de tu repositorio. Esto se ejecuta una vez durante la configuración para preparar el entorno de Devin.
  </Step>

  <Step title="Mantener dependencias">
    Comandos que Devin ejecuta después de git pull durante el inicio de la sesión en caso de que se hayan agregado nuevas dependencias. Normalmente, este debería ser el mismo comando que utilizas para instalar dependencias (por ejemplo, `npm install`, `pip install -r requirements.txt`, etc.).
  </Step>

  <Step title="Configurar lint">
    Comandos que Devin debe usar para ejecutar lint o verificar errores de sintaxis. Devin revisará la salida de estos comandos antes de hacer commit de los cambios.
  </Step>

  <Step title="Configurar tests">
    Comandos que Devin debe usar para ejecutar tests. Al igual que con los comandos de lint, Devin revisará la salida de estos comandos antes de hacer commit de los cambios.
  </Step>

  <Step title="Ejecutar aplicación local">
    Indica a Devin cómo ejecutar tu código en local. Esto es útil si Devin necesita ejecutar tu código para probar o depurar cambios. Puedes usar el navegador de Devin para iniciar sesión en los sitios web que quieras que Devin use. Agrega las credenciales de inicio de sesión a [secrets](/es/product-guides/secrets) si la sesión caduca.
  </Step>

  <Step title="Notas adicionales">
    Agrega cualquier instrucción adicional para Devin al trabajar en este repositorio.
  </Step>
</Steps>

<div id="finish-or-save-setup">
  ### Finalizar o guardar la configuración
</div>

Cuando estés satisfecho con la configuración, haz clic en **Finish Setup** para guardarla. Esto volverá a reproducir todos los comandos de los pasos de configuración para preparar el entorno de Devin.

Si aún no has terminado tus cambios, haz clic en **Finish Later** para guardar la configuración. Esto mantendrá la configuración en curso y te permitirá retomarla más tarde. Sin embargo, ten en cuenta que **solo puede haber una configuración en curso a la vez**, por lo que no recomendamos usar esta opción a menos que sea absolutamente necesario.

<Tip>
  **Consejos para configurar comandos:**

  * Ejecuta primero los comandos en la terminal de VS Code para precalentar la caché antes de verificarlos.
  * Si un comando debe ejecutarse en un directorio específico, usa `cd` de esta manera: `cd <directory> && <command>`.
  * Si tu proyecto no tiene un comando de lint, puedes incluir tu comando de build para que Devin compruebe si hay errores de compilación.
  * Si el procedimiento de lint o de pruebas de tu proyecto es complejo, puedes omitir esos pasos y explicárselos a Devin en el paso Additional Notes.
  * Consulta la [sección de resolución de problemas](#troubleshooting) si encuentras problemas al verificar tus comandos.
</Tip>

<div id="configure-previously-added-repositories">
  ## Configurar repositorios agregados previamente
</div>

En cualquier momento puedes editar o agregar un nuevo repositorio en [Settings > Devin's Machine](https://app.devin.ai/machine).

Para editar un repositorio existente, haz clic en **Configure** en la esquina superior derecha de la página, selecciona Add/Modify/Remove repo, elige el repositorio que quieres editar y haz clic en Submit.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Configure-Devins-Machine.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=013282a4c4e0f00111f2b150a2fa946b" alt="Devin" width="1742" height="832" data-path="images/onboard-devin/Configure-Devins-Machine.png" />
</Frame>

También puedes seleccionar el repositorio existente que quieres editar de la lista y hacer clic en **Modify repo setup** para editar los pasos de configuración.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/modify-repo-setup.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=9a066de8525859099c694d420ebab1f6" alt="Devin" width="2098" height="1634" data-path="images/onboard-devin/modify-repo-setup.png" />
</Frame>

<div id="machine-version-history">
  ### Historial de versiones de la máquina
</div>

Si durante la configuración introduces accidentalmente un cambio incompatible, puedes volver a una instantánea anterior del entorno. Ve a [Settings > Devin's Machine](https://app.devin.ai/machine), cambia a la pestaña **Version History** y restaura una instantánea anterior del entorno que sepas que funcionaba correctamente.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Devin-Machine-Version-History.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=fab3db71873fc8c3049a497730d4ca77" alt="Devin" width="1746" height="1082" data-path="images/onboard-devin/Devin-Machine-Version-History.png" />
</Frame>

<div id="configuring-secrets">
  ## Configuración de secretos
</div>

Los secretos como API keys, contraseñas y tokens pueden agregarse en el panel de [secrets](/es/product-guides/secrets). Cuando sea posible, recomendamos usar un archivo `.env` en el entorno de Devin con [`direnv`](https://direnv.net/) para gestionar automáticamente las variables de entorno. Consulta el [ejemplo de configuración de variables de entorno](#configuring-environment-variables) a continuación para obtener más detalles.

<div id="examples">
  ## Ejemplos
</div>

A continuación se muestran algunos ejemplos de cómo configurar el entorno de Devin para distintos casos de uso.

Como Devin ejecuta todos los comandos en bash, un patrón común consiste en editar el archivo `~/.bashrc` para configurar automáticamente el shell de Devin. Puedes ejecutar `devin ~/.bashrc` en la terminal para editar el archivo en VS Code.

<div id="configuring-environments-automatically-for-different-repositories">
  ### Configuración automática de entornos para diferentes repositorios
</div>

<Tip>
  Después del 24 de abril de 2025, los equipos que se registren en Devin deberían ver la sección `custom_cd`
  ya incluida en su `~/.bashrc`. Solo tendrán que actualizar esa sección
  para sus propios repositorios.
</Tip>

Supongamos que tienes dos repositorios que requieren diferentes versiones de Node y quieres que Devin use automáticamente la versión correcta para cada repositorio. Usaremos [`nvm`](https://github.com/nvm-sh/nvm) para instalar y administrar las versiones de Node. `nvm` ya debería estar instalado en la máquina de Devin.

Primero, instalaremos las dos versiones de Node ejecutando los siguientes comandos en la terminal de VS Code:

```bash theme={null}
nvm install 18
nvm install 20
```

A continuación, abre `~/.bashrc` ejecutando `devin ~/.bashrc` en la terminal. Añade lo siguiente al final de `~/.bashrc`.

```bash theme={null}
function custom_cd() {
  builtin cd "$@"

  if [[ "$PWD" == "$HOME/repos/node18"* ]]; then
    nvm use 18 >/dev/null 2>&1
  elif [[ "$PWD" == "$HOME/repos/node20"* ]]; then
    nvm use 20 >/dev/null 2>&1
  fi
}

alias cd='custom_cd'
cd $PWD
```

Esto ejecutará `nvm use 18` cada vez que Devin esté en el repositorio `node18` y `nvm use 20` cada vez que Devin esté en el repositorio `node20`.

<div id="configuring-environment-variables">
  ### Configuración de variables de entorno
</div>

[`direnv`](https://direnv.net/) está preinstalado en la máquina de Devin y puede utilizarse para gestionar las variables de entorno de cada repositorio. El hook de direnv ya está configurado en `~/.bashrc`.

Para configurar las variables de entorno de un repositorio, crea un archivo `.envrc` en la raíz del repositorio. Por ejemplo:

```bash theme={null}
export ENV_VAR=1
export ANOTHER_ENV_VAR=2
```

Finalmente, ejecutaremos `direnv allow` en la terminal para cargar las variables de entorno.

Devin ahora tendrá disponibles en su entorno las variables definidas en nuestro archivo `.envrc` cuando trabaje en nuestro repositorio en sesiones futuras.

<Tip>
  Recomendamos agregar `.envrc` a tu archivo `.gitignore` para que Devin no lo
  suba accidentalmente al repositorio.
</Tip>

<div id="adding-directories-to-the-system-path">
  ### Agregar directorios al PATH del sistema
</div>

Podemos editar `~/.bashrc` para agregar directorios al PATH del sistema. Esto facilitará que Devin pueda ejecutar los ejecutables ubicados en esos directorios. Por ejemplo, podemos agregar lo siguiente a `~/.bashrc`, lo que añadirá el directorio `~/bin` al PATH del sistema.

```bash theme={null}
export PATH="$HOME/bin:$PATH"
```

Ahora Devin podrá ejecutar los archivos ejecutables del directorio `~/bin` sin tener que especificar la ruta completa.

<div id="logging-in-to-websites">
  ## Iniciar sesión en sitios web
</div>

Durante la configuración del entorno, puedes usar la pestaña Browser para iniciar sesión en cualquier sitio web con el que quieras que Devin interactúe. Estas cookies de sesión se almacenarán en el entorno de Devin y estarán disponibles para Devin en futuras sesiones. Si usas un sitio web que cierra tu sesión con frecuencia por inactividad, también querrás configurar a Devin con credenciales en tu panel de [Secrets](/es/product-guides/secrets).

<div id="scripted-browser-use-via-playwright">
  ### Uso del navegador con scripts mediante Playwright
</div>

Para aplicaciones que requieren autenticación en el navegador (SSO, OAuth, etc.) o la introducción sistemática de datos, Devin puede escribir y ejecutar scripts de Playwright para automatizar estos flujos en el navegador que está ejecutando. También puedes escribir estos scripts tú mismo y hacer commit de ellos en tu repo. El navegador Chrome de Devin expone un endpoint de **Chrome DevTools Protocol (CDP)** en `http://localhost:29229` al que Playwright puede conectarse.

```python theme={null}
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp("http://localhost:29229")
    context = browser.contexts[0]
    page = context.pages[0] if context.pages else context.new_page()

    # Automatiza tu flujo de inicio de sesión aquí
    page.goto("https://your-app.com/login")
    page.fill('input[name="email"]', "user@example.com")
    page.fill('input[name="password"]', "password")
    page.click('button[type="submit"]')
    page.wait_for_url("**/dashboard")
```

Una vez ejecutado el script, la sesión autenticada (cookies, localStorage, tokens de autenticación) permanece en el navegador de Devin. Devin puede entonces recargar páginas, navegar e interactuar con la app con normalidad; el inicio de sesión se conserva.

<Tip>
  Guarda los scripts de inicio de sesión en el directorio `.agents/skills/` de tu repositorio y haz referencia a las credenciales mediante [Secrets](/es/product-guides/secrets) para que Devin pueda volver a autenticarse automáticamente en cada sesión. Consulta [Computer Use — Scripted Browser Use](/es/work-with-devin/computer-use#scripted-browser-use-via-playwright) para obtener más detalles.
</Tip>

<div id="troubleshooting">
  ## Solución de problemas
</div>

<div id="why-arent-my-commands-being-verified">
  ### ¿Por qué no se verifican mis comandos?
</div>

Si encuentras un error al verificar uno de los comandos, intenta inspeccionar su salida y también intenta ejecutar el comando tú mismo en una terminal nueva.

1. Verifica la ruta del ejecutable que estás usando. Recomendamos encarecidamente usar rutas absolutas o [agregar los ejecutables al PATH del sistema](#adding-directories-to-the-system-path).
2. Asegúrate de haber instalado las herramientas y dependencias necesarias para ejecutar el comando. Si no lo has hecho, utiliza Setup Agent o la terminal de VS Code para instalarlas y vuelve a verificar.
3. Comprueba que los comandos se estén ejecutando en el directorio correcto. Si los comandos necesitan ejecutarse en un directorio específico, puedes usar `cd` de la siguiente manera: `cd <directory> && <command>`.
4. Verifica que estás usando las **versiones correctas de los lenguajes de programación** (por ejemplo, las versiones correctas de Node, Python, etc.).
5. Es posible que quieras **modificar tu `~/.bashrc`** para usar automáticamente el entorno correcto.
   Consulta nuestra guía para ver un ejemplo de [cómo usar la versión correcta del lenguaje de programación para distintos repositorios](#configuring-environments-automatically-for-different-repositories).

<div id="my-commands-work-when-i-run-them-manually">
  ### Mis comandos funcionan cuando los ejecuto manualmente
</div>

Comprueba que hayas configurado tu archivo bashrc para que una nueva shell de Bash tenga acceso a las herramientas necesarias. Intenta ejecutar tus comandos en una terminal nueva. Si no funcionan, probablemente tendrás que editar tu bashrc, por ejemplo ejecutando ciertos comandos de configuración o editando la variable PATH del sistema.
Consulta nuestra guía para ver un ejemplo de [cómo usar la versión de lenguaje correcta para diferentes repositorios](#configuring-environments-automatically-for-different-repositories).

Los comandos se cancelan por tiempo de espera después de 5 minutos. Puedes forzar el almacenamiento en caché ejecutando los comandos en la terminal de VS Code antes de verificar. No recomendamos darle a Devin comandos que tarden más de 5 minutos en ejecutarse, ya que esto lo ralentizará significativamente.

<div id="devin-cant-run-my-linttest-commands-in-sessions">
  ### Devin no puede ejecutar mis comandos de lint/pruebas durante las sesiones
</div>

Revisa la salida de la terminal de Devin para ver si puedes detectar algún error. También puedes intentar ejecutar los comandos tú mismo en una terminal nueva para comprobar si funcionan. Si es necesario, puedes volver al proceso de configuración del repositorio para hacer cambios en el entorno de Devin.

<div id="the-git-pull-step-isnt-working">
  ### El paso de git pull no funciona
</div>

Verifica que Devin tenga acceso al repositorio y a sus submódulos. Revisa también la [documentación de la integración con GitHub](/es/integrations/gh) si tienes algún problema de permisos.

<div id="all-done">
  ## ¡Todo listo!
</div>

¡Felicitaciones! Ya integraste a Devin y pueden empezar a trabajar juntos. Es momento de iniciar [tu primera sesión](/es/get-started/first-run). Ten en cuenta que Devin funciona mejor cuando:

* Le indicas cómo revisar su progreso
* Divides las tareas grandes
* Compartes requisitos detallados desde el inicio
* Ejecutas múltiples sesiones en paralelo

Si necesitas ayuda, no dudes en enviarnos un correo electrónico a [support@cognition.ai](mailto:support@cognition.ai).
